@slicemachine/adapter-next 0.3.15-dev-next-release.0 → 0.3.15-dev-next-release.2

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.
@@ -0,0 +1,912 @@
1
+ import { stripIndent } from "common-tags";
2
+ import { pascalCase } from "../../lib/pascalCase.js";
3
+ const mocks = [
4
+ {
5
+ __TYPE__: "SharedSliceContent",
6
+ variation: "default",
7
+ primary: {
8
+ title: {
9
+ __TYPE__: "StructuredTextContent",
10
+ value: [
11
+ {
12
+ type: "heading1",
13
+ content: {
14
+ text: "Alternate like a star",
15
+ spans: []
16
+ },
17
+ direction: "ltr"
18
+ }
19
+ ]
20
+ },
21
+ description: {
22
+ __TYPE__: "StructuredTextContent",
23
+ value: [
24
+ {
25
+ type: "paragraph",
26
+ content: {
27
+ text: "A predesigned AlternateGrid component, that you can use to list your skills or features of a product.",
28
+ spans: [
29
+ {
30
+ type: "strong",
31
+ start: 44,
32
+ end: 47
33
+ }
34
+ ]
35
+ },
36
+ direction: "ltr"
37
+ }
38
+ ]
39
+ },
40
+ eyebrowHeadline: {
41
+ __TYPE__: "FieldContent",
42
+ type: "Text",
43
+ value: "Eyebrow"
44
+ },
45
+ image: {
46
+ origin: {
47
+ id: "main",
48
+ url: "https://images.unsplash.com/photo-1486312338219-ce68d2c6f44d",
49
+ width: 4076,
50
+ height: 2712
51
+ },
52
+ url: "https://images.unsplash.com/photo-1486312338219-ce68d2c6f44d",
53
+ width: 4076,
54
+ height: 2712,
55
+ edit: {
56
+ zoom: 1,
57
+ crop: {
58
+ x: 0,
59
+ y: 0
60
+ },
61
+ background: "transparent"
62
+ },
63
+ credits: null,
64
+ alt: "Image of computer",
65
+ __TYPE__: "ImageContent",
66
+ thumbnails: {}
67
+ }
68
+ },
69
+ items: [
70
+ {
71
+ __TYPE__: "GroupItemContent",
72
+ value: [
73
+ [
74
+ "title",
75
+ {
76
+ __TYPE__: "StructuredTextContent",
77
+ value: [
78
+ {
79
+ type: "heading3",
80
+ content: {
81
+ text: "Integrate with the SliceZone",
82
+ spans: []
83
+ },
84
+ direction: "ltr"
85
+ }
86
+ ]
87
+ }
88
+ ],
89
+ [
90
+ "description",
91
+ {
92
+ __TYPE__: "StructuredTextContent",
93
+ value: [
94
+ {
95
+ type: "paragraph",
96
+ content: {
97
+ text: "This component has been matched by the SliceZone. Its model has been fetched from SliceMachine next-adapter!",
98
+ spans: []
99
+ },
100
+ direction: "ltr"
101
+ }
102
+ ]
103
+ }
104
+ ]
105
+ ]
106
+ },
107
+ {
108
+ __TYPE__: "GroupItemContent",
109
+ value: [
110
+ [
111
+ "title",
112
+ {
113
+ __TYPE__: "StructuredTextContent",
114
+ value: [
115
+ {
116
+ type: "heading3",
117
+ content: {
118
+ text: "Create your own",
119
+ spans: []
120
+ },
121
+ direction: "ltr"
122
+ }
123
+ ]
124
+ }
125
+ ],
126
+ [
127
+ "description",
128
+ {
129
+ __TYPE__: "StructuredTextContent",
130
+ value: [
131
+ {
132
+ type: "paragraph",
133
+ content: {
134
+ text: "Feel free to use this component fully, or use it as an example! We're adding templates as often as we can.",
135
+ spans: []
136
+ },
137
+ direction: "ltr"
138
+ }
139
+ ]
140
+ }
141
+ ]
142
+ ]
143
+ },
144
+ {
145
+ __TYPE__: "GroupItemContent",
146
+ value: [
147
+ [
148
+ "title",
149
+ {
150
+ __TYPE__: "StructuredTextContent",
151
+ value: [
152
+ {
153
+ type: "heading3",
154
+ content: {
155
+ text: "Add a variation",
156
+ spans: []
157
+ },
158
+ direction: "ltr"
159
+ }
160
+ ]
161
+ }
162
+ ],
163
+ [
164
+ "description",
165
+ {
166
+ __TYPE__: "StructuredTextContent",
167
+ value: [
168
+ {
169
+ type: "paragraph",
170
+ content: {
171
+ text: 'This slice comes with a "Image Right" variation, which means editors can switch text/image direction!',
172
+ spans: []
173
+ },
174
+ direction: "ltr"
175
+ }
176
+ ]
177
+ }
178
+ ]
179
+ ]
180
+ }
181
+ ]
182
+ },
183
+ {
184
+ __TYPE__: "SharedSliceContent",
185
+ variation: "imageRight",
186
+ primary: {
187
+ eyebrowHeadline: {
188
+ __TYPE__: "FieldContent",
189
+ value: "activity",
190
+ type: "Text"
191
+ },
192
+ title: {
193
+ __TYPE__: "StructuredTextContent",
194
+ value: [
195
+ {
196
+ type: "heading1",
197
+ content: {
198
+ text: "Alternate like a star",
199
+ spans: []
200
+ },
201
+ direction: "ltr"
202
+ }
203
+ ]
204
+ },
205
+ description: {
206
+ __TYPE__: "StructuredTextContent",
207
+ value: [
208
+ {
209
+ type: "paragraph",
210
+ content: {
211
+ text: "A predesigned AlternateGrid component, that you can use to list your skills or features of a product.",
212
+ spans: [
213
+ {
214
+ type: "strong",
215
+ start: 44,
216
+ end: 47
217
+ }
218
+ ]
219
+ },
220
+ direction: "ltr"
221
+ }
222
+ ]
223
+ },
224
+ image: {
225
+ origin: {
226
+ id: "main",
227
+ url: "https://images.unsplash.com/photo-1499951360447-b19be8fe80f5",
228
+ width: 5848,
229
+ height: 3899
230
+ },
231
+ url: "https://images.unsplash.com/photo-1499951360447-b19be8fe80f5",
232
+ width: 5848,
233
+ height: 3899,
234
+ edit: {
235
+ zoom: 1,
236
+ crop: {
237
+ x: 0,
238
+ y: 0
239
+ },
240
+ background: "transparent"
241
+ },
242
+ credits: null,
243
+ alt: "Image of computer",
244
+ __TYPE__: "ImageContent",
245
+ thumbnails: {}
246
+ }
247
+ },
248
+ items: [
249
+ {
250
+ __TYPE__: "GroupItemContent",
251
+ value: [
252
+ [
253
+ "title",
254
+ {
255
+ __TYPE__: "StructuredTextContent",
256
+ value: [
257
+ {
258
+ type: "heading3",
259
+ content: {
260
+ text: "Create a unique, high-performing site",
261
+ spans: [
262
+ {
263
+ type: "strong",
264
+ start: 9,
265
+ end: 15
266
+ }
267
+ ]
268
+ },
269
+ direction: "ltr"
270
+ }
271
+ ]
272
+ }
273
+ ],
274
+ [
275
+ "description",
276
+ {
277
+ __TYPE__: "StructuredTextContent",
278
+ value: [
279
+ {
280
+ type: "paragraph",
281
+ content: {
282
+ text: "Prismic is the headless website builder designed to help developers and marketers create unique, high-performing websites that are easy to edit.",
283
+ spans: []
284
+ },
285
+ direction: "ltr"
286
+ }
287
+ ]
288
+ }
289
+ ]
290
+ ]
291
+ }
292
+ ]
293
+ }
294
+ ];
295
+ const model = {
296
+ id: "alternate_grid",
297
+ type: "SharedSlice",
298
+ name: "AlternateGrid",
299
+ description: "AlternateGrid",
300
+ variations: [
301
+ {
302
+ id: "default",
303
+ name: "Default",
304
+ docURL: "...",
305
+ version: "initial",
306
+ description: "Default",
307
+ imageUrl: "",
308
+ primary: {
309
+ eyebrowHeadline: {
310
+ type: "Text",
311
+ config: {
312
+ label: "eyebrowHeadline",
313
+ placeholder: "Eyebrow"
314
+ }
315
+ },
316
+ title: {
317
+ type: "StructuredText",
318
+ config: {
319
+ label: "title",
320
+ placeholder: "",
321
+ allowTargetBlank: true,
322
+ single: "heading1,heading2,heading3,heading4,heading5,heading6,strong,em"
323
+ }
324
+ },
325
+ description: {
326
+ type: "StructuredText",
327
+ config: {
328
+ label: "description",
329
+ placeholder: "",
330
+ allowTargetBlank: true,
331
+ multi: "paragraph,preformatted,hyperlink,embed,rtl,strong,em,list-item,o-list-item"
332
+ }
333
+ },
334
+ image: {
335
+ type: "Image",
336
+ config: {
337
+ label: "image",
338
+ constraint: {},
339
+ thumbnails: []
340
+ }
341
+ }
342
+ },
343
+ items: {
344
+ title: {
345
+ type: "StructuredText",
346
+ config: {
347
+ label: "title",
348
+ placeholder: "",
349
+ allowTargetBlank: true,
350
+ single: "heading2,heading3,heading4,heading5,heading6,strong,em"
351
+ }
352
+ },
353
+ description: {
354
+ type: "StructuredText",
355
+ config: {
356
+ label: "description",
357
+ placeholder: "",
358
+ allowTargetBlank: true,
359
+ multi: "paragraph,preformatted,hyperlink,strong,em,list-item,o-list-item,rtl"
360
+ }
361
+ }
362
+ }
363
+ },
364
+ {
365
+ id: "imageRight",
366
+ name: "Image Right",
367
+ docURL: "...",
368
+ version: "initial",
369
+ description: "Default",
370
+ imageUrl: "",
371
+ primary: {
372
+ eyebrowHeadline: {
373
+ type: "Text",
374
+ config: {
375
+ label: "eyebrowHeadline",
376
+ placeholder: "Eyebrow"
377
+ }
378
+ },
379
+ title: {
380
+ type: "StructuredText",
381
+ config: {
382
+ label: "title",
383
+ placeholder: "",
384
+ allowTargetBlank: true,
385
+ single: "heading1,heading2,heading3,heading4,heading5,heading6,strong,em"
386
+ }
387
+ },
388
+ description: {
389
+ type: "StructuredText",
390
+ config: {
391
+ label: "description",
392
+ placeholder: "",
393
+ allowTargetBlank: true,
394
+ multi: "paragraph,preformatted,hyperlink,embed,rtl,strong,em,list-item,o-list-item"
395
+ }
396
+ },
397
+ image: {
398
+ type: "Image",
399
+ config: {
400
+ label: "image",
401
+ constraint: {},
402
+ thumbnails: []
403
+ }
404
+ }
405
+ },
406
+ items: {
407
+ title: {
408
+ type: "StructuredText",
409
+ config: {
410
+ label: "title",
411
+ placeholder: "",
412
+ allowTargetBlank: true,
413
+ single: "heading2,heading3,heading4,heading5,heading6,strong,em"
414
+ }
415
+ },
416
+ description: {
417
+ type: "StructuredText",
418
+ config: {
419
+ label: "description",
420
+ placeholder: "",
421
+ allowTargetBlank: true,
422
+ multi: "paragraph,preformatted,hyperlink,strong,em,list-item,o-list-item,rtl"
423
+ }
424
+ }
425
+ }
426
+ }
427
+ ]
428
+ };
429
+ const screenshotPaths = {
430
+ default: "AlternateGrid/screenshot-default.png",
431
+ imageRight: "AlternateGrid/screenshot-imageRight.png"
432
+ };
433
+ const createComponentContents = (model2, isTypeScriptProject) => {
434
+ const pascalName = pascalCase(model2.name);
435
+ if (isTypeScriptProject) {
436
+ return stripIndent`
437
+ import { Content, isFilled } from "@prismicio/client";
438
+ import {
439
+ SliceComponentProps,
440
+ PrismicRichText,
441
+ PrismicImage,
442
+ } from "@prismicio/react";
443
+
444
+ export type ${pascalName}Props = SliceComponentProps<Content.${pascalName}Slice>;
445
+
446
+ const ${pascalName} = ({ slice }: ${pascalName}Props): JSX.Element => {
447
+ return (
448
+ <section
449
+ data-slice-type={slice.slice_type}
450
+ data-slice-variation={slice.variation}
451
+ className="essential-slice es-bounded es-alternate-grid"
452
+ >
453
+ <div
454
+ className={\`
455
+ es-bounded__content
456
+ es-alternate-grid__content
457
+ \${isFilled.image(slice.primary.image) ? "es-alternate-grid__content--with-image" : ""}
458
+ \`}
459
+ >
460
+ {isFilled.image(slice.primary.image) && (
461
+ <PrismicImage
462
+ field={slice.primary.image}
463
+ className={\`
464
+ es-alternate-grid__image
465
+ \${
466
+ slice.variation === "imageRight"
467
+ ? "es-alternate-grid__image--right"
468
+ : "es-alternate-grid__image--left"
469
+ }
470
+ \`}
471
+ />
472
+ )}
473
+ <div className="es-alternate-grid__primary-content">
474
+ <div className="es-alternate-grid__primary-content__intro">
475
+ {isFilled.keyText(slice.primary.eyebrowHeadline) && (
476
+ <p className="es-alternate-grid__primary-content__intro__eyebrow">
477
+ {slice.primary.eyebrowHeadline}
478
+ </p>
479
+ )}
480
+ {isFilled.richText(slice.primary.title) && (
481
+ <div className="es-alternate-grid__primary-content__intro__headline">
482
+ <PrismicRichText field={slice.primary.title} />
483
+ </div>
484
+ )}
485
+ {isFilled.richText(slice.primary.description) && (
486
+ <div className="es-alternate-grid__primary-content__intro__description">
487
+ <PrismicRichText field={slice.primary.description} />
488
+ </div>
489
+ )}
490
+ </div>
491
+ {slice.items.length > 0 && (
492
+ <div className="es-alternate-grid__primary-content__items">
493
+ {slice.items.map((item, i) => (
494
+ <div key={\`item-\${i + 1}\`} className="es-alternate-grid__item">
495
+ {isFilled.richText(item.title) && (
496
+ <div className="es-alternate-grid__item__heading">
497
+ <PrismicRichText field={item.title} />
498
+ </div>
499
+ )}
500
+ {isFilled.richText(item.description) && (
501
+ <div className="es-alternate-grid__item__description">
502
+ <PrismicRichText field={item.description} />
503
+ </div>
504
+ )}
505
+ </div>
506
+ ))}
507
+ </div>
508
+ )}
509
+ </div>
510
+ </div>
511
+
512
+ <style>
513
+ {\`
514
+ .es-bounded {
515
+ margin: 0px;
516
+ min-width: 0px;
517
+ position: relative;
518
+ padding: 8vw 1.25rem;
519
+ }
520
+ .es-bounded-content {
521
+ min-width: 0px;
522
+ max-width: 90%;
523
+ margin: 0px auto;
524
+ }
525
+ .es-alternate-grid {
526
+ font-family: system-ui, sans-serif;
527
+ background-color: #fff;
528
+ color: #333;
529
+ }
530
+
531
+ .es-alternate-grid__content {
532
+ display: grid;
533
+ gap: 1.5rem;
534
+ grid-auto-flow: dense;
535
+ }
536
+
537
+ @media (min-width: 640px) {
538
+ .es-alternate-grid__content--with-image {
539
+ grid-template-columns: repeat(2, 1fr);
540
+ }
541
+ }
542
+
543
+ @media (min-width: 1200px) {
544
+ .es-alternate-grid__content--with-image {
545
+ grid-template-columns: repeat(2, 1fr);
546
+ }
547
+ }
548
+
549
+ .es-alternate-grid__image {
550
+ width: auto;
551
+ height: auto;
552
+ max-width: 100%;
553
+ align-self: center;
554
+ }
555
+
556
+ .es-alternate-grid__image--left {
557
+ grid-column: 1;
558
+ }
559
+
560
+ .es-alternate-grid__image--right {
561
+ grid-column: 2;
562
+ }
563
+
564
+ .es-alternate-grid__primary-content {
565
+ display: grid;
566
+ gap: 2rem;
567
+ }
568
+
569
+ .es-alternate-grid__primary-content__intro {
570
+ display: grid;
571
+ gap: 0.5rem;
572
+ }
573
+
574
+ .es-alternate-grid__primary-content__intro__eyebrow {
575
+ color: #8592e0;
576
+ font-size: 1.15rem;
577
+ font-weight: 500;
578
+ margin: 0;
579
+ }
580
+
581
+ .es-alternate-grid__primary-content__intro__headline {
582
+ font-size: 1.625rem;
583
+ font-weight: 700;
584
+ }
585
+
586
+ .es-alternate-grid__primary-content__intro__headline > * {
587
+ margin: 0;
588
+ }
589
+
590
+ @media (min-width: 640px) {
591
+ .es-alternate-grid__primary-content__intro__headline {
592
+ font-size: 2rem;
593
+ }
594
+ }
595
+
596
+ @media (min-width: 1024px) {
597
+ .es-alternate-grid__primary-content__intro__headline {
598
+ font-size: 2.5rem;
599
+ }
600
+ }
601
+
602
+ @media (min-width: 1200px) {
603
+ .es-alternate-grid__primary-content__intro__headline {
604
+ font-size: 2.75rem;
605
+ }
606
+ }
607
+
608
+ .es-alternate-grid__primary-content__intro__description {
609
+ font-size: 1.15rem;
610
+ max-width: 38rem;
611
+ }
612
+
613
+ .es-alternate-grid__primary-content__intro__description > p {
614
+ margin: 0;
615
+ }
616
+
617
+ @media (min-width: 1200px) {
618
+ .es-alternate-grid__primary-content__intro__description {
619
+ font-size: 1.4rem;
620
+ }
621
+ }
622
+
623
+ .es-alternate-grid__primary-content__items {
624
+ display: grid;
625
+ gap: 2rem;
626
+ }
627
+
628
+ @media (min-width: 640px) {
629
+ .es-alternate-grid__primary-content__items {
630
+ grid-template-columns: repeat(2, 1fr);
631
+ }
632
+ }
633
+
634
+ .es-alternate-grid__item {
635
+ display: grid;
636
+ align-content: start;
637
+ }
638
+
639
+ .es-alternate-grid__item__icon {
640
+ max-height: 3rem;
641
+ }
642
+
643
+ .es-alternate-grid__item__heading {
644
+ font-weight: 700;
645
+ font-size: 1.17rem;
646
+ margin-top: 0;
647
+ margin-bottom: .5rem;
648
+ }
649
+ .es-alternate-grid__item__heading > * {
650
+ margin: 0;
651
+ }
652
+
653
+ .es-alternate-grid__item__description {
654
+ font-size: 0.9rem;
655
+ }
656
+
657
+ .es-alternate-grid__item__description > * {
658
+ margin: 0;
659
+ }
660
+
661
+ \`}
662
+ </style>
663
+ </section>
664
+ );
665
+ };
666
+
667
+ export default ${pascalName};
668
+
669
+ `;
670
+ }
671
+ return stripIndent`
672
+ import { isFilled } from "@prismicio/client";
673
+ import {
674
+ PrismicRichText,
675
+ PrismicImage,
676
+ } from "@prismicio/react";
677
+
678
+ /**
679
+ * @typedef {import("@prismicio/client").Content.${pascalName}Slice} ${pascalName}Slice
680
+ * @typedef {import("@prismicio/react").SliceComponentProps<${pascalName}Slice>} ${pascalName}Props
681
+ * @param {${pascalName}Props}
682
+ */
683
+ const ${pascalName} = ({ slice }) => {
684
+ return (
685
+ <section
686
+ data-slice-type={slice.slice_type}
687
+ data-slice-variation={slice.variation}
688
+ className="essential-slice es-bounded es-alternate-grid"
689
+ >
690
+ <div
691
+ className={\`
692
+ es-bounded__content
693
+ es-alternate-grid__content
694
+ \${isFilled.image(slice.primary.image) ? "es-alternate-grid__content--with-image" : ""}
695
+ \`}
696
+ >
697
+ {isFilled.image(slice.primary.image) && (
698
+ <PrismicImage
699
+ field={slice.primary.image}
700
+ className={\`
701
+ es-alternate-grid__image
702
+ \${
703
+ slice.variation === "imageRight"
704
+ ? "es-alternate-grid__image--right"
705
+ : "es-alternate-grid__image--left"
706
+ }
707
+ \`}
708
+ />
709
+ )}
710
+ <div className="es-alternate-grid__primary-content">
711
+ <div className="es-alternate-grid__primary-content__intro">
712
+ {isFilled.keyText(slice.primary.eyebrowHeadline) && (
713
+ <p className="es-alternate-grid__primary-content__intro__eyebrow">
714
+ {slice.primary.eyebrowHeadline}
715
+ </p>
716
+ )}
717
+ {isFilled.richText(slice.primary.title) && (
718
+ <div className="es-alternate-grid__primary-content__intro__headline">
719
+ <PrismicRichText field={slice.primary.title} />
720
+ </div>
721
+ )}
722
+ {isFilled.richText(slice.primary.description) && (
723
+ <div className="es-alternate-grid__primary-content__intro__description">
724
+ <PrismicRichText field={slice.primary.description} />
725
+ </div>
726
+ )}
727
+ </div>
728
+ {slice.items.length > 0 && (
729
+ <div className="es-alternate-grid__primary-content__items">
730
+ {slice.items.map((item, i) => (
731
+ <div key={\`item-\${i + 1}\`} className="es-alternate-grid__item">
732
+ {isFilled.richText(item.title) && (
733
+ <div className="es-alternate-grid__item__heading">
734
+ <PrismicRichText field={item.title} />
735
+ </div>
736
+ )}
737
+ {isFilled.richText(item.description) && (
738
+ <div className="es-alternate-grid__item__description">
739
+ <PrismicRichText field={item.description} />
740
+ </div>
741
+ )}
742
+ </div>
743
+ ))}
744
+ </div>
745
+ )}
746
+ </div>
747
+ </div>
748
+
749
+ <style>
750
+ {\`
751
+ .es-bounded {
752
+ margin: 0px;
753
+ min-width: 0px;
754
+ position: relative;
755
+ padding: 8vw 1.25rem;
756
+ }
757
+ .es-bounded-content {
758
+ min-width: 0px;
759
+ max-width: 90%;
760
+ margin: 0px auto;
761
+ }
762
+ .es-alternate-grid {
763
+ font-family: system-ui, sans-serif;
764
+ background-color: #fff;
765
+ color: #333;
766
+ }
767
+
768
+ .es-alternate-grid__content {
769
+ display: grid;
770
+ gap: 1.5rem;
771
+ grid-auto-flow: dense;
772
+ }
773
+
774
+ @media (min-width: 640px) {
775
+ .es-alternate-grid__content--with-image {
776
+ grid-template-columns: repeat(2, 1fr);
777
+ }
778
+ }
779
+
780
+ @media (min-width: 1200px) {
781
+ .es-alternate-grid__content--with-image {
782
+ grid-template-columns: repeat(2, 1fr);
783
+ }
784
+ }
785
+
786
+ .es-alternate-grid__image {
787
+ max-width: 100%;
788
+ align-self: center;
789
+ }
790
+
791
+ .es-alternate-grid__image--left {
792
+ grid-column: 1;
793
+ }
794
+
795
+ .es-alternate-grid__image--right {
796
+ grid-column: 2;
797
+ }
798
+
799
+ .es-alternate-grid__primary-content {
800
+ display: grid;
801
+ gap: 2rem;
802
+ }
803
+
804
+ .es-alternate-grid__primary-content__intro {
805
+ display: grid;
806
+ gap: 0.5rem;
807
+ }
808
+
809
+ .es-alternate-grid__primary-content__intro__eyebrow {
810
+ color: #8592e0;
811
+ font-size: 1.15rem;
812
+ font-weight: 500;
813
+ margin: 0;
814
+ }
815
+
816
+ .es-alternate-grid__primary-content__intro__headline {
817
+ font-size: 1.625rem;
818
+ font-weight: 700;
819
+ }
820
+
821
+ .es-alternate-grid__primary-content__intro__headline > * {
822
+ margin: 0;
823
+ }
824
+
825
+ @media (min-width: 640px) {
826
+ .es-alternate-grid__primary-content__intro__headline {
827
+ font-size: 2rem;
828
+ }
829
+ }
830
+
831
+ @media (min-width: 1024px) {
832
+ .es-alternate-grid__primary-content__intro__headline {
833
+ font-size: 2.5rem;
834
+ }
835
+ }
836
+
837
+ @media (min-width: 1200px) {
838
+ .es-alternate-grid__primary-content__intro__headline {
839
+ font-size: 2.75rem;
840
+ }
841
+ }
842
+
843
+ .es-alternate-grid__primary-content__intro__description {
844
+ font-size: 1.15rem;
845
+ max-width: 38rem;
846
+ }
847
+
848
+ .es-alternate-grid__primary-content__intro__description > p {
849
+ margin: 0;
850
+ }
851
+
852
+ @media (min-width: 1200px) {
853
+ .es-alternate-grid__primary-content__intro__description {
854
+ font-size: 1.4rem;
855
+ }
856
+ }
857
+
858
+ .es-alternate-grid__primary-content__items {
859
+ display: grid;
860
+ gap: 2rem;
861
+ }
862
+
863
+ @media (min-width: 640px) {
864
+ .es-alternate-grid__primary-content__items {
865
+ grid-template-columns: repeat(2, 1fr);
866
+ }
867
+ }
868
+
869
+ .es-alternate-grid__item {
870
+ display: grid;
871
+ align-content: start;
872
+ }
873
+
874
+ .es-alternate-grid__item__icon {
875
+ max-height: 3rem;
876
+ }
877
+
878
+ .es-alternate-grid__item__heading {
879
+ font-weight: 700;
880
+ font-size: 1.17rem;
881
+ margin-top: 0;
882
+ margin-bottom: .5rem;
883
+ }
884
+ .es-alternate-grid__item__heading > * {
885
+ margin: 0;
886
+ }
887
+
888
+ .es-alternate-grid__item__description {
889
+ font-size: 0.9rem;
890
+ }
891
+
892
+ .es-alternate-grid__item__description > * {
893
+ margin: 0;
894
+ }
895
+
896
+ \`}
897
+ </style>
898
+ </section>
899
+ );
900
+ };
901
+
902
+ export default ${pascalName};
903
+
904
+ `;
905
+ };
906
+ export {
907
+ createComponentContents,
908
+ mocks,
909
+ model,
910
+ screenshotPaths
911
+ };
912
+ //# sourceMappingURL=index.js.map