@explorer-1/vue 0.2.14 → 0.2.16

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 (80) hide show
  1. package/components.d.ts +7 -0
  2. package/dist/explorer-1-vue.js +2415 -2405
  3. package/dist/explorer-1-vue.umd.cjs +12 -12
  4. package/dist/src/components/BaseAccordionItem/BaseAccordionItem.stories.d.ts +99 -0
  5. package/dist/src/components/BaseButton/BaseButton.stories.d.ts +13 -0
  6. package/dist/src/components/BaseButton/BaseButton.vue.d.ts +15 -1
  7. package/dist/src/components/BaseImage/BaseImage.vue.d.ts +1 -1
  8. package/dist/src/components/BaseImagePlaceholder/BaseImagePlaceholder.vue.d.ts +1 -1
  9. package/dist/src/components/BaseLink/BaseLink.vue.d.ts +1 -1
  10. package/dist/src/components/BaseModal/BaseModal.stories.d.ts +26 -0
  11. package/dist/src/components/BaseSwimlane/BaseSwimlane.vue.d.ts +2 -2
  12. package/dist/src/components/BaseTimer/BaseTimer.vue.d.ts +2 -2
  13. package/dist/src/components/BlockAccordion/BlockAccordion.stories.d.ts +98 -0
  14. package/dist/src/components/BlockHeading/BlockHeading.stories.d.ts +1 -0
  15. package/dist/src/components/BlockHeading/BlockHeading.vue.d.ts +13 -11
  16. package/dist/src/components/BlockLinkCard/BlockLinkCard.vue.d.ts +1 -1
  17. package/dist/src/components/BlockLinkCarousel/BlockLinkCarousel.vue.d.ts +1 -1
  18. package/dist/src/components/BlockRelatedLinks/RelatedLink.vue.d.ts +1 -1
  19. package/dist/src/components/BlockStreamfield/BlockStreamfield.stories.d.ts +75 -40
  20. package/dist/src/components/BlockStreamfield/BlockStreamfield.vue.d.ts +2 -19
  21. package/dist/src/components/BlockText/BlockText.vue.d.ts +1 -1
  22. package/dist/src/components/HeroMedia/HeroMedia.vue.d.ts +7 -0
  23. package/dist/src/components/LayoutHelper/LayoutHelper.vue.d.ts +1 -1
  24. package/dist/src/components/MetaPanel/MetaPanel.stories.d.ts +51 -0
  25. package/dist/src/components/MetaPanelItems/MetaPanelItems.stories.d.ts +25 -0
  26. package/dist/src/components/MetadataEduResource/MetadataEduResource.stories.d.ts +1 -1
  27. package/dist/src/components/MixinCarousel/MixinCarousel.vue.d.ts +2 -2
  28. package/dist/src/components/NavSecondary/NavSecondary.vue.d.ts +4 -0
  29. package/dist/src/interfaces.d.ts +84 -7
  30. package/dist/src/templates/PageContent/PageContent.stories.d.ts +6 -5
  31. package/dist/src/templates/PageImageDetail/PageImageDetail.stories.d.ts +43 -16
  32. package/dist/src/templates/PageNewsDetail/PageNewsDetail.stories.d.ts +344 -128
  33. package/dist/src/templates/edu/PageEduExplainerArticle/PageEduExplainerArticle.stories.d.ts +44 -16
  34. package/dist/src/templates/edu/PageEduLesson/PageEduLesson.stories.d.ts +544 -0
  35. package/dist/src/templates/edu/PageEduNewsDetail/PageEduNewsDetail.stories.d.ts +67 -63
  36. package/dist/src/templates/www/PageAsteroidWatchIndex/PageAsteroidWatchIndex.stories.d.ts +22 -21
  37. package/dist/src/templates/www/PageCuratedGallery/PageCuratedGallery.stories.d.ts +43 -16
  38. package/dist/src/templates/www/PageRoboticsDetail/PageRoboticsDetail.stories.d.ts +43 -16
  39. package/dist/src/utils/getHeadingId.d.ts +3 -1
  40. package/dist/style.css +1 -1
  41. package/package.json +3 -2
  42. package/src/components/BaseAccordionItem/BaseAccordionItem.stories.js +15 -0
  43. package/src/components/BaseAccordionItem/BaseAccordionItem.vue +108 -0
  44. package/src/components/BaseButton/BaseButton.vue +12 -1
  45. package/src/components/BaseImage/BaseImage.vue +1 -1
  46. package/src/components/BaseImagePlaceholder/BaseImagePlaceholder.vue +1 -1
  47. package/src/components/BaseLink/BaseLink.vue +1 -1
  48. package/src/components/BaseTimer/BaseTimer.vue +6 -3
  49. package/src/components/BlockAccordion/BlockAccordion.stories.js +29 -0
  50. package/src/components/BlockAccordion/BlockAccordion.vue +32 -0
  51. package/src/components/BlockHeading/BlockHeading.stories.js +2 -2
  52. package/src/components/BlockHeading/BlockHeading.vue +15 -7
  53. package/src/components/BlockLinkCarousel/BlockLinkCarousel.vue +1 -1
  54. package/src/components/BlockRelatedLinks/RelatedLink.vue +1 -1
  55. package/src/components/BlockStreamfield/BlockStreamfield.stories.js +23 -5
  56. package/src/components/BlockStreamfield/BlockStreamfield.vue +8 -26
  57. package/src/components/BlockText/BlockText.vue +1 -1
  58. package/src/components/HeroMedia/HeroMedia.vue +10 -1
  59. package/src/components/LayoutHelper/LayoutHelper.vue +1 -1
  60. package/src/components/MetaPanel/MetaPanel.stories.js +112 -0
  61. package/src/components/MetaPanel/MetaPanel.vue +237 -0
  62. package/src/components/MetaPanelAccordion/MetaPanelAccordion.vue +64 -0
  63. package/src/components/MetaPanelItems/MetaPanelItems.stories.js +27 -0
  64. package/src/components/MetaPanelItems/MetaPanelItems.vue +186 -0
  65. package/src/components/MetadataEduResource/MetadataEduResource.stories.js +2 -4
  66. package/src/components/MixinCarousel/MixinCarousel.vue +2 -2
  67. package/src/components/NavJumpMenu/NavJumpMenu.vue +10 -8
  68. package/src/components/NavSecondary/NavSecondary.vue +26 -15
  69. package/src/components/ShareButtonsEdu/ShareButtonsEdu.vue +1 -1
  70. package/src/interfaces.ts +91 -8
  71. package/src/main.ts +2 -0
  72. package/src/templates/edu/PageEduExplainerArticle/PageEduExplainerArticle.stories.js +1 -0
  73. package/src/templates/edu/PageEduExplainerArticle/PageEduExplainerArticle.vue +10 -1
  74. package/src/templates/edu/PageEduLesson/PageEduLesson.stories.js +303 -0
  75. package/src/templates/edu/PageEduLesson/PageEduLesson.vue +410 -0
  76. package/src/templates/edu/PageEduLesson/PageEduLessonSection.vue +98 -0
  77. package/src/templates/edu/PageEduNewsDetail/PageEduNewsDetail.stories.js +1 -0
  78. package/src/templates/edu/PageEduNewsDetail/PageEduNewsDetail.vue +4 -21
  79. package/src/utils/dayjs.js +0 -6
  80. package/src/utils/getHeadingId.ts +3 -3
package/src/interfaces.ts CHANGED
@@ -15,6 +15,31 @@ export interface BlockData {
15
15
  level?: string
16
16
  items?: any[]
17
17
  }
18
+ export interface StreamfieldBlockData extends BlockData {
19
+ blockId?: string
20
+ id?: string
21
+ fullBleed?: boolean
22
+ heading?: string
23
+ galleryTitle?: string
24
+ galleryDescription?: string
25
+ coverImage?: ImageObject
26
+ gallerySlides?: ImageObject[]
27
+ blocks?: object[]
28
+ value?: string
29
+ customLabel?: string
30
+ introduction?: string
31
+ teaserPage?: object | string[]
32
+ image?: ImageObject
33
+ buttonText?: string
34
+ fullWidthImage?: boolean
35
+ video?: any
36
+ embed?: any
37
+ displayCaption?: boolean
38
+ caption?: string
39
+ credit?: string
40
+ imageInline?: ImageObject
41
+ }
42
+
18
43
  export interface ImageSrcObject {
19
44
  url: string
20
45
  width: number
@@ -125,17 +150,14 @@ export interface RelatedLinkObject extends LinkObject {
125
150
  document: { url: string } | null
126
151
  text: string | null
127
152
  }
128
-
129
- export interface PageResponseObject {
130
- __typename: string
131
- contentType: string
132
- breadcrumb?: string
133
- url?: string
153
+ export interface BlockRelatedLinksObject extends BlockData {
154
+ heading: string
155
+ links: RelatedLinkObject[]
134
156
  }
135
157
 
136
158
  export interface PageResponse {
137
159
  __typename: string
138
- page: PageResponseObject
160
+ page: PageObject
139
161
  }
140
162
 
141
163
  export interface HeaderResponse {
@@ -152,7 +174,7 @@ export interface FooterResponse {
152
174
  export type Explorer1Theme = 'defaultTheme' | 'ThemeInternal' | 'ThemeEdu'
153
175
 
154
176
  export interface Attributes {
155
- [name: string]: string
177
+ [key: string]: string
156
178
  }
157
179
 
158
180
  export interface AuthorObject {
@@ -177,3 +199,64 @@ export interface PillDictionaryInterface {
177
199
  export interface DictionaryInterface {
178
200
  [key: string]: string
179
201
  }
202
+ export interface AccordionItemObject {
203
+ title?: string
204
+ body?: StreamfieldBlockData[]
205
+ }
206
+
207
+ export type MetaPanelTheme = 'primary' | 'secondary' | 'stars'
208
+
209
+ export interface PageObject {
210
+ __typename: string
211
+ contentType: string
212
+ breadcrumb?: string
213
+ slug: string
214
+ url: string
215
+ title: string
216
+ getTopicsForDisplay?: Topic[]
217
+ label?: string
218
+ summary?: string
219
+ topper?: string
220
+ seoTitle?: string
221
+ searchDescription?: string
222
+ heroPosition?: 'full_bleed' | 'inline'
223
+ heroConstrain?: boolean
224
+ publicationDate?: string
225
+ body?: StreamfieldBlockData[]
226
+ thumbnailImage?: ThumbnailObject
227
+ relatedLinks?: BlockRelatedLinksObject[]
228
+ relatedContentHeading: string
229
+ relatedContent?: any
230
+ }
231
+
232
+ export interface EduResourcesSubject {
233
+ subject: string
234
+ }
235
+ export interface EduResourcesGradeLevel {
236
+ gradeLevel: string
237
+ }
238
+
239
+ export interface EduResourcesTime {
240
+ time: string
241
+ }
242
+ export interface EduResourceStandard {
243
+ type: string
244
+ code: string
245
+ domain: {
246
+ domain: string
247
+ }
248
+ definition: string
249
+ }
250
+
251
+ export interface EduResourceStandardItem {
252
+ standard: EduResourceStandard
253
+ }
254
+
255
+ export interface PageEduResourcesObject extends PageObject {
256
+ hero?: StreamfieldBlockData[]
257
+ primarySubject?: EduResourcesSubject
258
+ additionalSubjects?: EduResourcesSubject[]
259
+ gradeLevels?: EduResourcesGradeLevel[]
260
+ time?: EduResourcesTime
261
+ standards: EduResourceStandardItem[]
262
+ }
package/src/main.ts CHANGED
@@ -6,6 +6,7 @@ import filters from './utils/filters'
6
6
  // @ts-ignore
7
7
  import vClickOutside from 'click-outside-vue3'
8
8
  import VueCompareImage from 'vue3-compare-image'
9
+ import { BindOncePlugin } from 'vue-bind-once'
9
10
  import './assets/scss/styles-with-fonts.scss'
10
11
  import App from './App.vue'
11
12
 
@@ -23,6 +24,7 @@ app.use(pinia)
23
24
  app.use(router)
24
25
  app.use(vClickOutside)
25
26
  app.use(VueCompareImage)
27
+ app.use(BindOncePlugin)
26
28
 
27
29
  // filters
28
30
  app.config.globalProperties.$filters = filters
@@ -47,6 +47,7 @@ export const BaseStory = {
47
47
  blockType: 'HeroImageBlock'
48
48
  }
49
49
  ],
50
+ showJumpMenu: true,
50
51
  ...BlockStreamfieldTruncatedData,
51
52
  publicationDate: '2024-07-09',
52
53
  summary: 'Summary of resource article',
@@ -5,6 +5,7 @@ import BaseImagePlaceholder from './../../../components/BaseImagePlaceholder/Bas
5
5
  import BlockImageCarousel from './../../../components/BlockImageCarousel/BlockImageCarousel.vue'
6
6
  import BlockImageComparison from './../../../components/BlockImageComparison/BlockImageComparison.vue'
7
7
  import BlockLinkCarousel from './../../../components/BlockLinkCarousel/BlockLinkCarousel.vue'
8
+ import BlockVideo from './../../../components/BlockVideo/BlockVideo.vue'
8
9
  import LayoutHelper from './../../../components/LayoutHelper/LayoutHelper.vue'
9
10
  import DetailHeadline from './../../../components/DetailHeadline/DetailHeadline.vue'
10
11
  import BlockImageStandard from './../../../components/BlockImage/BlockImageStandard.vue'
@@ -12,6 +13,7 @@ import ShareButtonsEdu from './../../../components/ShareButtonsEdu/ShareButtonsE
12
13
  import BlockStreamfield from './../../../components/BlockStreamfield/BlockStreamfield.vue'
13
14
  import BlockIframeEmbed from '../../../components/BlockIframeEmbed/BlockIframeEmbed.vue'
14
15
  import BlockRelatedLinks from '../../../components/BlockRelatedLinks/BlockRelatedLinks.vue'
16
+ import NavJumpMenu from './../../../components/NavJumpMenu/NavJumpMenu.vue'
15
17
 
16
18
  export default defineComponent({
17
19
  name: 'PageEduExplainerArticle',
@@ -27,7 +29,9 @@ export default defineComponent({
27
29
  BlockImageCarousel,
28
30
  BlockImageComparison,
29
31
  BlockLinkCarousel,
30
- BlockRelatedLinks
32
+ BlockRelatedLinks,
33
+ BlockVideo,
34
+ NavJumpMenu
31
35
  },
32
36
  props: {
33
37
  data: {
@@ -121,6 +125,11 @@ export default defineComponent({
121
125
  />
122
126
  </LayoutHelper>
123
127
 
128
+ <NavJumpMenu
129
+ :title="data.title"
130
+ :blocks="data.body"
131
+ :enabled="data.showJumpMenu"
132
+ />
124
133
  <!-- inline hero content -->
125
134
  <LayoutHelper
126
135
  v-if="!heroEmpty && heroInline"
@@ -0,0 +1,303 @@
1
+ import { HeroMediaData } from './../../../components/HeroMedia/HeroMedia.stories'
2
+ import { BlockIframeEmbedData } from './../../../components/BlockIframeEmbed/BlockIframeEmbed.stories.js'
3
+ import { BlockImageCarouselData } from './../../../components/BlockImageCarousel/BlockImageCarousel.stories'
4
+ import { BlockImageData } from './../../../components/BlockImage/BlockImage.stories'
5
+ import { BlockHeadingData } from './../../../components/BlockHeading/BlockHeading.stories'
6
+ import { BlockImageComparisonData } from './../../../components/BlockImageComparison/BlockImageComparison.stories'
7
+ import { BaseVideoData } from './../../../components/BaseVideo/BaseVideo.stories'
8
+ import { BlockVideoEmbedData } from './../../../components/BlockVideoEmbed/BlockVideoEmbed.stories'
9
+ import { BlockRelatedLinksData } from './../../../components/BlockRelatedLinks/BlockRelatedLinks.stories.js'
10
+ import { BlockLinkCardCarouselData } from './../../../components/BlockLinkCarousel/BlockLinkCarousel.stories.js'
11
+ import {
12
+ BlockStreamfieldTruncatedData,
13
+ BlockStreamfieldMinimalData
14
+ } from './../../../components/BlockStreamfield/BlockStreamfield.stories'
15
+ import PageEduLesson from './PageEduLesson.vue'
16
+
17
+ export default {
18
+ title: 'Templates/EDU/PageEduLesson',
19
+ component: PageEduLesson,
20
+ decorators: [
21
+ () => ({
22
+ template: `<div id="storyDecorator" class="disable-nav-offset"><story/></div>`
23
+ })
24
+ ],
25
+ parameters: {
26
+ layout: 'fullscreen',
27
+ html: {
28
+ root: '#storyDecorator'
29
+ }
30
+ },
31
+ excludeStories: /.*Data$/
32
+ }
33
+
34
+ export const BaseStory = {
35
+ args: {
36
+ data: {
37
+ __typename: 'EDULessonPage',
38
+ title: 'Test Lesson',
39
+ url: 'http://localhost:3000/edu/resources/test-lesson',
40
+ pageType: 'EDUExplainerArticlePage',
41
+ contentType: 'edu_resources.EDUExplainerArticlePage',
42
+ searchDescription: '',
43
+ seoTitle: 'Test Lesson',
44
+ slug: 'test-lesson',
45
+ publicationDate: '2024-08-16',
46
+ thumbnailImage: {
47
+ __typename: 'CustomImage',
48
+ original: 'http://127.0.0.1:9000/media/original_images/imagessirtfsirtf-090303-16.jpg',
49
+ alt: ''
50
+ },
51
+ hero: [
52
+ {
53
+ ...HeroMediaData,
54
+ blockType: 'HeroImageBlock'
55
+ }
56
+ ],
57
+ heroConstrain: true,
58
+ heroPosition: 'full_bleed',
59
+
60
+ studentProject: {
61
+ title: 'Student Project',
62
+ urlPath: '/path-to-student-project'
63
+ },
64
+
65
+ primarySubject: {
66
+ subject: 'Arts'
67
+ },
68
+ additionalSubjects: [
69
+ {
70
+ subject: 'Science'
71
+ }
72
+ ],
73
+ gradeLevels: [
74
+ {
75
+ gradeLevel: 'K'
76
+ },
77
+ {
78
+ gradeLevel: '1'
79
+ }
80
+ ],
81
+ time: {
82
+ time: 'Under 30 mins'
83
+ },
84
+ standards: [
85
+ {
86
+ standard: {
87
+ code: 'CCRA.R.1',
88
+ definition:
89
+ 'Read closely to determine what the text says explicitly and to make logical inferences from it; cite specific textual evidence when writing or speaking to support conclusions drawn from the text.',
90
+ domain: {
91
+ domain: 'College and Career Readiness Anchor Standards for Reading'
92
+ },
93
+ type: 'ccss_english_language_arts'
94
+ }
95
+ },
96
+ {
97
+ standard: {
98
+ code: 'RL.3.2',
99
+ definition:
100
+ 'Recount stories, including fables, folktales, and myths from diverse cultures; determine the central message, lesson, or moral and explain how it is conveyed through key details in the text.',
101
+ domain: {
102
+ domain: 'Reading Standards for Literature'
103
+ },
104
+ type: 'ccss_english_language_arts'
105
+ }
106
+ },
107
+ {
108
+ standard: {
109
+ code: 'RL.1.5',
110
+ definition:
111
+ 'Explain major differences between books that tell stories and books that give information, drawing on a wide reading of a range of text types.',
112
+ domain: {
113
+ domain: 'Reading Standards for Literature'
114
+ },
115
+ type: 'ccss_english_language_arts'
116
+ }
117
+ },
118
+ {
119
+ standard: {
120
+ code: 'K.CC.A',
121
+ definition: 'Know number names and the count sequence.',
122
+ domain: {
123
+ domain: 'Counting and Cardinality'
124
+ },
125
+ type: 'ccss_maths'
126
+ }
127
+ },
128
+ {
129
+ standard: {
130
+ code: 'K.CC.A.3',
131
+ definition:
132
+ 'Write numbers from 0 to 20. Represent a number of objects with a written numeral 0-20 (with 0 representing a count of no objects).',
133
+ domain: {
134
+ domain: 'Counting and Cardinality'
135
+ },
136
+ type: 'ccss_maths'
137
+ }
138
+ },
139
+ {
140
+ standard: {
141
+ code: 'K-PS2-1',
142
+ definition:
143
+ 'Plan and conduct an investigation to compare the effects of different strengths or different directions of pushes and pulls on the motion of an object.',
144
+ domain: {
145
+ domain: 'Physical Sciences'
146
+ },
147
+ type: 'ngss'
148
+ }
149
+ }
150
+ ],
151
+
152
+ overview: BlockStreamfieldMinimalData.body,
153
+ overviewHeading: 'Custom Overview heading',
154
+ overviewImage: BlockImageData.image,
155
+
156
+ materials:
157
+ '<ul><li data-block-key="nvq4l">list item one</li><li data-block-key="efmt7">list item two</li><li data-block-key="d0f66">list item three this one is really long and the text just keeps on going lorem ipsum dolor sit amet consectatur</li></ul><p data-block-key="bksrq">Paragraph to appear below.</p>',
158
+ materialsHeading: 'Materials stuff',
159
+ materialsImage: BlockImageData.image,
160
+
161
+ management: BlockStreamfieldMinimalData.body,
162
+ managementHeading: 'Management stuff',
163
+
164
+ background: BlockStreamfieldMinimalData.body,
165
+ backgroundHeading: 'Background heading',
166
+
167
+ procedures: [
168
+ {
169
+ procedure: {
170
+ blocks: BlockStreamfieldMinimalData.body
171
+ }
172
+ },
173
+ {
174
+ procedure: {
175
+ blocks: BlockStreamfieldMinimalData.body
176
+ }
177
+ },
178
+ {
179
+ procedure: {
180
+ blocks: BlockStreamfieldMinimalData.body
181
+ }
182
+ }
183
+ ],
184
+ proceduresHeading: 'Procedures heading',
185
+ proceduresStepsNumbering: true,
186
+
187
+ discussion: BlockStreamfieldMinimalData.body,
188
+ discussionHeading: 'Discussion heading',
189
+
190
+ assessment: BlockStreamfieldMinimalData.body,
191
+ assessmentHeading: 'Assessment heading',
192
+
193
+ extensions: BlockStreamfieldMinimalData.body,
194
+ extensionsHeading: 'Extensions heading',
195
+
196
+ techAddons: BlockStreamfieldMinimalData.body,
197
+ techAddonsHeading: 'Tech addons heading',
198
+
199
+ customSections: [
200
+ {
201
+ blockType: 'EDULessonCustomSectionBlock',
202
+ content: BlockStreamfieldTruncatedData.body,
203
+ heading: BlockHeadingData,
204
+ position: 'after_procedures'
205
+ }
206
+ ],
207
+
208
+ body: BlockStreamfieldTruncatedData.body,
209
+
210
+ relatedLinks: BlockRelatedLinksData.data,
211
+ relatedContentHeading: 'Related Content',
212
+ relatedContent: BlockLinkCardCarouselData
213
+ }
214
+ }
215
+ }
216
+ export const InlineHero = {
217
+ args: {
218
+ data: {
219
+ ...BaseStory.args.data,
220
+ heroPosition: 'inline'
221
+ }
222
+ }
223
+ }
224
+
225
+ export const HeroCarousel = {
226
+ args: {
227
+ data: {
228
+ ...BaseStory.args.data,
229
+ hero: [{ blockType: 'CarouselBlock', blocks: BlockImageCarouselData }]
230
+ }
231
+ }
232
+ }
233
+
234
+ export const HeroImageComparison = {
235
+ args: {
236
+ data: {
237
+ ...BaseStory.args.data,
238
+ heroPosition: 'inline',
239
+ hero: [
240
+ {
241
+ ...BlockImageComparisonData
242
+ }
243
+ ]
244
+ }
245
+ }
246
+ }
247
+
248
+ export const HeroVideo = {
249
+ args: {
250
+ data: {
251
+ ...BaseStory.args.data,
252
+ hero: [
253
+ {
254
+ blockType: 'VideoBlock',
255
+ video: BaseVideoData,
256
+ caption: 'Lorem ipsum dolor sit amet',
257
+ credit: 'NASA/JPL'
258
+ }
259
+ ]
260
+ }
261
+ }
262
+ }
263
+
264
+ export const HeroVideoEmbed = {
265
+ args: {
266
+ data: {
267
+ ...BaseStory.args.data,
268
+ heroPosition: 'inline',
269
+ hero: [
270
+ {
271
+ ...BlockVideoEmbedData.data,
272
+ embed: {
273
+ embed: `<iframe title="Meet NASA's Diana Trujillo - Embedded Hero" width="480" height="270" src="https://www.youtube.com/embed/vUuUyYqI83Q?feature=oembed" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture" allowfullscreen></iframe>`
274
+ },
275
+ blockType: 'VideoEmbedBlock'
276
+ }
277
+ ]
278
+ }
279
+ }
280
+ }
281
+
282
+ export const HeroIframeEmbed = {
283
+ args: {
284
+ data: {
285
+ ...BaseStory.args.data,
286
+ heroPosition: 'inline',
287
+ hero: [
288
+ {
289
+ ...BlockIframeEmbedData
290
+ }
291
+ ]
292
+ }
293
+ }
294
+ }
295
+
296
+ export const NoHero = {
297
+ args: {
298
+ data: {
299
+ ...BaseStory.args.data,
300
+ hero: []
301
+ }
302
+ }
303
+ }