@slicemachine/adapter-nuxt 0.3.18-dev-next-release.8 → 0.3.18-dev-slice-templates-svelte-nuxt.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 (35) hide show
  1. package/dist/AlternateGrid/javascript.vue +228 -0
  2. package/dist/AlternateGrid/screenshot-default.png +0 -0
  3. package/dist/AlternateGrid/screenshot-imageRight.png +0 -0
  4. package/dist/AlternateGrid/typescript.vue +235 -0
  5. package/dist/CallToAction/javascript.vue +127 -0
  6. package/dist/CallToAction/screenshot-alignLeft.png +0 -0
  7. package/dist/CallToAction/screenshot-default.png +0 -0
  8. package/dist/CallToAction/typescript.vue +134 -0
  9. package/dist/CustomerLogos/javascript.vue +117 -0
  10. package/dist/CustomerLogos/screenshot-default.png +0 -0
  11. package/dist/CustomerLogos/typescript.vue +124 -0
  12. package/dist/plugin.cjs +4 -1
  13. package/dist/plugin.cjs.map +1 -1
  14. package/dist/plugin.js +4 -1
  15. package/dist/plugin.js.map +1 -1
  16. package/dist/sliceTemplates/AlternateGrid/index.cjs +436 -0
  17. package/dist/sliceTemplates/AlternateGrid/index.cjs.map +1 -0
  18. package/dist/sliceTemplates/AlternateGrid/index.d.ts +8 -0
  19. package/dist/sliceTemplates/AlternateGrid/index.js +436 -0
  20. package/dist/sliceTemplates/AlternateGrid/index.js.map +1 -0
  21. package/dist/sliceTemplates/CallToAction/index.cjs +264 -0
  22. package/dist/sliceTemplates/CallToAction/index.cjs.map +1 -0
  23. package/dist/sliceTemplates/CallToAction/index.d.ts +8 -0
  24. package/dist/sliceTemplates/CallToAction/index.js +264 -0
  25. package/dist/sliceTemplates/CallToAction/index.js.map +1 -0
  26. package/dist/sliceTemplates/CustomerLogos/index.cjs +314 -0
  27. package/dist/sliceTemplates/CustomerLogos/index.cjs.map +1 -0
  28. package/dist/sliceTemplates/CustomerLogos/index.d.ts +7 -0
  29. package/dist/sliceTemplates/CustomerLogos/index.js +314 -0
  30. package/dist/sliceTemplates/CustomerLogos/index.js.map +1 -0
  31. package/package.json +3 -3
  32. package/src/plugin.ts +4 -1
  33. package/src/sliceTemplates/AlternateGrid/index.ts +441 -0
  34. package/src/sliceTemplates/CallToAction/index.ts +265 -0
  35. package/src/sliceTemplates/CustomerLogos/index.ts +313 -0
@@ -0,0 +1,228 @@
1
+ <script setup>
2
+ import { isFilled } from "@prismicio/client";
3
+
4
+ defineProps(getSliceComponentProps(["slice", "index", "slices", "context"]));
5
+ </script>
6
+
7
+ <template>
8
+ <section
9
+ :data-slice-type="slice.slice_type"
10
+ :data-slice-variation="slice.variation"
11
+ class="es-bounded es-alternate-grid"
12
+ >
13
+ <div
14
+ :class="[
15
+ 'es-bounded__content',
16
+ 'es-alternate-grid__content',
17
+ isFilled.image(slice.primary.image)
18
+ ? 'es-alternate-grid__content--with-image'
19
+ : '',
20
+ ]"
21
+ >
22
+ <PrismicImage
23
+ v-if="isFilled.image(slice.primary.image)"
24
+ :field="slice.primary.image"
25
+ :class="imageClass"
26
+ />
27
+ <div class="es-alternate-grid__primary-content">
28
+ <div
29
+ v-if="isFilled.keyText(slice.primary.eyebrowHeadline)"
30
+ class="es-alternate-grid__primary-content__intro__eyebrow"
31
+ >
32
+ {{ slice.primary.eyebrowHeadline }}
33
+ </div>
34
+ <PrismicRichText
35
+ v-if="isFilled.richText(slice.primary.title)"
36
+ :field="slice.primary.title"
37
+ class="es-alternate-grid__primary-content__intro__headline"
38
+ />
39
+ <PrismicRichText
40
+ v-if="isFilled.richText(slice.primary.description)"
41
+ :field="slice.primary.description"
42
+ class="es-alternate-grid__primary-content__intro__description"
43
+ />
44
+ <div
45
+ v-if="slice.items && slice.items.length"
46
+ class="es-alternate-grid__primary-content__items"
47
+ >
48
+ <div
49
+ v-for="(item, i) in slice.items"
50
+ :key="i"
51
+ class="es-alternate-grid__item"
52
+ >
53
+ <PrismicRichText
54
+ v-if="isFilled.richText(item.title)"
55
+ :field="item.title"
56
+ class="es-alternate-grid__item__heading"
57
+ />
58
+ <PrismicRichText
59
+ v-if="isFilled.richText(item.description)"
60
+ :field="item.description"
61
+ class="es-alternate-grid__item__description"
62
+ />
63
+ </div>
64
+ </div>
65
+ </div>
66
+ </div>
67
+ </section>
68
+ </template>
69
+
70
+ <style>
71
+ .es-bounded {
72
+ margin: 0px;
73
+ min-width: 0px;
74
+ position: relative;
75
+ padding: 8vw 1.25rem;
76
+ }
77
+
78
+ .es-bounded__content {
79
+ min-width: 0px;
80
+ max-width: 90%;
81
+ margin: 0px auto;
82
+ }
83
+
84
+ .es-alternate-grid {
85
+ font-family: system-ui, sans-serif;
86
+ background-color: #fff;
87
+ color: #333;
88
+ }
89
+
90
+ .es-alternate-grid__content {
91
+ display: grid;
92
+ gap: 1.5rem;
93
+ grid-auto-flow: dense;
94
+ }
95
+
96
+ @media (min-width: 640px) {
97
+ .es-alternate-grid__content--with-image {
98
+ grid-template-columns: repeat(2, 1fr);
99
+ }
100
+ }
101
+
102
+ @media (min-width: 1200px) {
103
+ .es-alternate-grid__content--with-image {
104
+ grid-template-columns: repeat(2, 1fr);
105
+ }
106
+ }
107
+
108
+ .es-alternate-grid__image {
109
+ width: auto;
110
+ height: auto;
111
+ max-width: 100%;
112
+ align-self: center;
113
+ }
114
+
115
+ .es-alternate-grid__image--left {
116
+ order: 1;
117
+ }
118
+
119
+ .es-alternate-grid__image--left + div {
120
+ order: 2;
121
+ }
122
+
123
+ .es-alternate-grid__image--right {
124
+ order: 2;
125
+ }
126
+
127
+ .es-alternate-grid__image--right + div {
128
+ order: 1;
129
+ }
130
+
131
+ .es-alternate-grid__primary-content {
132
+ display: grid;
133
+ gap: 2rem;
134
+ }
135
+
136
+ .es-alternate-grid__primary-content__intro {
137
+ display: grid;
138
+ gap: 0.5rem;
139
+ }
140
+
141
+ .es-alternate-grid__primary-content__intro__eyebrow {
142
+ color: #8592e0;
143
+ font-size: 1.15rem;
144
+ font-weight: 500;
145
+ margin: 0;
146
+ }
147
+
148
+ .es-alternate-grid__primary-content__intro__headline {
149
+ font-size: 1.625rem;
150
+ font-weight: 700;
151
+ }
152
+
153
+ .es-alternate-grid__primary-content__intro__headline > * {
154
+ margin: 0;
155
+ }
156
+
157
+ @media (min-width: 640px) {
158
+ .es-alternate-grid__primary-content__intro__headline {
159
+ font-size: 2rem;
160
+ }
161
+ }
162
+
163
+ @media (min-width: 1024px) {
164
+ .es-alternate-grid__primary-content__intro__headline {
165
+ font-size: 2.5rem;
166
+ }
167
+ }
168
+
169
+ @media (min-width: 1200px) {
170
+ .es-alternate-grid__primary-content__intro__headline {
171
+ font-size: 2.75rem;
172
+ }
173
+ }
174
+
175
+ .es-alternate-grid__primary-content__intro__description {
176
+ font-size: 1.15rem;
177
+ max-width: 38rem;
178
+ }
179
+
180
+ .es-alternate-grid__primary-content__intro__description > p {
181
+ margin: 0;
182
+ }
183
+
184
+ @media (min-width: 1200px) {
185
+ .es-alternate-grid__primary-content__intro__description {
186
+ font-size: 1.4rem;
187
+ }
188
+ }
189
+
190
+ .es-alternate-grid__primary-content__items {
191
+ display: grid;
192
+ gap: 2rem;
193
+ }
194
+
195
+ @media (min-width: 640px) {
196
+ .es-alternate-grid__primary-content__items {
197
+ grid-template-columns: repeat(2, 1fr);
198
+ }
199
+ }
200
+
201
+ .es-alternate-grid__item {
202
+ display: grid;
203
+ align-content: start;
204
+ }
205
+
206
+ .es-alternate-grid__item__icon {
207
+ max-height: 3rem;
208
+ }
209
+
210
+ .es-alternate-grid__item__heading {
211
+ font-weight: 700;
212
+ font-size: 1.17rem;
213
+ margin-top: 0;
214
+ margin-bottom: 0.5rem;
215
+ }
216
+
217
+ .es-alternate-grid__item__heading > * {
218
+ margin: 0;
219
+ }
220
+
221
+ .es-alternate-grid__item__description {
222
+ font-size: 0.9rem;
223
+ }
224
+
225
+ .es-alternate-grid__item__description > * {
226
+ margin: 0;
227
+ }
228
+ </style>
@@ -0,0 +1,235 @@
1
+ <script setup lang="ts">
2
+ import { Content, isFilled } from "@prismicio/client";
3
+
4
+ defineProps(
5
+ getSliceComponentProps<Content.PascalNameToReplaceSlice>([
6
+ "slice",
7
+ "index",
8
+ "slices",
9
+ "context",
10
+ ]),
11
+ );
12
+ </script>
13
+
14
+ <template>
15
+ <section
16
+ :data-slice-type="slice.slice_type"
17
+ :data-slice-variation="slice.variation"
18
+ class="es-bounded es-alternate-grid"
19
+ >
20
+ <div
21
+ :class="[
22
+ 'es-bounded__content',
23
+ 'es-alternate-grid__content',
24
+ isFilled.image(slice.primary.image)
25
+ ? 'es-alternate-grid__content--with-image'
26
+ : '',
27
+ ]"
28
+ >
29
+ <PrismicImage
30
+ v-if="isFilled.image(slice.primary.image)"
31
+ :field="slice.primary.image"
32
+ :class="imageClass"
33
+ />
34
+ <div class="es-alternate-grid__primary-content">
35
+ <div
36
+ v-if="isFilled.keyText(slice.primary.eyebrowHeadline)"
37
+ class="es-alternate-grid__primary-content__intro__eyebrow"
38
+ >
39
+ {{ slice.primary.eyebrowHeadline }}
40
+ </div>
41
+ <PrismicRichText
42
+ v-if="isFilled.richText(slice.primary.title)"
43
+ :field="slice.primary.title"
44
+ class="es-alternate-grid__primary-content__intro__headline"
45
+ />
46
+ <PrismicRichText
47
+ v-if="isFilled.richText(slice.primary.description)"
48
+ :field="slice.primary.description"
49
+ class="es-alternate-grid__primary-content__intro__description"
50
+ />
51
+ <div
52
+ v-if="slice.items && slice.items.length"
53
+ class="es-alternate-grid__primary-content__items"
54
+ >
55
+ <div
56
+ v-for="(item, i) in slice.items"
57
+ :key="i"
58
+ class="es-alternate-grid__item"
59
+ >
60
+ <PrismicRichText
61
+ v-if="isFilled.richText(item.title)"
62
+ :field="item.title"
63
+ class="es-alternate-grid__item__heading"
64
+ />
65
+ <PrismicRichText
66
+ v-if="isFilled.richText(item.description)"
67
+ :field="item.description"
68
+ class="es-alternate-grid__item__description"
69
+ />
70
+ </div>
71
+ </div>
72
+ </div>
73
+ </div>
74
+ </section>
75
+ </template>
76
+
77
+ <style>
78
+ .es-bounded {
79
+ margin: 0px;
80
+ min-width: 0px;
81
+ position: relative;
82
+ padding: 8vw 1.25rem;
83
+ }
84
+
85
+ .es-bounded__content {
86
+ min-width: 0px;
87
+ max-width: 90%;
88
+ margin: 0px auto;
89
+ }
90
+
91
+ .es-alternate-grid {
92
+ font-family: system-ui, sans-serif;
93
+ background-color: #fff;
94
+ color: #333;
95
+ }
96
+
97
+ .es-alternate-grid__content {
98
+ display: grid;
99
+ gap: 1.5rem;
100
+ grid-auto-flow: dense;
101
+ }
102
+
103
+ @media (min-width: 640px) {
104
+ .es-alternate-grid__content--with-image {
105
+ grid-template-columns: repeat(2, 1fr);
106
+ }
107
+ }
108
+
109
+ @media (min-width: 1200px) {
110
+ .es-alternate-grid__content--with-image {
111
+ grid-template-columns: repeat(2, 1fr);
112
+ }
113
+ }
114
+
115
+ .es-alternate-grid__image {
116
+ width: auto;
117
+ height: auto;
118
+ max-width: 100%;
119
+ align-self: center;
120
+ }
121
+
122
+ .es-alternate-grid__image--left {
123
+ order: 1;
124
+ }
125
+
126
+ .es-alternate-grid__image--left + div {
127
+ order: 2;
128
+ }
129
+
130
+ .es-alternate-grid__image--right {
131
+ order: 2;
132
+ }
133
+
134
+ .es-alternate-grid__image--right + div {
135
+ order: 1;
136
+ }
137
+
138
+ .es-alternate-grid__primary-content {
139
+ display: grid;
140
+ gap: 2rem;
141
+ }
142
+
143
+ .es-alternate-grid__primary-content__intro {
144
+ display: grid;
145
+ gap: 0.5rem;
146
+ }
147
+
148
+ .es-alternate-grid__primary-content__intro__eyebrow {
149
+ color: #8592e0;
150
+ font-size: 1.15rem;
151
+ font-weight: 500;
152
+ margin: 0;
153
+ }
154
+
155
+ .es-alternate-grid__primary-content__intro__headline {
156
+ font-size: 1.625rem;
157
+ font-weight: 700;
158
+ }
159
+
160
+ .es-alternate-grid__primary-content__intro__headline > * {
161
+ margin: 0;
162
+ }
163
+
164
+ @media (min-width: 640px) {
165
+ .es-alternate-grid__primary-content__intro__headline {
166
+ font-size: 2rem;
167
+ }
168
+ }
169
+
170
+ @media (min-width: 1024px) {
171
+ .es-alternate-grid__primary-content__intro__headline {
172
+ font-size: 2.5rem;
173
+ }
174
+ }
175
+
176
+ @media (min-width: 1200px) {
177
+ .es-alternate-grid__primary-content__intro__headline {
178
+ font-size: 2.75rem;
179
+ }
180
+ }
181
+
182
+ .es-alternate-grid__primary-content__intro__description {
183
+ font-size: 1.15rem;
184
+ max-width: 38rem;
185
+ }
186
+
187
+ .es-alternate-grid__primary-content__intro__description > p {
188
+ margin: 0;
189
+ }
190
+
191
+ @media (min-width: 1200px) {
192
+ .es-alternate-grid__primary-content__intro__description {
193
+ font-size: 1.4rem;
194
+ }
195
+ }
196
+
197
+ .es-alternate-grid__primary-content__items {
198
+ display: grid;
199
+ gap: 2rem;
200
+ }
201
+
202
+ @media (min-width: 640px) {
203
+ .es-alternate-grid__primary-content__items {
204
+ grid-template-columns: repeat(2, 1fr);
205
+ }
206
+ }
207
+
208
+ .es-alternate-grid__item {
209
+ display: grid;
210
+ align-content: start;
211
+ }
212
+
213
+ .es-alternate-grid__item__icon {
214
+ max-height: 3rem;
215
+ }
216
+
217
+ .es-alternate-grid__item__heading {
218
+ font-weight: 700;
219
+ font-size: 1.17rem;
220
+ margin-top: 0;
221
+ margin-bottom: 0.5rem;
222
+ }
223
+
224
+ .es-alternate-grid__item__heading > * {
225
+ margin: 0;
226
+ }
227
+
228
+ .es-alternate-grid__item__description {
229
+ font-size: 0.9rem;
230
+ }
231
+
232
+ .es-alternate-grid__item__description > * {
233
+ margin: 0;
234
+ }
235
+ </style>
@@ -0,0 +1,127 @@
1
+ <script setup>
2
+ import { ref } from "vue";
3
+ import { isFilled } from "@prismicio/client";
4
+ import { PrismicLink, PrismicImage, PrismicRichText } from "@prismicio/svelte";
5
+
6
+ defineProps(getSliceComponentProps(["slice", "index", "slices", "context"]));
7
+
8
+ const alignment = slice.variation === "alignLeft" ? ref("left") : ref("center");
9
+ </script>
10
+
11
+ <template>
12
+ <section
13
+ :data-slice-type="slice.slice_type"
14
+ :data-slice-variation="slice.variation"
15
+ class="es-bounded es-call-to-action"
16
+ >
17
+ <div class="es-bounded__content es-call-to-action__content">
18
+ <PrismicImage
19
+ v-if="isFilled.image(slice.primary.image)"
20
+ :field="slice.primary.image"
21
+ class="es-call-to-action__image"
22
+ />
23
+ <div class="es-call-to-action__content">
24
+ <h2
25
+ v-if="isFilled.richText(slice.primary.title)"
26
+ class="es-call-to-action__content__heading"
27
+ >
28
+ <PrismicRichText :field="slice.primary.title" />
29
+ </h2>
30
+ <div
31
+ v-if="isFilled.richText(slice.primary.paragraph)"
32
+ class="es-call-to-action__content__paragraph"
33
+ >
34
+ <PrismicRichText :field="slice.primary.paragraph" />
35
+ </div>
36
+ </div>
37
+ <PrismicLink
38
+ v-if="isFilled.link(slice.primary.buttonLink)"
39
+ :field="slice.primary.buttonLink"
40
+ class="es-call-to-action__button"
41
+ >
42
+ {{ slice.primary.buttonLabel || "Learn more…" }}
43
+ </PrismicLink>
44
+ </div>
45
+ </section>
46
+ </template>
47
+
48
+ <style>
49
+ .es-bounded {
50
+ padding: 8vw 2rem;
51
+ }
52
+
53
+ .es-bounded__content {
54
+ margin-left: auto;
55
+ margin-right: auto;
56
+ }
57
+
58
+ @media screen and (min-width: 640px) {
59
+ .es-bounded__content {
60
+ max-width: 90%;
61
+ }
62
+ }
63
+
64
+ @media screen and (min-width: 896px) {
65
+ .es-bounded__content {
66
+ max-width: 80%;
67
+ }
68
+ }
69
+
70
+ @media screen and (min-width: 1280px) {
71
+ .es-bounded__content {
72
+ max-width: 75%;
73
+ }
74
+ }
75
+
76
+ .es-call-to-action {
77
+ background-color: #fff;
78
+ color: #333;
79
+ }
80
+
81
+ .es-call-to-action__content {
82
+ display: grid;
83
+ gap: 2rem;
84
+ }
85
+
86
+ .es-call-to-action__image {
87
+ max-width: 14rem;
88
+ height: auto;
89
+ width: auto;
90
+ justify-self: v-bind(alignment);
91
+ }
92
+
93
+ .es-call-to-action__content {
94
+ display: grid;
95
+ gap: 1rem;
96
+ justify-items: v-bind(alignment);
97
+ }
98
+
99
+ .es-call-to-action__content__heading {
100
+ font-size: 2rem;
101
+ font-weight: 700;
102
+ text-align: v-bind(alignment);
103
+ }
104
+
105
+ .es-call-to-action__content__paragraph {
106
+ font-size: 1.15rem;
107
+ max-width: 38rem;
108
+ text-align: v-bind(alignment);
109
+ }
110
+
111
+ .es-call-to-action__button {
112
+ justify-self: v-bind(alignment);
113
+ border-radius: 0.25rem;
114
+ display: inline-block;
115
+ font-size: 0.875rem;
116
+ line-height: 1.3;
117
+ padding: 1rem 2.625rem;
118
+ text-align: v-bind(alignment);
119
+ transition: background-color 100ms linear;
120
+ background-color: #16745f;
121
+ color: #fff;
122
+ }
123
+
124
+ .es-call-to-action__button:hover {
125
+ background-color: #0d5e4c;
126
+ }
127
+ </style>