mitlibraries-theme 0.8.0 → 1.0.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 (47) hide show
  1. checksums.yaml +4 -4
  2. data/README.md +13 -1
  3. data/Rakefile +6 -8
  4. data/app/assets/config/mitlibraries_theme_manifest.js +1 -0
  5. data/app/assets/stylesheets/mitlibraries/theme/application.css +15 -0
  6. data/app/controllers/mitlibraries/theme/application_controller.rb +6 -0
  7. data/app/helpers/link_helper.rb +2 -0
  8. data/app/helpers/mitlibraries/theme/application_helper.rb +6 -0
  9. data/app/jobs/mitlibraries/theme/application_job.rb +6 -0
  10. data/app/mailers/mitlibraries/theme/application_mailer.rb +8 -0
  11. data/app/models/mitlibraries/theme/application_record.rb +7 -0
  12. data/app/views/layouts/_head.html.erb +1 -0
  13. data/app/views/layouts/application.html.erb +1 -1
  14. data/config/routes.rb +2 -0
  15. data/lib/mitlibraries/theme/engine.rb +11 -0
  16. data/lib/mitlibraries/theme/version.rb +1 -1
  17. data/lib/mitlibraries/theme.rb +2 -5
  18. data/lib/tasks/mitlibraries/theme_tasks.rake +4 -0
  19. metadata +29 -44
  20. data/.gitignore +0 -10
  21. data/CODE_OF_CONDUCT.md +0 -74
  22. data/Gemfile +0 -6
  23. data/Gemfile.lock +0 -167
  24. data/Makefile +0 -56
  25. data/bin/console +0 -14
  26. data/bin/setup +0 -8
  27. data/mitlibraries-theme.gemspec +0 -28
  28. data/vendor/assets/images/favicon.ico +0 -0
  29. data/vendor/assets/images/mitlib-wordmark.svg +0 -1
  30. data/vendor/assets/images/vi-shape7-tp.svg +0 -1
  31. data/vendor/assets/stylesheets/elements/_content.scss +0 -74
  32. data/vendor/assets/stylesheets/elements/_controls.scss +0 -156
  33. data/vendor/assets/stylesheets/elements/_footer.scss +0 -132
  34. data/vendor/assets/stylesheets/elements/_forms.scss +0 -151
  35. data/vendor/assets/stylesheets/elements/_header.scss +0 -93
  36. data/vendor/assets/stylesheets/elements/_modules.scss +0 -187
  37. data/vendor/assets/stylesheets/elements/_tables.scss +0 -112
  38. data/vendor/assets/stylesheets/global/_base.scss +0 -67
  39. data/vendor/assets/stylesheets/global/_helpers.scss +0 -161
  40. data/vendor/assets/stylesheets/global/_layouts.scss +0 -452
  41. data/vendor/assets/stylesheets/global/_shame.scss +0 -4
  42. data/vendor/assets/stylesheets/global/_typography.scss +0 -81
  43. data/vendor/assets/stylesheets/global/_unsets.scss +0 -29
  44. data/vendor/assets/stylesheets/global/_variables.scss +0 -120
  45. data/vendor/assets/stylesheets/global/_vendor-overrides.scss +0 -1
  46. data/vendor/assets/stylesheets/js-elements/_expand-collapse.scss +0 -35
  47. data/vendor/assets/stylesheets/libraries-main.scss +0 -39
@@ -1,452 +0,0 @@
1
- // layouts
2
-
3
- // base layout styles for everyone!
4
- .layout-band {
5
- @include clearfix;
6
- }
7
-
8
- .wrap-gridband,
9
- .wrap-notice,
10
- .wrap-header,
11
- .wrap-header-local,
12
- .wrap-breadcrumb,
13
- .wrap-content,
14
- .wrap-footer,
15
- .wrap-footer-institute {
16
- @include clearfix;
17
- max-width: 114rem;
18
- margin: 0 auto;
19
- padding: 10px 4%;
20
- }
21
-
22
- // generic grid options
23
-
24
- .gridband {
25
- @include clearfix;
26
-
27
- .grid-item {
28
- width: auto;
29
- float: none;
30
- }
31
-
32
- // 2-col generic with overflow
33
- &.layout-2c {
34
-
35
- @media (min-width: $bp-screen-md) {
36
- .grid-item {
37
- float: left;
38
- width: 48%;
39
- margin-right: 3%;
40
-
41
- &:nth-child(2n+0) {
42
- float: right;
43
- margin-right: 0;
44
- }
45
- }
46
- }
47
- }
48
-
49
- // 3-col generic with overflow
50
- &.layout-3c {
51
-
52
- @media (min-width: $bp-screen-md) {
53
- .grid-item {
54
- float: left;
55
- width: 32%;
56
- margin-right: 2%;
57
-
58
- &:nth-child(3n+3) {
59
- float: right;
60
- margin-right: 0;
61
- }
62
- }
63
- }
64
- }
65
-
66
- // 4-col generic with overflow
67
- &.layout-4c {
68
-
69
- @media (min-width: $bp-screen-md) {
70
- .grid-item {
71
- float: left;
72
- width: 23%;
73
- margin-right: 2%;
74
-
75
- &:nth-child(4n+4) {
76
- float: right;
77
- margin-right: 0;
78
- }
79
- }
80
- }
81
- }
82
- }
83
-
84
- // ----------------------------
85
- // #HEADER - global, slim, local
86
- // ----------------------------
87
-
88
- // simplified slim header for light branding
89
- .wrap-header {
90
-
91
- .header-slim {
92
-
93
- .logo-mit-lib img {
94
- height: 35px;
95
- }
96
- }
97
- }
98
-
99
- .wrap-header-core,
100
- .wrap-header-supp {
101
- display: inline-block;
102
- vertical-align: bottom;
103
- }
104
-
105
- .wrap-header-core {
106
- width: 65%;
107
- }
108
-
109
- .wrap-header-supp {
110
- width: 33%;
111
-
112
- .link-logo-mit {
113
- float: right;
114
- }
115
- }
116
-
117
- // local header
118
- .wrap-header-local {
119
-
120
- .wrap-local-nav {
121
- margin-top: 8px;
122
-
123
- .nav-item {
124
- @extend .button-subtle;
125
- display: inline-block;
126
- margin-right: 10px;
127
- font-size: $fs-small;
128
- text-decoration: none;
129
-
130
- &.current {
131
- border: 1px solid $brand-primary-accent;
132
- }
133
- }
134
- }
135
- }
136
-
137
- // ----------------------------
138
- // #CONTENT
139
- // ----------------------------
140
-
141
- .wrap-outer-content {
142
- background-color: $white-t;
143
- color: $black;
144
- }
145
-
146
- .wrap-content {
147
- padding-top: 3rem;
148
- padding-bottom: 2%;
149
-
150
- .content-main {
151
- padding-bottom: 3rem;
152
- }
153
- }
154
-
155
- // 3/4 - 1/4 2-column layout
156
- .layout-3q1q {
157
-
158
- @media (min-width: $bp-screen-md) {
159
-
160
- .col3q {
161
- float: left;
162
- width: 73%;
163
- }
164
-
165
- .col1q-r {
166
- float: right;
167
- width: 22%;
168
- margin-left: 3%
169
- }
170
- }
171
- }
172
-
173
- // 1/4 - 3/4 2-column layout
174
- .layout-1q3q {
175
-
176
- @media (min-width: $bp-screen-md) {
177
-
178
- .col1q {
179
- float: left;
180
- width: 22%;
181
- margin-right: 3%
182
- }
183
-
184
- .col3q {
185
- float: right;
186
- width: 73%;
187
- }
188
- }
189
- }
190
-
191
- // 1/4 - 1/2 - 1/4 3-column layout
192
- .layout-1q2q1q {
193
-
194
- @media (min-width: $bp-screen-md) {
195
-
196
- .col1q {
197
- float: left;
198
- width: 22%;
199
- margin-right: 3%
200
- }
201
-
202
- .content-main {
203
- float: left;
204
- width: 48%;
205
- margin-right: 3%
206
- }
207
-
208
- .col1q-r {
209
- float: right;
210
- width: 22%;
211
- }
212
- }
213
- }
214
-
215
- // 1/3 - 2/3 2-column layout
216
- .layout-1t2t {
217
-
218
- @media (min-width: $bp-screen-md) {
219
- display: flex;
220
-
221
- .col1t {
222
- float: left;
223
- width: 33%;
224
- margin-right: 3%
225
- }
226
-
227
- .col2t {
228
- float: right;
229
- width: 63%;
230
- }
231
- }
232
- }
233
-
234
- // 2/3 - 1/3 2-column layout
235
- .layout-2t1t {
236
-
237
- @media (min-width: $bp-screen-md) {
238
- display: flex;
239
-
240
- .col2t {
241
- float: left;
242
- width: 63%;
243
- margin-right: 3%
244
- }
245
-
246
- .col1t-r {
247
- float: right;
248
- width: 33%;
249
- }
250
- }
251
- }
252
-
253
-
254
-
255
- // ----------------------------
256
- // #FOOTER - base and full
257
- // ----------------------------
258
-
259
- .wrap-footer {
260
- padding: 3.5rem 4%;
261
-
262
- .wrap-sitemap {
263
-
264
- // hide the sub menu items on small screens
265
- .menu-sub {
266
- display: none;
267
- }
268
- }
269
-
270
- .identity {
271
- margin-top: 4rem;
272
- margin-bottom: 2rem;
273
- }
274
-
275
- .wrap-logo-lib {
276
- display: inline-block;
277
- vertical-align: bottom;
278
- margin: 0 20px 20px 0;
279
- }
280
-
281
- .wrap-social {
282
- display: inline-block;
283
- vertical-align: bottom;
284
- margin-bottom: 20px;
285
- }
286
-
287
- .wrap-policies {
288
- width: 100%;
289
- border-top: 1px solid $gray;
290
- padding-top: 2rem;
291
-
292
- span {
293
- display: inline-block;
294
- margin: 1rem 1.5rem 1rem 0;
295
-
296
- &.item {
297
- margin-right: 0;
298
- }
299
-
300
- &:after {
301
- content:'';
302
- }
303
- }
304
- }
305
-
306
- .wrap-social .text-find-us {
307
- display: none;
308
- }
309
-
310
- // bigger than small mobile - able to handle columns ok
311
- @media (min-width: $bp-screen-md) {
312
-
313
- .wrap-sitemap {
314
- display: flex;
315
- flex-direction: row;
316
-
317
- .col {
318
- margin-right: 3%;
319
-
320
- &:last-child {
321
- margin-right: 0;
322
- }
323
- }
324
-
325
- .menu-sub {
326
- display: block;
327
- }
328
- }
329
-
330
- .identity {
331
- display: flex;
332
- flex-wrap: wrap;
333
- justify-content: space-between;
334
- margin: 4% 0 0 0;
335
- }
336
-
337
- .wrap-logo-lib,
338
- .wrap-policies,
339
- .wrap-social {
340
- align-self: flex-end;
341
- margin-top: 0;
342
- margin-bottom: 0;
343
- }
344
-
345
- .wrap-logo-lib {
346
- order: 1;
347
- margin-right: 4%;
348
- }
349
-
350
- .wrap-policies {
351
- order: 2;
352
- padding: auto;
353
- border-top: none;
354
- width: auto;
355
-
356
- span {
357
- margin-top: 0;
358
- margin-bottom: 0;
359
- }
360
- }
361
-
362
- .wrap-social {
363
- order: 3;
364
- margin-left: auto;
365
- }
366
- }
367
-
368
- // large screen - able to handle several inline items
369
- @media (min-width: $bp-screen-lg) {
370
-
371
- .wrap-social {
372
- order: 3;
373
- }
374
-
375
- .wrap-policies {
376
- order: 2;
377
- }
378
-
379
- }
380
- }
381
-
382
- // footer - adjustments for slim
383
- .wrap-footer.footer-slim {
384
- padding: 1.5rem 4%;
385
-
386
- .wrap-middle {
387
- order: 2;
388
- display: flex;
389
- flex: 1; // No other element gets a value, forcing this element to be greedy in its sizing
390
- flex-direction: column;
391
- align-items: flex-start;
392
-
393
- .wrap-policies {
394
- align-self: flex-start; // This overrides the flex-end applicable to vertial alignment in full footer.
395
- }
396
-
397
- .wrap-sitemap {
398
- display: inline-block;
399
- margin-bottom: 2rem;
400
-
401
- .item {
402
- display: block;
403
- margin-right: 10px;
404
- margin-bottom: 5px;
405
- }
406
- }
407
- }
408
-
409
-
410
- // larger screen - able to handle several inline items
411
- @media (min-width: $bp-screen-md) {
412
-
413
- .wrap-middle {
414
- order: 2;
415
-
416
- .wrap-policies {
417
- margin-left: 2%;
418
- order: 2;
419
- }
420
-
421
- .wrap-sitemap {
422
- display: inline-block;
423
- margin-left: 2%;
424
- margin-bottom: auto;
425
- order: 1;
426
-
427
- .item {
428
- display: inline-block;
429
- margin-bottom: auto;
430
- }
431
- }
432
- }
433
-
434
- .wrap-social {
435
- order: 3;
436
- }
437
- }
438
-
439
- @media (min-width: $bp-screen-lg) {
440
- .wrap-policies {
441
- }
442
-
443
- .wrap-sitemap {
444
- }
445
- }
446
- }
447
-
448
- // mit institute footer
449
- .wrap-footer-institute {
450
- padding: 20px 4%;
451
- }
452
-
@@ -1,4 +0,0 @@
1
- // remove the forms required asterisk abbr underline
2
- abbr.required {
3
- text-decoration: none;
4
- }
@@ -1,81 +0,0 @@
1
- // general typography helpers
2
-
3
- // headers
4
- .hd-1 {
5
- margin-bottom: .5em;
6
- font-size: $fs-xxxlarge;
7
- line-height: $lh-tight;
8
- font-weight: $fw-bold;
9
- }
10
-
11
- .hd-2 {
12
- margin-bottom: .5em;
13
- font-size: $fs-xxlarge;
14
- line-height: $lh-tight;
15
- font-weight: $fw-bold;
16
- }
17
-
18
- .hd-3 {
19
- margin-bottom: .5em;
20
- font-size: $fs-xlarge;
21
- line-height: $lh-tight;
22
- font-weight: $fw-normal;
23
- }
24
-
25
- .hd-4 {
26
- margin-bottom: .5em;
27
- font-size: $fs-large;
28
- line-height: $lh-tight;
29
- font-weight: $fw-bold;
30
- }
31
-
32
- .hd-5 {
33
- margin-bottom: .5em;
34
- font-size: $fs-base;
35
- line-height: $lh-tight;
36
- font-weight: $fw-bold;
37
- }
38
-
39
- .hd-6 {
40
- margin-bottom: .5em;
41
- font-size: $fs-base;
42
- line-height: $lh-tight;
43
- font-weight: $fw-bold;
44
- }
45
-
46
- .hd-subtitle1 {
47
- margin-bottom: .5em;
48
- font-size: $fs-base;
49
- text-transform: uppercase;
50
- }
51
-
52
- .hd-subtitle2 {
53
- margin-bottom: .5em;
54
- font-size: $fs-small;
55
- text-transform: uppercase;
56
- }
57
-
58
- .hd-subtitle3 {
59
- margin-bottom: .5em;
60
- font-size: $fs-xsmall;
61
- text-transform: uppercase;
62
- }
63
-
64
- // copy
65
-
66
- .copy-lead {
67
- font-size: $fs-xlarge;
68
- }
69
-
70
- .copy-base {
71
- font-size: $fs-base;
72
- }
73
-
74
- .copy-sup {
75
- font-size: $fs-xsmall;
76
- }
77
-
78
- .copy-micro {
79
- font-size: $fs-xxsmall;
80
- font-weight: $fw-normal;
81
- }
@@ -1,29 +0,0 @@
1
- // clear base browser styling
2
-
3
- h1, h2, h3, h4, h5, h6 {
4
- margin: 0;
5
- font-weight: normal;
6
- font-size: 1rem;
7
- line-height: 1;
8
- }
9
-
10
- p,
11
- ol,
12
- ul,
13
- dl {
14
- margin: 0 0 1em 0;
15
- }
16
-
17
- img {
18
- max-width: 100%;
19
- vertical-align: middle;
20
- }
21
-
22
- a {
23
- text-decoration: none;
24
- }
25
-
26
- input[type=checkbox],
27
- input[type=radio] {
28
- margin-right: .5rem;
29
- }
@@ -1,120 +0,0 @@
1
-
2
- // ----------------------------
3
- // #SETTINGS
4
- // ----------------------------
5
- $image-path: '/dest/i' !default;
6
-
7
- // ----------------------------
8
- // #GRID
9
- // ----------------------------
10
-
11
- // grid - breakpoints
12
- $bp-screen-sm: 480px;
13
- $bp-screen-md: 768px;
14
- $bp-screen-lg: 1024px;
15
- $bp-screen-xl: 1280px;
16
-
17
-
18
- // ----------------------------
19
- // #COLORS
20
- // ----------------------------
21
-
22
- // NOTE: if updating color variables, you should also update
23
- // the guide helper scss and the examples file;
24
-
25
- // colors - grayscale
26
- $black: #000;
27
- $black-t: #000; // true black
28
- $white: #fff;
29
- $white-warm: #ede8e2;
30
- $white-t: #fff; // true white
31
- $gray: #595959; // accessible on #f3f3f3
32
- $gray-d1: #333;
33
- $gray-d2: #222;
34
- $gray-l1: #767676; // accessible on #fff
35
- $gray-l2: #ccc;
36
- $gray-l3: #dedede;
37
- $gray-l4: #f3f3f3;
38
- $gray-warm: #c6b6a3;
39
- $transparent: rgba(0, 0, 0, 0); // transparent black
40
- $transparent-w: rgba(255,255,255,0); // transparent white
41
- $glare: rgba($white-t, .3);
42
- $shadow: rgba($black-t, .5);
43
- $smoke: rgba($gray, .3);
44
- $wisp: rgba($gray, .1);
45
-
46
- // pentagram colors - named
47
- $magenta: #FF00FF;
48
- $red: #FF0000;
49
- $orange: #FF7700;
50
- $yellow: #FFC800;
51
- $green: #00C800;
52
- $blue: #0000FF;
53
- $blue-bright: #00C8FF;
54
-
55
- // pentagram colors secondary
56
- $magenta-muted: #C702C7;
57
- $red-muted: #D50606;
58
- $orange-muted: #E46212;
59
- $yellow-muted: #FFC422;
60
- $green-muted: #008700;
61
- $blue-muted: #1A1A83;
62
- $blue-bright-muted: #04A6CF;
63
-
64
-
65
- // colors - brand
66
- $brand-primary: $black;
67
- $brand-primary-accent: $blue;
68
- $brand-primary2: $blue-bright; // accessible on dark
69
- $brand-secondary: $magenta-muted;
70
-
71
- // colors - utilities
72
- $success: $green-muted;
73
- $warning: $yellow;
74
- $error: $red-muted;
75
- $informational: $gray;
76
-
77
-
78
- // ----------------------------
79
- // #TYPOGRAPHY
80
- // ----------------------------
81
-
82
- $base-font: 'Helvetica Neue', Helvetica, Arial, 'Open Sans', sans-serif;
83
- $alt-fonts: 'Georgia', Cambria, 'Times New Roman', Times, serif;
84
-
85
- // font-sizes and line-heights
86
- $fs-xxxsmall: .9rem;
87
- $fs-xxsmall: 1rem;
88
- $fs-xsmall: 1.2rem;
89
- $fs-smallish: 1.3rem;
90
- $fs-small: 1.4rem;
91
- $fs-base: 1.6rem;
92
- $fs-large: 2.0rem;
93
- $fs-xlarge: 2.6rem;
94
- $fs-xxlarge: 3.2rem;
95
- $fs-xxxlarge: 4.2rem;
96
- $fs-xxxxlarge: 4.8rem;
97
-
98
- $fw-bold: 600;
99
- $fw-normal: 400;
100
- $fw-light: 300;
101
-
102
- $lh-xtight: .92;
103
- $lh-tight: 1;
104
- $lh-base: 1.2;
105
- $lh-loose: 1.5;
106
- $lh-xloose: 1.7;
107
-
108
-
109
- // ----------------------------
110
- // #DEPTH
111
- // ----------------------------
112
-
113
- $z-depth-way-back: -1000;
114
- $z-depth-back: -100;
115
- $z-depth-lil-back: -10;
116
- $z-depth-base: 1;
117
- $z-depth-lil-front: 10;
118
- $z-depth-front: 100;
119
- $z-depth-way-front: 1000;
120
-
@@ -1 +0,0 @@
1
- // Styles needed to override vendor stuff
@@ -1,35 +0,0 @@
1
- .no-js {
2
- .expand-collapse-control {
3
- display: none;
4
- }
5
- }
6
-
7
- .js {
8
- .expand-collapse-wrap {
9
- position: relative;
10
- overflow: hidden;
11
- margin-bottom: 2rem;
12
- padding-bottom: 2rem;
13
- transition: height 200ms;
14
- }
15
-
16
- .expand-container {
17
- margin-bottom: 4rem;
18
- }
19
-
20
- .expand-collapse-control {
21
- position: absolute;
22
- bottom: 0;
23
- left: 0;
24
- width: 100%;
25
- margin: 0;
26
- padding: 4rem .5rem .5rem .5rem;
27
- background: #fff; // fallback
28
- background: linear-gradient(to bottom, rgba(255, 255, 255, 0) 0%, #f3f3f3 50%);
29
-
30
- .button {
31
- @extend %unbutton;
32
- @extend .button-secondary;
33
- }
34
- }
35
- }