@tacc/core-styles 0.5.1

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 (166) hide show
  1. package/.postcssrc.base.yml +48 -0
  2. package/README.md +244 -0
  3. package/bin/build.js +40 -0
  4. package/bin/config.js +90 -0
  5. package/bin/version.js +24 -0
  6. package/cli.js +77 -0
  7. package/dist/branding_logos.css +2 -0
  8. package/dist/components/README.css +1 -0
  9. package/dist/components/bootstrap.container.css +2 -0
  10. package/dist/components/bootstrap.figure.css +2 -0
  11. package/dist/components/bootstrap.pagination.css +2 -0
  12. package/dist/components/c-button.css +2 -0
  13. package/dist/components/c-callout.css +2 -0
  14. package/dist/components/c-card.css +2 -0
  15. package/dist/components/c-data-list.css +2 -0
  16. package/dist/components/c-footer.css +2 -0
  17. package/dist/components/c-image-map.css +2 -0
  18. package/dist/components/c-image-map.skin.css +1 -0
  19. package/dist/components/c-image-map.structure.css +2 -0
  20. package/dist/components/c-nav.css +2 -0
  21. package/dist/components/c-page.css +2 -0
  22. package/dist/components/c-recognition.css +2 -0
  23. package/dist/components/c-see-all-link.css +2 -0
  24. package/dist/components/c-show-more.css +2 -0
  25. package/dist/elements/README.css +1 -0
  26. package/dist/elements/figure.css +2 -0
  27. package/dist/elements/html-elements.css +2 -0
  28. package/dist/elements/tacc-search-bar.css +2 -0
  29. package/dist/generics/README.css +1 -0
  30. package/dist/objects/README.css +1 -0
  31. package/dist/objects/o-flex-item-table-wrap.css +2 -0
  32. package/dist/objects/o-grid.css +2 -0
  33. package/dist/objects/o-offset-content.css +2 -0
  34. package/dist/objects/o-section.css +2 -0
  35. package/dist/objects/o-site.css +2 -0
  36. package/dist/settings/README.css +1 -0
  37. package/dist/settings/border.css +2 -0
  38. package/dist/settings/color.css +2 -0
  39. package/dist/settings/font.css +2 -0
  40. package/dist/settings/max-width.css +2 -0
  41. package/dist/settings/space.css +2 -0
  42. package/dist/tools/README.css +1 -0
  43. package/dist/tools/media-queries.css +1 -0
  44. package/dist/tools/x-article-link.css +2 -0
  45. package/dist/tools/x-center.css +2 -0
  46. package/dist/tools/x-fake-border.css +2 -0
  47. package/dist/tools/x-grid.css +1 -0
  48. package/dist/tools/x-layout.css +2 -0
  49. package/dist/tools/x-overlay.css +1 -0
  50. package/dist/tools/x-truncate.css +2 -0
  51. package/dist/trumps/README.css +1 -0
  52. package/dist/trumps/icon.css +2 -0
  53. package/dist/trumps/icon.fonts.css +2 -0
  54. package/dist/trumps/s-article-list.css +2 -0
  55. package/dist/trumps/s-article-preview.css +2 -0
  56. package/dist/trumps/s-blockquote.css +2 -0
  57. package/dist/trumps/s-breadcrumbs.css +2 -0
  58. package/dist/trumps/s-cms-nav.css +1 -0
  59. package/dist/trumps/s-document.css +2 -0
  60. package/dist/trumps/s-footer.css +2 -0
  61. package/dist/trumps/s-guide-doc.css +2 -0
  62. package/dist/trumps/s-header.css +2 -0
  63. package/dist/trumps/s-inline-dl.css +2 -0
  64. package/dist/trumps/s-portal-nav.css +2 -0
  65. package/dist/trumps/s-style-guide.css +2 -0
  66. package/dist/trumps/s-system-specs.css +2 -0
  67. package/dist/trumps/tacc-search-bar.css +2 -0
  68. package/dist/trumps/u-empty.css +1 -0
  69. package/dist/trumps/u-hide.css +2 -0
  70. package/dist/trumps/u-nested-text-content.css +2 -0
  71. package/index.js +45 -0
  72. package/package.json +49 -0
  73. package/source/README.md +8 -0
  74. package/source/_imports/README.md +47 -0
  75. package/source/_imports/branding_logos.css +73 -0
  76. package/source/_imports/components/README.css +26 -0
  77. package/source/_imports/components/bootstrap.container.css +23 -0
  78. package/source/_imports/components/bootstrap.figure.css +17 -0
  79. package/source/_imports/components/bootstrap.pagination.css +29 -0
  80. package/source/_imports/components/c-button.css +210 -0
  81. package/source/_imports/components/c-button.html +31 -0
  82. package/source/_imports/components/c-callout.css +183 -0
  83. package/source/_imports/components/c-callout.html +52 -0
  84. package/source/_imports/components/c-card.css +57 -0
  85. package/source/_imports/components/c-card.html +32 -0
  86. package/source/_imports/components/c-data-list.css +222 -0
  87. package/source/_imports/components/c-data-list.html +145 -0
  88. package/source/_imports/components/c-footer.css +67 -0
  89. package/source/_imports/components/c-footer.html +3 -0
  90. package/source/_imports/components/c-image-map.css +26 -0
  91. package/source/_imports/components/c-image-map.html +4 -0
  92. package/source/_imports/components/c-image-map.skin.css +1 -0
  93. package/source/_imports/components/c-image-map.structure.css +285 -0
  94. package/source/_imports/components/c-nav.css +164 -0
  95. package/source/_imports/components/c-nav.html +45 -0
  96. package/source/_imports/components/c-page.css +95 -0
  97. package/source/_imports/components/c-page.html +192 -0
  98. package/source/_imports/components/c-recognition.css +102 -0
  99. package/source/_imports/components/c-see-all-link.css +52 -0
  100. package/source/_imports/components/c-show-more.css +50 -0
  101. package/source/_imports/elements/README.css +47 -0
  102. package/source/_imports/elements/figure.css +23 -0
  103. package/source/_imports/elements/html-elements.css +386 -0
  104. package/source/_imports/elements/tacc-search-bar.css +19 -0
  105. package/source/_imports/elements/tacc-search-bar.md +20 -0
  106. package/source/_imports/generics/README.css +24 -0
  107. package/source/_imports/generics/README.md +9 -0
  108. package/source/_imports/objects/README.css +22 -0
  109. package/source/_imports/objects/o-flex-item-table-wrap.css +50 -0
  110. package/source/_imports/objects/o-grid.css +131 -0
  111. package/source/_imports/objects/o-grid.html +64 -0
  112. package/source/_imports/objects/o-offset-content.css +51 -0
  113. package/source/_imports/objects/o-section.css +270 -0
  114. package/source/_imports/objects/o-section.html +73 -0
  115. package/source/_imports/objects/o-site.css +26 -0
  116. package/source/_imports/objects/o-site.html +11 -0
  117. package/source/_imports/settings/README.css +65 -0
  118. package/source/_imports/settings/border.css +15 -0
  119. package/source/_imports/settings/color.css +30 -0
  120. package/source/_imports/settings/font.css +49 -0
  121. package/source/_imports/settings/max-width.css +31 -0
  122. package/source/_imports/settings/space.css +36 -0
  123. package/source/_imports/tools/README.css +17 -0
  124. package/source/_imports/tools/media-queries.css +48 -0
  125. package/source/_imports/tools/x-article-link.css +62 -0
  126. package/source/_imports/tools/x-center.css +60 -0
  127. package/source/_imports/tools/x-fake-border.css +72 -0
  128. package/source/_imports/tools/x-grid.css +116 -0
  129. package/source/_imports/tools/x-layout.css +86 -0
  130. package/source/_imports/tools/x-overlay.css +28 -0
  131. package/source/_imports/tools/x-truncate.css +47 -0
  132. package/source/_imports/trumps/README.css +79 -0
  133. package/source/_imports/trumps/icon.css +31 -0
  134. package/source/_imports/trumps/icon.fonts.css +316 -0
  135. package/source/_imports/trumps/s-article-list.css +240 -0
  136. package/source/_imports/trumps/s-article-list.html +20 -0
  137. package/source/_imports/trumps/s-article-preview.css +253 -0
  138. package/source/_imports/trumps/s-article-preview.html +30 -0
  139. package/source/_imports/trumps/s-blockquote.css +45 -0
  140. package/source/_imports/trumps/s-breadcrumbs.css +69 -0
  141. package/source/_imports/trumps/s-cms-nav.css +11 -0
  142. package/source/_imports/trumps/s-cms-nav.html +41 -0
  143. package/source/_imports/trumps/s-document.css +142 -0
  144. package/source/_imports/trumps/s-footer.css +16 -0
  145. package/source/_imports/trumps/s-footer.html +3 -0
  146. package/source/_imports/trumps/s-guide-doc.css +77 -0
  147. package/source/_imports/trumps/s-header.css +181 -0
  148. package/source/_imports/trumps/s-header.html +46 -0
  149. package/source/_imports/trumps/s-inline-dl.css +35 -0
  150. package/source/_imports/trumps/s-portal-nav.css +20 -0
  151. package/source/_imports/trumps/s-portal-nav.html +37 -0
  152. package/source/_imports/trumps/s-style-guide.css +52 -0
  153. package/source/_imports/trumps/s-system-specs.css +123 -0
  154. package/source/_imports/trumps/tacc-search-bar.css +108 -0
  155. package/source/_imports/trumps/tacc-search-bar.html +11 -0
  156. package/source/_imports/trumps/u-empty.css +18 -0
  157. package/source/_imports/trumps/u-hide.css +27 -0
  158. package/source/_imports/trumps/u-nested-text-content.css +14 -0
  159. package/source/_tests/README.md +33 -0
  160. package/source/_tests/postcss-extend.css +80 -0
  161. package/source/_tests/postcss-preset-env.css +75 -0
  162. package/source/_tests.css +12 -0
  163. package/source/_themes/README.md +5 -0
  164. package/source/_themes/TODO.md +4 -0
  165. package/source/_themes/default.json +21 -0
  166. package/source/_themes/has-dark-logo.json +21 -0
@@ -0,0 +1,31 @@
1
+ /* WARNING: This file is copied from Portal repo */
2
+ /* TODO: Share source code between CMS, Portal, & User Guide */
3
+ /* SEE: https://github.com/TACC/Frontera-Portal/blob/master/client/src/styles/trumps/icon.css */
4
+
5
+ /* TRUMPS: Icons */
6
+ @import url('./icon.fonts.css');
7
+
8
+ .icon {
9
+ width: 1em;
10
+ height: 1em;
11
+ font-size: 1.125em; /* ~18px (16px design * 1.2 design-to-app ratio) (rounded) */
12
+ vertical-align: middle;
13
+ display: inline-flex; /* `flex` to align `::before`; `inline` to not trigger new line */
14
+ /* a modern slimmer alternative to `&::before { display: block; }` */
15
+ }
16
+
17
+ /* Aliases */
18
+ /* .icon-contract */.icon-collapse::before {
19
+ content: "\e915";
20
+ }
21
+
22
+
23
+
24
+ /* Overrides */
25
+
26
+ /* Align wrapped button text in buttons that have icons */
27
+ /* HACK: Placeholder style until UI is finalized and componetized */
28
+ .btn .icon + span,
29
+ .btn .loading-icon + span {
30
+ vertical-align: middle;
31
+ }
@@ -0,0 +1,316 @@
1
+ /* WARNING: This file is copied from Portal repo */
2
+ /* TODO: Share source code between CMS, Portal, & User Guide */
3
+ /* SEE: https://github.com/TACC/Frontera-Portal/blob/master/client/src/styles/trumps/icon.fonts.css */
4
+
5
+ @font-face {
6
+ font-family: 'Cortal-Icons';
7
+ /* TACC: Use `woff` because it is `ttf` optimized for web, and browser support */
8
+ /* TACC: Renamed to include version and correct path */
9
+ src: url('../../fonts/Cortal-Icons-1.2.woff?vrusnv') format('woff');
10
+ /*
11
+ src: url('fonts/Cortal-Icons.eot?vrusnv');
12
+ src: url('fonts/Cortal-Icons.eot?vrusnv#iefix') format('embedded-opentype'),
13
+ url('fonts/Cortal-Icons.ttf?vrusnv') format('truetype'),
14
+ url('fonts/Cortal-Icons.woff?vrusnv') format('woff'),
15
+ url('fonts/Cortal-Icons.svg?vrusnv#Cortal-Icons') format('svg');
16
+ */
17
+ font-weight: normal;
18
+ font-style: normal;
19
+ font-display: block;
20
+ }
21
+
22
+ [class^="icon-"], [class*=" icon-"] {
23
+ /* use !important to prevent issues with browser extensions that change fonts */
24
+ font-family: 'Cortal-Icons' !important;
25
+ speak: never;
26
+ font-style: normal;
27
+ font-weight: normal;
28
+ font-variant: normal;
29
+ text-transform: none;
30
+ line-height: 1;
31
+
32
+ /* Better Font Rendering =========== */
33
+ -webkit-font-smoothing: antialiased;
34
+ -moz-osx-font-smoothing: grayscale;
35
+ }
36
+
37
+ /* TACC: Remove support for extra icon that should not be used */
38
+ /*
39
+ .icon-jobs-history:before {
40
+ content: "\e95a";
41
+ }
42
+ */
43
+ .icon-jobs:before {
44
+ content: "\e95b";
45
+ }
46
+ .icon-zipped:before {
47
+ content: "\e957";
48
+ }
49
+ .icon-compress:before {
50
+ content: "\e958";
51
+ }
52
+ .icon-extract:before {
53
+ content: "\e959";
54
+ }
55
+ .icon-add-file:before {
56
+ content: "\e900";
57
+ }
58
+ .icon-add-folder:before {
59
+ content: "\e901";
60
+ }
61
+ .icon-add-project:before {
62
+ content: "\e902";
63
+ }
64
+ .icon-add:before {
65
+ content: "\e903";
66
+ }
67
+ .icon-alert:before {
68
+ content: "\e904";
69
+ }
70
+ .icon-allocations:before {
71
+ content: "\e905";
72
+ }
73
+ .icon-applications:before {
74
+ content: "\e906";
75
+ }
76
+ .icon-approved-boxed-reverse:before {
77
+ content: "\e907";
78
+ }
79
+ .icon-approved-boxed:before {
80
+ content: "\e908";
81
+ }
82
+ .icon-approved-reverse:before {
83
+ content: "\e909";
84
+ }
85
+ .icon-approved:before {
86
+ content: "\e90a";
87
+ }
88
+ .icon-bar-graph:before {
89
+ content: "\e90b";
90
+ }
91
+ .icon-boxed:before {
92
+ content: "\e90c";
93
+ }
94
+ .icon-browser:before {
95
+ content: "\e90d";
96
+ }
97
+ .icon-bulb:before {
98
+ content: "\e90e";
99
+ }
100
+ .icon-burger:before {
101
+ content: "\e90f";
102
+ }
103
+ .icon-calendar:before {
104
+ content: "\e910";
105
+ }
106
+ .icon-close-boxed:before {
107
+ content: "\e911";
108
+ }
109
+ .icon-close:before {
110
+ content: "\e912";
111
+ }
112
+ .icon-code:before {
113
+ content: "\e913";
114
+ }
115
+ .icon-compass:before {
116
+ content: "\e914";
117
+ }
118
+ .icon-contract:before {
119
+ content: "\e915";
120
+ }
121
+ .icon-conversation:before {
122
+ content: "\e916";
123
+ }
124
+ .icon-copy:before {
125
+ content: "\e917";
126
+ }
127
+ .icon-coversation-wait:before {
128
+ content: "\e918";
129
+ }
130
+ .icon-dashboard:before {
131
+ content: "\e919";
132
+ }
133
+ .icon-data-files:before {
134
+ content: "\e91a";
135
+ }
136
+ .icon-data-processing:before {
137
+ content: "\e91b";
138
+ }
139
+ .icon-denied-reverse:before {
140
+ content: "\e91c";
141
+ }
142
+ .icon-denied:before {
143
+ content: "\e91d";
144
+ }
145
+ .icon-dna:before {
146
+ content: "\e91e";
147
+ }
148
+ .icon-document:before {
149
+ content: "\e91f";
150
+ }
151
+ .icon-download:before {
152
+ content: "\e920";
153
+ }
154
+ .icon-edit-document:before {
155
+ content: "\e921";
156
+ }
157
+ .icon-exit:before {
158
+ content: "\e922";
159
+ }
160
+ .icon-expand:before {
161
+ content: "\e923";
162
+ }
163
+ .icon-file:before {
164
+ content: "\e924";
165
+ }
166
+ .icon-folder:before {
167
+ content: "\e925";
168
+ }
169
+ .icon-gear:before {
170
+ content: "\e926";
171
+ }
172
+ .icon-globe:before {
173
+ content: "\e927";
174
+ }
175
+ .icon-history-reverse:before {
176
+ content: "\e928";
177
+ }
178
+ .icon-history:before {
179
+ content: "\e929";
180
+ }
181
+ .icon-image:before {
182
+ content: "\e92a";
183
+ }
184
+ .icon-jupyter:before {
185
+ content: "\e92b";
186
+ }
187
+ .icon-link:before {
188
+ content: "\e92c";
189
+ }
190
+ .icon-lock:before {
191
+ content: "\e92d";
192
+ }
193
+ .icon-monitor:before {
194
+ content: "\e92e";
195
+ }
196
+ .icon-move:before {
197
+ content: "\e92f";
198
+ }
199
+ .icon-multiple-coversation:before {
200
+ content: "\e930";
201
+ }
202
+ /* TACC: This is meant for non-published storage. regardless of which system it lives on */
203
+ .icon-my-data:before {
204
+ content: "\e931";
205
+ }
206
+ .icon-new-browser:before {
207
+ content: "\e932";
208
+ }
209
+ .icon-no-alert:before {
210
+ content: "\e933";
211
+ }
212
+ .icon-pending:before {
213
+ content: "\e934";
214
+ }
215
+ .icon-pie-graph-open:before {
216
+ content: "\e935";
217
+ }
218
+ .icon-pie-graph-reverse:before {
219
+ content: "\e936";
220
+ }
221
+ .icon-pie-graph:before {
222
+ content: "\e937";
223
+ }
224
+ .icon-project:before {
225
+ content: "\e938";
226
+ }
227
+ .icon-proposal-approved:before {
228
+ content: "\e939";
229
+ }
230
+ .icon-proposal-denied:before {
231
+ content: "\e93a";
232
+ }
233
+ .icon-proposal-pending:before {
234
+ content: "\e93b";
235
+ }
236
+ .icon-publications:before {
237
+ content: "\e93c";
238
+ }
239
+ .icon-push-left:before {
240
+ content: "\e93d";
241
+ }
242
+ .icon-push-right:before {
243
+ content: "\e93e";
244
+ }
245
+ .icon-refresh:before {
246
+ content: "\e93f";
247
+ }
248
+ .icon-rename:before {
249
+ content: "\e940";
250
+ }
251
+ .icon-reverse-order:before {
252
+ content: "\e941";
253
+ }
254
+ .icon-rotate-ccw:before {
255
+ content: "\e942";
256
+ }
257
+ .icon-rotate-cw:before {
258
+ content: "\e943";
259
+ }
260
+ .icon-save:before {
261
+ content: "\e944";
262
+ }
263
+ .icon-script:before {
264
+ content: "\e945";
265
+ }
266
+ .icon-search-folder:before {
267
+ content: "\e946";
268
+ }
269
+ .icon-search:before {
270
+ content: "\e947";
271
+ }
272
+ .icon-share:before {
273
+ content: "\e948";
274
+ }
275
+ .icon-sillouette:before {
276
+ content: "\e949";
277
+ }
278
+ .icon-simulation-reverse:before {
279
+ content: "\e94a";
280
+ }
281
+ .icon-simulation:before {
282
+ content: "\e94b";
283
+ }
284
+ .icon-subtract-file:before {
285
+ content: "\e94c";
286
+ }
287
+ .icon-toolbox:before {
288
+ content: "\e94d";
289
+ }
290
+ .icon-trash:before {
291
+ content: "\e94e";
292
+ }
293
+ .icon-trophy:before {
294
+ content: "\e94f";
295
+ }
296
+ .icon-unlock:before {
297
+ content: "\e950";
298
+ }
299
+ .icon-upload:before {
300
+ content: "\e951";
301
+ }
302
+ .icon-user-reverse:before {
303
+ content: "\e952";
304
+ }
305
+ .icon-user:before {
306
+ content: "\e953";
307
+ }
308
+ .icon-visualization:before {
309
+ content: "\e954";
310
+ }
311
+ .icon-zoom-in:before {
312
+ content: "\e955";
313
+ }
314
+ .icon-zoom-out:before {
315
+ content: "\e956";
316
+ }
@@ -0,0 +1,240 @@
1
+ /*
2
+ Article List
3
+
4
+ A list of article previews. Content __must__ use the tags defined by the example markup.
5
+
6
+ Markup: s-article-list.html
7
+
8
+ Styleguide Trumps.Scopes.ArticleList
9
+ */
10
+ @import url("_imports/tools/x-truncate.css");
11
+ @import url("_imports/tools/x-layout.css");
12
+ @import url("_imports/tools/x-article-link.css");
13
+
14
+
15
+
16
+
17
+
18
+ /* Block */
19
+
20
+ [class*="s-article-list--"] {
21
+ /* … */
22
+ }
23
+
24
+
25
+
26
+
27
+
28
+ /* Children */
29
+
30
+
31
+
32
+ /* Children: All */
33
+
34
+ /* Not "Title" & Not "See More" */
35
+ .s-article-list--layout-e > :not(h2):not(p:last-child) {
36
+ /* To shrink heading */
37
+ flex-grow: 1;
38
+ }
39
+
40
+
41
+
42
+ /* Children: Title */
43
+
44
+ .s-article-list--layout-a > h2,
45
+ .s-article-list--layout-b > h2,
46
+ .s-article-list--layout-c > h2,
47
+ .s-article-list--layout-d > h2 {
48
+ /* To span all columns */
49
+ grid-column-start: 1;
50
+ grid-column-end: -1;
51
+ }
52
+
53
+ [class*="s-article-list--"] > h2 {
54
+ margin-top: 0; /* overwrite Bootstrap */
55
+ margin-bottom: 3.0rem; /* overwrite Bootstrap */
56
+
57
+ color: var(--global-color-accent--normal);
58
+
59
+ font-size: 1.6rem;
60
+ font-weight: var(--bold);
61
+ text-transform: uppercase;
62
+
63
+ @extend .x-truncate--one-line;
64
+ }
65
+ /* Add a fake short border above title */
66
+ [class*="s-article-list--"] > h2 {
67
+ position: relative;
68
+ padding-top: 1em;
69
+ }
70
+ [class*="s-article-list--"] > h2::before {
71
+ content: '';
72
+ display: block;
73
+
74
+ position: absolute;
75
+ top: 0;
76
+ height: 0.5em;
77
+ width: 2.5em;
78
+
79
+ background-color: var(--global-color-accent--normal);
80
+ }
81
+
82
+
83
+
84
+ /* Children: "See More" */
85
+
86
+ /* Anchor */
87
+
88
+ .s-article-list--layout-a > p:last-child,
89
+ .s-article-list--layout-b > p:last-child,
90
+ .s-article-list--layout-c > p:last-child,
91
+ .s-article-list--layout-d > p:last-child {
92
+ /* To span all columns */
93
+ grid-column-start: 1;
94
+ grid-column-end: -1;
95
+ }
96
+
97
+ [class*="s-article-list--"] > p:last-child {
98
+ border-top-width: var(--global-border-width--thick);
99
+ border-top-style: solid;
100
+
101
+ margin-top: 3.0rem; /* GH-99: Use standard spacing value */
102
+ margin-bottom: -1.0rem; /* to "undo" space added from `padding-bottom` */
103
+
104
+ font-size: 1.2rem;
105
+ font-weight: var(--bold);
106
+ }
107
+ [class*="s-article-list--"] > p:last-child a {
108
+ display: inline-block;
109
+
110
+ padding-top: 1.0rem;
111
+ padding-bottom: 1.0rem;
112
+ padding-right: 1.0rem;
113
+
114
+ @extend .x-truncate--one-line;
115
+ max-width: 100%; /* SEE: https://stackoverflow.com/a/44521595 */
116
+ }
117
+ /* Dark section */
118
+ .o-section--style-dark[class*="s-article-list--"] > p:last-child,
119
+ .o-section--style-dark [class*="s-article-list--"] > p:last-child {
120
+ border-color: var(--global-color-primary--xx-light);
121
+ }
122
+ .o-section--style-dark[class*="s-article-list--"] > p:last-child a,
123
+ .o-section--style-dark [class*="s-article-list--"] > p:last-child a {
124
+ color: var(--global-color-primary--xx-light);
125
+ }
126
+ /* Light section */
127
+ .o-section--style-light[class*="s-article-list--"] > p:last-child,
128
+ .o-section--style-light [class*="s-article-list--"] > p:last-child {
129
+ border-color: var(--global-color-primary--xx-dark);
130
+ }
131
+ .o-section--style-light[class*="s-article-list--"] > p:last-child a,
132
+ .o-section--style-light [class*="s-article-list--"] > p:last-child a {
133
+ color: var(--global-color-primary--xx-dark);
134
+ }
135
+
136
+ /* Icon */
137
+
138
+ [class*="s-article-list--"] > p:last-child a::before {
139
+ font-family: "Font Awesome 5 Free";
140
+ content: "\f35a";
141
+ margin-right: 10px;
142
+
143
+ font-size: 1.4rem;
144
+ vertical-align: middle;
145
+
146
+ /* To hide the `text-decoration: underline` of the anchor */
147
+ /* SEE: https://stackoverflow.com/a/15688237/11817077 */
148
+ display: inline-block;
149
+ }
150
+
151
+
152
+
153
+
154
+
155
+ /* Modifiers */
156
+
157
+
158
+
159
+ /* Modifiers: Links */
160
+
161
+ .s-article-list--links {
162
+ font-size: 1.4rem;
163
+ color: var(--global-color-primary--xx-dark);
164
+ }
165
+ .s-article-list--links p:not(:last-child) {
166
+ margin: 0; /* Overwrite Bootstrap and browser */
167
+ }
168
+ .s-article-list--links p:not(:last-child) a {
169
+ font-weight: var(--bold);
170
+ color: var(--global-color-primary--xx-dark);
171
+ }
172
+
173
+ /* Expand link to cover its container */
174
+ .s-article-list--links p:not(:last-child) { position: relative; }
175
+ .s-article-list--links p:not(:last-child) a::before {
176
+ content: '';
177
+
178
+ @extend .x-article-link-stretch;
179
+ }
180
+ .s-article-list--layout-gapless.s-article-list--links p:not(:last-child) a::before {
181
+ @extend .x-article-link-stretch--gapless;
182
+ }
183
+ /* Give link state (pseudo-class) feedback */
184
+ .s-article-list--links p:not(:last-child) a:hover::before {
185
+ @extend .x-article-link-hover;
186
+ }
187
+ .s-article-list--layout-gapless.s-article-list--links p:not(:last-child) a:hover::before {
188
+ @extend .x-article-link-hover--gapless;
189
+ }
190
+
191
+
192
+ /* Modifiers: Layout */
193
+
194
+ .s-article-list--layout-a { @extend .x-layout--a; }
195
+ .s-article-list--layout-b { @extend .x-layout--b; }
196
+ .s-article-list--layout-c { @extend .x-layout--c; }
197
+ .s-article-list--layout-d { @extend .x-layout--d; }
198
+ .s-article-list--layout-e { @extend .x-layout--e; }
199
+
200
+ /* Modifiers: Layout: Column-Based */
201
+
202
+ .s-article-list--layout-a,
203
+ .s-article-list--layout-b,
204
+ .s-article-list--layout-c,
205
+ .s-article-list--layout-d {
206
+ column-gap: 3.0rem; /* GH-99: Use standard spacing value */
207
+ }
208
+
209
+ /* Modifiers: Layout: Row-Based */
210
+
211
+ .s-article-list--layout-e {
212
+ /* … */
213
+ }
214
+
215
+ /* Modifiers: Layout: Options */
216
+
217
+ .s-article-list--layout-gapless {
218
+ gap: 0;
219
+ }
220
+
221
+ .s-article-list--layout-compact > p:last-child {
222
+ margin-top: 0;
223
+ }
224
+
225
+ .s-article-list--layout-divided > :not(h2):not(p:last-child) {
226
+ padding-top: 0.8rem;
227
+
228
+ border-width: var(--global-border-width--normal) 0 0;
229
+ border-style: solid;
230
+ }
231
+ /* Dark section */
232
+ .o-section--style-dark.s-article-list--layout-divided > :not(h2):not(p:last-child),
233
+ .o-section--style-dark .s-article-list--layout-divided > :not(h2):not(p:last-child) {
234
+ border-color: var(--global-color-primary--light);
235
+ }
236
+ /* Light section */
237
+ .o-section--style-light.s-article-list--layout-divided > :not(h2):not(p:last-child),
238
+ .o-section--style-light .s-article-list--layout-divided > :not(h2):not(p:last-child) {
239
+ border-color: var(--global-color-primary--dark);
240
+ }
@@ -0,0 +1,20 @@
1
+ <article class="s-article-list">
2
+ <h2>
3
+ News &amp; Stuff
4
+ </h2>
5
+ <article>
6
+ Article Placeholder
7
+ </article>
8
+ </article>
9
+
10
+ <!-- TODO: Use a component (requires a plugin) -->
11
+ <!--
12
+ <article class="c-article-list">
13
+ <h2 class="c-article-list__title">
14
+ News &amp; Stuff
15
+ </h2>
16
+ <article class="c-article-list__item">
17
+ Article Placeholder
18
+ </article>
19
+ </article>
20
+ -->