decidim-theme 0.1.4

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 (186) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE-AGPLv3.txt +661 -0
  3. data/README.md +104 -0
  4. data/Rakefile +9 -0
  5. data/app/cells/decidim/meetings/meeting_cell.rb +65 -0
  6. data/app/cells/decidim/meetings/meeting_s_overrides/show.erb +25 -0
  7. data/app/cells/decidim/meetings/meeting_s_overrides_cell.rb +53 -0
  8. data/app/controllers/decidim/theme/admin/application_controller.rb +15 -0
  9. data/app/controllers/decidim/theme/application_controller.rb +13 -0
  10. data/app/helpers/decidim/theme/application_helper.rb +10 -0
  11. data/app/models/decidim/theme/application_record.rb +10 -0
  12. data/app/overrides/insert_javascript_tag.rb +6 -0
  13. data/app/overrides/language_chooser_icon.rb +4 -0
  14. data/app/overrides/layouts/decidim/_main_footer/replace_content.html.erb.deface +96 -0
  15. data/app/overrides/layouts/decidim/_mini_footer/replace_content.html.erb.deface +25 -0
  16. data/app/overrides/mailer_styles.rb +36 -0
  17. data/app/overrides/prefix_body.rb +10 -0
  18. data/app/overrides/prefix_classes.rb +63 -0
  19. data/app/overrides/prefix_processes_wrapper.rb +10 -0
  20. data/app/packs/entrypoints/decidim_theme_email.js +1 -0
  21. data/app/packs/entrypoints/decidim_theme_email.scss +2 -0
  22. data/app/packs/entrypoints/decidim_theme_polyfill.js +5 -0
  23. data/app/packs/fonts/decidim/Inter-Black.woff +0 -0
  24. data/app/packs/fonts/decidim/Inter-Black.woff2 +0 -0
  25. data/app/packs/fonts/decidim/Inter-BlackItalic.woff +0 -0
  26. data/app/packs/fonts/decidim/Inter-BlackItalic.woff2 +0 -0
  27. data/app/packs/fonts/decidim/Inter-Bold.woff +0 -0
  28. data/app/packs/fonts/decidim/Inter-Bold.woff2 +0 -0
  29. data/app/packs/fonts/decidim/Inter-BoldItalic.woff +0 -0
  30. data/app/packs/fonts/decidim/Inter-BoldItalic.woff2 +0 -0
  31. data/app/packs/fonts/decidim/Inter-ExtraBold.woff +0 -0
  32. data/app/packs/fonts/decidim/Inter-ExtraBold.woff2 +0 -0
  33. data/app/packs/fonts/decidim/Inter-ExtraBoldItalic.woff +0 -0
  34. data/app/packs/fonts/decidim/Inter-ExtraBoldItalic.woff2 +0 -0
  35. data/app/packs/fonts/decidim/Inter-ExtraLight.woff +0 -0
  36. data/app/packs/fonts/decidim/Inter-ExtraLight.woff2 +0 -0
  37. data/app/packs/fonts/decidim/Inter-ExtraLightItalic.woff +0 -0
  38. data/app/packs/fonts/decidim/Inter-ExtraLightItalic.woff2 +0 -0
  39. data/app/packs/fonts/decidim/Inter-Italic.woff +0 -0
  40. data/app/packs/fonts/decidim/Inter-Italic.woff2 +0 -0
  41. data/app/packs/fonts/decidim/Inter-Light.woff +0 -0
  42. data/app/packs/fonts/decidim/Inter-Light.woff2 +0 -0
  43. data/app/packs/fonts/decidim/Inter-LightItalic.woff +0 -0
  44. data/app/packs/fonts/decidim/Inter-LightItalic.woff2 +0 -0
  45. data/app/packs/fonts/decidim/Inter-Medium.woff +0 -0
  46. data/app/packs/fonts/decidim/Inter-Medium.woff2 +0 -0
  47. data/app/packs/fonts/decidim/Inter-MediumItalic.woff +0 -0
  48. data/app/packs/fonts/decidim/Inter-MediumItalic.woff2 +0 -0
  49. data/app/packs/fonts/decidim/Inter-Regular.woff +0 -0
  50. data/app/packs/fonts/decidim/Inter-Regular.woff2 +0 -0
  51. data/app/packs/fonts/decidim/Inter-SemiBold.woff +0 -0
  52. data/app/packs/fonts/decidim/Inter-SemiBold.woff2 +0 -0
  53. data/app/packs/fonts/decidim/Inter-SemiBoldItalic.woff +0 -0
  54. data/app/packs/fonts/decidim/Inter-SemiBoldItalic.woff2 +0 -0
  55. data/app/packs/fonts/decidim/Inter-Thin.woff +0 -0
  56. data/app/packs/fonts/decidim/Inter-Thin.woff2 +0 -0
  57. data/app/packs/fonts/decidim/Inter-ThinItalic.woff +0 -0
  58. data/app/packs/fonts/decidim/Inter-ThinItalic.woff2 +0 -0
  59. data/app/packs/fonts/decidim/Inter-italic.var.woff2 +0 -0
  60. data/app/packs/fonts/decidim/Inter-roman.var.woff2 +0 -0
  61. data/app/packs/fonts/decidim/Inter.var.woff2 +0 -0
  62. data/app/packs/images/decidim/cc-by-sa-4.svg +8 -0
  63. data/app/packs/images/decidim/decidim-initial.svg +9 -0
  64. data/app/packs/images/decidim/theme/icon.svg +1 -0
  65. data/app/packs/javascripts/empty.polyfill.js +7 -0
  66. data/app/packs/javascripts/has.polyfill.js +30 -0
  67. data/app/packs/stylesheets/decidim/theme/_font_face.scss +180 -0
  68. data/app/packs/stylesheets/decidim/theme/_theme.scss +121 -0
  69. data/app/packs/stylesheets/decidim/theme/_theme_settings.scss +923 -0
  70. data/app/packs/stylesheets/decidim/theme/_theme_variables.scss +80 -0
  71. data/app/packs/stylesheets/decidim/theme/atoms/Buttons/_Generic.scss +98 -0
  72. data/app/packs/stylesheets/decidim/theme/atoms/Buttons/_Misc.scss +115 -0
  73. data/app/packs/stylesheets/decidim/theme/atoms/Buttons/_Navigation.scss +83 -0
  74. data/app/packs/stylesheets/decidim/theme/atoms/Typography/_Body.scss +88 -0
  75. data/app/packs/stylesheets/decidim/theme/atoms/Typography/_Headline.scss +98 -0
  76. data/app/packs/stylesheets/decidim/theme/atoms/Typography/_mixins.scss +109 -0
  77. data/app/packs/stylesheets/decidim/theme/email.scss +41 -0
  78. data/app/packs/stylesheets/decidim/theme/molecules/Callouts/_default.scss +41 -0
  79. data/app/packs/stylesheets/decidim/theme/molecules/Cards/_card_process.scss +24 -0
  80. data/app/packs/stylesheets/decidim/theme/molecules/Cards/_data-item.scss +31 -0
  81. data/app/packs/stylesheets/decidim/theme/molecules/Cards/_documents.scss +46 -0
  82. data/app/packs/stylesheets/decidim/theme/molecules/Cards/_extra.scss +32 -0
  83. data/app/packs/stylesheets/decidim/theme/molecules/Cards/_upcoming_meetings.scss +47 -0
  84. data/app/packs/stylesheets/decidim/theme/organisms/_account.scss +129 -0
  85. data/app/packs/stylesheets/decidim/theme/organisms/_accountability.scss +119 -0
  86. data/app/packs/stylesheets/decidim/theme/organisms/_assembly.scss +5 -0
  87. data/app/packs/stylesheets/decidim/theme/organisms/_authorizations.scss +25 -0
  88. data/app/packs/stylesheets/decidim/theme/organisms/_blog.scss +77 -0
  89. data/app/packs/stylesheets/decidim/theme/organisms/_budgets.scss +221 -0
  90. data/app/packs/stylesheets/decidim/theme/organisms/_cookie_warning.scss +6 -0
  91. data/app/packs/stylesheets/decidim/theme/organisms/_debate.scss +65 -0
  92. data/app/packs/stylesheets/decidim/theme/organisms/_footer.scss +145 -0
  93. data/app/packs/stylesheets/decidim/theme/organisms/_groups.scss +49 -0
  94. data/app/packs/stylesheets/decidim/theme/organisms/_logins.scss +45 -0
  95. data/app/packs/stylesheets/decidim/theme/organisms/_meetings.scss +214 -0
  96. data/app/packs/stylesheets/decidim/theme/organisms/_members.scss +6 -0
  97. data/app/packs/stylesheets/decidim/theme/organisms/_messaging.scss +118 -0
  98. data/app/packs/stylesheets/decidim/theme/organisms/_metrics.scss +31 -0
  99. data/app/packs/stylesheets/decidim/theme/organisms/_notifications.scss +20 -0
  100. data/app/packs/stylesheets/decidim/theme/organisms/_processes.scss +12 -0
  101. data/app/packs/stylesheets/decidim/theme/organisms/_proposals.scss +150 -0
  102. data/app/packs/stylesheets/decidim/theme/organisms/_search.scss +12 -0
  103. data/app/packs/stylesheets/decidim/theme/organisms/_sortitions.scss +65 -0
  104. data/app/packs/stylesheets/decidim/theme/organisms/_surveys.scss +65 -0
  105. data/app/packs/stylesheets/decidim/theme/organisms/_text_page.scss +115 -0
  106. data/app/packs/stylesheets/decidim/theme/organisms/_user_conversations.scss +7 -0
  107. data/app/packs/stylesheets/decidim/theme/reset/_author.scss +36 -0
  108. data/app/packs/stylesheets/decidim/theme/reset/_author_avatar.scss +182 -0
  109. data/app/packs/stylesheets/decidim/theme/reset/_badges.scss +159 -0
  110. data/app/packs/stylesheets/decidim/theme/reset/_base.scss +543 -0
  111. data/app/packs/stylesheets/decidim/theme/reset/_budget-list.scss +202 -0
  112. data/app/packs/stylesheets/decidim/theme/reset/_budget-meter.scss +85 -0
  113. data/app/packs/stylesheets/decidim/theme/reset/_buttons.scss +538 -0
  114. data/app/packs/stylesheets/decidim/theme/reset/_callout.scss +37 -0
  115. data/app/packs/stylesheets/decidim/theme/reset/_card.scss +1480 -0
  116. data/app/packs/stylesheets/decidim/theme/reset/_categories.scss +130 -0
  117. data/app/packs/stylesheets/decidim/theme/reset/_collapsible.scss +59 -0
  118. data/app/packs/stylesheets/decidim/theme/reset/_columns.scss +8 -0
  119. data/app/packs/stylesheets/decidim/theme/reset/_comments.scss +320 -0
  120. data/app/packs/stylesheets/decidim/theme/reset/_conversation.scss +158 -0
  121. data/app/packs/stylesheets/decidim/theme/reset/_data-consent.scss +133 -0
  122. data/app/packs/stylesheets/decidim/theme/reset/_data-picker.scss +243 -0
  123. data/app/packs/stylesheets/decidim/theme/reset/_definition_data.scss +93 -0
  124. data/app/packs/stylesheets/decidim/theme/reset/_docs-manager.scss +16 -0
  125. data/app/packs/stylesheets/decidim/theme/reset/_dropdown_menu.scss +312 -0
  126. data/app/packs/stylesheets/decidim/theme/reset/_errors.scss +87 -0
  127. data/app/packs/stylesheets/decidim/theme/reset/_extra.scss +56 -0
  128. data/app/packs/stylesheets/decidim/theme/reset/_filters.scss +224 -0
  129. data/app/packs/stylesheets/decidim/theme/reset/_floating_helper.scss +133 -0
  130. data/app/packs/stylesheets/decidim/theme/reset/_form.scss +176 -0
  131. data/app/packs/stylesheets/decidim/theme/reset/_home.scss +416 -0
  132. data/app/packs/stylesheets/decidim/theme/reset/_home_section.scss +23 -0
  133. data/app/packs/stylesheets/decidim/theme/reset/_horizontal-tabs.scss +130 -0
  134. data/app/packs/stylesheets/decidim/theme/reset/_icons.scss +3 -0
  135. data/app/packs/stylesheets/decidim/theme/reset/_inline-filters.scss +77 -0
  136. data/app/packs/stylesheets/decidim/theme/reset/_label.scss +79 -0
  137. data/app/packs/stylesheets/decidim/theme/reset/_labels.scss +53 -0
  138. data/app/packs/stylesheets/decidim/theme/reset/_layout.scss +82 -0
  139. data/app/packs/stylesheets/decidim/theme/reset/_lines_breadcrumb.scss +38 -0
  140. data/app/packs/stylesheets/decidim/theme/reset/_login.scss +3 -0
  141. data/app/packs/stylesheets/decidim/theme/reset/_logo_wrapper.scss +28 -0
  142. data/app/packs/stylesheets/decidim/theme/reset/_main_container.scss +96 -0
  143. data/app/packs/stylesheets/decidim/theme/reset/_metric-chart.scss +25 -0
  144. data/app/packs/stylesheets/decidim/theme/reset/_navbar.scss +763 -0
  145. data/app/packs/stylesheets/decidim/theme/reset/_opinion_toggle.scss +55 -0
  146. data/app/packs/stylesheets/decidim/theme/reset/_order-by.scss +34 -0
  147. data/app/packs/stylesheets/decidim/theme/reset/_org-chart.scss +6 -0
  148. data/app/packs/stylesheets/decidim/theme/reset/_pagination.scss +195 -0
  149. data/app/packs/stylesheets/decidim/theme/reset/_process.scss +20 -0
  150. data/app/packs/stylesheets/decidim/theme/reset/_process_header.scss +97 -0
  151. data/app/packs/stylesheets/decidim/theme/reset/_process_header_phase.scss +13 -0
  152. data/app/packs/stylesheets/decidim/theme/reset/_process_nav.scss +317 -0
  153. data/app/packs/stylesheets/decidim/theme/reset/_progress_bar.scss +89 -0
  154. data/app/packs/stylesheets/decidim/theme/reset/_quill.scss +47 -0
  155. data/app/packs/stylesheets/decidim/theme/reset/_result_per_page.scss +82 -0
  156. data/app/packs/stylesheets/decidim/theme/reset/_results.scss +158 -0
  157. data/app/packs/stylesheets/decidim/theme/reset/_reveal.scss +210 -0
  158. data/app/packs/stylesheets/decidim/theme/reset/_scope-picker.scss +10 -0
  159. data/app/packs/stylesheets/decidim/theme/reset/_select.scss +92 -0
  160. data/app/packs/stylesheets/decidim/theme/reset/_signup.scss +179 -0
  161. data/app/packs/stylesheets/decidim/theme/reset/_statistics.scss +42 -0
  162. data/app/packs/stylesheets/decidim/theme/reset/_switch.scss +272 -0
  163. data/app/packs/stylesheets/decidim/theme/reset/_tabs.scss +4 -0
  164. data/app/packs/stylesheets/decidim/theme/reset/_tags.scss +47 -0
  165. data/app/packs/stylesheets/decidim/theme/reset/_thumbnail.scss +66 -0
  166. data/app/packs/stylesheets/decidim/theme/reset/_timeline.scss +183 -0
  167. data/app/packs/stylesheets/decidim/theme/reset/_title_bar.scss +89 -0
  168. data/app/packs/stylesheets/decidim/theme/reset/_toggle.scss +14 -0
  169. data/app/packs/stylesheets/decidim/theme/reset/_tooltip.scss +173 -0
  170. data/app/packs/stylesheets/decidim/theme/reset/_typography.scss +283 -0
  171. data/app/packs/stylesheets/decidim/theme/reset/_upload_modal.scss +140 -0
  172. data/app/packs/stylesheets/decidim/theme/reset/_user-form.scss +15 -0
  173. data/app/packs/stylesheets/decidim/theme/reset/_user.scss +184 -0
  174. data/app/packs/stylesheets/decidim/theme/reset/_versions.scss +82 -0
  175. data/app/packs/stylesheets/decidim/theme/reset/_wrapper.scss +3 -0
  176. data/config/assets.rb +17 -0
  177. data/config/i18n-tasks.yml +10 -0
  178. data/config/locales/en.yml +62 -0
  179. data/config/locales/fr.yml +11 -0
  180. data/lib/decidim/theme/admin.rb +10 -0
  181. data/lib/decidim/theme/admin_engine.rb +27 -0
  182. data/lib/decidim/theme/engine.rb +29 -0
  183. data/lib/decidim/theme/test/factories.rb +13 -0
  184. data/lib/decidim/theme/version.rb +13 -0
  185. data/lib/decidim/theme.rb +12 -0
  186. metadata +271 -0
@@ -0,0 +1,272 @@
1
+ // Foundation for Sites
2
+ // https://get.foundation
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group switch
7
+ ////
8
+
9
+ /// Background color of a switch.
10
+ /// @type Color
11
+ $switch-background: $medium-gray;
12
+
13
+ /// Background active color of a switch.
14
+ /// @type Color
15
+ $switch-background-active: $primary-color;
16
+
17
+ /// Height of a switch, with no class applied.
18
+ /// @type Number
19
+ $switch-height: 2rem;
20
+
21
+ /// Height of a switch with .tiny class.
22
+ /// @type Number
23
+ $switch-height-tiny: 1.5rem;
24
+
25
+ /// Height of a switch with .small class.
26
+ /// @type Number
27
+ $switch-height-small: 1.75rem;
28
+
29
+ /// Height of a switch with .large class.
30
+ /// @type Number
31
+ $switch-height-large: 2.5rem;
32
+
33
+ /// Border radius of the switch
34
+ /// @type Number
35
+ $switch-radius: $global-radius;
36
+
37
+ /// border around a modal.
38
+ /// @type Number
39
+ $switch-margin: $global-margin;
40
+
41
+ /// Background color for the switch container and paddle.
42
+ /// @type Color
43
+ $switch-paddle-background: $white;
44
+
45
+ /// Spacing between a switch paddle and the edge of the body.
46
+ /// @type Number
47
+ $switch-paddle-offset: 0.25rem;
48
+
49
+ /// border radius of the switch paddle
50
+ /// @type Number
51
+ $switch-paddle-radius: 32px;
52
+
53
+ /// switch transition.
54
+ /// @type Number
55
+ $switch-paddle-transition: all 0.25s ease-out;
56
+
57
+ /// Opacity of a disabled switch.
58
+ /// @type Number
59
+ $switch-opacity-disabled: 0.5;
60
+
61
+ /// Cursor for a disabled switch.
62
+ /// @type Cursor
63
+ $switch-cursor-disabled: not-allowed;
64
+
65
+ // make them variables
66
+ // ask about accessibility on label
67
+ // change class name for text
68
+
69
+ /// Adds styles for a switch container. Apply this to a container class.
70
+ @mixin switch-container {
71
+ position: relative;
72
+ margin-bottom: $switch-margin;
73
+ outline: 0;
74
+
75
+ // These properties cascade down to the switch text
76
+ font-size: rem-calc(14);
77
+ font-weight: bold;
78
+ color: $white;
79
+
80
+ user-select: none;
81
+ }
82
+
83
+ /// Adds styles for a switch input. Apply this to an `<input>` within a switch.
84
+ @mixin switch-input {
85
+ position: absolute;
86
+ margin-bottom: 0;
87
+ opacity: 0;
88
+ }
89
+
90
+ /// Adds styles for the background and paddle of a switch. Apply this to a `<label>` within a switch.
91
+ @mixin switch-paddle {
92
+ $switch-width: $switch-height * 2;
93
+ $paddle-height: $switch-height - ($switch-paddle-offset * 2);
94
+ $paddle-width: $switch-height - ($switch-paddle-offset * 2);
95
+ $paddle-active-offest: $switch-width - $paddle-width - $switch-paddle-offset;
96
+
97
+ position: relative;
98
+ display: block;
99
+ width: $switch-width;
100
+ height: $switch-height;
101
+
102
+ border-radius: $switch-radius;
103
+ background: $switch-background;
104
+ transition: $switch-paddle-transition;
105
+
106
+ // Resetting these <label> presets so type styles cascade down
107
+ font-weight: inherit;
108
+ color: inherit;
109
+
110
+ cursor: pointer;
111
+
112
+ // Needed to override specificity
113
+ input + & {
114
+ margin: 0;
115
+ }
116
+
117
+ // The paddle itself
118
+ &::after {
119
+ position: absolute;
120
+ top: $switch-paddle-offset;
121
+ #{$global-left}: $switch-paddle-offset;
122
+
123
+ display: block;
124
+ width: $paddle-width;
125
+ height: $paddle-height;
126
+
127
+ transform: translate3d(0, 0, 0);
128
+ border-radius: $switch-paddle-radius;
129
+ background: $switch-paddle-background;
130
+ transition: $switch-paddle-transition;
131
+ content: "";
132
+ }
133
+
134
+ // Change the visual style when the switch is active
135
+ input:checked ~ & {
136
+ background: var(--primary);
137
+
138
+ &::after {
139
+ #{$global-left}: $paddle-active-offest;
140
+ }
141
+ }
142
+
143
+ // indicate a disabled switch
144
+ input:disabled ~ & {
145
+ cursor: $switch-cursor-disabled;
146
+ opacity: $switch-opacity-disabled;
147
+ }
148
+
149
+ input:focus ~ & {
150
+ @include disable-mouse-outline;
151
+ }
152
+ }
153
+
154
+ /// Adds base styles for active/inactive text inside a switch. Apply this to text elements inside the switch `<label>`.
155
+ @mixin switch-text {
156
+ position: absolute;
157
+ top: 50%;
158
+ transform: translateY(-50%);
159
+ }
160
+
161
+ /// Adds styles for the active state text within a switch.
162
+ @mixin switch-text-active {
163
+ #{$global-left}: 8%;
164
+ display: none;
165
+
166
+ input:checked + label > & {
167
+ display: block;
168
+ }
169
+ }
170
+
171
+ /// Adds styles for the inactive state text within a switch.
172
+ @mixin switch-text-inactive {
173
+ #{$global-right}: 15%;
174
+
175
+ input:checked + label > & {
176
+ display: none;
177
+ }
178
+ }
179
+
180
+ /// Changes the size of a switch by modifying the size of the body and paddle. Apply this to a switch container.
181
+ /// @param {Number} $font-size [1rem] - Font size of label text within the switch.
182
+ /// @param {Number} $switch-height [2rem] - Height of the switch body.
183
+ /// @param {Number} $paddle-offset [0.25rem] - Spacing between the switch paddle and the edge of the switch body.
184
+ @mixin switch-size(
185
+ $font-size: 1rem,
186
+ $switch-height: 2rem,
187
+ $paddle-offset: 0.25rem
188
+ ) {
189
+ $switch-width: $switch-height * 2;
190
+ $paddle-width: $switch-height - ($paddle-offset * 2);
191
+ $paddle-height: $switch-height - ($paddle-offset * 2);
192
+ $paddle-active-offest: $switch-width - $paddle-width - $paddle-offset;
193
+
194
+ height: $switch-height;
195
+
196
+ .switch-paddle {
197
+ width: $switch-width;
198
+ height: $switch-height;
199
+ font-size: $font-size;
200
+ }
201
+
202
+ .switch-paddle::after {
203
+ top: $paddle-offset;
204
+ #{$global-left}: $paddle-offset;
205
+ width: $paddle-width;
206
+ height: $paddle-height;
207
+ }
208
+
209
+ input:checked ~ .switch-paddle::after {
210
+ #{$global-left}: $paddle-active-offest;
211
+ }
212
+ }
213
+
214
+ @mixin foundation-switch {
215
+ // Container class
216
+ .switch {
217
+ @include switch-container;
218
+ height: $switch-height;
219
+ }
220
+
221
+ // <input> element
222
+ .switch-input {
223
+ @include switch-input;
224
+ }
225
+
226
+ // <label> element
227
+ .switch-paddle {
228
+ @include switch-paddle;
229
+ }
230
+
231
+ // Base label text styles
232
+ %switch-text {
233
+ @include switch-text;
234
+ }
235
+
236
+ // Active label text styles
237
+ .switch-active {
238
+ @extend %switch-text;
239
+ @include switch-text-active;
240
+ }
241
+
242
+ // Inactive label text styles
243
+ .switch-inactive {
244
+ @extend %switch-text;
245
+ @include switch-text-inactive;
246
+ }
247
+
248
+ // Switch sizes
249
+ .switch.tiny {
250
+ @include switch-size(
251
+ rem-calc(10),
252
+ $switch-height-tiny,
253
+ $switch-paddle-offset
254
+ );
255
+ }
256
+
257
+ .switch.small {
258
+ @include switch-size(
259
+ rem-calc(12),
260
+ $switch-height-small,
261
+ $switch-paddle-offset
262
+ );
263
+ }
264
+
265
+ .switch.large {
266
+ @include switch-size(
267
+ rem-calc(16),
268
+ $switch-height-large,
269
+ $switch-paddle-offset
270
+ );
271
+ }
272
+ }
@@ -0,0 +1,4 @@
1
+ .tabs-title > a {
2
+ font-size: 16px !important;
3
+ @extend .body-4;
4
+ }
@@ -0,0 +1,47 @@
1
+ //Variables
2
+
3
+ $tags-border: 1px solid var(--grey2);
4
+
5
+ /* Tags */
6
+
7
+ .tags {
8
+ list-style: none;
9
+ margin: 0;
10
+ padding: 0;
11
+ @extend .body-5;
12
+ color: var(--primary);
13
+
14
+ li {
15
+ display: inline-block;
16
+ margin-right: 0.625rem;
17
+ margin-bottom: 0.5rem;
18
+ }
19
+
20
+ a {
21
+ display: inline-block;
22
+ border: $tags-border;
23
+ padding: 0.38rem 0.5rem;
24
+ @extend .body-5;
25
+ @extend .body-5-link;
26
+
27
+ &:hover,
28
+ &:focus {
29
+ text-decoration: none !important;
30
+ background-color: var(--grey2);
31
+ }
32
+ }
33
+ }
34
+
35
+ .tags:last-child {
36
+ margin-bottom: -0.5rem;
37
+ }
38
+
39
+ .tags--inline {
40
+ display: inline;
41
+ }
42
+
43
+ .tags--list {
44
+ li {
45
+ display: block;
46
+ }
47
+ }
@@ -0,0 +1,66 @@
1
+ // Foundation for Sites
2
+ // https://get.foundation
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group thumbnail
7
+ ////
8
+
9
+ /// Border around thumbnail images.
10
+ /// @type Border
11
+ $thumbnail-border: 4px solid $white;
12
+
13
+ /// Bottom margin for thumbnail images.
14
+ /// @type Length
15
+ $thumbnail-margin-bottom: $global-margin;
16
+
17
+ /// Box shadow under thumbnail images.
18
+ /// @type Shadow
19
+ $thumbnail-shadow: 0 0 0 1px rgba($black, 0.2);
20
+
21
+ /// Box shadow under thumbnail images.
22
+ /// @type Shadow
23
+ $thumbnail-shadow-hover: 0 0 6px 1px rgba($primary-color, 0.5);
24
+
25
+ /// Transition proprties for thumbnail images.
26
+ /// @type Transition
27
+ $thumbnail-transition: box-shadow 200ms ease-out;
28
+
29
+ /// Default radius for thumbnail images.
30
+ /// @type Number
31
+ $thumbnail-radius: $global-radius;
32
+
33
+ /// Adds thumbnail styles to an element.
34
+ @mixin thumbnail {
35
+ display: inline-block;
36
+ max-width: 100%;
37
+ min-height: 75px;
38
+ margin-bottom: $thumbnail-margin-bottom;
39
+
40
+ border: $thumbnail-border;
41
+ border-radius: $thumbnail-radius;
42
+ box-shadow: $thumbnail-shadow;
43
+
44
+ line-height: 0;
45
+ }
46
+
47
+ @mixin thumbnail-link {
48
+ transition: $thumbnail-transition;
49
+
50
+ &:hover,
51
+ &:focus {
52
+ box-shadow: $thumbnail-shadow-hover;
53
+ }
54
+
55
+ image {
56
+ box-shadow: none;
57
+ }
58
+ }
59
+
60
+ .thumbnail {
61
+ @include thumbnail;
62
+ }
63
+
64
+ a.thumbnail {
65
+ @include thumbnail-link;
66
+ }
@@ -0,0 +1,183 @@
1
+ /* Variables */
2
+
3
+ $timeline-color: var(--primary);
4
+ $timeline-inactive-color: var(--emphasis-lowest);
5
+
6
+ $timeline-padding: 1rem;
7
+
8
+ /* Timeline */
9
+
10
+ .timeline {
11
+ list-style: none;
12
+ margin: 2rem 0 0;
13
+ }
14
+
15
+ .timeline__item {
16
+ padding-bottom: 2em;
17
+ position: relative;
18
+
19
+ &::before {
20
+ content: "";
21
+ width: 3px;
22
+ height: 1rem;
23
+ background: $timeline-color;
24
+ left: 1rem;
25
+ top: 0;
26
+ position: absolute;
27
+ }
28
+
29
+ &::after {
30
+ content: "";
31
+ clear: both;
32
+ display: table;
33
+ width: 100%;
34
+ }
35
+
36
+ &:last-of-type::before {
37
+ width: 0;
38
+ }
39
+ }
40
+
41
+ .timeline__phase {
42
+ width: 30px;
43
+ height: 30px;
44
+ margin-left: -13px;
45
+ position: absolute;
46
+ top: 0;
47
+ left: 1rem;
48
+ display: flex;
49
+ justify-content: center;
50
+ overflow: hidden;
51
+ border-radius: 50%;
52
+ background: $timeline-color;
53
+ border: 2px solid var(--primary);
54
+ box-shadow: none;
55
+ }
56
+
57
+ .timeline__phase__number {
58
+ display: block;
59
+ text-align: center;
60
+ line-height: 1;
61
+ color: $white;
62
+ font-weight: 600;
63
+ font-size: 1.2em;
64
+ align-self: center;
65
+ margin-left: 0;
66
+ margin-top: 0;
67
+ }
68
+
69
+ .timeline__info {
70
+ width: 90%;
71
+ width: calc(100% - 45px);
72
+ float: right;
73
+ background-color: $white;
74
+ border: $border;
75
+
76
+ .timeline__item--current & {
77
+ border-color: $timeline-color;
78
+ }
79
+ }
80
+
81
+ .timeline__header {
82
+ background: $medium-gray;
83
+ padding: $timeline-padding * 0.5 $timeline-padding;
84
+
85
+ .timeline__item--current & {
86
+ background-color: $timeline-color;
87
+ color: $white;
88
+ }
89
+ }
90
+
91
+ .timeline__date {
92
+ color: var(--emphasis-low);
93
+
94
+ .timeline__item--current & {
95
+ color: var(--emphasis-high);
96
+ }
97
+ }
98
+ .o_participatory_process .timeline__item--current .timeline__date {
99
+ color: var(--on-primary);
100
+ }
101
+ .timeline__title {
102
+ margin-bottom: 0;
103
+ }
104
+
105
+ .timeline__content {
106
+ padding: $timeline-padding;
107
+
108
+ :last-child {
109
+ margin-bottom: 0;
110
+ }
111
+ }
112
+
113
+ .timeline__footer {
114
+ list-style: none;
115
+ margin: 0;
116
+ border-top: $border;
117
+
118
+ @include breakpoint(medium) {
119
+ display: flex;
120
+ flex-wrap: wrap;
121
+ }
122
+ }
123
+
124
+ .timeline__footer-item {
125
+ flex-grow: 1;
126
+ text-align: center;
127
+ padding: 0.5em;
128
+ border-bottom: $border;
129
+
130
+ &:last-child {
131
+ border-bottom: 0;
132
+ }
133
+
134
+ @include breakpoint(medium) {
135
+ border-bottom: 0;
136
+ border-right: $border;
137
+
138
+ &:last-child {
139
+ border-right: 0;
140
+ }
141
+ }
142
+ }
143
+
144
+ .timeline__footer-inner {
145
+ display: block;
146
+ }
147
+
148
+ .timeline__item-icon {
149
+ width: 1.5em;
150
+ height: 1.5em;
151
+ }
152
+
153
+ .timeline__item-text {
154
+ display: block;
155
+ letter-spacing: inherit;
156
+ @extend .body-4;
157
+ @extend .body-4-caps;
158
+ color: var(--emphasis-med);
159
+ }
160
+
161
+ /* Inactive timeline */
162
+
163
+ .timeline__item--current {
164
+ &::before {
165
+ background: $timeline-inactive-color;
166
+ }
167
+ }
168
+
169
+ .timeline__item--inactive {
170
+ &::before {
171
+ background: $timeline-inactive-color;
172
+ }
173
+
174
+ .timeline__phase {
175
+ background: $timeline-inactive-color;
176
+ }
177
+
178
+ .timeline__phase__number {
179
+ @extend .body-4;
180
+ color: var(--white);
181
+ text-shadow: 0 1px 2px rgba(black, 0.25);
182
+ }
183
+ }
@@ -0,0 +1,89 @@
1
+ // Foundation for Sites
2
+ // https://get.foundation
3
+ // Licensed under MIT Open Source
4
+
5
+ ////
6
+ /// @group title-bar
7
+ ////
8
+
9
+ /// Background color of a title bar.
10
+ /// @type Color
11
+ $titlebar-background: var(--grey1);
12
+
13
+ /// Color of text inside a title bar.
14
+ /// @type Color
15
+ $titlebar-color: var(--emphasis-med);
16
+
17
+ /// Padding inside a title bar.
18
+ /// @type Length
19
+ $titlebar-padding: 0.5rem;
20
+
21
+ /// Font weight of text inside a title bar.
22
+ /// @type Weight
23
+ $titlebar-text-font-weight: normal;
24
+
25
+ /// Color of menu icons inside a title bar.
26
+ /// @type Color
27
+ $titlebar-icon-color: var(--emphasis-med);
28
+
29
+ /// Color of menu icons inside a title bar on hover.
30
+ /// @type Color
31
+ $titlebar-icon-color-hover: var(--grey2);
32
+
33
+ /// Spacing between the menu icon and text inside a title bar.
34
+ /// @type Length
35
+ $titlebar-icon-spacing: 0.25rem;
36
+
37
+ .title-bar {
38
+ padding-right: $titlebar-padding;
39
+ padding-bottom: $titlebar-padding;
40
+ padding-top: rem-calc(24px);
41
+ padding-left: 0.5rem;
42
+ margin-left: 0;
43
+ margin-right: 0;
44
+ @include breakpoint(smallmedium down) {
45
+ padding-left: 0;
46
+ }
47
+
48
+ background: $titlebar-background;
49
+ color: $titlebar-color;
50
+
51
+ @if $global-flexbox {
52
+ display: flex;
53
+ justify-content: flex-start;
54
+ align-items: center;
55
+ } @else {
56
+ @include clearfix;
57
+ }
58
+
59
+ .menu-icon {
60
+ margin-#{$global-left}: $titlebar-icon-spacing;
61
+ margin-#{$global-right}: $titlebar-icon-spacing;
62
+ }
63
+ }
64
+
65
+ @if $global-flexbox {
66
+ .title-bar-left,
67
+ .title-bar-right {
68
+ flex: 1 1 0px; // sass-lint:disable-line zero-unit
69
+ }
70
+
71
+ .title-bar-right {
72
+ text-align: right;
73
+ }
74
+ } @else {
75
+ .title-bar-left {
76
+ float: left;
77
+ }
78
+
79
+ .title-bar-right {
80
+ float: right;
81
+ text-align: right;
82
+ }
83
+ }
84
+
85
+ .title-bar-title {
86
+ display: inline-block;
87
+ vertical-align: middle;
88
+ font-weight: $titlebar-text-font-weight;
89
+ }
@@ -0,0 +1,14 @@
1
+ // @Component
2
+ [data-toggle] {
3
+ margin: 0;
4
+ cursor: pointer;
5
+ display: inline-flex;
6
+ align-items: flex-start;
7
+ span {
8
+ margin-right: 0;
9
+ }
10
+ }
11
+ .label-required[data-toggle] {
12
+ margin-left: 4px;
13
+ margin-bottom: 0;
14
+ }