@itcenteratunihelsinki/huds-lib 0.8.63 → 0.8.64

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 (119) hide show
  1. package/components/hy-hero.js +28 -16
  2. package/components/hy-hero.js.map +1 -1
  3. package/components/utils.js +8 -0
  4. package/components/utils.js.map +1 -1
  5. package/dist/cjs/huds-lib.cjs.js +1 -1
  6. package/dist/cjs/hy-accordion-container_2.cjs.entry.js +1 -1
  7. package/dist/cjs/hy-banner.cjs.entry.js +1 -1
  8. package/dist/cjs/hy-breadcrumbs_15.cjs.entry.js +1 -1
  9. package/dist/cjs/hy-checkbox.cjs.entry.js +1 -1
  10. package/dist/cjs/hy-content-list_2.cjs.entry.js +1 -1
  11. package/dist/cjs/hy-cta-button.cjs.entry.js +1 -1
  12. package/dist/cjs/hy-cta-link.cjs.entry.js +1 -1
  13. package/dist/cjs/hy-events.cjs.entry.js +1 -1
  14. package/dist/cjs/hy-filter-group_6.cjs.entry.js +1 -1
  15. package/dist/cjs/hy-general-list_2.cjs.entry.js +1 -1
  16. package/dist/cjs/hy-hero-carousel.cjs.entry.js +1 -1
  17. package/dist/cjs/hy-hero.cjs.entry.js +27 -17
  18. package/dist/cjs/hy-hero.cjs.entry.js.map +1 -1
  19. package/dist/cjs/hy-introduction.cjs.entry.js +1 -1
  20. package/dist/cjs/hy-key-figure_2.cjs.entry.js +1 -1
  21. package/dist/cjs/hy-key-highlight_2.cjs.entry.js +1 -1
  22. package/dist/cjs/hy-large-process-flow_2.cjs.entry.js +1 -1
  23. package/dist/cjs/hy-link-box_2.cjs.entry.js +1 -1
  24. package/dist/cjs/hy-link-list.cjs.entry.js +1 -1
  25. package/dist/cjs/hy-link.cjs.entry.js +1 -1
  26. package/dist/cjs/hy-list-item.cjs.entry.js +1 -1
  27. package/dist/cjs/hy-menu-main-group.cjs.entry.js +1 -1
  28. package/dist/cjs/hy-opening-hours_2.cjs.entry.js +1 -1
  29. package/dist/cjs/hy-pager_2.cjs.entry.js +1 -1
  30. package/dist/cjs/hy-person-card.cjs.entry.js +1 -1
  31. package/dist/cjs/hy-person-profile.cjs.entry.js +1 -1
  32. package/dist/cjs/hy-process_2.cjs.entry.js +1 -1
  33. package/dist/cjs/hy-shortcuts.cjs.entry.js +1 -1
  34. package/dist/cjs/hy-user-login-form.cjs.entry.js +1 -1
  35. package/dist/cjs/hy-video.cjs.entry.js +1 -1
  36. package/dist/cjs/loader.cjs.js +1 -1
  37. package/dist/cjs/{utils-bfc1127a.js → utils-56f3464c.js} +9 -1
  38. package/dist/cjs/utils-56f3464c.js.map +1 -0
  39. package/dist/collection/components/hy-hero/hy-hero.css +282 -4
  40. package/dist/collection/components/hy-hero/hy-hero.js +66 -16
  41. package/dist/collection/components/hy-hero/hy-hero.js.map +1 -1
  42. package/dist/collection/utils/utils.js +8 -0
  43. package/dist/collection/utils/utils.js.map +1 -1
  44. package/dist/esm/huds-lib.js +1 -1
  45. package/dist/esm/hy-accordion-container_2.entry.js +1 -1
  46. package/dist/esm/hy-banner.entry.js +1 -1
  47. package/dist/esm/hy-breadcrumbs_15.entry.js +1 -1
  48. package/dist/esm/hy-checkbox.entry.js +1 -1
  49. package/dist/esm/hy-content-list_2.entry.js +1 -1
  50. package/dist/esm/hy-cta-button.entry.js +1 -1
  51. package/dist/esm/hy-cta-link.entry.js +1 -1
  52. package/dist/esm/hy-events.entry.js +1 -1
  53. package/dist/esm/hy-filter-group_6.entry.js +1 -1
  54. package/dist/esm/hy-general-list_2.entry.js +1 -1
  55. package/dist/esm/hy-hero-carousel.entry.js +1 -1
  56. package/dist/esm/hy-hero.entry.js +27 -17
  57. package/dist/esm/hy-hero.entry.js.map +1 -1
  58. package/dist/esm/hy-introduction.entry.js +1 -1
  59. package/dist/esm/hy-key-figure_2.entry.js +1 -1
  60. package/dist/esm/hy-key-highlight_2.entry.js +1 -1
  61. package/dist/esm/hy-large-process-flow_2.entry.js +1 -1
  62. package/dist/esm/hy-link-box_2.entry.js +1 -1
  63. package/dist/esm/hy-link-list.entry.js +1 -1
  64. package/dist/esm/hy-link.entry.js +1 -1
  65. package/dist/esm/hy-list-item.entry.js +1 -1
  66. package/dist/esm/hy-menu-main-group.entry.js +1 -1
  67. package/dist/esm/hy-opening-hours_2.entry.js +1 -1
  68. package/dist/esm/hy-pager_2.entry.js +1 -1
  69. package/dist/esm/hy-person-card.entry.js +1 -1
  70. package/dist/esm/hy-person-profile.entry.js +1 -1
  71. package/dist/esm/hy-process_2.entry.js +1 -1
  72. package/dist/esm/hy-shortcuts.entry.js +1 -1
  73. package/dist/esm/hy-user-login-form.entry.js +1 -1
  74. package/dist/esm/hy-video.entry.js +1 -1
  75. package/dist/esm/loader.js +1 -1
  76. package/dist/esm/{utils-7438924c.js → utils-2819fd7e.js} +9 -1
  77. package/dist/esm/utils-2819fd7e.js.map +1 -0
  78. package/dist/huds-lib/huds-lib.esm.js +1 -1
  79. package/dist/huds-lib/huds-lib.esm.js.map +1 -1
  80. package/dist/huds-lib/hy-accordion-container_2.entry.js +1 -1
  81. package/dist/huds-lib/hy-banner.entry.js +1 -1
  82. package/dist/huds-lib/hy-breadcrumbs_15.entry.js +1 -1
  83. package/dist/huds-lib/hy-checkbox.entry.js +1 -1
  84. package/dist/huds-lib/hy-content-list_2.entry.js +1 -1
  85. package/dist/huds-lib/hy-cta-button.entry.js +1 -1
  86. package/dist/huds-lib/hy-cta-link.entry.js +1 -1
  87. package/dist/huds-lib/hy-events.entry.js +1 -1
  88. package/dist/huds-lib/hy-filter-group_6.entry.js +1 -1
  89. package/dist/huds-lib/hy-general-list_2.entry.js +1 -1
  90. package/dist/huds-lib/hy-hero-carousel.entry.js +1 -1
  91. package/dist/huds-lib/hy-hero.entry.js +1 -1
  92. package/dist/huds-lib/hy-hero.entry.js.map +1 -1
  93. package/dist/huds-lib/hy-introduction.entry.js +1 -1
  94. package/dist/huds-lib/hy-key-figure_2.entry.js +1 -1
  95. package/dist/huds-lib/hy-key-highlight_2.entry.js +1 -1
  96. package/dist/huds-lib/hy-large-process-flow_2.entry.js +1 -1
  97. package/dist/huds-lib/hy-link-box_2.entry.js +1 -1
  98. package/dist/huds-lib/hy-link-list.entry.js +1 -1
  99. package/dist/huds-lib/hy-link.entry.js +1 -1
  100. package/dist/huds-lib/hy-list-item.entry.js +1 -1
  101. package/dist/huds-lib/hy-menu-main-group.entry.js +1 -1
  102. package/dist/huds-lib/hy-opening-hours_2.entry.js +1 -1
  103. package/dist/huds-lib/hy-pager_2.entry.js +1 -1
  104. package/dist/huds-lib/hy-person-card.entry.js +1 -1
  105. package/dist/huds-lib/hy-person-profile.entry.js +1 -1
  106. package/dist/huds-lib/hy-process_2.entry.js +1 -1
  107. package/dist/huds-lib/hy-shortcuts.entry.js +1 -1
  108. package/dist/huds-lib/hy-user-login-form.entry.js +1 -1
  109. package/dist/huds-lib/hy-video.entry.js +1 -1
  110. package/dist/huds-lib/utils-2819fd7e.js +2 -0
  111. package/dist/huds-lib/utils-2819fd7e.js.map +1 -0
  112. package/dist/types/components/hy-hero/hy-hero.d.ts +7 -1
  113. package/dist/types/components.d.ts +6 -2
  114. package/dist/types/utils/utils.d.ts +8 -1
  115. package/package.json +2 -2
  116. package/dist/cjs/utils-bfc1127a.js.map +0 -1
  117. package/dist/esm/utils-7438924c.js.map +0 -1
  118. package/dist/huds-lib/utils-7438924c.js +0 -2
  119. package/dist/huds-lib/utils-7438924c.js.map +0 -1
@@ -67,7 +67,7 @@
67
67
  }
68
68
 
69
69
  @media (min-width: 60rem) {
70
- .hy-hero {
70
+ .hy-hero:not(.hy-hero--full-image) {
71
71
  margin-top: 32px;
72
72
  }
73
73
  }
@@ -79,7 +79,7 @@
79
79
  }
80
80
 
81
81
  @media (min-width: 75.0625rem) {
82
- .without-sidebar .hy-hero {
82
+ .without-sidebar .hy-hero:not(.hy-hero--full-image) {
83
83
  max-width: 1216px;
84
84
  margin-right: auto;
85
85
  margin-left: auto;
@@ -87,14 +87,14 @@
87
87
  }
88
88
 
89
89
  @media (min-width: 75.0625rem) {
90
- .with-sidebar .hy-hero {
90
+ .with-sidebar:not(.hy-hero--full-image) .hy-hero {
91
91
  padding-left: 32px;
92
92
  padding-right: 32px;
93
93
  }
94
94
  }
95
95
 
96
96
  @media (min-width: 1601px) {
97
- .with-sidebar .hy-hero {
97
+ .with-sidebar:not(.hy-hero--full-image) .hy-hero {
98
98
  padding-right: 0;
99
99
  padding-left: 0;
100
100
  max-width: 1216px;
@@ -103,6 +103,284 @@
103
103
  }
104
104
  }
105
105
 
106
+ .hy-hero--full-image {
107
+ --dark-bg: rgba(0, 0, 0, 0.55);
108
+ --light-bg: rgba(255, 255, 255, 0.50);
109
+ --dark-text: var(--brand-main-nearly-black);
110
+ --light-text: var(--grayscale-white);
111
+ border-bottom: 1px solid var(--grayscale-medium-dark);
112
+ }
113
+
114
+ @media (min-width: 60rem) {
115
+ .hy-hero--full-image {
116
+ border-bottom: 4px solid var(--grayscale-black);
117
+ margin-left: -2rem;
118
+ margin-right: -2rem;
119
+ }
120
+ }
121
+
122
+ .hy-hero--full-image .hy-hero__container {
123
+ grid-template-columns: repeat(4, 1fr);
124
+ grid-template-rows: 1fr;
125
+ }
126
+
127
+ .hy-hero--full-image .hy-hero__image-container {
128
+ grid-column: 1/-1;
129
+ grid-row: 1/-1;
130
+ -o-object-fit: cover;
131
+ object-fit: cover;
132
+ padding: 0;
133
+ width: 100%;
134
+ }
135
+
136
+ .hy-hero--full-image .hy-hero__image-container img {
137
+ aspect-ratio: 16/8;
138
+ }
139
+
140
+ .hy-hero--full-image .hy-hero__content-container {
141
+ padding: 0;
142
+ }
143
+
144
+ @media (min-width: 60rem) {
145
+ .hy-hero--full-image .hy-hero__content-container {
146
+ align-self: center;
147
+ grid-column: 1/3;
148
+ grid-row: 1/-1;
149
+ margin-left: 32px;
150
+ max-width: 95%;
151
+ z-index: 2;
152
+ }
153
+ }
154
+
155
+ @media (min-width: 75.0625rem) {
156
+ .hy-hero--full-image .hy-hero__content-container {
157
+ margin-left: 0;
158
+ }
159
+ }
160
+
161
+ .hy-hero--full-image .hy-hero__content {
162
+ display: -webkit-box;
163
+ display: -ms-flexbox;
164
+ display: flex;
165
+ -webkit-box-orient: vertical;
166
+ -webkit-box-direction: normal;
167
+ -ms-flex-direction: column;
168
+ flex-direction: column;
169
+ gap: 24px;
170
+ padding: 16px 16px 32px 16px;
171
+ }
172
+
173
+ @media (min-width: 60rem) {
174
+ .hy-hero--full-image .hy-hero__content {
175
+ margin-left: 32px;
176
+ gap: 24px;
177
+ padding: 32px;
178
+ }
179
+ }
180
+
181
+ @media (min-width: 75.0625rem) {
182
+ .hy-hero--full-image .hy-hero__content {
183
+ margin-left: 64px;
184
+ gap: 32px;
185
+ }
186
+ }
187
+
188
+ @media (min-width: 1601px) {
189
+ .hy-hero--full-image .hy-hero__content {
190
+ margin-left: 96px;
191
+ }
192
+ }
193
+
194
+ .hy-hero--full-image .hy-hero__content[data-text-color=dark_text_light_bg] {
195
+ -webkit-backdrop-filter: blur(250px);
196
+ backdrop-filter: blur(250px);
197
+ background-color: var(--grayscale-white);
198
+ color: var(--dark-text);
199
+ }
200
+
201
+ @media (min-width: 60rem) {
202
+ .hy-hero--full-image .hy-hero__content[data-text-color=dark_text_light_bg] {
203
+ background: var(--light-bg);
204
+ }
205
+ }
206
+
207
+ .hy-hero--full-image .hy-hero__content[data-text-color=light_text_dark_bg] {
208
+ -webkit-backdrop-filter: blur(250px);
209
+ backdrop-filter: blur(250px);
210
+ background: var(--grayscale-black);
211
+ color: var(--light-text);
212
+ }
213
+
214
+ @media (min-width: 60rem) {
215
+ .hy-hero--full-image .hy-hero__content[data-text-color=light_text_dark_bg] {
216
+ background: var(--dark-bg);
217
+ }
218
+ }
219
+
220
+ .hy-hero--full-image .hy-hero__content[data-text-color=dark_text_no_bg] {
221
+ background-color: var(--grayscale-white);
222
+ color: var(--dark-text);
223
+ }
224
+
225
+ @media (min-width: 60rem) {
226
+ .hy-hero--full-image .hy-hero__content[data-text-color=dark_text_no_bg] {
227
+ background: transparent;
228
+ text-shadow: 0 0 5px var(--grayscale-white);
229
+ }
230
+ }
231
+
232
+ .hy-hero--full-image .hy-hero__content[data-text-color=light_text_no_bg] {
233
+ background-color: var(--grayscale-black);
234
+ color: var(--light-text);
235
+ }
236
+
237
+ @media (min-width: 60rem) {
238
+ .hy-hero--full-image .hy-hero__content[data-text-color=light_text_no_bg] {
239
+ background: transparent;
240
+ text-shadow: 0 0 5px var(--grayscale-black);
241
+ }
242
+ }
243
+
244
+ .hy-hero--full-image .hy-hero__subtitle {
245
+ font-family: var(--main-font-family);
246
+ font-size: 18px;
247
+ font-weight: 700;
248
+ line-height: 1.2;
249
+ position: relative;
250
+ }
251
+
252
+ .hy-hero--full-image .hy-hero__subtitle::after {
253
+ aspect-ratio: 1;
254
+ background-color: currentColor;
255
+ bottom: -10px;
256
+ content: "";
257
+ display: block;
258
+ height: 4px;
259
+ left: 0;
260
+ position: absolute;
261
+ width: 64px;
262
+ }
263
+
264
+ @media (min-width: 60rem) {
265
+ .hy-hero--full-image .hy-hero__subtitle {
266
+ font-size: 20px;
267
+ }
268
+ }
269
+
270
+ .hy-hero--full-image h2.hy-hero__title.hy-heading__hero {
271
+ color: inherit !important;
272
+ font-family: var(--main-font-family);
273
+ font-size: 32px;
274
+ font-weight: 700;
275
+ line-height: 1.2;
276
+ }
277
+
278
+ @media (min-width: 75.0625rem) {
279
+ .hy-hero--full-image h2.hy-hero__title.hy-heading__hero {
280
+ font-size: 36px;
281
+ }
282
+ }
283
+
284
+ @media (min-width: 1601px) {
285
+ .hy-hero--full-image h2.hy-hero__title.hy-heading__hero {
286
+ font-size: 64px;
287
+ }
288
+ }
289
+
290
+ .hy-hero--full-image .hy-hero__description {
291
+ font-family: var(--main-font-family);
292
+ font-size: 16px;
293
+ font-weight: 400;
294
+ line-height: 1.5;
295
+ margin: 0;
296
+ padding: 0;
297
+ }
298
+
299
+ @media (min-width: 1601px) {
300
+ .hy-hero--full-image .hy-hero__description {
301
+ font-size: 17px;
302
+ }
303
+ }
304
+
305
+ .hy-hero--full-image .hy-hero__actions {
306
+ margin: 0;
307
+ }
308
+
309
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link {
310
+ --light-bg: var(--grayscale-white);
311
+ --dark-bg: var(--grayscale-black);
312
+ --light-text: var(--grayscale-white);
313
+ --dark-text: var(--grayscale-black);
314
+ -webkit-box-align: center;
315
+ -ms-flex-align: center;
316
+ align-items: center;
317
+ display: -webkit-box;
318
+ display: -ms-flexbox;
319
+ display: flex;
320
+ font-family: var(--main-font-family);
321
+ font-size: 16px;
322
+ font-weight: 700;
323
+ gap: 8px;
324
+ line-height: 18px;
325
+ padding: 13px 16px;
326
+ text-decoration: none;
327
+ width: -webkit-fit-content;
328
+ width: -moz-fit-content;
329
+ width: fit-content;
330
+ }
331
+
332
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link:hover {
333
+ text-decoration: underline;
334
+ }
335
+
336
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link svg {
337
+ width: 16px;
338
+ height: 16px;
339
+ }
340
+
341
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link[data-text-color=dark_text_light_bg] {
342
+ background: var(--dark-bg);
343
+ color: var(--light-text);
344
+ }
345
+
346
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link[data-text-color=dark_text_light_bg] svg {
347
+ fill: var(--light-text);
348
+ }
349
+
350
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link[data-text-color=light_text_dark_bg] {
351
+ background: var(--light-bg);
352
+ color: var(--dark-text);
353
+ }
354
+
355
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link[data-text-color=light_text_dark_bg] svg {
356
+ fill: var(--dark-text);
357
+ }
358
+
359
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link[data-text-color=dark_text_no_bg] {
360
+ background: var(--dark-bg);
361
+ color: var(--light-text);
362
+ text-shadow: none;
363
+ }
364
+
365
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link[data-text-color=dark_text_no_bg] svg {
366
+ fill: var(--light-text);
367
+ }
368
+
369
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link[data-text-color=light_text_no_bg] {
370
+ background: var(--light-bg);
371
+ color: var(--dark-text);
372
+ text-shadow: none;
373
+ }
374
+
375
+ .hy-hero--full-image .hy-hero__actions .hy-hero__link[data-text-color=light_text_no_bg] svg {
376
+ fill: var(--dark-text);
377
+ }
378
+
379
+ .hy-hero--full-image .hy-image__image {
380
+ -o-object-fit: cover;
381
+ object-fit: cover;
382
+ }
383
+
106
384
  @media (min-width: 60rem) {
107
385
  .hy-hero--white {
108
386
  margin-top: 0;
@@ -9,6 +9,7 @@ export class HyHero {
9
9
  this.heroGroupType = HeroGroupTypeVariant.default;
10
10
  this.colorVariant = HeroColorVariant.blue;
11
11
  this.sizeVariant = HeroSizeVariant.large;
12
+ this.heroTextColor = null;
12
13
  this.image = undefined;
13
14
  this.imageHeight = null;
14
15
  this.imageWidth = null;
@@ -17,6 +18,7 @@ export class HyHero {
17
18
  this.hasShortcuts = false;
18
19
  this.heading = undefined;
19
20
  this.description = undefined;
21
+ this.subtitle = undefined;
20
22
  this.url = undefined;
21
23
  this.urlTitle = undefined;
22
24
  this.scLabel = undefined;
@@ -26,6 +28,7 @@ export class HyHero {
26
28
  async componentWillLoad() {
27
29
  this._sourceSet = await jsonParserWorker(this.sourceSet);
28
30
  }
31
+ // TODO: Refactor, find way to get rid of this.
29
32
  handleHeroImageObjectFitValue(heroSizeVariant, heroElement) {
30
33
  const heroContentContainerElement = heroElement.getElementsByClassName("hy-hero__content-container")[0];
31
34
  if (heroSizeVariant === "small") {
@@ -45,10 +48,23 @@ export class HyHero {
45
48
  }
46
49
  }
47
50
  }
51
+ createImageElement(props, srcSet, aspectRatio) {
52
+ return (h("div", { class: `hy-hero__image-container`, style: aspectRatio }, props.image &&
53
+ (srcSet ? (h("picture", null, srcSet.map((item) => (h("source", { srcSet: item.src, media: item.media, type: item.type, sizes: item.sizes ? item.sizes : "" }))), h("img", { loading: props.disableLazy ? "eager" : "lazy", alt: props.imageAltText, class: `hy-image__image`, src: props.image, height: props.imageHeight, width: props.imageWidth }))) : (h("img", { loading: props.disableLazy ? "eager" : "lazy", alt: props.imageAltText, class: `hy-image__image`, src: props.image, height: props.imageHeight, width: props.imageWidth })))));
54
+ }
55
+ // TODO: Refactor, is this still even used?
56
+ setAspectRatio(aspectRatioWidth = 16, aspectRatioHeight = 10) {
57
+ const aspect = (aspectRatioHeight / aspectRatioWidth) * 100;
58
+ return {
59
+ "--aspectRatio": `${aspect}%`,
60
+ //"aspect-ratio": `${aspectRatioWidth} / ${aspectRatioHeight}` as "aspectRatio",
61
+ };
62
+ }
48
63
  render() {
49
64
  let variant = CtaLinkButtonVariants.heroWhite;
50
65
  let colorVariantValue = this.colorVariant;
51
66
  let heroTypeValue = this.heroType;
67
+ //TODO: Refactor
52
68
  if (this.heroType === "minor_landing") {
53
69
  colorVariantValue = HeroColorVariant.white;
54
70
  heroTypeValue = HeroTypeVariant.landing;
@@ -68,18 +84,10 @@ export class HyHero {
68
84
  `hy-hero--${this.heroGroupType}`,
69
85
  `hy-hero--${colorVariantValue}`,
70
86
  `hy-hero--${this.sizeVariant}`,
87
+ this.hasShortcuts ? 'has-shortcuts' : '',
71
88
  ];
72
89
  const heroTitleClasses = ["hy-hero__title", "hy-heading__hero"].join(" ");
73
- // If there is a Shortcuts block after hero, add the class 'shortcuts' to remove underline.
74
- if (this.hasShortcuts) {
75
- hyHeroClasses.push("has-shortcuts");
76
- }
77
- const aspectRatioWidth = 16;
78
- const aspectRatioHeight = 10;
79
- const aspect = (aspectRatioHeight / aspectRatioWidth) * 100;
80
- const aspectRatio = {
81
- "--aspectRatio": `${aspect}%`,
82
- };
90
+ // TODO: Refactor, find way to get rid of this.
83
91
  window.onload = () => {
84
92
  const heroElement = document.getElementsByClassName("hy-hero")[0];
85
93
  this.handleHeroImageObjectFitValue(this.sizeVariant, heroElement);
@@ -88,12 +96,14 @@ export class HyHero {
88
96
  timeout = setTimeout(() => this.handleHeroImageObjectFitValue(this.sizeVariant, heroElement), delay);
89
97
  });
90
98
  };
91
- if (heroTypeValue === "front_page") {
92
- return (h(Host, null, h("div", { class: hyHeroClasses.join(" ") }, h("div", { class: `hy-hero__container` }, h("div", { class: `hy-hero__image-container`, style: aspectRatio }, this.image &&
93
- (this._sourceSet ? (h("picture", null, this._sourceSet.map((item) => (h("source", { srcSet: item.src, media: item.media, type: item.type, sizes: item.sizes ? item.sizes : "" }))), h("img", { loading: this.disableLazy ? "eager" : "lazy", alt: this.imageAltText, class: `hy-image__image`, src: this.image, height: this.imageHeight, width: this.imageWidth }))) : (h("img", { loading: this.disableLazy ? "eager" : "lazy", alt: this.imageAltText, class: `hy-image__image`, src: this.image, height: this.imageHeight, width: this.imageWidth })))), h("div", { class: `hy-hero__spacer-box` }), h("div", { class: `hy-hero__content-container` }, h("div", { class: `hy-hero__content` }, h("div", { class: `hy-hero__title-container` }, h("h2", { innerHTML: this.heading, class: heroTitleClasses })), this.description && h("p", { class: `hy-hero__description` }, this.description), this.url && (h("div", { class: `hy-hero__actions` }, h("hy-cta-button", { "link-content": this.urlTitle, "sc-label": this.scLabel, url: this.url, "is-external": this.isExternal, variant: variant }))))))), h("hy-box", { mb: "2, 2, 1, 1" })));
99
+ if (heroTypeValue === "front_page" && this.sizeVariant !== 'full-image') {
100
+ return (h(Host, null, h("div", { class: hyHeroClasses.join(" ") }, h("div", { class: `hy-hero__container` }, this.createImageElement(this, this._sourceSet, this.setAspectRatio()), h("div", { class: `hy-hero__spacer-box` }), h("div", { class: `hy-hero__content-container` }, h("div", { class: `hy-hero__content` }, h("div", { class: `hy-hero__title-container` }, h("h2", { innerHTML: this.heading, class: heroTitleClasses })), this.description && h("p", { class: `hy-hero__description` }, this.description), this.url && (h("div", { class: `hy-hero__actions` }, h("hy-cta-button", { "link-content": this.urlTitle, "sc-label": this.scLabel, url: this.url, "is-external": this.isExternal, variant: variant }))))))), h("hy-box", { mb: "2, 2, 1, 1" })));
101
+ }
102
+ if (this.sizeVariant === 'full-image') {
103
+ const linkTarget = this.isExternal ? '_blank' : '_self';
104
+ return (h("div", { class: `hy-hero hy-hero--full-image` }, h("div", { class: `hy-hero__container` }, this.createImageElement(this, this._sourceSet, this.setAspectRatio(16, 8)), h("div", { class: `hy-hero__content-container` }, h("div", { class: `hy-hero__content`, "data-text-color": this.heroTextColor }, this.subtitle && h("span", { class: `hy-hero__subtitle` }, this.subtitle), h("h2", { innerHTML: this.heading, class: heroTitleClasses }), this.description && h("p", { class: `hy-hero__description` }, this.description), this.url && (h("div", { class: `hy-hero__actions` }, h("a", { class: "hy-hero__link", href: this.url, "aria-label": this.scLabel, target: linkTarget, "data-text-color": this.heroTextColor }, this.urlTitle, h("hy-icon", { icon: "hy-icon-arrow-right", size: 16 })))))))));
94
105
  }
95
- return (h(Host, null, h("div", { class: hyHeroClasses.join(" ") }, h("div", { class: `hy-hero__container` }, h("div", { class: `hy-hero__image-container`, style: aspectRatio }, this.image &&
96
- (this._sourceSet ? (h("picture", null, this._sourceSet.map((item) => (h("source", { srcSet: item.src, media: item.media, type: item.type, sizes: item.sizes ? item.sizes : "" }))), h("img", { loading: this.disableLazy ? "eager" : "lazy", alt: this.imageAltText, class: `hy-image__image`, src: this.image, height: this.imageHeight, width: this.imageWidth }))) : (h("img", { loading: this.disableLazy ? "eager" : "lazy", alt: this.imageAltText, class: `hy-image__image`, src: this.image, height: this.imageHeight, width: this.imageWidth })))), h("div", { class: `hy-hero__content-container` }, h("div", { class: `hy-hero__content` }, h("div", { class: `hy-hero__title-container` }, h("h2", { innerHTML: this.heading, class: heroTitleClasses })), this.description && h("p", { class: `hy-hero__description` }, this.description), this.url && (h("div", { class: `hy-hero__actions` }, h("hy-cta-button", { "link-content": this.urlTitle, "sc-label": this.scLabel, url: this.url, "is-external": this.isExternal, variant: variant }))))))), h("hy-box", { mb: "2, 2, 1, 1" })));
106
+ return (h(Host, null, h("div", { class: hyHeroClasses.join(" ") }, h("div", { class: `hy-hero__container` }, this.createImageElement(this, this._sourceSet, this.setAspectRatio()), h("div", { class: `hy-hero__content-container` }, h("div", { class: `hy-hero__content` }, h("div", { class: `hy-hero__title-container` }, h("h2", { innerHTML: this.heading, class: heroTitleClasses })), this.description && h("p", { class: `hy-hero__description` }, this.description), this.url && (h("div", { class: `hy-hero__actions` }, h("hy-cta-button", { "link-content": this.urlTitle, "sc-label": this.scLabel, url: this.url, "is-external": this.isExternal, variant: variant }))))))), h("hy-box", { mb: "2, 2, 1, 1" })));
97
107
  }
98
108
  static get is() { return "hy-hero"; }
99
109
  static get originalStyleUrls() {
@@ -182,7 +192,7 @@ export class HyHero {
182
192
  "mutable": false,
183
193
  "complexType": {
184
194
  "original": "HeroSizeVariant",
185
- "resolved": "HeroSizeVariant.large | HeroSizeVariant.small",
195
+ "resolved": "HeroSizeVariant.fullImage | HeroSizeVariant.large | HeroSizeVariant.small",
186
196
  "references": {
187
197
  "HeroSizeVariant": {
188
198
  "location": "import",
@@ -200,6 +210,29 @@ export class HyHero {
200
210
  "reflect": false,
201
211
  "defaultValue": "HeroSizeVariant.large"
202
212
  },
213
+ "heroTextColor": {
214
+ "type": "string",
215
+ "mutable": false,
216
+ "complexType": {
217
+ "original": "HeroTextColor",
218
+ "resolved": "HeroTextColor.dark_text_light_bg | HeroTextColor.dark_text_no_bg | HeroTextColor.light_text_dark_bg | HeroTextColor.light_text_no_bg",
219
+ "references": {
220
+ "HeroTextColor": {
221
+ "location": "import",
222
+ "path": "../../utils/utils"
223
+ }
224
+ }
225
+ },
226
+ "required": false,
227
+ "optional": false,
228
+ "docs": {
229
+ "tags": [],
230
+ "text": ""
231
+ },
232
+ "attribute": "hero-text-color",
233
+ "reflect": false,
234
+ "defaultValue": "null"
235
+ },
203
236
  "image": {
204
237
  "type": "string",
205
238
  "mutable": false,
@@ -341,6 +374,23 @@ export class HyHero {
341
374
  "attribute": "description",
342
375
  "reflect": false
343
376
  },
377
+ "subtitle": {
378
+ "type": "string",
379
+ "mutable": false,
380
+ "complexType": {
381
+ "original": "string",
382
+ "resolved": "string",
383
+ "references": {}
384
+ },
385
+ "required": false,
386
+ "optional": false,
387
+ "docs": {
388
+ "tags": [],
389
+ "text": ""
390
+ },
391
+ "attribute": "subtitle",
392
+ "reflect": false
393
+ },
344
394
  "url": {
345
395
  "type": "string",
346
396
  "mutable": false,
@@ -1 +1 @@
1
- {"version":3,"file":"hy-hero.js","sourceRoot":"","sources":["../../../src/components/hy-hero/hy-hero.tsx"],"names":[],"mappings":"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","sourcesContent":["export interface ImageSrcSet {\n src: any;\n media: string;\n type: string;\n sizes: string | null;\n}\nlet timeout = null;\nlet delay = 250;\n\nimport {Component, Element, h, Host, Prop} from \"@stencil/core\";\nimport {jsonParserWorker} from \"../../global/globalScript\";\nimport {\n CtaLinkButtonVariants,\n HeroColorVariant,\n HeroSizeVariant,\n HeroGroupTypeVariant,\n HeroTypeVariant,\n} from \"../../utils/utils\";\n\n@Component({\n tag: \"hy-hero\",\n styleUrl: \"hy-hero.scss\",\n shadow: false,\n})\nexport class HyHero {\n @Element() el: HTMLElement;\n @Prop() heroType: HeroTypeVariant = HeroTypeVariant.landing;\n @Prop() heroGroupType: HeroGroupTypeVariant = HeroGroupTypeVariant.default;\n @Prop() colorVariant: HeroColorVariant = HeroColorVariant.blue;\n @Prop() sizeVariant: HeroSizeVariant = HeroSizeVariant.large;\n @Prop() image: string;\n @Prop() imageHeight: number = null;\n @Prop() imageWidth: number = null;\n @Prop() imageAltText: string = \"\";\n @Prop() disableLazy: boolean = false;\n @Prop() hasShortcuts: boolean = false;\n @Prop() heading: string;\n @Prop() description: string;\n @Prop() url: string;\n @Prop() urlTitle: string;\n @Prop() scLabel?: string;\n @Prop() isExternal: boolean = false;\n private _sourceSet: ImageSrcSet[];\n @Prop() sourceSet: ImageSrcSet[] | string;\n\n async componentWillLoad() {\n this._sourceSet = await jsonParserWorker(this.sourceSet);\n }\n\n handleHeroImageObjectFitValue(heroSizeVariant, heroElement) {\n const heroContentContainerElement = heroElement.getElementsByClassName(\n \"hy-hero__content-container\"\n )[0] as HTMLElement;\n\n if (heroSizeVariant === \"small\") {\n if (heroContentContainerElement.offsetHeight >= 300) {\n heroElement.classList.add(\"has-cover\");\n } else {\n heroElement.classList.remove(\"has-cover\");\n }\n }\n\n if (heroSizeVariant === \"large\") {\n if (heroContentContainerElement.offsetHeight >= 344) {\n heroElement.classList.add(\"has-cover\");\n } else {\n heroElement.classList.remove(\"has-cover\");\n }\n }\n }\n\n render() {\n let variant = CtaLinkButtonVariants.heroWhite;\n let colorVariantValue = this.colorVariant;\n let heroTypeValue = this.heroType;\n\n if (this.heroType === \"minor_landing\") {\n colorVariantValue = HeroColorVariant.white;\n heroTypeValue = HeroTypeVariant.landing;\n }\n\n if (colorVariantValue === HeroColorVariant.blue) {\n variant = CtaLinkButtonVariants.heroBlue;\n }\n\n if (colorVariantValue === HeroColorVariant.black) {\n variant = CtaLinkButtonVariants.heroBlack;\n }\n\n if (!colorVariantValue || colorVariantValue === \"fp_white\") {\n colorVariantValue = HeroColorVariant.white;\n }\n\n const hyHeroClasses = [\n \"hy-hero\",\n `hy-hero--${heroTypeValue}`,\n `hy-hero--${this.heroGroupType}`,\n `hy-hero--${colorVariantValue}`,\n `hy-hero--${this.sizeVariant}`,\n ];\n\n const heroTitleClasses = [\"hy-hero__title\", \"hy-heading__hero\"].join(\" \");\n\n // If there is a Shortcuts block after hero, add the class 'shortcuts' to remove underline.\n if (this.hasShortcuts) {\n hyHeroClasses.push(\"has-shortcuts\");\n }\n\n const aspectRatioWidth = 16;\n const aspectRatioHeight = 10;\n const aspect = (aspectRatioHeight / aspectRatioWidth) * 100;\n const aspectRatio = {\n \"--aspectRatio\": `${aspect}%` as \"aspectRatio\",\n };\n\n window.onload = () => {\n const heroElement = document.getElementsByClassName(\"hy-hero\")[0] as HTMLElement;\n this.handleHeroImageObjectFitValue(this.sizeVariant, heroElement);\n window.addEventListener(\"resize\", () => {\n clearTimeout(timeout);\n timeout = setTimeout(() => this.handleHeroImageObjectFitValue(this.sizeVariant, heroElement), delay);\n });\n };\n\n if (heroTypeValue === \"front_page\") {\n return (\n <Host>\n <div class={hyHeroClasses.join(\" \")}>\n <div class={`hy-hero__container`}>\n <div class={`hy-hero__image-container`} style={aspectRatio}>\n {this.image &&\n (this._sourceSet ? (\n <picture>\n {this._sourceSet.map((item) => (\n <source\n srcSet={item.src}\n media={item.media}\n type={item.type}\n sizes={item.sizes ? item.sizes : \"\"}\n />\n ))}\n <img\n loading={this.disableLazy ? \"eager\" : \"lazy\"}\n alt={this.imageAltText}\n class={`hy-image__image`}\n src={this.image}\n height={this.imageHeight}\n width={this.imageWidth}\n />\n </picture>\n ) : (\n <img\n loading={this.disableLazy ? \"eager\" : \"lazy\"}\n alt={this.imageAltText}\n class={`hy-image__image`}\n src={this.image}\n height={this.imageHeight}\n width={this.imageWidth}\n />\n ))}\n </div>\n <div class={`hy-hero__spacer-box`}></div>\n <div class={`hy-hero__content-container`}>\n <div class={`hy-hero__content`}>\n <div class={`hy-hero__title-container`}>\n <h2 innerHTML={this.heading} class={heroTitleClasses}></h2>\n </div>\n {this.description && <p class={`hy-hero__description`}>{this.description}</p>}\n {this.url && (\n <div class={`hy-hero__actions`}>\n <hy-cta-button\n link-content={this.urlTitle}\n sc-label={this.scLabel}\n url={this.url}\n is-external={this.isExternal}\n variant={variant}\n />\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n <hy-box mb=\"2, 2, 1, 1\" />\n </Host>\n );\n }\n\n return (\n <Host>\n <div class={hyHeroClasses.join(\" \")}>\n <div class={`hy-hero__container`}>\n <div class={`hy-hero__image-container`} style={aspectRatio}>\n {this.image &&\n (this._sourceSet ? (\n <picture>\n {this._sourceSet.map((item) => (\n <source\n srcSet={item.src}\n media={item.media}\n type={item.type}\n sizes={item.sizes ? item.sizes : \"\"}\n />\n ))}\n <img\n loading={this.disableLazy ? \"eager\" : \"lazy\"}\n alt={this.imageAltText}\n class={`hy-image__image`}\n src={this.image}\n height={this.imageHeight}\n width={this.imageWidth}\n />\n </picture>\n ) : (\n <img\n loading={this.disableLazy ? \"eager\" : \"lazy\"}\n alt={this.imageAltText}\n class={`hy-image__image`}\n src={this.image}\n height={this.imageHeight}\n width={this.imageWidth}\n />\n ))}\n </div>\n <div class={`hy-hero__content-container`}>\n <div class={`hy-hero__content`}>\n <div class={`hy-hero__title-container`}>\n <h2 innerHTML={this.heading} class={heroTitleClasses}></h2>\n </div>\n {this.description && <p class={`hy-hero__description`}>{this.description}</p>}\n {this.url && (\n <div class={`hy-hero__actions`}>\n <hy-cta-button\n link-content={this.urlTitle}\n sc-label={this.scLabel}\n url={this.url}\n is-external={this.isExternal}\n variant={variant}\n />\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n <hy-box mb=\"2, 2, 1, 1\" />\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"hy-hero.js","sourceRoot":"","sources":["../../../src/components/hy-hero/hy-hero.tsx"],"names":[],"mappings":"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","sourcesContent":["export interface ImageSrcSet {\n src: any;\n media: string;\n type: string;\n sizes: string | null;\n}\nlet timeout = null;\nlet delay = 250;\n\nimport {Component, Element, h, Host, Prop} from \"@stencil/core\";\nimport {jsonParserWorker} from \"../../global/globalScript\";\nimport {\n CtaLinkButtonVariants,\n HeroColorVariant,\n HeroSizeVariant,\n HeroGroupTypeVariant,\n HeroTypeVariant,\n HeroTextColor,\n} from \"../../utils/utils\";\n\n@Component({\n tag: \"hy-hero\",\n styleUrl: \"hy-hero.scss\",\n shadow: false,\n})\nexport class HyHero {\n @Element() el: HTMLElement;\n @Prop() heroType: HeroTypeVariant = HeroTypeVariant.landing;\n @Prop() heroGroupType: HeroGroupTypeVariant = HeroGroupTypeVariant.default;\n @Prop() colorVariant: HeroColorVariant = HeroColorVariant.blue;\n @Prop() sizeVariant: HeroSizeVariant = HeroSizeVariant.large;\n @Prop() heroTextColor: HeroTextColor = null;\n @Prop() image: string;\n @Prop() imageHeight: number = null;\n @Prop() imageWidth: number = null;\n @Prop() imageAltText: string = \"\";\n @Prop() disableLazy: boolean = false;\n @Prop() hasShortcuts: boolean = false;\n @Prop() heading: string;\n @Prop() description: string;\n @Prop() subtitle: string;\n @Prop() url: string;\n @Prop() urlTitle: string;\n @Prop() scLabel?: string;\n @Prop() isExternal: boolean = false;\n private _sourceSet: ImageSrcSet[];\n @Prop() sourceSet: ImageSrcSet[] | string;\n\n async componentWillLoad() {\n this._sourceSet = await jsonParserWorker(this.sourceSet);\n }\n\n // TODO: Refactor, find way to get rid of this.\n handleHeroImageObjectFitValue(heroSizeVariant, heroElement) {\n const heroContentContainerElement = heroElement.getElementsByClassName(\n \"hy-hero__content-container\"\n )[0] as HTMLElement;\n\n if (heroSizeVariant === \"small\") {\n if (heroContentContainerElement.offsetHeight >= 300) {\n heroElement.classList.add(\"has-cover\");\n } else {\n heroElement.classList.remove(\"has-cover\");\n }\n }\n\n if (heroSizeVariant === \"large\") {\n if (heroContentContainerElement.offsetHeight >= 344) {\n heroElement.classList.add(\"has-cover\");\n } else {\n heroElement.classList.remove(\"has-cover\");\n }\n }\n }\n\n createImageElement(props, srcSet, aspectRatio) {\n return (\n <div class={`hy-hero__image-container`} style={aspectRatio}>\n {props.image &&\n (srcSet ? (\n <picture>\n {srcSet.map((item) => (\n <source\n srcSet={item.src}\n media={item.media}\n type={item.type}\n sizes={item.sizes ? item.sizes : \"\"}\n />\n ))}\n <img\n loading={props.disableLazy ? \"eager\" : \"lazy\"}\n alt={props.imageAltText}\n class={`hy-image__image`}\n src={props.image}\n height={props.imageHeight}\n width={props.imageWidth}\n />\n </picture>\n ) : (\n <img\n loading={props.disableLazy ? \"eager\" : \"lazy\"}\n alt={props.imageAltText}\n class={`hy-image__image`}\n src={props.image}\n height={props.imageHeight}\n width={props.imageWidth}\n />\n ))}\n </div>\n );\n }\n\n // TODO: Refactor, is this still even used?\n setAspectRatio(aspectRatioWidth = 16, aspectRatioHeight = 10) {\n const aspect = (aspectRatioHeight / aspectRatioWidth) * 100;\n return {\n \"--aspectRatio\": `${aspect}%` as \"aspectRatio\",\n //\"aspect-ratio\": `${aspectRatioWidth} / ${aspectRatioHeight}` as \"aspectRatio\",\n };\n }\n\n render() {\n let variant = CtaLinkButtonVariants.heroWhite;\n let colorVariantValue = this.colorVariant;\n let heroTypeValue = this.heroType;\n\n //TODO: Refactor\n if (this.heroType === \"minor_landing\") {\n colorVariantValue = HeroColorVariant.white;\n heroTypeValue = HeroTypeVariant.landing;\n }\n\n if (colorVariantValue === HeroColorVariant.blue) {\n variant = CtaLinkButtonVariants.heroBlue;\n }\n\n if (colorVariantValue === HeroColorVariant.black) {\n variant = CtaLinkButtonVariants.heroBlack;\n }\n\n if (!colorVariantValue || colorVariantValue === \"fp_white\") {\n colorVariantValue = HeroColorVariant.white;\n }\n\n const hyHeroClasses = [\n \"hy-hero\",\n `hy-hero--${heroTypeValue}`,\n `hy-hero--${this.heroGroupType}`,\n `hy-hero--${colorVariantValue}`,\n `hy-hero--${this.sizeVariant}`,\n this.hasShortcuts ? 'has-shortcuts' : '',\n ];\n\n const heroTitleClasses = [\"hy-hero__title\", \"hy-heading__hero\"].join(\" \");\n\n // TODO: Refactor, find way to get rid of this.\n window.onload = () => {\n const heroElement = document.getElementsByClassName(\"hy-hero\")[0] as HTMLElement;\n this.handleHeroImageObjectFitValue(this.sizeVariant, heroElement);\n window.addEventListener(\"resize\", () => {\n clearTimeout(timeout);\n timeout = setTimeout(() => this.handleHeroImageObjectFitValue(this.sizeVariant, heroElement), delay);\n });\n };\n\n if (heroTypeValue === \"front_page\" && this.sizeVariant !== 'full-image') {\n return (\n <Host>\n <div class={hyHeroClasses.join(\" \")}>\n <div class={`hy-hero__container`}>\n {this.createImageElement(this, this._sourceSet, this.setAspectRatio())}\n <div class={`hy-hero__spacer-box`}></div>\n <div class={`hy-hero__content-container`}>\n <div class={`hy-hero__content`}>\n <div class={`hy-hero__title-container`}>\n <h2 innerHTML={this.heading} class={heroTitleClasses}></h2>\n </div>\n {this.description && <p class={`hy-hero__description`}>{this.description}</p>}\n {this.url && (\n <div class={`hy-hero__actions`}>\n <hy-cta-button\n link-content={this.urlTitle}\n sc-label={this.scLabel}\n url={this.url}\n is-external={this.isExternal}\n variant={variant}\n />\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n <hy-box mb=\"2, 2, 1, 1\" />\n </Host>\n );\n }\n\n if (this.sizeVariant === 'full-image') {\n const linkTarget = this.isExternal ? '_blank' : '_self';\n return (\n <div class={`hy-hero hy-hero--full-image`}>\n <div class={`hy-hero__container`}>\n {this.createImageElement(this, this._sourceSet, this.setAspectRatio(16, 8))}\n <div class={`hy-hero__content-container`}>\n <div class={`hy-hero__content`} data-text-color={this.heroTextColor}>\n {this.subtitle && <span class={`hy-hero__subtitle`}>{this.subtitle}</span>}\n <h2 innerHTML={this.heading} class={heroTitleClasses}></h2>\n {this.description && <p class={`hy-hero__description`}>{this.description}</p>}\n {this.url && (\n <div class={`hy-hero__actions`}>\n <a class=\"hy-hero__link\" href={this.url} aria-label={this.scLabel} target={linkTarget} data-text-color={this.heroTextColor}>\n {this.urlTitle}\n <hy-icon icon={\"hy-icon-arrow-right\"} size={16} />\n </a>\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n );\n }\n\n return (\n <Host>\n <div class={hyHeroClasses.join(\" \")}>\n <div class={`hy-hero__container`}>\n {this.createImageElement(this, this._sourceSet, this.setAspectRatio())}\n <div class={`hy-hero__content-container`}>\n <div class={`hy-hero__content`}>\n <div class={`hy-hero__title-container`}>\n <h2 innerHTML={this.heading} class={heroTitleClasses}></h2>\n </div>\n {this.description && <p class={`hy-hero__description`}>{this.description}</p>}\n {this.url && (\n <div class={`hy-hero__actions`}>\n <hy-cta-button\n link-content={this.urlTitle}\n sc-label={this.scLabel}\n url={this.url}\n is-external={this.isExternal}\n variant={variant}\n />\n </div>\n )}\n </div>\n </div>\n </div>\n </div>\n <hy-box mb=\"2, 2, 1, 1\" />\n </Host>\n );\n }\n}\n"]}
@@ -153,6 +153,7 @@ export var HeroSizeVariant;
153
153
  (function (HeroSizeVariant) {
154
154
  HeroSizeVariant["large"] = "large";
155
155
  HeroSizeVariant["small"] = "small";
156
+ HeroSizeVariant["fullImage"] = "full-image";
156
157
  })(HeroSizeVariant || (HeroSizeVariant = {}));
157
158
  export var HeroTypeVariant;
158
159
  (function (HeroTypeVariant) {
@@ -166,6 +167,13 @@ export var HeroGroupTypeVariant;
166
167
  HeroGroupTypeVariant["default"] = "no_group";
167
168
  HeroGroupTypeVariant["research"] = "research_group";
168
169
  })(HeroGroupTypeVariant || (HeroGroupTypeVariant = {}));
170
+ export var HeroTextColor;
171
+ (function (HeroTextColor) {
172
+ HeroTextColor["dark_text_light_bg"] = "dark_text_light_bg";
173
+ HeroTextColor["light_text_dark_bg"] = "light_text_dark_bg";
174
+ HeroTextColor["dark_text_no_bg"] = "dark_text_no_bg";
175
+ HeroTextColor["light_text_no_bg"] = "light_text_no_bg";
176
+ })(HeroTextColor || (HeroTextColor = {}));
169
177
  export var FooterLinkItemColor;
170
178
  (function (FooterLinkItemColor) {
171
179
  FooterLinkItemColor["black"] = "black";
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import {FunctionalComponent} from \"@stencil/core\";\n\nexport type ButtonVariants = \"primary\" | \"secondary\";\nexport enum ButtonStates {\n enabled = \"enabled\",\n disabled = \"disabled\",\n}\n\nexport type FetchPriorityRange = \"low\" | \"high\" | \"auto\";\n\nexport type ProcessFlowBoxStepStates = \"first\" | \"default\";\n\nexport type IconName = {\n [key: string]: (props: any) => FunctionalComponent;\n};\n\nexport enum FooterLinkVariants {\n default = \"base\",\n base = \"base\",\n campus = \"base\",\n group = \"group\",\n}\n\nexport enum AccordionVariants {\n default = \"default\",\n mini = \"mini\",\n}\n\nexport enum BreadcrumbVariants {\n default = \"default\",\n landingLarge = \"large\",\n}\n\nexport enum HeadingVarians {\n default = \"h1\",\n h2 = \"h2\",\n h3 = \"h3\",\n h4 = \"h4\",\n h5 = \"h5\",\n h6 = \"h6\",\n}\n\nexport enum HeadingSectionVariants {\n default = \"default\",\n hero = \"hero\",\n subSection = \"subsection\",\n introduction = \"introduction\",\n landingPageHeader = \"landingsection\",\n contentPageHeader = \"contentsection\",\n frontPage = \"frontpage\",\n landingMajor = \"landing_major\",\n landingMinor = \"landing_minor\",\n course = \"courses\",\n groupFooterInfo = \"group_footer_info\",\n defaultFooterInfo = \"footer_info\",\n}\n\nexport enum LinkVariants {\n default = \"default\",\n paragraph = \"within-paragraph\",\n}\n\nexport enum CtaLinkVariants {\n default = \"default\",\n linkList = \"link-list\",\n}\n\nexport enum CtaLinkButtonVariants {\n default = \"default\",\n onBlueBkgd = \"blue-background\",\n onWhiteBkgd = \"white-background\",\n onBlackBkgd = \"black-background\",\n onTransparentBkgd = \"transparent-background\",\n heroWhite = \"hero-white\",\n heroBlue = \"hero-blue\",\n heroBlack = \"hero-black\",\n darkBlue = \"dark-blue-background\",\n}\n\nexport enum ProcessFlowBoxVariants {\n default = \"big\",\n small = \"small\",\n}\n\nexport enum KeyHighlightVariants {\n default = \"big\",\n small = \"small\",\n}\n\nexport enum LinkBoxVariants {\n default = \"content\",\n landingPage = \"landing\",\n}\n\nexport enum CourseVariants {\n default = \"row\",\n row = \"row\",\n grid = \"grid\",\n}\n\nexport enum CourseStateVariants {\n default = \"current\",\n pastCourses = \"past-courses\",\n}\n\nexport enum PersonCardVariants {\n default = \"results\",\n searchPanel = \"search-panel\",\n extended = \"extended\",\n}\n\nexport enum ListStyleVariants {\n default = \"grid\",\n grid = \"grid\",\n list = \"list\",\n}\n\nexport enum ListItemVariants {\n default = \"default\",\n degreeProgramme = \"degree\",\n position = \"position\",\n}\n\nexport enum PaginationItemVariants {\n default = \"default\",\n current = \"current\",\n previous = \"previous\",\n next = \"next\",\n ellipsis = \"ellipsis\",\n}\n\nexport enum MenuType {\n desktop = \"desktop\",\n mobile = \"mobile\",\n tablet = \"tablet\",\n default = \"desktop\",\n}\n\nexport enum SiteLogoSize {\n small = 32,\n big = 64,\n large = 80,\n}\n\nexport enum FooterVariant {\n header = \"header\",\n footer = \"footer\",\n}\n\nexport enum ColorVariant {\n black = \"var(--brand-main-nearly-black)\",\n white = \"var(--grayscale-white)\",\n grey_dark = \"var(--grayscale-dark)\",\n}\n\nexport type IntroductionBgColors = \"white\";\n\nexport enum HeroColorVariant {\n blue = \"blue\",\n black = \"black\",\n white = \"white\",\n fp_white = \"fp_white\",\n}\n\nexport enum HeroSizeVariant {\n large = \"large\",\n small = \"small\",\n}\n\nexport enum HeroTypeVariant {\n landing = \"landing\",\n group_landing = \"group_landing\",\n minor_landing = \"minor_landing\",\n front_page = \"front_page\",\n}\n\nexport enum HeroGroupTypeVariant {\n default = \"no_group\",\n research = \"research_group\",\n}\n\nexport enum FooterLinkItemColor {\n black = \"black\",\n white = \"white\",\n}\n\nexport enum CheckboxVariants {\n default = \"default\",\n button = \"button\",\n}\n\nexport enum GeneralListTypes {\n list = \"list\",\n grid = \"grid\",\n}\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/utils/utils.ts"],"names":[],"mappings":"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","sourcesContent":["import {FunctionalComponent} from \"@stencil/core\";\n\nexport type ButtonVariants = \"primary\" | \"secondary\";\nexport enum ButtonStates {\n enabled = \"enabled\",\n disabled = \"disabled\",\n}\n\nexport type FetchPriorityRange = \"low\" | \"high\" | \"auto\";\n\nexport type ProcessFlowBoxStepStates = \"first\" | \"default\";\n\nexport type IconName = {\n [key: string]: (props: any) => FunctionalComponent;\n};\n\nexport enum FooterLinkVariants {\n default = \"base\",\n base = \"base\",\n campus = \"base\",\n group = \"group\",\n}\n\nexport enum AccordionVariants {\n default = \"default\",\n mini = \"mini\",\n}\n\nexport enum BreadcrumbVariants {\n default = \"default\",\n landingLarge = \"large\",\n}\n\nexport enum HeadingVarians {\n default = \"h1\",\n h2 = \"h2\",\n h3 = \"h3\",\n h4 = \"h4\",\n h5 = \"h5\",\n h6 = \"h6\",\n}\n\nexport enum HeadingSectionVariants {\n default = \"default\",\n hero = \"hero\",\n subSection = \"subsection\",\n introduction = \"introduction\",\n landingPageHeader = \"landingsection\",\n contentPageHeader = \"contentsection\",\n frontPage = \"frontpage\",\n landingMajor = \"landing_major\",\n landingMinor = \"landing_minor\",\n course = \"courses\",\n groupFooterInfo = \"group_footer_info\",\n defaultFooterInfo = \"footer_info\",\n}\n\nexport enum LinkVariants {\n default = \"default\",\n paragraph = \"within-paragraph\",\n}\n\nexport enum CtaLinkVariants {\n default = \"default\",\n linkList = \"link-list\",\n}\n\nexport enum CtaLinkButtonVariants {\n default = \"default\",\n onBlueBkgd = \"blue-background\",\n onWhiteBkgd = \"white-background\",\n onBlackBkgd = \"black-background\",\n onTransparentBkgd = \"transparent-background\",\n heroWhite = \"hero-white\",\n heroBlue = \"hero-blue\",\n heroBlack = \"hero-black\",\n darkBlue = \"dark-blue-background\",\n}\n\nexport enum ProcessFlowBoxVariants {\n default = \"big\",\n small = \"small\",\n}\n\nexport enum KeyHighlightVariants {\n default = \"big\",\n small = \"small\",\n}\n\nexport enum LinkBoxVariants {\n default = \"content\",\n landingPage = \"landing\",\n}\n\nexport enum CourseVariants {\n default = \"row\",\n row = \"row\",\n grid = \"grid\",\n}\n\nexport enum CourseStateVariants {\n default = \"current\",\n pastCourses = \"past-courses\",\n}\n\nexport enum PersonCardVariants {\n default = \"results\",\n searchPanel = \"search-panel\",\n extended = \"extended\",\n}\n\nexport enum ListStyleVariants {\n default = \"grid\",\n grid = \"grid\",\n list = \"list\",\n}\n\nexport enum ListItemVariants {\n default = \"default\",\n degreeProgramme = \"degree\",\n position = \"position\",\n}\n\nexport enum PaginationItemVariants {\n default = \"default\",\n current = \"current\",\n previous = \"previous\",\n next = \"next\",\n ellipsis = \"ellipsis\",\n}\n\nexport enum MenuType {\n desktop = \"desktop\",\n mobile = \"mobile\",\n tablet = \"tablet\",\n default = \"desktop\",\n}\n\nexport enum SiteLogoSize {\n small = 32,\n big = 64,\n large = 80,\n}\n\nexport enum FooterVariant {\n header = \"header\",\n footer = \"footer\",\n}\n\nexport enum ColorVariant {\n black = \"var(--brand-main-nearly-black)\",\n white = \"var(--grayscale-white)\",\n grey_dark = \"var(--grayscale-dark)\",\n}\n\nexport type IntroductionBgColors = \"white\";\n\nexport enum HeroColorVariant {\n blue = \"blue\",\n black = \"black\",\n white = \"white\",\n fp_white = \"fp_white\",\n}\n\nexport enum HeroSizeVariant {\n large = \"large\",\n small = \"small\",\n fullImage = 'full-image',\n}\n\nexport enum HeroTypeVariant {\n landing = \"landing\",\n group_landing = \"group_landing\",\n minor_landing = \"minor_landing\",\n front_page = \"front_page\",\n}\n\nexport enum HeroGroupTypeVariant {\n default = \"no_group\",\n research = \"research_group\",\n}\n\nexport enum HeroTextColor {\n dark_text_light_bg = 'dark_text_light_bg',\n light_text_dark_bg = 'light_text_dark_bg',\n dark_text_no_bg = 'dark_text_no_bg',\n light_text_no_bg = 'light_text_no_bg',\n}\n\nexport enum FooterLinkItemColor {\n black = \"black\",\n white = \"white\",\n}\n\nexport enum CheckboxVariants {\n default = \"default\",\n button = \"button\",\n}\n\nexport enum GeneralListTypes {\n list = \"list\",\n grid = \"grid\",\n}\n"]}