@itcenteratunihelsinki/huds-lib 0.5.37 → 0.5.40

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 (180) hide show
  1. package/dist/cjs/huds-lib.cjs.js +1 -1
  2. package/dist/cjs/hy-accordion-container_5.cjs.entry.js +1 -1
  3. package/dist/cjs/hy-banner.cjs.entry.js +1 -1
  4. package/dist/cjs/hy-breadcrumbs.cjs.entry.js +1 -1
  5. package/dist/cjs/hy-checkbox.cjs.entry.js +1 -1
  6. package/dist/cjs/hy-content-list-item.cjs.entry.js +1 -1
  7. package/dist/cjs/hy-content-list.cjs.entry.js +1 -1
  8. package/dist/cjs/hy-cta-button.cjs.entry.js +1 -1
  9. package/dist/cjs/hy-cta-link.cjs.entry.js +1 -1
  10. package/dist/cjs/hy-filter-group-item.cjs.entry.js +1 -1
  11. package/dist/cjs/hy-filter-list-type.cjs.entry.js +1 -1
  12. package/dist/cjs/hy-footer_5.cjs.entry.js +37 -12
  13. package/dist/cjs/hy-general-list_2.cjs.entry.js +1 -1
  14. package/dist/cjs/hy-grid-item.cjs.entry.js +1 -1
  15. package/dist/cjs/hy-heading.cjs.entry.js +1 -1
  16. package/dist/cjs/hy-hero.cjs.entry.js +4 -4
  17. package/dist/cjs/hy-icon.cjs.entry.js +6 -0
  18. package/dist/cjs/hy-introduction.cjs.entry.js +3 -2
  19. package/dist/cjs/hy-key-figure-group.cjs.entry.js +1 -1
  20. package/dist/cjs/hy-key-figure.cjs.entry.js +1 -1
  21. package/dist/cjs/hy-key-highlight-group.cjs.entry.js +1 -1
  22. package/dist/cjs/hy-key-highlight.cjs.entry.js +1 -1
  23. package/dist/cjs/hy-large-process-flow.cjs.entry.js +1 -1
  24. package/dist/cjs/hy-link-box-list.cjs.entry.js +1 -1
  25. package/dist/cjs/hy-link-box.cjs.entry.js +1 -1
  26. package/dist/cjs/hy-link-list.cjs.entry.js +1 -1
  27. package/dist/cjs/hy-link.cjs.entry.js +1 -1
  28. package/dist/cjs/hy-list-item.cjs.entry.js +16 -2
  29. package/dist/cjs/hy-menu-item-sidebar.cjs.entry.js +1 -1
  30. package/dist/cjs/hy-menu-item.cjs.entry.js +1 -1
  31. package/dist/cjs/hy-menu-level-container.cjs.entry.js +1 -1
  32. package/dist/cjs/hy-menu-main-group.cjs.entry.js +1 -1
  33. package/dist/cjs/hy-menu-sidebar.cjs.entry.js +1 -1
  34. package/dist/cjs/hy-menu.cjs.entry.js +1 -1
  35. package/dist/cjs/hy-opening-hours-content.cjs.entry.js +2 -1
  36. package/dist/cjs/hy-opening-hours.cjs.entry.js +2 -2
  37. package/dist/cjs/hy-pager-item.cjs.entry.js +1 -1
  38. package/dist/cjs/hy-person-card.cjs.entry.js +1 -1
  39. package/dist/cjs/hy-process-flow-box.cjs.entry.js +1 -1
  40. package/dist/cjs/hy-process.cjs.entry.js +1 -1
  41. package/dist/cjs/hy-prominent-image.cjs.entry.js +2 -1
  42. package/dist/cjs/hy-search-field.cjs.entry.js +1 -1
  43. package/dist/cjs/hy-shortcuts.cjs.entry.js +1 -1
  44. package/dist/cjs/hy-site-header_3.cjs.entry.js +11 -6
  45. package/dist/cjs/hy-user-login-form.cjs.entry.js +1 -1
  46. package/dist/cjs/hy-video.cjs.entry.js +1 -1
  47. package/dist/cjs/loader.cjs.js +1 -1
  48. package/dist/cjs/{utils-3692dcdb.js → utils-eeb7b089.js} +1 -0
  49. package/dist/collection/components/footer/hy-footer-info/hy-footer-info.css +56 -1
  50. package/dist/collection/components/footer/hy-footer-info/hy-footer-info.js +120 -9
  51. package/dist/collection/components/footer/hy-footer-link-item/hy-footer-link-item.css +38 -42
  52. package/dist/collection/components/footer/hy-footer-link-item/hy-footer-link-item.js +33 -3
  53. package/dist/collection/components/hy-hero/hy-hero.css +7 -7
  54. package/dist/collection/components/hy-hero/hy-hero.js +2 -2
  55. package/dist/collection/components/hy-introduction/hy-introduction.js +21 -2
  56. package/dist/collection/components/hy-list-item/hy-list-item.css +170 -0
  57. package/dist/collection/components/hy-list-item/hy-list-item.js +63 -1
  58. package/dist/collection/components/hy-opening-hours/hy-opening-hours.js +1 -1
  59. package/dist/collection/components/hy-opening-hours-content/hy-opening-hours-content.js +20 -1
  60. package/dist/collection/components/hy-prominent-image/hy-prominent-image.js +20 -1
  61. package/dist/collection/components/icon/icon.js +1 -0
  62. package/dist/collection/components/site-header/site-header.js +25 -5
  63. package/dist/collection/components/site-header/site-logo/site-logo.css +8 -6
  64. package/dist/collection/components/site-header/site-logo/site-logo.js +26 -2
  65. package/dist/collection/utils/utils.js +1 -0
  66. package/dist/esm/huds-lib.js +1 -1
  67. package/dist/esm/hy-accordion-container_5.entry.js +1 -1
  68. package/dist/esm/hy-banner.entry.js +1 -1
  69. package/dist/esm/hy-breadcrumbs.entry.js +1 -1
  70. package/dist/esm/hy-checkbox.entry.js +1 -1
  71. package/dist/esm/hy-content-list-item.entry.js +1 -1
  72. package/dist/esm/hy-content-list.entry.js +1 -1
  73. package/dist/esm/hy-cta-button.entry.js +1 -1
  74. package/dist/esm/hy-cta-link.entry.js +1 -1
  75. package/dist/esm/hy-filter-group-item.entry.js +1 -1
  76. package/dist/esm/hy-filter-list-type.entry.js +1 -1
  77. package/dist/esm/hy-footer_5.entry.js +37 -12
  78. package/dist/esm/hy-general-list_2.entry.js +1 -1
  79. package/dist/esm/hy-grid-item.entry.js +1 -1
  80. package/dist/esm/hy-heading.entry.js +1 -1
  81. package/dist/esm/hy-hero.entry.js +4 -4
  82. package/dist/esm/hy-icon.entry.js +6 -0
  83. package/dist/esm/hy-introduction.entry.js +3 -2
  84. package/dist/esm/hy-key-figure-group.entry.js +1 -1
  85. package/dist/esm/hy-key-figure.entry.js +1 -1
  86. package/dist/esm/hy-key-highlight-group.entry.js +1 -1
  87. package/dist/esm/hy-key-highlight.entry.js +1 -1
  88. package/dist/esm/hy-large-process-flow.entry.js +1 -1
  89. package/dist/esm/hy-link-box-list.entry.js +1 -1
  90. package/dist/esm/hy-link-box.entry.js +1 -1
  91. package/dist/esm/hy-link-list.entry.js +1 -1
  92. package/dist/esm/hy-link.entry.js +1 -1
  93. package/dist/esm/hy-list-item.entry.js +16 -2
  94. package/dist/esm/hy-menu-item-sidebar.entry.js +1 -1
  95. package/dist/esm/hy-menu-item.entry.js +1 -1
  96. package/dist/esm/hy-menu-level-container.entry.js +1 -1
  97. package/dist/esm/hy-menu-main-group.entry.js +1 -1
  98. package/dist/esm/hy-menu-sidebar.entry.js +1 -1
  99. package/dist/esm/hy-menu.entry.js +1 -1
  100. package/dist/esm/hy-opening-hours-content.entry.js +2 -1
  101. package/dist/esm/hy-opening-hours.entry.js +2 -2
  102. package/dist/esm/hy-pager-item.entry.js +1 -1
  103. package/dist/esm/hy-person-card.entry.js +1 -1
  104. package/dist/esm/hy-process-flow-box.entry.js +1 -1
  105. package/dist/esm/hy-process.entry.js +1 -1
  106. package/dist/esm/hy-prominent-image.entry.js +2 -1
  107. package/dist/esm/hy-search-field.entry.js +1 -1
  108. package/dist/esm/hy-shortcuts.entry.js +1 -1
  109. package/dist/esm/hy-site-header_3.entry.js +11 -6
  110. package/dist/esm/hy-user-login-form.entry.js +1 -1
  111. package/dist/esm/hy-video.entry.js +1 -1
  112. package/dist/esm/loader.js +1 -1
  113. package/dist/esm/{utils-cb48185b.js → utils-708bbefe.js} +1 -0
  114. package/dist/huds-lib/huds-lib.esm.js +1 -1
  115. package/dist/huds-lib/{p-aa135221.entry.js → p-003597de.entry.js} +1 -1
  116. package/dist/huds-lib/{p-33f275c0.entry.js → p-00a1f0c4.entry.js} +1 -1
  117. package/dist/huds-lib/p-03ada2ef.entry.js +1 -0
  118. package/dist/huds-lib/{p-8ddab2fa.entry.js → p-065ae4a9.entry.js} +1 -1
  119. package/dist/huds-lib/{p-9e1e7a50.entry.js → p-095afc4e.entry.js} +1 -1
  120. package/dist/huds-lib/{p-ba49a9c2.entry.js → p-0ba24d1d.entry.js} +1 -1
  121. package/dist/huds-lib/{p-78060d4c.entry.js → p-0d751fcd.entry.js} +1 -1
  122. package/dist/huds-lib/{p-b5fc027f.entry.js → p-14a7e308.entry.js} +1 -1
  123. package/dist/huds-lib/{p-e933c51d.entry.js → p-1ed13a8e.entry.js} +1 -1
  124. package/dist/huds-lib/{p-a86d576b.entry.js → p-1f5cb6ed.entry.js} +1 -1
  125. package/dist/huds-lib/{p-47192e43.entry.js → p-24c25896.entry.js} +1 -1
  126. package/dist/huds-lib/p-2c83cfcf.entry.js +1 -0
  127. package/dist/huds-lib/{p-14f40b8c.entry.js → p-31d9c326.entry.js} +1 -1
  128. package/dist/huds-lib/{p-c51acec7.entry.js → p-3f050660.entry.js} +1 -1
  129. package/dist/huds-lib/{p-064b4cbf.entry.js → p-497703c3.entry.js} +1 -1
  130. package/dist/huds-lib/{p-938a2d69.entry.js → p-4c59a5f1.entry.js} +1 -1
  131. package/dist/huds-lib/p-51dd0bf2.entry.js +1 -0
  132. package/dist/huds-lib/{p-c12bd151.entry.js → p-69559eff.entry.js} +1 -1
  133. package/dist/huds-lib/{p-b7d6d7a9.entry.js → p-69849560.entry.js} +1 -1
  134. package/dist/huds-lib/{p-48fbe621.entry.js → p-6c54b7bc.entry.js} +1 -1
  135. package/dist/huds-lib/p-7225fde6.entry.js +1 -0
  136. package/dist/huds-lib/{p-5ed9781b.entry.js → p-75f84185.entry.js} +1 -1
  137. package/dist/huds-lib/{p-ddeb65de.entry.js → p-7ca87180.entry.js} +1 -1
  138. package/dist/huds-lib/{p-b5d1ec3a.entry.js → p-7dd26e2a.entry.js} +1 -1
  139. package/dist/huds-lib/p-8ab550d6.js +1 -0
  140. package/dist/huds-lib/{p-84b7ca24.entry.js → p-8aee711e.entry.js} +1 -1
  141. package/dist/huds-lib/{p-7d8c86f1.entry.js → p-90a2d5bd.entry.js} +1 -1
  142. package/dist/huds-lib/{p-f110b94a.entry.js → p-98487b2c.entry.js} +1 -1
  143. package/dist/huds-lib/{p-aa3255bd.entry.js → p-9b5113e0.entry.js} +1 -1
  144. package/dist/huds-lib/{p-6cc92340.entry.js → p-a0a1ead3.entry.js} +1 -1
  145. package/dist/huds-lib/p-a4745be5.entry.js +1 -0
  146. package/dist/huds-lib/{p-5214f8e4.entry.js → p-afe191fd.entry.js} +1 -1
  147. package/dist/huds-lib/{p-78ceaf5c.entry.js → p-b7268181.entry.js} +1 -1
  148. package/dist/huds-lib/{p-4d46f33b.entry.js → p-bd56a257.entry.js} +1 -1
  149. package/dist/huds-lib/p-c87b7917.entry.js +1 -0
  150. package/dist/huds-lib/p-cc3a6a5b.entry.js +1 -0
  151. package/dist/huds-lib/{p-8a62a954.entry.js → p-d56f5a7a.entry.js} +1 -1
  152. package/dist/huds-lib/{p-ac362729.entry.js → p-db4dc333.entry.js} +1 -1
  153. package/dist/huds-lib/{p-e93ed0a4.entry.js → p-dc6a653f.entry.js} +1 -1
  154. package/dist/huds-lib/{p-99cdca42.entry.js → p-dd2d9165.entry.js} +1 -1
  155. package/dist/huds-lib/p-de9a3ec8.entry.js +1 -0
  156. package/dist/huds-lib/{p-8f62c5a4.entry.js → p-e24fb999.entry.js} +1 -1
  157. package/dist/huds-lib/{p-f2fe08a4.entry.js → p-e834c239.entry.js} +1 -1
  158. package/dist/huds-lib/{p-5e60356e.entry.js → p-efc359e3.entry.js} +1 -1
  159. package/dist/huds-lib/{p-ede56435.entry.js → p-fbf11f85.entry.js} +1 -1
  160. package/dist/huds-lib/{p-9f0357c6.entry.js → p-fcf2d27d.entry.js} +1 -1
  161. package/dist/types/components/footer/hy-footer-info/hy-footer-info.d.ts +20 -0
  162. package/dist/types/components/footer/hy-footer-link-item/hy-footer-link-item.d.ts +1 -0
  163. package/dist/types/components/hy-introduction/hy-introduction.d.ts +1 -0
  164. package/dist/types/components/hy-list-item/hy-list-item.d.ts +2 -0
  165. package/dist/types/components/hy-opening-hours-content/hy-opening-hours-content.d.ts +1 -0
  166. package/dist/types/components/hy-prominent-image/hy-prominent-image.d.ts +1 -0
  167. package/dist/types/components/site-header/site-header.d.ts +1 -0
  168. package/dist/types/components/site-header/site-logo/site-logo.d.ts +1 -0
  169. package/dist/types/components.d.ts +45 -1
  170. package/dist/types/utils/utils.d.ts +2 -1
  171. package/package.json +1 -1
  172. package/dist/huds-lib/p-2517134c.entry.js +0 -1
  173. package/dist/huds-lib/p-33ffdffe.entry.js +0 -1
  174. package/dist/huds-lib/p-4d6f4bd3.entry.js +0 -1
  175. package/dist/huds-lib/p-51b159ea.entry.js +0 -1
  176. package/dist/huds-lib/p-70d43477.entry.js +0 -1
  177. package/dist/huds-lib/p-8081f6df.entry.js +0 -1
  178. package/dist/huds-lib/p-9080f8a1.entry.js +0 -1
  179. package/dist/huds-lib/p-a099ede9.entry.js +0 -1
  180. package/dist/huds-lib/p-e20f6203.js +0 -1
@@ -178,6 +178,176 @@
178
178
  }
179
179
  }
180
180
 
181
+ .hy-list-item__position {
182
+ background: radial-gradient(circle, var(--grayscale-light) 0%, var(--grayscale-background-box) 100%);
183
+ -webkit-box-orient: vertical;
184
+ -webkit-box-direction: normal;
185
+ -ms-flex-direction: column;
186
+ flex-direction: column;
187
+ }
188
+
189
+ @media (min-width: 30rem) {
190
+ .hy-list-item__position {
191
+ -webkit-box-orient: horizontal;
192
+ -webkit-box-direction: normal;
193
+ -ms-flex-direction: row;
194
+ flex-direction: row;
195
+ }
196
+ }
197
+
198
+ .hy-list-item__position__info-container {
199
+ display: -webkit-box;
200
+ display: -ms-flexbox;
201
+ display: flex;
202
+ -webkit-box-flex: 1;
203
+ -ms-flex: 1;
204
+ flex: 1;
205
+ -webkit-box-orient: vertical;
206
+ -webkit-box-direction: normal;
207
+ -ms-flex-direction: column;
208
+ flex-direction: column;
209
+ -webkit-box-pack: justify;
210
+ -ms-flex-pack: justify;
211
+ justify-content: space-between;
212
+ margin: 0;
213
+ padding: 12px;
214
+ position: relative;
215
+ }
216
+
217
+ @media (min-width: 60rem) {
218
+ .hy-list-item__position__info-container {
219
+ padding: 12px 16px;
220
+ }
221
+ }
222
+
223
+ @media (min-width: 1601px) {
224
+ .hy-list-item__position__info-container {
225
+ padding: 20px 24px;
226
+ }
227
+ }
228
+
229
+ .hy-list-item__position__info-container__header {
230
+ display: -webkit-box;
231
+ display: -ms-flexbox;
232
+ display: flex;
233
+ -webkit-box-align: center;
234
+ -ms-flex-align: center;
235
+ align-items: center;
236
+ -webkit-box-orient: horizontal;
237
+ -webkit-box-direction: normal;
238
+ -ms-flex-direction: row;
239
+ flex-direction: row;
240
+ color: var(--brand-main);
241
+ font-family: var(--main-font-family);
242
+ font-size: 14px;
243
+ font-weight: 600;
244
+ letter-spacing: -0.2px;
245
+ line-height: 14px;
246
+ margin-bottom: 14px;
247
+ }
248
+
249
+ .hy-list-item__position__info-container__header .icon {
250
+ margin-right: 0.75rem;
251
+ }
252
+
253
+ .hy-list-item__position__info-container__header .icon svg {
254
+ fill: var(--brand-main);
255
+ }
256
+
257
+ @media (min-width: 75.0625rem) {
258
+ .hy-list-item__position__info-container__large {
259
+ padding: 20px 24px;
260
+ }
261
+ }
262
+
263
+ .hy-list-item__position__info-container__data {
264
+ display: -webkit-box;
265
+ display: -ms-flexbox;
266
+ display: flex;
267
+ -webkit-box-orient: vertical;
268
+ -webkit-box-direction: normal;
269
+ -ms-flex-direction: column;
270
+ flex-direction: column;
271
+ }
272
+
273
+ .hy-list-item__position__info-container__title {
274
+ font-size: 1.125rem;
275
+ line-height: 20px;
276
+ font-weight: 700;
277
+ font-family: var(--main-font-family);
278
+ color: var(--grayscale-black);
279
+ margin-bottom: 12px;
280
+ letter-spacing: -0.45px;
281
+ line-height: 22px;
282
+ }
283
+
284
+ @media (min-width: 30rem) {
285
+ .hy-list-item__position__info-container__title {
286
+ letter-spacing: -0.5px;
287
+ }
288
+ }
289
+
290
+ .hy-list-item__position__info-container__description {
291
+ font-size: 0.875rem;
292
+ color: var(--grayscale-dark-text);
293
+ display: none;
294
+ font-family: var(--main-font-family);
295
+ letter-spacing: 0.8px;
296
+ margin-bottom: 14px;
297
+ line-height: 20px;
298
+ }
299
+
300
+ @media (min-width: 30rem) {
301
+ .hy-list-item__position__info-container__description {
302
+ display: block;
303
+ }
304
+ }
305
+
306
+ .hy-list-item__position__info-container__outgoing-link {
307
+ -webkit-box-align: end;
308
+ -ms-flex-align: end;
309
+ align-items: flex-end;
310
+ display: -webkit-box;
311
+ display: -ms-flexbox;
312
+ display: flex;
313
+ -webkit-box-orient: horizontal;
314
+ -webkit-box-direction: normal;
315
+ -ms-flex-direction: row;
316
+ flex-direction: row;
317
+ -webkit-box-pack: start;
318
+ -ms-flex-pack: start;
319
+ justify-content: flex-start;
320
+ position: relative;
321
+ padding: 0 24px 24px 12px;
322
+ }
323
+
324
+ @media (min-width: 30rem) {
325
+ .hy-list-item__position__info-container__outgoing-link {
326
+ -webkit-box-pack: center;
327
+ -ms-flex-pack: center;
328
+ justify-content: center;
329
+ padding: 0 24px 24px 0;
330
+ }
331
+ }
332
+
333
+ .hy-list-item__position__info-container__outgoing-link .label {
334
+ color: var(--link-blue);
335
+ font-family: var(--main-font-family);
336
+ font-size: 16px;
337
+ font-weight: 600;
338
+ letter-spacing: -0.3px;
339
+ line-height: 20px;
340
+ }
341
+
342
+ .hy-list-item__position__info-container__outgoing-link .icon {
343
+ margin-right: 4px;
344
+ margin-bottom: 2px;
345
+ }
346
+
347
+ .hy-list-item__position__info-container__outgoing-link .icon svg {
348
+ fill: var(--link-blue);
349
+ }
350
+
181
351
  .hy-list-item__degree {
182
352
  background: radial-gradient(circle, var(--grayscale-light) 0%, var(--grayscale-background-box) 100%);
183
353
  -webkit-box-orient: vertical;
@@ -12,6 +12,8 @@ export class HyListItem {
12
12
  this.disableLazy = false;
13
13
  this.outGoingUrlLabel = 'Go to programme page';
14
14
  this.headerstyle = 'common';
15
+ this.truncateDescription = false;
16
+ this.truncateLimit = 140;
15
17
  this._imageMinHeight = 0;
16
18
  this._imageMinWidth = 0;
17
19
  }
@@ -142,7 +144,31 @@ export class HyListItem {
142
144
  const classInfoContainerLinkIcon = [`hy-list-item__${this.variant}__info-container__link__icon`].join(' ');
143
145
  const classInfoContainerLink = [`hy-list-item__${this.variant}__info-container__link`].join(' ');
144
146
  const target = this.isExternal ? '_blank' : '_self';
147
+ function truncate(str, n) {
148
+ return str.length > n ? str.substr(0, n - 1) + '...' : str;
149
+ }
145
150
  switch (this.variant) {
151
+ case ListItemVariants.position: {
152
+ const classInfoContainerOutgoingLink = [
153
+ `hy-list-item__${this.variant}__info-container__outgoing-link`,
154
+ `hy-list-item__${this.variant}__info-container__outgoing-link__${this.headerstyle}`,
155
+ ].join(' ');
156
+ return (h("article", null,
157
+ h("a", { class: classAttributes, href: this.url, target: target, "aria-label": this.scLabel },
158
+ h("div", { class: classInfoContainerAttributes },
159
+ h("div", { class: classInfoContainerHeader },
160
+ h("div", { class: "icon" },
161
+ h("hy-icon", { icon: 'hy-icon-units-and-faculties', size: 18 })),
162
+ this.itemType),
163
+ h("div", { class: classInfoContainerTitle }, this.itemTitle),
164
+ this.itemDescription && (h("div", { class: classInfoContainerDescription, innerHTML: this.truncateDescription
165
+ ? truncate(this.itemDescription, this.truncateLimit)
166
+ : this.itemDescription }))),
167
+ h("div", { class: classInfoContainerOutgoingLink },
168
+ h("span", { class: "icon" },
169
+ h("hy-icon", { icon: 'hy-icon-done', size: 14 })),
170
+ h("span", { class: "label" }, this.outGoingUrlLabel)))));
171
+ }
146
172
  case ListItemVariants.degreeProgramme: {
147
173
  const classImageContainerAttributes = [`hy-list-item__${this.variant}__image-container`].join(' ');
148
174
  const classImageContainerImage = [`hy-list-item__${this.variant}__image-container__image`].join(' ');
@@ -256,7 +282,7 @@ export class HyListItem {
256
282
  "mutable": false,
257
283
  "complexType": {
258
284
  "original": "ListItemVariants",
259
- "resolved": "ListItemVariants.default | ListItemVariants.degreeProgramme",
285
+ "resolved": "ListItemVariants.default | ListItemVariants.degreeProgramme | ListItemVariants.position",
260
286
  "references": {
261
287
  "ListItemVariants": {
262
288
  "location": "import",
@@ -561,6 +587,42 @@ export class HyListItem {
561
587
  },
562
588
  "attribute": "source-set",
563
589
  "reflect": false
590
+ },
591
+ "truncateDescription": {
592
+ "type": "boolean",
593
+ "mutable": false,
594
+ "complexType": {
595
+ "original": "boolean",
596
+ "resolved": "boolean",
597
+ "references": {}
598
+ },
599
+ "required": false,
600
+ "optional": false,
601
+ "docs": {
602
+ "tags": [],
603
+ "text": ""
604
+ },
605
+ "attribute": "truncate-description",
606
+ "reflect": false,
607
+ "defaultValue": "false"
608
+ },
609
+ "truncateLimit": {
610
+ "type": "number",
611
+ "mutable": false,
612
+ "complexType": {
613
+ "original": "number",
614
+ "resolved": "number",
615
+ "references": {}
616
+ },
617
+ "required": false,
618
+ "optional": false,
619
+ "docs": {
620
+ "tags": [],
621
+ "text": ""
622
+ },
623
+ "attribute": "truncate-limit",
624
+ "reflect": false,
625
+ "defaultValue": "140"
564
626
  }
565
627
  }; }
566
628
  static get states() { return {
@@ -28,7 +28,7 @@ export class HyOpeningHours {
28
28
  h("div", { class: "open-hours__content__top" },
29
29
  h("span", { class: "open-hours__content__top-label" }, this.listLabel),
30
30
  h("span", { class: "open-hours__content__top-label" }, this.buildingLabel),
31
- h("span", { class: "open-hours__content__top-label" }, this.customerServiceLabel)),
31
+ this.customerServiceLabel && (h("span", { class: "open-hours__content__top-label" }, this.customerServiceLabel))),
32
32
  h("div", { class: "open-hours__content" },
33
33
  h("slot", null)),
34
34
  this.customLink && (h("div", { class: "open-hours__links" },
@@ -3,6 +3,7 @@ export class HyOpeningHoursContent {
3
3
  constructor() {
4
4
  this.multiple = false;
5
5
  this.selfServiceLabel = null;
6
+ this.venueType = 'libraries';
6
7
  }
7
8
  dataItemsWatcher(data) {
8
9
  this._dataItems = typeof data === 'string' ? JSON.parse(data) : data;
@@ -30,7 +31,7 @@ export class HyOpeningHoursContent {
30
31
  return (h("div", { class: itemClasses },
31
32
  h("span", { class: "open-hours__list-item--office" }, item.today ? item.today : item.dateLibrary),
32
33
  h("span", { class: "open-hours__list-item--hours" }, item.building),
33
- h("span", { class: "open-hours__list-item--service" }, "-")));
34
+ this.venueType !== 'luomus' && h("span", { class: "open-hours__list-item--service" }, "-")));
34
35
  })));
35
36
  }
36
37
  static get is() { return "hy-opening-hours-content"; }
@@ -77,6 +78,24 @@ export class HyOpeningHoursContent {
77
78
  "reflect": false,
78
79
  "defaultValue": "null"
79
80
  },
81
+ "venueType": {
82
+ "type": "string",
83
+ "mutable": false,
84
+ "complexType": {
85
+ "original": "string",
86
+ "resolved": "string",
87
+ "references": {}
88
+ },
89
+ "required": false,
90
+ "optional": false,
91
+ "docs": {
92
+ "tags": [],
93
+ "text": ""
94
+ },
95
+ "attribute": "venue-type",
96
+ "reflect": false,
97
+ "defaultValue": "'libraries'"
98
+ },
80
99
  "dataItems": {
81
100
  "type": "string",
82
101
  "mutable": false,
@@ -1,6 +1,7 @@
1
1
  import { Component, Element, Host, h, Prop } from '@stencil/core';
2
2
  export class HyProminentImage {
3
3
  constructor() {
4
+ this.imageAlt = '';
4
5
  this.headerstyle = 'common';
5
6
  }
6
7
  componentDidLoad() {
@@ -21,7 +22,7 @@ export class HyProminentImage {
21
22
  return (h(Host, null,
22
23
  h("div", { class: prominentImageClass },
23
24
  h("div", { class: "hy-prominent-image__image" },
24
- h("hy-image", { "source-set": this.sourceSet, "image-url": this.imageUrl, aspectRatioWidth: 2, aspectRatioHeight: 1 })),
25
+ h("hy-image", { "source-set": this.sourceSet, "image-url": this.imageUrl, "image-alt": this.imageAlt, aspectRatioWidth: 2, aspectRatioHeight: 1 })),
25
26
  this.textTitle && h("div", { class: prominentImageText }, this.textTitle))));
26
27
  }
27
28
  static get is() { return "hy-prominent-image"; }
@@ -67,6 +68,24 @@ export class HyProminentImage {
67
68
  "attribute": "image-url",
68
69
  "reflect": false
69
70
  },
71
+ "imageAlt": {
72
+ "type": "string",
73
+ "mutable": false,
74
+ "complexType": {
75
+ "original": "string",
76
+ "resolved": "string",
77
+ "references": {}
78
+ },
79
+ "required": false,
80
+ "optional": false,
81
+ "docs": {
82
+ "tags": [],
83
+ "text": ""
84
+ },
85
+ "attribute": "image-alt",
86
+ "reflect": false,
87
+ "defaultValue": "''"
88
+ },
70
89
  "headerstyle": {
71
90
  "type": "string",
72
91
  "mutable": false,
@@ -26,6 +26,7 @@ const iconNames = {
26
26
  'hy-icon-globe': (p) => h(icons.Globe, Object.assign({}, p)),
27
27
  'hy-icon-hamburger': (p) => h(icons.Hamburger, Object.assign({}, p)),
28
28
  'hy-icon-home': (p) => h(icons.Home, Object.assign({}, p)),
29
+ 'hy-icon-helsingin-yliopisto': (p) => h(icons.Helsinginyliopisto, Object.assign({}, p)),
29
30
  'hy-icon-email': (p) => h(icons.Mail, Object.assign({}, p)),
30
31
  'hy-icon-embed': (p) => h(icons.Embed, Object.assign({}, p)),
31
32
  'hy-icon-events': (p) => h(icons.Events, Object.assign({}, p)),
@@ -5,6 +5,7 @@ import { jsonParserWorker } from '../../global/globalScript';
5
5
  export class SiteHeader {
6
6
  constructor() {
7
7
  this.isGroup = false;
8
+ this.isLuomusGroup = false;
8
9
  this.researchGroupLabel = '';
9
10
  this.groupType = '';
10
11
  this.groupLogoUrl = '';
@@ -116,7 +117,8 @@ export class SiteHeader {
116
117
  }
117
118
  else {
118
119
  // Scroll Up
119
- if (topOffset < this.el.offsetTop + this.navbarHeight) {
120
+ if (topOffset <= this.el.offsetTop + this.navbarHeight ||
121
+ (topOffset <= 10 && this.el.offsetTop + this.navbarHeight == 0)) {
120
122
  hySiteHeader.classList.remove('hy-site-header--sticky-active');
121
123
  hySiteHeader.classList.remove('hy-site-header--sticky-visible');
122
124
  hySiteHeader.classList.remove('hy-site-header--sticky-hidden');
@@ -188,8 +190,8 @@ export class SiteHeader {
188
190
  this.isGroup && (h("section", { class: `hy-site-header__content-top ${this.isTopMenuOpen ? 'is-open' : ''}` },
189
191
  h("div", { class: "hy-site-header__container" },
190
192
  h("div", { class: "hy-site-header__branding" },
191
- h("hy-site-logo", { "is-group": true, size: logoSizeGroup, color: logoColorGroup, url: this.siteUrl, label: this.siteLabel })),
192
- h("hy-menu-main-group", { tabindex: "0", "is-mobile": false, "menu-label": (_a = this.groupPages['university_main_menu']) !== null && _a !== void 0 ? _a : null, "data-main-menu": this.dataMainMenuLinks }),
193
+ h("hy-site-logo", { "is-group": true, "is-luomus-group": this.isLuomusGroup, size: logoSizeGroup, color: logoColorGroup, url: this.siteUrl, label: this.siteLabel })),
194
+ this.dataMainMenuLinks.length > 2 && (h("hy-menu-main-group", { tabindex: "0", "is-mobile": false, "menu-label": (_a = this.groupPages['university_main_menu']) !== null && _a !== void 0 ? _a : null, "data-main-menu": this.dataMainMenuLinks })),
193
195
  h("div", { class: "hy-site-header__actions" },
194
196
  h("hy-menu-language", { "data-menu-language": this.dataMenuLanguage, labels: this.languageLabels, isGroup: true }),
195
197
  !this.noSearch && (h("hy-site-search", { class: 'menu--secondary__item group', size: 18, color: logoColorGroup, "is-group": true, "show-label": this.showSearchLabel, labels: this.searchLabels, "search-labels": this.dataSiteSearchLabels, "search-tools": this.dataSearchTools })),
@@ -220,11 +222,11 @@ export class SiteHeader {
220
222
  this.isGroup && (h("section", { class: `hy-site-header__content-top ${this.isTopMenuOpen ? 'is-open' : ''}` },
221
223
  h("div", { class: "hy-site-header__container" },
222
224
  h("div", { class: "hy-site-header__branding" },
223
- h("hy-site-logo", { "is-group": true, size: logoSizeGroup, color: logoColorGroup, url: this.siteUrl, label: this.siteLabel })),
225
+ h("hy-site-logo", { "is-group": true, "is-luomus-group": this.isLuomusGroup, size: logoSizeGroup, color: logoColorGroup, url: this.siteUrl, label: this.siteLabel })),
224
226
  h("div", { class: "hy-site-header__actions" },
225
227
  h("hy-menu-language", { "data-menu-language": this.dataMenuLanguage, labels: this.languageLabels, isGroup: true }),
226
228
  !this.noSearch && (h("hy-site-search", { class: 'menu--secondary__item group', size: 18, color: logoColorGroup, "is-group": true, "show-label": this.showSearchLabel, labels: this.searchLabels, "search-labels": this.dataSiteSearchLabels, "search-tools": this.dataSearchTools })),
227
- h("hy-menu-main-group", { "site-label": this.siteLabel, "site-url": this.siteUrl, "logo-label": this.logoLabel, "logo-url": this.logoUrl, "is-mobile": true, donate: this.donateLink, "data-main-menu": this.dataMainMenuLinks }))))),
229
+ this.dataMainMenuLinks.length > 2 && (h("hy-menu-main-group", { "site-label": this.siteLabel, "site-url": this.siteUrl, "logo-label": this.logoLabel, "logo-url": this.logoUrl, "is-mobile": true, donate: this.donateLink, "data-main-menu": this.dataMainMenuLinks })))))),
228
230
  h("section", { class: "hy-site-header__container" },
229
231
  h("div", { class: 'hy-site-header__branding' },
230
232
  this.groupType == 'research_group_menu' && h("p", null, this.researchGroupLabel),
@@ -271,6 +273,24 @@ export class SiteHeader {
271
273
  "reflect": false,
272
274
  "defaultValue": "false"
273
275
  },
276
+ "isLuomusGroup": {
277
+ "type": "boolean",
278
+ "mutable": false,
279
+ "complexType": {
280
+ "original": "boolean",
281
+ "resolved": "boolean",
282
+ "references": {}
283
+ },
284
+ "required": false,
285
+ "optional": false,
286
+ "docs": {
287
+ "tags": [],
288
+ "text": ""
289
+ },
290
+ "attribute": "is-luomus-group",
291
+ "reflect": false,
292
+ "defaultValue": "false"
293
+ },
274
294
  "researchGroupLabel": {
275
295
  "type": "string",
276
296
  "mutable": false,
@@ -64,7 +64,8 @@
64
64
  --site-logo-color: var(--brand-main-nearly-black);
65
65
  }
66
66
 
67
- .hy-site-logo a {
67
+ .hy-site-logo a,
68
+ .hy-site-logo div.luomus-group {
68
69
  -webkit-box-align: center;
69
70
  -ms-flex-align: center;
70
71
  align-items: center;
@@ -74,7 +75,8 @@
74
75
  text-decoration: none;
75
76
  }
76
77
 
77
- .hy-site-logo a:focus {
78
+ .hy-site-logo a:focus,
79
+ .hy-site-logo div.luomus-group:focus {
78
80
  outline: solid 2px var(--additional-yellow);
79
81
  outline-offset: 2px;
80
82
  }
@@ -211,16 +213,16 @@
211
213
  fill: var(--brand-main);
212
214
  }
213
215
 
214
- .hy-site-logo__header__group:hover {
216
+ .hy-site-logo__header__group:not(.luomus):hover {
215
217
  color: var(--grayscale-medium);
216
218
  }
217
219
 
218
- .hy-site-logo__header__group:hover a,
219
- .hy-site-logo__header__group:hover span {
220
+ .hy-site-logo__header__group:not(.luomus):hover a,
221
+ .hy-site-logo__header__group:not(.luomus):hover span {
220
222
  color: var(--grayscale-medium) !important;
221
223
  }
222
224
 
223
- .hy-site-logo__header__group:hover svg {
225
+ .hy-site-logo__header__group:not(.luomus):hover svg {
224
226
  fill: var(--grayscale-medium);
225
227
  }
226
228
 
@@ -5,19 +5,25 @@ export class SiteLogo {
5
5
  this.type = FooterVariant.header;
6
6
  this.color = ColorVariant.black;
7
7
  this.isGroup = false;
8
+ this.isLuomusGroup = false;
8
9
  this.size = SiteLogoSize.big;
9
10
  }
10
11
  render() {
11
12
  const isGroupClass = this.isGroup ? 'group' : 'page';
13
+ // const isLuomusGroupClass = this.isLuomusGroup ? 'luomus' : 'regular';
12
14
  const classAttributes = [
13
15
  'hy-site-logo',
14
16
  `hy-site-logo__${this.type}__${isGroupClass}`,
15
17
  `hy-site-logo__${this.type}`,
18
+ 'luomus',
16
19
  ].join(' ');
17
20
  return this.url ? (h(Host, { class: classAttributes },
18
- h("a", { href: this.url },
21
+ !this.isLuomusGroup && (h("a", { href: this.url },
19
22
  h("hy-icon", { class: { 'hy-site-logo__icon': true, group: this.isGroup }, icon: 'hy-icon-hy-logo', size: this.size, fill: this.color }),
20
- h("span", { class: { 'hy-site-logo__label': true, group: this.isGroup }, style: { color: this.color } }, this.label)))) : this.label ? (h(Host, { class: classAttributes },
23
+ h("span", { class: { 'hy-site-logo__label': true, group: this.isGroup }, style: { color: this.color } }, this.label))),
24
+ this.isLuomusGroup && (h("div", { class: "luomus-group" },
25
+ h("hy-icon", { class: { 'hy-site-logo__icon': true, group: this.isGroup }, icon: 'hy-icon-hy-logo', size: this.size, fill: this.color }),
26
+ h("span", { class: { 'hy-site-logo__label': true, group: this.isGroup }, style: { color: this.color } }, this.label))))) : this.label ? (h(Host, { class: classAttributes },
21
27
  h("hy-icon", { class: { 'hy-site-logo__icon': true, group: this.isGroup }, icon: 'hy-icon-hy-logo', size: this.size, fill: this.color }),
22
28
  h("span", { class: { 'hy-site-logo__label': true, group: this.isGroup }, style: { color: this.color } }, this.label))) : ('');
23
29
  }
@@ -93,6 +99,24 @@ export class SiteLogo {
93
99
  "reflect": false,
94
100
  "defaultValue": "false"
95
101
  },
102
+ "isLuomusGroup": {
103
+ "type": "boolean",
104
+ "mutable": false,
105
+ "complexType": {
106
+ "original": "boolean",
107
+ "resolved": "boolean",
108
+ "references": {}
109
+ },
110
+ "required": false,
111
+ "optional": false,
112
+ "docs": {
113
+ "tags": [],
114
+ "text": ""
115
+ },
116
+ "attribute": "is-luomus-group",
117
+ "reflect": false,
118
+ "defaultValue": "false"
119
+ },
96
120
  "label": {
97
121
  "type": "string",
98
122
  "mutable": false,
@@ -108,6 +108,7 @@ export var ListItemVariants;
108
108
  (function (ListItemVariants) {
109
109
  ListItemVariants["default"] = "default";
110
110
  ListItemVariants["degreeProgramme"] = "degree";
111
+ ListItemVariants["position"] = "position";
111
112
  })(ListItemVariants || (ListItemVariants = {}));
112
113
  export var PaginationItemVariants;
113
114
  (function (PaginationItemVariants) {