mp-design-system 0.9.8 → 0.9.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (34) hide show
  1. package/dist/build/scss/library.css +1 -1
  2. package/dist/build/scss/library.css.map +1 -1
  3. package/dist/build/scss/main.css +1 -1
  4. package/dist/build/scss/main.css.map +1 -1
  5. package/package.json +1 -1
  6. package/src/_includes/components/accordion/macro.njk +1 -1
  7. package/src/_includes/components/features-table/features-table.config.js +137 -0
  8. package/src/_includes/components/features-table/features-table.njk +364 -0
  9. package/src/_includes/components/features-table/features-table.scss +96 -0
  10. package/src/_includes/components/features-table/macro.njk +5 -0
  11. package/src/_includes/components/footer/footer.scss +2 -2
  12. package/src/_includes/components/gallery/gallery.config.js +29 -0
  13. package/src/_includes/components/gallery/gallery.md +0 -0
  14. package/src/_includes/components/gallery/gallery.njk +52 -0
  15. package/src/{assets/scss/components → _includes/components/gallery}/gallery.scss +0 -0
  16. package/src/_includes/components/gallery/macro.njk +5 -0
  17. package/src/_includes/components/header/header.scss +15 -1
  18. package/src/_includes/components/table/table.scss +13 -0
  19. package/src/_includes/library-navigation/brand-nav.njk +2 -1
  20. package/src/_includes/navigation/corporate.njk +5 -2
  21. package/src/assets/scss/components/index.scss +24 -23
  22. package/src/assets/scss/components/lightbox.scss +1 -0
  23. package/src/assets/scss/library.scss +15 -2
  24. package/src/assets/scss/objects/grid.scss +46 -91
  25. package/src/assets/scss/objects/prose.scss +2 -1
  26. package/src/assets/scss/utilities/space.scss +12 -0
  27. package/src/assets/scss/utilities/typography.scss +4 -0
  28. package/src/brand/colors.njk +15 -6
  29. package/src/brand/illustration.md +44 -0
  30. package/src/brand/images.md +1 -1
  31. package/src/components/grid/generic.njk +31 -0
  32. package/src/components/grid/index.njk +21 -2
  33. package/src/components/grid/layout.njk +5 -5
  34. package/src/prototype/sections.njk +290 -0
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "mp-design-system",
3
- "version": "0.9.8",
3
+ "version": "0.9.17",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "dev": "npm-run-all --parallel bundle:*",
@@ -1,5 +1,5 @@
1
1
  {% from "components/component/component.njk" import c %}
2
2
 
3
- {% macro alert(params) %}
3
+ {% macro accordion(params) %}
4
4
  {{ c({ name: 'accordion' }, params) }}
5
5
  {% endmacro %}
@@ -0,0 +1,137 @@
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
+ }
120
+ ]
121
+
122
+ module.exports = {
123
+ title: 'Features table',
124
+ component: {
125
+ name: 'features-table',
126
+ },
127
+ context: {
128
+ sections: [
129
+ {
130
+ title: 'Compatible sample dispersions',
131
+ }
132
+ ],
133
+ products: [
134
+ ...products
135
+ ]
136
+ }
137
+ }
@@ -0,0 +1,364 @@
1
+ {% from "components/button/macro.njk" import button %}
2
+ {% from "components/icon/macro.njk" import icon %}
3
+
4
+ <div id="product-features-table" class="mp c-features u-pad-bottom-l">
5
+ <div class="c-features__mobile">
6
+ <div class="mp c-tabs c-tabs--anchor">
7
+ <nav class="c-tabs__controls">
8
+ <ul class="c-tabs__controls-list">
9
+ <li><a class="c-tabs__control c-tabs__control--active" href="#tab-1">Mastersizer 3000</a></li>
10
+ <li><a class="c-tabs__control" href="#tab-2">Mastersizer 3000E</a></li>
11
+ <li><a class="c-tabs__control" href="#tab-3">Mastersizer 3000E</a></li>
12
+ </ul>
13
+ </nav>
14
+ <div class="c-tabs__content">
15
+ <div id="tab-1" class="c-tab c-tab--active">
16
+ <table class="c-table c-table--features">
17
+ <thead>
18
+ <tr>
19
+ <th class="c-features__product u-flow--prose">
20
+ <img alt="Mastersizer 3000" src="/static/img/range-product-1.jpg" />
21
+ <h3 class="c-h c-h--step-0">Mastersizer 3000</h3>
22
+ </th>
23
+ </tr>
24
+ </thead>
25
+ <tbody>
26
+ <tr class="c-features__introduction">
27
+ <td>Advanced features</td>
28
+ </tr>
29
+ <tr class="c-features__label-text">
30
+ <td>
31
+ <span class="u-strong">0.01µm to 3500µm</span>
32
+ <span>Extended particle size range</span>
33
+ </td>
34
+ </tr>
35
+ <tr class="c-features__checklist-title">
36
+ <th>Compatible sample dispersions</th>
37
+ </tr>
38
+ <tr class="c-features__checklist">
39
+ <td>
40
+ {{ icon({ id: 'tick' }) }}Automated wet
41
+ </td>
42
+ </tr>
43
+ <tr class="c-features__checklist">
44
+ <td>
45
+ {{ icon({ id: 'tick' }) }}Automated dry powder
46
+ </td>
47
+ </tr>
48
+ <tr class="c-features__checklist">
49
+ <td>
50
+ {{ icon({ id: 'tick' }) }}Manual wet
51
+ </td>
52
+ </tr>
53
+ <tr class="c-features__checklist c-features__checklist--last">
54
+ <td class="u-grey-step-1">
55
+ {{ icon({ id: 'cross' }) }}Manual dry powder
56
+ </td>
57
+ </tr>
58
+ <tr class="c-features__text">
59
+ <td>
60
+ Advanced method development and comparison software
61
+ </td>
62
+ </tr>
63
+ <tr class="c-features__text">
64
+ <td>
65
+ Advanced data quality assessment and reporting software
66
+ </td>
67
+ </tr>
68
+ <tr class="c-features__text">
69
+ <td>
70
+ IQ/OQ validation
71
+ </td>
72
+ </tr>
73
+ <tr class="c-features__text">
74
+ <td>
75
+ 21 CFR Part 11 support
76
+ </td>
77
+ </tr>
78
+ </tbody>
79
+ <tfoot>
80
+ <tr>
81
+ <td>
82
+ <a href="/en/products/product-range/mastersizer-range/mastersizer-3000" class="mp c-button c-button--inline">Request a quote</a>
83
+ </td>
84
+ </tr>
85
+ </tfoot>
86
+ </table>
87
+ </div>
88
+ <div id="tab-2" class="c-tab">
89
+ <table class="c-table c-table--features">
90
+ <thead>
91
+ <tr>
92
+ <th class="c-features__product u-flow--prose">
93
+ <img alt="Mastersizer 3000E" src="/static/img/range-product-2.jpg" />
94
+ <h3 class="c-h c-h--step-0">Mastersizer 3000E</h3>
95
+ <span>with Extended software</span>
96
+ </th>
97
+ </tr>
98
+ </thead>
99
+ <tbody>
100
+ <tr class="c-features__introduction">
101
+ <td>Flexible features</td>
102
+ </tr>
103
+ <tr class="c-features__label-text">
104
+ <td>
105
+ <span class="u-strong">0.1µm to 1000µm</span>
106
+ <span>Standard particle size range</span>
107
+ </td>
108
+ </tr>
109
+ <tr class="c-features__checklist-title">
110
+ <th>Compatible sample dispersions</th>
111
+ </tr>
112
+ <tr class="c-features__checklist">
113
+ <td>
114
+ {{ icon({ id: 'tick' }) }}Automated wet
115
+ </td>
116
+ </tr>
117
+ <tr class="c-features__checklist">
118
+ <td class="u-grey-step-1">
119
+ {{ icon({ id: 'cross' }) }}Automated dry powder
120
+ </td>
121
+ </tr>
122
+ <tr class="c-features__checklist">
123
+ <td>
124
+ {{ icon({ id: 'tick' }) }}Manual wet
125
+ </td>
126
+ </tr>
127
+ <tr class="c-features__checklist c-features__checklist--last">
128
+ <td>
129
+ {{ icon({ id: 'tick' }) }}Manual dry powder
130
+ </td>
131
+ </tr>
132
+ <tr class="c-features__text">
133
+ <td>
134
+ Advanced method development and comparison software
135
+ </td>
136
+ </tr>
137
+ <tr class="c-features__text">
138
+ <td>
139
+ Advanced data quality assessment and reporting software
140
+ </td>
141
+ </tr>
142
+ </tbody>
143
+ <tfoot>
144
+ <tr>
145
+ <td>
146
+ <a href="/en/products/product-range/mastersizer-range/mastersizer-3000e" class="mp c-button c-button--inline">Request a quote</a>
147
+ </td>
148
+ </tr>
149
+ </tfoot>
150
+ </table>
151
+ </div>
152
+ <div id="tab-3" class="c-tab">
153
+ <table class="c-table c-table--features">
154
+ <thead>
155
+ <tr>
156
+ <th class="c-features__product u-flow--prose">
157
+ <img alt="Mastersizer 3000E" src="/static/img/range-product-2.jpg" />
158
+ <h3 class="c-h c-h--step-0">Mastersizer 3000E</h3>
159
+ <span>with Basic software</span>
160
+ </th>
161
+ </tr>
162
+ </thead>
163
+ <tbody>
164
+ <tr class="c-features__introduction">
165
+ <td>Entry-level features</td>
166
+ </tr>
167
+ <tr class="c-features__label-text">
168
+ <td>
169
+ <span class="u-strong">0.1µm to 1000µm</span>
170
+ <span>Standard particle size range</span>
171
+ </td>
172
+ </tr>
173
+ <tr class="c-features__checklist-title">
174
+ <th>Compatible sample dispersions</th>
175
+ </tr>
176
+ <tr class="c-features__checklist">
177
+ <td class="u-grey-step-1">
178
+ {{ icon({ id: 'cross' }) }}Automated wet
179
+ </td>
180
+ </tr>
181
+ <tr class="c-features__checklist">
182
+ <td class="u-grey-step-1">
183
+ {{ icon({ id: 'cross' }) }}Automated dry powder
184
+ </td>
185
+ </tr>
186
+ <tr class="c-features__checklist">
187
+ <td>
188
+ {{ icon({ id: 'tick' }) }} Manual wet
189
+ </td>
190
+ </tr>
191
+ <tr class="c-features__checklist c-features__checklist--last">
192
+ <td>
193
+ {{ icon({ id: 'tick' }) }} Manual dry powder
194
+ </td>
195
+ </tr>
196
+ </tbody>
197
+ <tfoot>
198
+ <tr>
199
+ <td>
200
+ <a href="/en/products/product-range/mastersizer-range/mastersizer-3000e" class="mp c-button c-button--inline">Request a quote</a>
201
+ </td>
202
+ </tr>
203
+ </tfoot>
204
+ </table>
205
+ </div>
206
+ </div>
207
+ </div>
208
+ </div>
209
+ <div class="c-features__wrapper">
210
+ <table class="c-table c-table--features">
211
+ <thead>
212
+ <tr>
213
+ <th class="c-features__product u-flow--prose">
214
+ <img alt="Mastersizer 3000" src="/static/img/range-product-1.jpg" />
215
+ <h3 class="c-h c-h--step-0">Mastersizer 3000</h3>
216
+ </th>
217
+ <th class="c-features__product u-flow--prose">
218
+ <img alt="Mastersizer 3000E" src="/static/img/range-product-2.jpg" />
219
+ <h3 class="c-h c-h--step-0">Mastersizer 3000E</h3>
220
+ <span>with Extended software</span>
221
+ </th>
222
+ <th class="c-features__product u-flow--prose">
223
+ <img alt="Mastersizer 3000E" src="/static/img/range-product-2.jpg" />
224
+ <h3 class="c-h c-h--step-0">Mastersizer 3000E</h3>
225
+ <span>with Basic software</span>
226
+ </th>
227
+ </tr>
228
+ </thead>
229
+ <tbody>
230
+ <tr class="c-features__introduction">
231
+ <td>
232
+ Advanced features
233
+ </td>
234
+ <td>
235
+ Flexible features
236
+ </td>
237
+ <td>
238
+ Entry-level features
239
+ </td>
240
+ </tr>
241
+ <tr class="c-features__label-text">
242
+ <td>
243
+ <span class="u-strong">0.01µm to 3500µm</span>
244
+ <span>Extended particle size range</span>
245
+ </td>
246
+ <td>
247
+ <span class="u-strong">0.1µm to 1000µm</span>
248
+ <span>Standard particle size range</span>
249
+ </td>
250
+ <td>
251
+ <span class="u-strong">0.1µm to 1000µm</span>
252
+ <span>Standard particle size range</span>
253
+ </td>
254
+ </tr>
255
+ <tr class="c-features__checklist-title">
256
+ <th>Compatible sample dispersions</th>
257
+ <th>Compatible sample dispersions</th>
258
+ <th>Compatible sample dispersions</th>
259
+ </tr>
260
+ <tr class="c-features__checklist">
261
+ <td>
262
+ {{ icon({ id: 'tick' }) }} Automated wet
263
+ </td>
264
+ <td>
265
+ {{ icon({ id: 'tick' }) }} Automated wet
266
+ </td>
267
+ <td class="u-grey-step-1">
268
+ {{ icon({ id: 'cross' }) }} Automated wet
269
+ </td>
270
+ </tr>
271
+ <tr class="c-features__checklist">
272
+ <td>
273
+ {{ icon({ id: 'tick' }) }} Automated dry powder
274
+ </td>
275
+ <td class="u-grey-step-1">
276
+ {{ icon({ id: 'cross' }) }} Automated dry powder
277
+ </td>
278
+ <td class="u-grey-step-1">
279
+ {{ icon({ id: 'cross' }) }} Automated dry powder
280
+ </td>
281
+ </tr>
282
+ <tr class="c-features__checklist">
283
+ <td>
284
+ {{ icon({ id: 'tick' }) }} Manual wet
285
+ </td>
286
+ <td>
287
+ {{ icon({ id: 'tick' }) }} Manual wet
288
+ </td>
289
+ <td>
290
+ {{ icon({ id: 'tick' }) }} Manual wet
291
+ </td>
292
+ </tr>
293
+ <tr class="c-features__checklist c-features__checklist--last">
294
+ <td class="u-grey-step-1">
295
+ {{ icon({ id: 'cross' }) }} Manual dry powder
296
+ </td>
297
+ <td>
298
+ {{ icon({ id: 'tick' }) }} Manual dry powder
299
+ </td>
300
+ <td>
301
+ {{ icon({ id: 'tick' }) }} <span>Manual dry powder</span>
302
+ </td>
303
+ </tr>
304
+ <tr class="c-features__text">
305
+ <td>
306
+ Advanced method development and comparison software
307
+ </td>
308
+ <td>
309
+ Advanced method development and comparison software
310
+ </td>
311
+ <td>
312
+ -
313
+ </td>
314
+ </tr>
315
+ <tr class="c-features__text">
316
+ <td>
317
+ Advanced data quality assessment and reporting software
318
+ </td>
319
+ <td>
320
+ Advanced data quality assessment and reporting software
321
+ </td>
322
+ <td>
323
+ -
324
+ </td>
325
+ </tr>
326
+ <tr class="c-features__text">
327
+ <td>
328
+ IQ/OQ validation
329
+ </td>
330
+ <td>
331
+ -
332
+ </td>
333
+ <td>
334
+ -
335
+ </td>
336
+ </tr>
337
+ <tr class="c-features__text">
338
+ <td>
339
+ 21 CFR Part 11 support
340
+ </td>
341
+ <td>
342
+ -
343
+ </td>
344
+ <td>
345
+ -
346
+ </td>
347
+ </tr>
348
+ </tbody>
349
+ <tfoot>
350
+ <tr>
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>
360
+ </tr>
361
+ </tfoot>
362
+ </table>
363
+ </div>
364
+ </div>
@@ -0,0 +1,96 @@
1
+ .c-features {
2
+ max-width: $wrapper;
3
+ @include step(-1);
4
+
5
+ &__wrapper {
6
+ overflow: auto;
7
+ width: 100%;
8
+ }
9
+
10
+ &__wrapper .c-table {
11
+ width: 100%;
12
+ table-layout: fixed;
13
+
14
+ @media (min-width: 60em) {
15
+ min-width: $wrapper;
16
+ }
17
+ }
18
+
19
+ &__title {
20
+ @include step();
21
+ }
22
+
23
+ &__product {
24
+ padding-bottom: 0 !important;
25
+ }
26
+
27
+ &__introduction td {
28
+ color: color('green');
29
+ font-weight: weight('bold');
30
+ @include padding-top('2xs');
31
+ }
32
+
33
+ &__label-text td {
34
+ @include flow('3xs');
35
+
36
+ span {
37
+ display: block;
38
+ }
39
+ }
40
+
41
+ &__checklist-title th {
42
+ color: color('grey') !important;
43
+ background: transparent !important;
44
+ padding-bottom: 0 !important;
45
+ }
46
+
47
+ &__checklist {
48
+ td {
49
+ padding-top: var(--space-3xs) !important;
50
+ padding-bottom: 0 !important;
51
+ vertical-align: middle;
52
+ line-height: 20px;
53
+
54
+ svg {
55
+ height: 16px;
56
+ width: 16px;
57
+ vertical-align: middle;
58
+ display: inline-block;
59
+ margin-bottom: 2px;
60
+ }
61
+ }
62
+
63
+ &--last {
64
+ td {
65
+ padding-bottom: var(--space-s) !important;
66
+ }
67
+ }
68
+ }
69
+
70
+ &__mobile {
71
+ display: none;
72
+
73
+ & > * + * {
74
+ @include margin-top('m-l');
75
+ }
76
+
77
+ .c-table {
78
+ table-layout: fixed;
79
+ }
80
+ }
81
+
82
+ @media (max-width: 40em) {
83
+ &__mobile {
84
+ display: block;
85
+ }
86
+
87
+ &__wrapper {
88
+ display: none;
89
+ }
90
+ }
91
+
92
+ thead img {
93
+ @include space('max-height', '3xl');
94
+ object-fit: contain;
95
+ }
96
+ }
@@ -0,0 +1,5 @@
1
+ {% from "components/component/component.njk" import c %}
2
+
3
+ {% macro featuresTable(params) %}
4
+ {{ c({ name: 'features-table' }, params) }}
5
+ {% endmacro %}
@@ -118,6 +118,6 @@
118
118
  }
119
119
 
120
120
  // Temporary fix until RichTextRegion is fixed
121
- .rich-text-region + .c-footer {
122
- @include margin-top('l-xl');
121
+ .rich-text-region:has( + .c-footer ) {
122
+ @include margin-bottom('l-xl');
123
123
  }
@@ -0,0 +1,29 @@
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-1.jpg',
11
+ title: 'Mastersizer slide 1'
12
+ },
13
+ {
14
+ src: '/static/img/slide-2.jpg',
15
+ title: 'Mastersizer slide 2'
16
+ },
17
+ {
18
+ src: '/static/img/slide-3.jpg',
19
+ title: 'Mastersizer slide 3'
20
+ }
21
+ ],
22
+ videos: [
23
+ {
24
+ title: 'FOCUS ON THE AIR YOU BREATHE - Elemental analysis of air filters according to US EPA Method io-3.3',
25
+ id: 'Q4H7EdHFghs'
26
+ }
27
+ ]
28
+ }
29
+ }
File without changes