mp-design-system 0.9.16 → 0.9.24

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 (64) hide show
  1. package/dist/build/arc.a8e07ecd.svg +1 -0
  2. package/dist/build/crystal.a90c9e1f.svg +1 -0
  3. package/dist/build/dots-pattern.1b95f054.svg +1 -0
  4. package/dist/build/js/app.js +1 -1
  5. package/dist/build/js/app.js.map +1 -1
  6. package/dist/build/scss/library.css +1 -1
  7. package/dist/build/scss/library.css.map +1 -1
  8. package/dist/build/scss/main.css +1 -1
  9. package/dist/build/scss/main.css.map +1 -1
  10. package/package.json +1 -1
  11. package/src/_includes/components/accordion/accordion.md +1 -1
  12. package/src/_includes/components/breadcrumb/breadcrumb.config.js +6 -4
  13. package/src/_includes/components/breadcrumb/breadcrumb.njk +18 -2
  14. package/src/_includes/components/breadcrumb/breadcrumb.scss +69 -0
  15. package/src/_includes/components/button/button.config.js +6 -0
  16. package/src/_includes/components/button/button.scss +9 -0
  17. package/src/_includes/components/campaign/campaign.config.js +4 -2
  18. package/src/_includes/components/component/component.njk +2 -2
  19. package/src/_includes/components/features-table/features-table.config.js +121 -0
  20. package/src/_includes/components/features-table/features-table.njk +11 -7
  21. package/src/_includes/components/features-table/features-table.scss +4 -9
  22. package/src/_includes/components/gallery/gallery.config.js +55 -0
  23. package/src/_includes/components/gallery/gallery.md +1 -0
  24. package/src/_includes/components/gallery/gallery.njk +51 -0
  25. package/src/{assets/scss/components → _includes/components/gallery}/gallery.scss +7 -8
  26. package/src/_includes/components/gallery/macro.njk +5 -0
  27. package/src/_includes/components/input/radio.scss +21 -1
  28. package/src/_includes/components/post-meta/post-meta.njk +2 -2
  29. package/src/_includes/components/slat/slat.config.js +12 -0
  30. package/src/_includes/components/slat/slat.scss +14 -0
  31. package/src/_includes/components/table/table.config.js +7 -6
  32. package/src/_includes/components/table/table.md +16 -0
  33. package/src/_includes/components/table/table.scss +9 -0
  34. package/src/_includes/components/tabs/tabs.config.js +22 -3
  35. package/src/_includes/components/tabs/tabs.njk +1 -1
  36. package/src/_includes/components/tabs/tabs.scss +4 -0
  37. package/src/_includes/layout.njk +2 -1
  38. package/src/_includes/library-navigation/brand-nav.njk +1 -0
  39. package/src/_includes/library-navigation/components-nav.njk +1 -0
  40. package/src/assets/js/imports/accordion.js +0 -2
  41. package/src/assets/scss/components/index.scss +25 -24
  42. package/src/assets/scss/library.scss +6 -3
  43. package/src/assets/scss/objects/syntax-highlighting.scss +4 -0
  44. package/src/assets/scss/tools/cutoff.scss +21 -31
  45. package/src/assets/scss/utilities/flow.scss +1 -0
  46. package/src/assets/svg/arc.svg +1 -0
  47. package/src/assets/svg/crystal.svg +1 -0
  48. package/src/assets/svg/dots-pattern.svg +1 -1
  49. package/src/brand/illustration.md +8 -2
  50. package/src/brand/patterns.njk +43 -0
  51. package/src/brand/typography.md +12 -5
  52. package/src/components/creating-a-component.md +1 -1
  53. package/src/components/flow.njk +31 -18
  54. package/src/components/iconography.njk +1 -1
  55. package/src/components/installation.md +3 -1
  56. package/src/components/utilities.md +37 -11
  57. package/src/index.njk +7 -4
  58. package/src/prototype/product.njk +29 -19
  59. package/src/static/img/slide-4.webp +0 -0
  60. package/src/static/img/slide-5.webp +0 -0
  61. package/src/static/img/slide-6.webp +0 -0
  62. package/src/static/img/slide-7.webp +0 -0
  63. package/dist/build/dots-pattern.3c9c2a26.svg +0 -1
  64. package/src/_includes/components/campaign/campaign.md +0 -2
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mp-design-system",
3
- "version": "0.9.16",
3
+ "version": "0.9.24",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "dev": "npm-run-all --parallel bundle:*",
@@ -1,5 +1,5 @@
1
1
  ## Blank HTML template
2
- ```
2
+ ```html
3
3
  <dl class="c-accordion">
4
4
  <div class="c-accordion__item">
5
5
  <dt class="c-accordion__title">Title one</dt>
@@ -4,14 +4,16 @@ module.exports = {
4
4
  name: 'breadcrumb',
5
5
  },
6
6
  context: {
7
- label: 'The Mastersizer Range',
8
- link: '#'
7
+ links: [
8
+ { link: '/en/services', label: 'Contract Research and Manufacturing...' },
9
+ { link: '/en/services/pharmaceutical-drug-development', label: 'Pharmaceutical drug development...' },
10
+ { link: '', label: 'Pre-clinical process research and...' },
11
+ ]
9
12
  },
10
13
  props: [
11
14
  {
12
15
  table: [
13
- ['label', 'string'],
14
- ['link', 'string'],
16
+ ['links', 'link[]', '"link" and "label" objects']
15
17
  ]
16
18
  }
17
19
  ]
@@ -1,3 +1,19 @@
1
- {% from "components/twi/macro.njk" import twi %}
1
+ {% from "components/icon/macro.njk" import icon %}
2
+
3
+ <nav class="c-breadcrumb {{ params.classes }}" aria-label="Breadcrumb">
4
+ <ol class="c-breadcrumb__list" role="list">
5
+ {% for item in params.links %}
6
+ {% if loop.index < loop.length %}
7
+ <li class="c-breadcrumb__item" role="listitem">
8
+ <a href="{{ item.link }}" class="c-breadcrumb__link">{{ item.label }}</a>
9
+ {{ icon({ id: 'chevron-down' }) }}
10
+ </li>
11
+ {% else %}
12
+ <li class="c-breadcrumb__item" role="listitem">
13
+ <span class="c-breadcrumb__current" aria-current={{ item.label }}>{{ item.label}}</span>
14
+ </li>
15
+ {% endif %}
16
+ {% endfor %}
17
+ </ol>
18
+ </nav>
2
19
 
3
- {{ twi({ icon: 'arrow-left', link: params.link, label: params.label, classes: 'u-link' }) }}
@@ -0,0 +1,69 @@
1
+ .c-breadcrumb {
2
+ &__list {
3
+ @include padding-bottom("s-m");
4
+ display: flex;
5
+ overflow-x: auto;
6
+ }
7
+
8
+ &__item {
9
+ font-size: var(--step--2);
10
+ display: inline-flex;
11
+ align-items: center;
12
+ white-space: nowrap;
13
+
14
+ .c-icon {
15
+ @include margin-right("3xs");
16
+ @include margin-left("3xs");
17
+ color: color('grey', 'step-1');
18
+ transform: rotate(270deg);
19
+ }
20
+ }
21
+
22
+ &__link {
23
+ color: color('utility-blue', 'step-1');
24
+ text-decoration: underline;
25
+
26
+ &:hover {
27
+ color: color('utility-blue', 'step-1');
28
+ text-decoration: none;
29
+ }
30
+ }
31
+
32
+ &__current {
33
+ color: color('grey', 'step-1');
34
+ }
35
+
36
+ // color: color('utility-blue');
37
+
38
+ // &__wrap {
39
+ // position: relative;
40
+
41
+ // &:after {
42
+ // content: '';
43
+ // background: linear-gradient(to right, rgba(255, 255, 255, 0), rgba(255, 255, 255, 1));
44
+ // position: absolute;
45
+ // z-index: 1;
46
+ // height: 100%;
47
+ // right: 0;
48
+ // top: 0;
49
+ // @include space('width', 'l');
50
+
51
+ // @media (min-width: $wrapper) {
52
+ // display: none;
53
+ // }
54
+ // }
55
+ // }
56
+
57
+ // &__list {
58
+ // @include padding-bottom('m-l');
59
+ // @include margin-bottom('m-l');
60
+ // border-bottom: 1px solid color('petrol', 'step-2');
61
+ // white-space: nowrap;
62
+ // overflow-x: auto;
63
+ // display: flex;
64
+
65
+ // & > * + * {
66
+ // @include margin-left('m-l');
67
+ // }
68
+ // }
69
+ }
@@ -26,6 +26,12 @@ module.exports = {
26
26
  colour: 'white'
27
27
  }
28
28
  },
29
+ {
30
+ title: 'Utility blue',
31
+ context: {
32
+ colour: 'utility-blue'
33
+ }
34
+ },
29
35
  {
30
36
  title: 'Outline green',
31
37
  context: {
@@ -106,6 +106,15 @@
106
106
  }
107
107
  }
108
108
 
109
+ &--utility-blue {
110
+ background-color: color("utility-blue");
111
+
112
+ &:focus,
113
+ &:hover {
114
+ background-color: color("utility-blue", "step--1");
115
+ }
116
+ }
117
+
109
118
  &--outline-white {
110
119
  background: transparent;
111
120
  color: color("white");
@@ -3,7 +3,6 @@ module.exports = {
3
3
  component: {
4
4
  name: 'campaign',
5
5
  },
6
- docs: true,
7
6
  context: {
8
7
  title: 'OmniTrust: Analytics you can trust.',
9
8
  content: '<p>At last, a compliance breakthrough: Omnitrust joins up all your instruments and platforms, authorizes users, keeps all your data audit-ready – and is completely configurable to your workflow.</p>',
@@ -59,7 +58,10 @@ module.exports = {
59
58
  {
60
59
  title: 'CSS modifiers',
61
60
  table: [
62
- ['c-campaign--switch', '', 'Switches the image from left to right']
61
+ ['c-campaign--switch', '', 'Switches the image from left to right'],
62
+ ['c-campaign--petrol', '', 'Petrol colour variant'],
63
+ ['c-campaign--blue', '', 'Blue colour variant'],
64
+ ['c-campaign--orange', '', 'Orange colour variant']
63
65
  ]
64
66
  }
65
67
  ]
@@ -46,7 +46,7 @@
46
46
  <thead>
47
47
  <tr>
48
48
  <th>Name</th>
49
- <th>Type</th>
49
+ {% if propRows[0][1] %}<th>Type</th>{% endif %}
50
50
  <th>Description</th>
51
51
  </tr>
52
52
  </thead>
@@ -54,7 +54,7 @@
54
54
  {% for row in propRows %}
55
55
  <tr>
56
56
  <th>{{ row[0] }}</th>
57
- <td>{{ row[1] }}</td>
57
+ {% if row[1] %}<td>{{ row[1] }}</td>{% endif %}
58
58
  <td>{{ row[2] | safe }}</td>
59
59
  </tr>
60
60
  {% endfor %}
@@ -1,4 +1,122 @@
1
1
  const products = [
2
+ {
3
+ title: 'Mastersizer 3000',
4
+ link: '/prototype/product/',
5
+ image: {
6
+ src: '/static/img/range-product-1.jpg',
7
+ alt: 'Mastersizer 3000'
8
+ },
9
+ description: 'Delivering the data you need for outcomes you can trust',
10
+ range: '0.01µm - 3500µm',
11
+ checklist: [
12
+ {
13
+ title: 'Automated wet',
14
+ value: true,
15
+ },
16
+ {
17
+ title: 'Automated dry powder',
18
+ value: true,
19
+ },
20
+ {
21
+ title: 'Manual wet',
22
+ value: true,
23
+ },
24
+ {
25
+ title: 'Manual dry powder',
26
+ value: false,
27
+ },
28
+ {
29
+ title: '21 CFR Part 11 support',
30
+ value: true,
31
+ },
32
+ {
33
+ title: 'IQ/OQ validation',
34
+ value: true,
35
+ },
36
+ {
37
+ title: 'Data quality assessment',
38
+ value: true,
39
+ }
40
+ ]
41
+ },
42
+ {
43
+ title: 'Mastersizer 3000E',
44
+ link: '/prototype/product/',
45
+ image: {
46
+ src: '/static/img/range-product-2.jpg',
47
+ alt: 'Mastersizer 3000E'
48
+ },
49
+ description: 'Entry level particle size analyzer',
50
+ checklist: [
51
+ {
52
+ title: 'Automated wet',
53
+ value: true,
54
+ },
55
+ {
56
+ title: 'Automated dry powder',
57
+ value: true,
58
+ },
59
+ {
60
+ title: 'Manual wet',
61
+ value: true,
62
+ },
63
+ {
64
+ title: 'Manual dry powder',
65
+ value: false,
66
+ },
67
+ {
68
+ title: '21 CFR Part 11 support',
69
+ value: true,
70
+ },
71
+ {
72
+ title: 'IQ/OQ validation',
73
+ value: true,
74
+ },
75
+ {
76
+ title: 'Data quality assessment',
77
+ value: true,
78
+ }
79
+ ]
80
+ },
81
+ {
82
+ title: 'Mastersizer 3000E',
83
+ link: '/prototype/product/',
84
+ image: {
85
+ src: '/static/img/range-product-2.jpg',
86
+ alt: 'Mastersizer 3000E'
87
+ },
88
+ description: 'Entry level particle size analyzer',
89
+ checklist: [
90
+ {
91
+ title: 'Automated wet',
92
+ value: true,
93
+ },
94
+ {
95
+ title: 'Automated dry powder',
96
+ value: true,
97
+ },
98
+ {
99
+ title: 'Manual wet',
100
+ value: true,
101
+ },
102
+ {
103
+ title: 'Manual dry powder',
104
+ value: false,
105
+ },
106
+ {
107
+ title: '21 CFR Part 11 support',
108
+ value: true,
109
+ },
110
+ {
111
+ title: 'IQ/OQ validation',
112
+ value: true,
113
+ },
114
+ {
115
+ title: 'Data quality assessment',
116
+ value: true,
117
+ }
118
+ ]
119
+ }
2
120
  ]
3
121
 
4
122
  module.exports = {
@@ -8,6 +126,9 @@ module.exports = {
8
126
  },
9
127
  context: {
10
128
  sections: [
129
+ {
130
+ title: 'Compatible sample dispersions',
131
+ }
11
132
  ],
12
133
  products: [
13
134
  ...products
@@ -143,7 +143,7 @@
143
143
  <tfoot>
144
144
  <tr>
145
145
  <td>
146
- <a href="/en/products/product-range/mastersizer-range/mastersizer-3000" class="mp c-button c-button--inline">Request a quote</a>
146
+ <a href="/en/products/product-range/mastersizer-range/mastersizer-3000e" class="mp c-button c-button--inline">Request a quote</a>
147
147
  </td>
148
148
  </tr>
149
149
  </tfoot>
@@ -197,7 +197,7 @@
197
197
  <tfoot>
198
198
  <tr>
199
199
  <td>
200
- <a href="/en/products/product-range/mastersizer-range/mastersizer-3000" class="mp c-button c-button--inline">Request a quote</a>
200
+ <a href="/en/products/product-range/mastersizer-range/mastersizer-3000e" class="mp c-button c-button--inline">Request a quote</a>
201
201
  </td>
202
202
  </tr>
203
203
  </tfoot>
@@ -348,11 +348,15 @@
348
348
  </tbody>
349
349
  <tfoot>
350
350
  <tr>
351
- {% for product in params.products %}
352
- <td>
353
- {{ button({ label: 'Request a quote', type: 'span', inline: true }) }}
354
- </td>
355
- {% endfor %}
351
+ <td>
352
+ <a href="/en/products/product-range/mastersizer-range/mastersizer-3000" class="mp c-button c-button--inline">Request a quote</a>
353
+ </td>
354
+ <td>
355
+ <a href="/en/products/product-range/mastersizer-range/mastersizer-3000e" class="mp c-button c-button--inline">Request a quote</a>
356
+ </td>
357
+ <td>
358
+ <a href="/en/products/product-range/mastersizer-range/mastersizer-3000e" class="mp c-button c-button--inline">Request a quote</a>
359
+ </td>
356
360
  </tr>
357
361
  </tfoot>
358
362
  </table>
@@ -39,20 +39,15 @@
39
39
  }
40
40
 
41
41
  &__checklist-title th {
42
- color: inherit;
42
+ color: color('grey') !important;
43
43
  background: transparent !important;
44
44
  padding-bottom: 0 !important;
45
45
  }
46
46
 
47
- tr.c-features__checklist:nth-last-child {
48
- background: red;
49
- @include padding-bottom('m');
50
- }
51
-
52
47
  &__checklist {
53
48
  td {
54
- @include padding-top('3xs');
55
- padding-bottom: 0;
49
+ padding-top: var(--space-3xs) !important;
50
+ padding-bottom: 0 !important;
56
51
  vertical-align: middle;
57
52
  line-height: 20px;
58
53
 
@@ -67,7 +62,7 @@
67
62
 
68
63
  &--last {
69
64
  td {
70
- @include padding-bottom('m');
65
+ padding-bottom: var(--space-s) !important;
71
66
  }
72
67
  }
73
68
  }
@@ -0,0 +1,55 @@
1
+ module.exports = {
2
+ title: 'Gallery',
3
+ component: {
4
+ name: 'gallery'
5
+ },
6
+ docs: true,
7
+ context: {
8
+ images: [
9
+ {
10
+ src: '/static/img/slide-4.webp',
11
+ title: 'Zetasizer slide 1'
12
+ },
13
+ {
14
+ src: '/static/img/slide-5.webp',
15
+ title: 'Zetasizer slide 2'
16
+ },
17
+ {
18
+ src: '/static/img/slide-6.webp',
19
+ title: 'Zetasizer slide 3'
20
+ },
21
+ {
22
+ src: '/static/img/slide-7.webp',
23
+ title: 'Zetasizer slide 4'
24
+ }
25
+ ],
26
+ videos: [
27
+ {
28
+ title: 'FOCUS ON THE AIR YOU BREATHE - Elemental analysis of air filters according to US EPA Method io-3.3',
29
+ id: 'Q4H7EdHFghs'
30
+ }
31
+ ]
32
+ },
33
+ props: [
34
+ {
35
+ table: [
36
+ ['images', 'image[]', 'An array of images'],
37
+ ['videos','video[]','An array of videos']
38
+ ]
39
+ },
40
+ {
41
+ title: 'image',
42
+ table: [
43
+ ['src','string'],
44
+ ['title','string']
45
+ ]
46
+ },
47
+ {
48
+ title: 'video',
49
+ table: [
50
+ ['title','string'],
51
+ ['id','string','Youtube ID']
52
+ ]
53
+ }
54
+ ]
55
+ }
@@ -0,0 +1 @@
1
+ Gallery images are displayed at 16:9 ratio, regardless of the image's true size. This prevents the component from unexpectedly changing size when switching between images.
@@ -0,0 +1,51 @@
1
+ {% from "components/embed/macro.njk" import youtube %}
2
+
3
+ {% set count = 1 %}
4
+
5
+ <div class="u-flow c-gallery">
6
+ <div class="c-gallery__main">
7
+ {% if params.images | length %}
8
+ {% for image in params.images %}
9
+ {% set active = (count == 1) %}
10
+ <figure class="c-gallery__slide {{"active" if active}}" data-slide="{{count}}">
11
+ <img src="{{image.src}}" alt="{{image.title}}" >
12
+ </figure>
13
+ {% set count = count+1 %}
14
+ {% endfor %}
15
+ {% endif %}
16
+ {% if params.videos | length %}
17
+ {% for video in params.videos %}
18
+ <div class="c-gallery__slide c-gallery__video" data-slide="{{count}}">
19
+ {{ youtube({
20
+ title: video.title,
21
+ id: video.id
22
+ }) }}
23
+ </div>
24
+ {% set count = count+1 %}
25
+ {% endfor %}
26
+ {% endif %}
27
+ </div>
28
+
29
+ {% set count = 1 %}
30
+
31
+ <div class="c-gallery__thumbnails">
32
+ {% if params.images | length %}
33
+ {% for image in params.images %}
34
+ {% set active = (count == 1) %}
35
+ <figure class="c-gallery__slide {{"active" if active}}" data-slide="{{count}}">
36
+ <img src="{{image.src}}" alt="{{image.title}}" loading="lazy" width="102">
37
+ </figure>
38
+ {% set count = count+1 %}
39
+ {% endfor %}
40
+ {% endif %}
41
+ {% if params.videos | length %}
42
+ {% for video in params.videos %}
43
+ {% set active = (count == 1) %}
44
+ <figure class="c-gallery__slide {{"active" if active}}" data-slide="{{count}}">
45
+ <img src="https://img.youtube.com/vi/{{video.id}}/default.jpg" alt="{{video.title}}" loading="lazy" width="102">
46
+ </figure>
47
+ {% set count = count+1 %}
48
+ {% endfor %}
49
+ {% endif %}
50
+ </div>
51
+ </div>
@@ -1,4 +1,6 @@
1
1
  .c-gallery {
2
+ max-height: 95vh;
3
+
2
4
  img {
3
5
  cursor: pointer;
4
6
  }
@@ -10,13 +12,11 @@
10
12
  width: 100%;
11
13
 
12
14
  img {
15
+ aspect-ratio: 16 / 9;
13
16
  display: block;
14
17
  margin: 0 auto;
15
-
16
- @supports (object-fit:contain) {
17
- max-height: 500px;
18
- object-fit: contain;
19
- }
18
+ max-height: calc(95vh - 90px);
19
+ object-fit: contain;
20
20
  }
21
21
 
22
22
  &:not(.active) {
@@ -35,10 +35,9 @@
35
35
 
36
36
  & > * {
37
37
  background: color('grey', 'step-3');
38
- @include space('min-height', 'l');
39
- @include space('max-height', '2xl');
40
- @include space('min-width', 'l');
41
38
  max-width: 10.75%;
39
+ max-width: max(var(--space-xl), 10.75%);
40
+ aspect-ratio: 16 / 9;
42
41
 
43
42
  img {
44
43
  height: 100%;
@@ -0,0 +1,5 @@
1
+ {% from "components/component/component.njk" import c %}
2
+
3
+ {% macro gallery(params) %}
4
+ {{ c({ name: 'gallery' }, params) }}
5
+ {% endmacro %}
@@ -32,7 +32,7 @@
32
32
  &:checked + input[type=hidden] + label:before {
33
33
  background: color('utility-blue');
34
34
  }
35
-
35
+
36
36
  &:checked + label:after,
37
37
  &:checked + input[type=hidden] + label:after {
38
38
  transform: translateX(6.5px) translateY(-1.5px) translateY(-50%) rotate(45deg);
@@ -47,6 +47,21 @@
47
47
  }
48
48
  }
49
49
 
50
+ .c-radio,
51
+ .c-checkbox {
52
+ & + label:hover:before,
53
+ & + input[type=hidden] + label:hover:before {
54
+ background-color: color('utility-blue','step-3');
55
+ }
56
+ }
57
+
58
+ .c-checkbox {
59
+ &:checked + label:hover:before,
60
+ &:checked + input[type=hidden] + label:hover:before {
61
+ background: color('utility-blue', 'step--1');
62
+ }
63
+ }
64
+
50
65
  .c-radio {
51
66
  & + label:before,
52
67
  & + input[type=hidden] + label:before {
@@ -57,4 +72,9 @@
57
72
  &:checked + input[type=hidden] + label:before {
58
73
  box-shadow: inset 0 0 0 5px color('utility-blue');
59
74
  }
75
+
76
+ &:checked + label:hover:before,
77
+ &:checked + input[type=hidden] + label:hover:before {
78
+ box-shadow: inset 0 0 0 5px color('utility-blue', 'step--1');
79
+ }
60
80
  }
@@ -1,13 +1,13 @@
1
1
  {%- from "components/series/macro.njk" import series -%}
2
2
 
3
- <div class="mp c-post-meta">
3
+ <div class="mp c-post-meta {{ "u-link-inside" if params.author }}">
4
4
  {% if params.series %}
5
5
  {{ series({
6
6
  links: params.series
7
7
  }) }}
8
8
  {% endif %}
9
9
  {% if params.author %}
10
- <p>By <a class="u-link u-link--underline" href="{{ params.author.link }}">{{ params.author.label | safe }}</a>, Wednesday 6 January 2021</p>
10
+ <p>By <a href="{{ params.author.link }}">{{ params.author.label | safe }}</a>, Wednesday 6 January 2021</p>
11
11
  {% else %}
12
12
  {{ params.content | safe }}
13
13
  {% endif %}
@@ -37,6 +37,18 @@ module.exports = {
37
37
  classes: 'c-slat c-slat--grey c-slat--dots'
38
38
  }
39
39
  },
40
+ {
41
+ title: 'Crystal',
42
+ context: {
43
+ classes: 'c-slat c-slat--grey c-slat--crystal'
44
+ }
45
+ },
46
+ {
47
+ title: 'Arc',
48
+ context: {
49
+ classes: 'c-slat c-slat--grey c-slat--arc'
50
+ }
51
+ },
40
52
  {
41
53
  title: 'Large padding',
42
54
  context: {
@@ -27,6 +27,20 @@
27
27
  background-position: left top;
28
28
  background-size: auto 100%;
29
29
  }
30
+
31
+ &--crystal {
32
+ background-image: url('../svg/crystal.svg');
33
+ background-repeat: no-repeat;
34
+ background-position: right bottom;
35
+ background-size: auto 100%;
36
+ }
37
+
38
+ &--arc {
39
+ background-image: url('../svg/arc.svg');
40
+ background-repeat: no-repeat;
41
+ background-position: right bottom;
42
+ background-size: auto 100%;
43
+ }
30
44
 
31
45
  &--padded {
32
46
  @include padding-bottom('l-2xl');