@itcenteratunihelsinki/huds-lib 0.7.5 → 0.7.7

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 (121) hide show
  1. package/dist/cjs/color-box_8.cjs.entry.js +6 -6
  2. package/dist/cjs/huds-lib.cjs.js +1 -1
  3. package/dist/cjs/hy-accordion-container_83.cjs.entry.js +571 -136
  4. package/dist/cjs/hy-event-item.cjs.entry.js +1 -1
  5. package/dist/cjs/hy-events.cjs.entry.js +1 -1
  6. package/dist/cjs/loader.cjs.js +1 -1
  7. package/dist/collection/components/accordion-container/accordion-container.css +2 -1
  8. package/dist/collection/components/accordion-item/accordion-item.css +2 -1
  9. package/dist/collection/components/adjacent-image-text/adjacent-image-text.css +2 -1
  10. package/dist/collection/components/button/button.css +2 -1
  11. package/dist/collection/components/courses/hy-content-list/hy-content-list.css +2 -1
  12. package/dist/collection/components/courses/hy-content-list-item/hy-content-list-item.css +2 -1
  13. package/dist/collection/components/cta-button/cta-button.css +7 -6
  14. package/dist/collection/components/cta-link/cta-link.css +3 -2
  15. package/dist/collection/components/footer/hy-footer/hy-footer.css +2 -1
  16. package/dist/collection/components/footer/hy-footer-action/hy-footer-action.css +2 -1
  17. package/dist/collection/components/footer/hy-footer-action/hy-footer-action.js +10 -2
  18. package/dist/collection/components/footer/hy-footer-base/hy-footer-base.css +2 -1
  19. package/dist/collection/components/footer/hy-footer-info/hy-footer-info.css +2 -1
  20. package/dist/collection/components/footer/hy-footer-link-item/hy-footer-link-item.css +2 -1
  21. package/dist/collection/components/grid-container/grid-container.css +2 -1
  22. package/dist/collection/components/grid-item/grid-item.css +2 -1
  23. package/dist/collection/components/grid-row/grid-row.css +2 -1
  24. package/dist/collection/components/heading/heading-fw.css +2 -1
  25. package/dist/collection/components/heading/heading.css +2 -1
  26. package/dist/collection/components/hy-anchor-link-list/hy-anchor-link-list.css +2 -1
  27. package/dist/collection/components/hy-badge/hy-badge.css +2 -1
  28. package/dist/collection/components/hy-banner/hy-banner.css +2 -1
  29. package/dist/collection/components/hy-box/hy-box.css +2 -1
  30. package/dist/collection/components/hy-box/hy-box.js +22 -1
  31. package/dist/collection/components/hy-breadcrumbs/hy-breadcrumbs.css +2 -1
  32. package/dist/collection/components/hy-checkbox/hy-checkbox.css +2 -1
  33. package/dist/collection/components/hy-collaboration/hy-collaboration.css +2 -1
  34. package/dist/collection/components/hy-crisis-banner/hy-crisis-banner.css +4 -3
  35. package/dist/collection/components/hy-dropdown/hy-dropdown.css +2 -1
  36. package/dist/collection/components/hy-event-item/hy-event-item.css +2 -1
  37. package/dist/collection/components/hy-events/hy-events.css +2 -1
  38. package/dist/collection/components/hy-filter-group/hy-filter-group.css +2 -1
  39. package/dist/collection/components/hy-filter-list-type/hy-filter-list-type.css +2 -1
  40. package/dist/collection/components/hy-filter-visibility-tool/hy-filter-visibility-tool.css +2 -1
  41. package/dist/collection/components/hy-general-list/hy-general-list.css +2 -1
  42. package/dist/collection/components/hy-general-list-item/hy-general-list-item.css +2 -1
  43. package/dist/collection/components/hy-hero/hy-hero.css +2 -1
  44. package/dist/collection/components/hy-introduction/hy-introduction.css +2 -1
  45. package/dist/collection/components/hy-key-figure/hy-key-figure.css +2 -1
  46. package/dist/collection/components/hy-key-figure-group/hy-key-figure-group.css +2 -1
  47. package/dist/collection/components/hy-key-highlight/hy-key-highlight.css +2 -1
  48. package/dist/collection/components/hy-key-highlight-group/hy-key-highlight-group.css +2 -1
  49. package/dist/collection/components/hy-large-process-flow/hy-large-process-flow.css +2 -1
  50. package/dist/collection/components/hy-large-process-flow-phase/hy-large-process-flow-phase.css +2 -1
  51. package/dist/collection/components/hy-link-list/hy-link-list.css +2 -1
  52. package/dist/collection/components/hy-list-item/hy-list-item.css +2 -1
  53. package/dist/collection/components/hy-logo-grid/hy-logo-grid.css +2 -1
  54. package/dist/collection/components/hy-main/hy-main.css +2 -1
  55. package/dist/collection/components/hy-main-content-wrapper/hy-main-content-wrapper.css +2 -1
  56. package/dist/collection/components/hy-opening-hours/hy-opening-hours.css +2 -1
  57. package/dist/collection/components/hy-opening-hours-content/hy-opening-hours-content.css +2 -1
  58. package/dist/collection/components/hy-person-card/hy-person-card.css +15 -1
  59. package/dist/collection/components/hy-person-card/hy-person-card.js +4 -4
  60. package/dist/collection/components/hy-prominent-image/hy-prominent-image.css +2 -1
  61. package/dist/collection/components/hy-quote/hy-quote.css +2 -1
  62. package/dist/collection/components/hy-search-field/hy-search-field.css +18 -1
  63. package/dist/collection/components/hy-search-field/hy-search-field.js +20 -0
  64. package/dist/collection/components/hy-shortcuts/hy-shortcuts.css +2 -1
  65. package/dist/collection/components/hy-table-container/hy-table-container.css +2 -1
  66. package/dist/collection/components/hy-tabs/hy-tabs.css +2 -1
  67. package/dist/collection/components/hy-tabs-item/hy-tabs-item.css +2 -1
  68. package/dist/collection/components/hy-tag/hy-tag.css +2 -1
  69. package/dist/collection/components/hy-twitter-feed/hy-twitter-feed.css +2 -1
  70. package/dist/collection/components/hy-two-columns/hy-two-columns.css +2 -1
  71. package/dist/collection/components/hy-user-login-form/hy-user-login-form.css +2 -1
  72. package/dist/collection/components/hy-video/hy-video.css +2 -1
  73. package/dist/collection/components/icon/icon.js +91 -18
  74. package/dist/collection/components/image/image.css +2 -1
  75. package/dist/collection/components/ingress/ingress.css +2 -1
  76. package/dist/collection/components/link/link.css +2 -1
  77. package/dist/collection/components/link-box/link-box.css +2 -1
  78. package/dist/collection/components/link-box-list/link-box-list.css +2 -1
  79. package/dist/collection/components/navigation/hy-menu-main-group/hy-menu-main-group.css +2 -1
  80. package/dist/collection/components/navigation/hy-menu-main-group/hy-menu-main-group.js +1 -1
  81. package/dist/collection/components/navigation/menu-language/menu-language.css +2 -1
  82. package/dist/collection/components/navigation/menu-language/menu-language.js +1 -1
  83. package/dist/collection/components/navigation/menu-language-item/menu-language-item.css +2 -1
  84. package/dist/collection/components/navigation/menu-language-item/menu-language-item.js +1 -1
  85. package/dist/collection/components/pagination/hy-pager/hy-pager.css +2 -1
  86. package/dist/collection/components/pagination/hy-pager-item/hy-pager-item.css +2 -1
  87. package/dist/collection/components/paragraph-text/paragraph-text-content.css +2 -1
  88. package/dist/collection/components/paragraph-text/paragraph-text-landing.css +2 -1
  89. package/dist/collection/components/paragraph-text/paragraph-text.css +2 -1
  90. package/dist/collection/components/person-profile/person-profile-listing/person-profile-listing.css +2 -1
  91. package/dist/collection/components/person-profile/person-profile.css +2 -1
  92. package/dist/collection/components/process/process.css +2 -1
  93. package/dist/collection/components/process-flow-box/process-flow-box.css +2 -1
  94. package/dist/collection/components/section-container/section-container.css +2 -1
  95. package/dist/collection/components/site-header/site-header.css +35 -21
  96. package/dist/collection/components/site-header/site-header.js +25 -35
  97. package/dist/collection/components/site-header/site-logo/site-logo.css +2 -1
  98. package/dist/collection/components/site-header/site-search/site-search.css +2 -1
  99. package/dist/collection/components/tiny-text/tiny-text.css +2 -1
  100. package/dist/esm/color-box_8.entry.js +6 -6
  101. package/dist/esm/huds-lib.js +1 -1
  102. package/dist/esm/hy-accordion-container_83.entry.js +571 -136
  103. package/dist/esm/hy-event-item.entry.js +1 -1
  104. package/dist/esm/hy-events.entry.js +1 -1
  105. package/dist/esm/loader.js +1 -1
  106. package/dist/huds-lib/huds-lib.css +1 -1
  107. package/dist/huds-lib/huds-lib.esm.js +1 -1
  108. package/dist/huds-lib/p-aba9f82a.entry.js +1 -0
  109. package/dist/huds-lib/p-dc6f2dbf.entry.js +87 -0
  110. package/dist/huds-lib/p-ea047996.entry.js +1 -0
  111. package/dist/huds-lib/p-ef93cfb1.entry.js +1 -0
  112. package/dist/types/components/footer/hy-footer-action/hy-footer-action.d.ts +1 -0
  113. package/dist/types/components/hy-box/hy-box.d.ts +1 -0
  114. package/dist/types/components/hy-search-field/hy-search-field.d.ts +1 -0
  115. package/dist/types/components/site-header/site-header.d.ts +2 -1
  116. package/dist/types/components.d.ts +4 -0
  117. package/package.json +1 -1
  118. package/dist/huds-lib/p-2efc8ca0.entry.js +0 -1
  119. package/dist/huds-lib/p-cd0fb7ff.entry.js +0 -1
  120. package/dist/huds-lib/p-f0f3d562.entry.js +0 -1
  121. package/dist/huds-lib/p-f4366163.entry.js +0 -86
@@ -2,53 +2,115 @@ import { Component, h, Prop, Host } from '@stencil/core';
2
2
  import * as icons from './icons';
3
3
  // TODO: add all icons
4
4
  const iconNames = {
5
- 'hy-icon-avatar-group': (p) => h(icons.AvatarGroup, Object.assign({}, p)),
5
+ 'hy-icon-add-todo': (p) => h(icons.AddToTodoList, Object.assign({}, p)),
6
+ 'hy-icon-alert': (p) => h(icons.Alert, Object.assign({}, p)),
7
+ 'hy-icon-archive': (p) => h(icons.Archive, Object.assign({}, p)),
6
8
  'hy-icon-arrow-down': (p) => h(icons.ArrowDown, Object.assign({}, p)),
7
9
  'hy-icon-arrow-left': (p) => h(icons.IconArrowLeft, Object.assign({}, p)),
8
10
  'hy-icon-arrow-right': (p) => h(icons.IconArrowRight, Object.assign({}, p)),
9
11
  'hy-icon-arrow-to-right': (p) => h(icons.IconArrowToRight, Object.assign({}, p)),
10
- 'hy-icon-alert': (p) => h(icons.Alert, Object.assign({}, p)),
11
- 'hy-icon-archive': (p) => h(icons.Archive, Object.assign({}, p)),
12
12
  'hy-icon-arrow-up': (p) => h(icons.ArrowUp, Object.assign({}, p)),
13
+ 'hy-icon-avatar-group': (p) => h(icons.AvatarGroup, Object.assign({}, p)),
14
+ 'hy-icon-avatar': (p) => h(icons.Avatar, Object.assign({}, p)),
13
15
  'hy-icon-bachelor': (p) => h(icons.Bachelor, Object.assign({}, p)),
14
16
  'hy-icon-bullet-list': (p) => h(icons.BulletList, Object.assign({}, p)),
15
17
  'hy-icon-camera': (p) => h(icons.Camera, Object.assign({}, p)),
16
18
  'hy-icon-caret-down': (p) => h(icons.CaretDown, Object.assign({}, p)),
17
19
  'hy-icon-caret-left': (p) => h(icons.CaretLeft, Object.assign({}, p)),
18
20
  'hy-icon-caret-right': (p) => h(icons.CaretRight, Object.assign({}, p)),
21
+ 'hy-icon-caret-up': (p) => h(icons.CaretUp, Object.assign({}, p)),
22
+ 'hy-icon-chat': (p) => h(icons.Chat, Object.assign({}, p)),
23
+ 'hy-icon-code-fork': (p) => h(icons.CodeFork, Object.assign({}, p)),
24
+ 'hy-icon-cogs': (p) => h(icons.Cogs, Object.assign({}, p)),
25
+ 'hy-icon-content-link': (p) => h(icons.Contentlink, Object.assign({}, p)),
26
+ 'hy-icon-custom-link': (p) => h(icons.Customlink, Object.assign({}, p)),
19
27
  'hy-icon-date': (p) => h(icons.Date, Object.assign({}, p)),
20
- 'hy-icon-dot-arrow-right': (p) => h(icons.DotArrowRight, Object.assign({}, p)),
28
+ 'hy-icon-discover': (p) => h(icons.Discover, Object.assign({}, p)),
21
29
  'hy-icon-done': (p) => h(icons.Done, Object.assign({}, p)),
30
+ 'hy-icon-dot': (p) => h(icons.Dot, Object.assign({}, p)),
31
+ 'hy-icon-dot-arrow-right': (p) => h(icons.DotArrowRight, Object.assign({}, p)),
32
+ 'hy-icon-download': (p) => h(icons.Download, Object.assign({}, p)),
33
+ 'hy-icon-drag': (p) => h(icons.Drag, Object.assign({}, p)),
34
+ 'hy-icon-drag-button': (p) => h(icons.Dragbutton, Object.assign({}, p)),
35
+ 'hy-icon-drop-down': (p) => h(icons.DropDown, Object.assign({}, p)),
36
+ 'hy-icon-edit': (p) => h(icons.Edit, Object.assign({}, p)),
37
+ 'hy-icon-edit-event': (p) => h(icons.EditEvent, Object.assign({}, p)),
38
+ 'hy-icon-embed': (p) => h(icons.Embed, Object.assign({}, p)),
22
39
  'hy-icon-euro': (p) => h(icons.Euro, Object.assign({}, p)),
40
+ 'hy-icon-events': (p) => h(icons.Events, Object.assign({}, p)),
41
+ 'hy-icon-external-link': (p) => h(icons.ExternalLink, Object.assign({}, p)),
42
+ 'hy-icon-eyelash': (p) => h(icons.EyeSlash, Object.assign({}, p)),
43
+ 'hy-icon-facebook': (p) => h(icons.Facebook, Object.assign({}, p)),
44
+ 'hy-icon-favorites': (p) => h(icons.Favorites, Object.assign({}, p)),
45
+ 'hy-icon-feed': (p) => h(icons.Feed, Object.assign({}, p)),
23
46
  'hy-icon-file-text': (p) => h(icons.FileText, Object.assign({}, p)),
24
- 'hy-icon-heart': (p) => h(icons.Heart, Object.assign({}, p)),
25
- 'hy-icon-heart-support': (p) => h(icons.HeartSupport, Object.assign({}, p)),
26
- 'hy-icon-link': (p) => h(icons.Url, Object.assign({}, p)),
27
- 'hy-icon-location': (p) => h(icons.Location, Object.assign({}, p)),
47
+ 'hy-icon-fullscreen': (p) => h(icons.FullScreen, Object.assign({}, p)),
28
48
  'hy-icon-globe': (p) => h(icons.Globe, Object.assign({}, p)),
49
+ 'hy-icon-googleplus': (p) => h(icons.GooglePlus, Object.assign({}, p)),
50
+ 'hy-icon-grid': (p) => h(icons.Grid, Object.assign({}, p)),
29
51
  'hy-icon-hamburger': (p) => h(icons.Hamburger, Object.assign({}, p)),
30
- 'hy-icon-home': (p) => h(icons.Home, Object.assign({}, p)),
52
+ 'hy-icon-heart': (p) => h(icons.Heart, Object.assign({}, p)),
53
+ 'hy-icon-heart-support': (p) => h(icons.HeartSupport, Object.assign({}, p)),
31
54
  'hy-icon-helsingin-yliopisto': (p) => h(icons.Helsinginyliopisto, Object.assign({}, p)),
32
- 'hy-icon-email': (p) => h(icons.Mail, Object.assign({}, p)),
33
- 'hy-icon-embed': (p) => h(icons.Embed, Object.assign({}, p)),
34
- 'hy-icon-events': (p) => h(icons.Events, Object.assign({}, p)),
35
- 'hy-icon-edit-event': (p) => h(icons.EditEvent, Object.assign({}, p)),
36
- 'hy-icon-info': (p) => h(icons.Info, Object.assign({}, p)),
37
- 'hy-icon-notification': (p) => h(icons.Notification, Object.assign({}, p)),
38
- 'hy-icon-phone': (p) => h(icons.Phone, Object.assign({}, p)),
55
+ 'hy-icon-home': (p) => h(icons.Home, Object.assign({}, p)),
56
+ 'hy-icon-horizontal-resize': (p) => h(icons.HorizontalResize, Object.assign({}, p)),
39
57
  'hy-icon-hy-logo': (p) => h(icons.HyLogo, Object.assign({}, p)),
58
+ 'hy-icon-id-number': (p) => h(icons.IdNumber, Object.assign({}, p)),
59
+ 'hy-icon-image': (p) => h(icons.Image, Object.assign({}, p)),
40
60
  'hy-icon-image-gallery': (p) => h(icons.ImageGallery, Object.assign({}, p)),
61
+ 'hy-icon-images': (p) => h(icons.Images, Object.assign({}, p)),
62
+ 'hy-icon-info': (p) => h(icons.Info, Object.assign({}, p)),
63
+ 'hy-icon-info-stroke': (p) => h(icons.InfoStroke, Object.assign({}, p)),
64
+ 'hy-icon-instagram': (p) => h(icons.Instagram, Object.assign({}, p)),
65
+ 'hy-icon-leiki-list': (p) => h(icons.LeikiList, Object.assign({}, p)),
66
+ 'hy-icon-link-arrow': (p) => h(icons.LinkArrow, Object.assign({}, p)),
41
67
  'hy-icon-link-arrow-down': (p) => h(icons.LinkArrowDown, Object.assign({}, p)),
68
+ 'hy-icon-link-arrow-left': (p) => h(icons.LinkArrowLeft, Object.assign({}, p)),
69
+ 'hy-icon-link-arrow-offsite': (p) => h(icons.LinkArrowOffsite, Object.assign({}, p)),
70
+ 'hy-icon-link-arrow-up': (p) => h(icons.LinkArrowUp, Object.assign({}, p)),
71
+ 'hy-icon-linkedin': (p) => h(icons.Linkedin, Object.assign({}, p)),
72
+ 'hy-icon-list': (p) => h(icons.List, Object.assign({}, p)),
73
+ 'hy-icon-list-of-links': (p) => h(icons.Listoflinks, Object.assign({}, p)),
74
+ 'hy-icon-list-as-blocks': (p) => h(icons.ListAsBlocks, Object.assign({}, p)),
42
75
  'hy-icon-list-style-grid': (p) => h(icons.ListStyleGrid, Object.assign({}, p)),
43
76
  'hy-icon-list-style-list': (p) => h(icons.ListStyleList, Object.assign({}, p)),
77
+ 'hy-icon-link': (p) => h(icons.Url, Object.assign({}, p)),
78
+ 'hy-icon-location': (p) => h(icons.Location, Object.assign({}, p)),
79
+ 'hy-icon-log': (p) => h(icons.Log, Object.assign({}, p)),
80
+ 'hy-icon-log-in': (p) => h(icons.Login, Object.assign({}, p)),
81
+ 'hy-icon-log-out': (p) => h(icons.Logout, Object.assign({}, p)),
82
+ 'hy-icon-magnify-minus': (p) => h(icons.MagnifyMinus, Object.assign({}, p)),
83
+ 'hy-icon-magnify-plus': (p) => h(icons.MagnifyPlus, Object.assign({}, p)),
84
+ 'hy-icon-email': (p) => h(icons.Mail, Object.assign({}, p)),
85
+ 'hy-icon-master': (p) => h(icons.Master, Object.assign({}, p)),
44
86
  'hy-icon-minus': (p) => h(icons.Minus, Object.assign({}, p)),
45
- 'hy-icon-play': (p) => h(icons.Play, Object.assign({}, p)),
87
+ 'hy-icon-modify': (p) => h(icons.Modify, Object.assign({}, p)),
88
+ 'hy-icon-navi-triangle': (p) => h(icons.NaviTriangle, Object.assign({}, p)),
89
+ 'hy-icon-new-group': (p) => h(icons.NewGroup, Object.assign({}, p)),
90
+ 'hy-icon-new-person': (p) => h(icons.NewPerson, Object.assign({}, p)),
91
+ 'hy-icon-notification': (p) => h(icons.Notification, Object.assign({}, p)),
92
+ 'hy-icon-opinder-logo': (p) => h(icons.OpinderLogoNew, Object.assign({}, p)),
93
+ 'hy-icon-pdf': (p) => h(icons.Pdf, Object.assign({}, p)),
46
94
  'hy-icon-people': (p) => h(icons.People, Object.assign({}, p)),
95
+ 'hy-icon-permission-all': (p) => h(icons.PermissionAll, Object.assign({}, p)),
96
+ 'hy-icon-permission-group': (p) => h(icons.PermissionGroup, Object.assign({}, p)),
97
+ 'hy-icon-permission-private': (p) => h(icons.PermissionPrivate, Object.assign({}, p)),
98
+ 'hy-icon-person': (p) => h(icons.Person, Object.assign({}, p)),
99
+ 'hy-icon-person-outline': (p) => h(icons.PersonOutline, Object.assign({}, p)),
100
+ 'hy-icon-phone': (p) => h(icons.Phone, Object.assign({}, p)),
101
+ 'hy-icon-play': (p) => h(icons.Play, Object.assign({}, p)),
47
102
  'hy-icon-plus': (p) => h(icons.Plus, Object.assign({}, p)),
48
- 'hy-icon-quote': (p) => h(icons.IconQuote, Object.assign({}, p)),
103
+ 'hy-icon-preview': (p) => h(icons.Preview, Object.assign({}, p)),
104
+ 'hy-icon-profile': (p) => h(icons.Profile, Object.assign({}, p)),
105
+ 'hy-icon-question': (p) => h(icons.Question, Object.assign({}, p)),
49
106
  'hy-icon-remove': (p) => h(icons.Remove, Object.assign({}, p)),
107
+ 'hy-icon-retweet': (p) => h(icons.Retweet, Object.assign({}, p)),
108
+ 'hy-icon-rotate-left': (p) => h(icons.RotateLeft, Object.assign({}, p)),
109
+ 'hy-icon-rotate-right': (p) => h(icons.RotateRight, Object.assign({}, p)),
50
110
  'hy-icon-search': (p) => h(icons.Search, Object.assign({}, p)),
111
+ 'hy-icon-share': (p) => h(icons.Share, Object.assign({}, p)),
51
112
  'hy-icon-slim-hamburger-menu': (p) => h(icons.SlimHamburgerMenu, Object.assign({}, p)),
113
+ 'hy-icon-social-media': (p) => h(icons.SocialMedia, Object.assign({}, p)),
52
114
  'hy-icon-some-facebook': (p) => h(icons.SomeFacebook, Object.assign({}, p)),
53
115
  'hy-icon-some-instagram': (p) => h(icons.SomeInstagram, Object.assign({}, p)),
54
116
  'hy-icon-some-linkedin': (p) => h(icons.SomeLinkedin, Object.assign({}, p)),
@@ -56,8 +118,19 @@ const iconNames = {
56
118
  'hy-icon-some-twitter-retweet': (p) => h(icons.SomeTwitterRetweet, Object.assign({}, p)),
57
119
  'hy-icon-some-twitter-like': (p) => h(icons.SomeTwitterLike, Object.assign({}, p)),
58
120
  'hy-icon-some-youtube': (p) => h(icons.SomeYoutube, Object.assign({}, p)),
121
+ 'hy-icon-spinner': (p) => h(icons.Spinner, Object.assign({}, p)),
122
+ 'hy-icon-square': (p) => h(icons.Square, Object.assign({}, p)),
123
+ 'hy-icon-square-checked': (p) => h(icons.SquareChecked, Object.assign({}, p)),
124
+ 'hy-icon-time': (p) => h(icons.Time, Object.assign({}, p)),
125
+ 'hy-icon-todolist': (p) => h(icons.TodoList, Object.assign({}, p)),
126
+ 'hy-icon-tour': (p) => h(icons.Tour, Object.assign({}, p)),
127
+ 'hy-icon-twitter': (p) => h(icons.Twitter, Object.assign({}, p)),
59
128
  'hy-icon-units-and-faculties': (p) => h(icons.UnitsAndFaculties, Object.assign({}, p)),
60
129
  'hy-icon-video': (p) => h(icons.Video, Object.assign({}, p)),
130
+ 'hy-icon-warning': (p) => h(icons.Warning, Object.assign({}, p)),
131
+ 'hy-icon-wrench': (p) => h(icons.Wrench, Object.assign({}, p)),
132
+ 'hy-icon-quote': (p) => h(icons.IconQuote, Object.assign({}, p)),
133
+ 'hy-icon-youtube': (p) => h(icons.Youtube, Object.assign({}, p)),
61
134
  };
62
135
  export class Icon {
63
136
  constructor() {
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -140,7 +140,7 @@ export class HyMenuMainGroup {
140
140
  h("button", { class: {
141
141
  'menu--main-group__toggle': true,
142
142
  'is-open': this.isMenuOpen,
143
- } },
143
+ }, "aria-expanded": this.isMenuOpen ? 'true' : 'false', "aria-haspopup": "menu" },
144
144
  this.isMenuOpen ? (h("hy-icon", { class: 'toggle__close', icon: 'hy-icon-remove', size: 8, fill: white })) : (h("hy-icon", { class: 'toggle__caret', icon: 'hy-icon-slim-hamburger-menu', size: 8, fill: white })),
145
145
  h("span", null, this.menuLabel)),
146
146
  h("div", { class: {
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -66,7 +66,7 @@ export class MenuLanguage {
66
66
  } },
67
67
  h("button", { class: {
68
68
  'menu-language__toggle': true,
69
- }, "aria-label": this.isMenuOpen ? this._labels['close'] : this._labels['open'], "aria-expanded": `${this.isMenuOpen}` },
69
+ }, "aria-label": this.isMenuOpen ? this._labels['close'] : this._labels['open'] },
70
70
  h("hy-icon", { icon: 'hy-icon-globe', size: globeIconSize, fill: svgColor }),
71
71
  h("span", null, this._dataMenuLanguage.map(({ isActive, langCode }) => {
72
72
  if (isActive) {
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -6,7 +6,7 @@ export class SiteLanguage {
6
6
  }
7
7
  render() {
8
8
  return (h("li", { class: `menu-language__links-item` },
9
- h("a", { href: this.url, class: {
9
+ h("a", { href: this.url, lang: this.langCode, class: {
10
10
  'is-active': this.isActive,
11
11
  'is-disabled': this.isDisabled,
12
12
  'menu-language__link': true,
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -64,6 +65,16 @@
64
65
  background-color: var(--grayscale-white);
65
66
  z-index: 100;
66
67
  border-bottom: 2px solid var(--grayscale-dark);
68
+ -webkit-transform: none;
69
+ transform: none;
70
+ }
71
+
72
+ .hy-site-header:not(.is-at-top) {
73
+ top: 0;
74
+ -webkit-transform: translateY(-100%);
75
+ transform: translateY(-100%);
76
+ -webkit-transition: all 0.2s ease-in-out;
77
+ transition: all 0.2s ease-in-out;
67
78
  }
68
79
 
69
80
  @media (min-width: 75.0625rem) {
@@ -75,16 +86,8 @@
75
86
  }
76
87
 
77
88
  .hy-site-header.hy-site-header--sticky-active {
78
- -webkit-transition: -webkit-transform 200ms linear;
79
- transition: -webkit-transform 200ms linear;
80
- transition: transform 200ms linear;
81
- transition: transform 200ms linear, -webkit-transform 200ms linear;
82
- -webkit-transition-duration: 0.2s;
83
- transition-duration: 0.2s;
84
- -webkit-transition-property: -webkit-transform;
85
- transition-property: -webkit-transform;
86
- transition-property: transform;
87
- transition-property: transform, -webkit-transform;
89
+ -webkit-transition: all 0.2s ease-in-out;
90
+ transition: all 0.2s ease-in-out;
88
91
  -webkit-box-shadow: rgba(14, 104, 139, 0.2) 0 20px 20px -20px;
89
92
  box-shadow: rgba(14, 104, 139, 0.2) 0 20px 20px -20px;
90
93
  }
@@ -94,6 +97,17 @@
94
97
  position: fixed;
95
98
  right: 0;
96
99
  top: 0;
100
+ -webkit-transform: translateY(0);
101
+ transform: translateY(0);
102
+ -webkit-transition: all 0.2s ease-in-out;
103
+ transition: all 0.2s ease-in-out;
104
+ -webkit-transition-delay: 0.2s;
105
+ transition-delay: 0.2s;
106
+ }
107
+
108
+ .hy-site-header.hy-site-header--sticky-visible.hy-site-header--mobile {
109
+ -webkit-transform: none;
110
+ transform: none;
97
111
  }
98
112
 
99
113
  .hy-site-header.hy-site-header--sticky-visible.has-toolbar {
@@ -414,18 +428,18 @@
414
428
  width: 0;
415
429
  }
416
430
 
431
+ body:not(.sticky-active) {
432
+ padding-top: 0;
433
+ -webkit-transition: padding-top 0.2s ease-in-out;
434
+ transition: padding-top 0.2s ease-in-out;
435
+ }
436
+
417
437
  @media (min-width: 75.0625rem) {
418
438
  .sticky-active {
419
439
  padding-top: var(--nav-height, 120px);
420
- -webkit-transition: -webkit-transform 200ms linear;
421
- transition: -webkit-transform 200ms linear;
422
- transition: transform 200ms linear;
423
- transition: transform 200ms linear, -webkit-transform 200ms linear;
424
- -webkit-transition-duration: 0.2s;
425
- transition-duration: 0.2s;
426
- -webkit-transition-property: -webkit-transform;
427
- transition-property: -webkit-transform;
428
- transition-property: transform;
429
- transition-property: transform, -webkit-transform;
440
+ -webkit-transition: padding-top 0.2s ease-in-out;
441
+ transition: padding-top 0.2s ease-in-out;
442
+ -webkit-transition-delay: 0.2s;
443
+ transition-delay: 0.2s;
430
444
  }
431
445
  }
@@ -1,11 +1,9 @@
1
1
  let clickTimer = null;
2
- let scrollTimer = null;
3
2
  import { Component, Element, Event, Fragment, h, Listen, Prop, State } from '@stencil/core';
4
3
  import ResizeObserver from 'resize-observer-polyfill';
5
4
  import { MenuType, ColorVariant, SiteLogoSize } from '../../utils/utils';
6
5
  import { jsonParserWorker } from '../../global/globalScript';
7
6
  let clickTimeout = null;
8
- let scrollTimeout = null;
9
7
  export class SiteHeader {
10
8
  constructor() {
11
9
  this.isGroup = false;
@@ -22,12 +20,10 @@ export class SiteHeader {
22
20
  this.isDesktopMenuOpen = false;
23
21
  this.isDesktopMenuDropdown = false;
24
22
  this.isTopMenuOpen = false;
23
+ this.isBottomVisible = false;
25
24
  this.lastScrollTop = 0;
26
25
  this.delta = 5;
27
26
  this.navbarHeight = 0;
28
- this.check = () => window.requestAnimationFrame(() => {
29
- this.hasScrolled();
30
- });
31
27
  }
32
28
  // Listener for toggling mobile menu panel on or off.
33
29
  mobileMenuToggle() {
@@ -47,10 +43,7 @@ export class SiteHeader {
47
43
  this.menuMobileTopToggled.emit();
48
44
  }
49
45
  handleScroll() {
50
- clearTimeout(scrollTimeout);
51
- scrollTimeout = setTimeout(() => {
52
- this.check();
53
- }, 50);
46
+ this.hasScrolled();
54
47
  }
55
48
  componentDidLoad() {
56
49
  // Set the browser resize observer to gather information about browser width.
@@ -60,9 +53,18 @@ export class SiteHeader {
60
53
  }
61
54
  });
62
55
  this.ro.observe(document.body);
56
+ this.io = new IntersectionObserver((entries) => {
57
+ this.isBottomVisible = entries[0].isIntersecting ? true : false;
58
+ });
59
+ const footer = document.querySelector('hy-footer');
60
+ if (footer) {
61
+ this.io.observe(footer);
62
+ }
63
63
  // Pass the dataMenuLanguage prop to menu component.
64
64
  this.el.children[0].setAttribute('data-menu-language', this.dataMenuLanguage);
65
65
  this.navbarHeight = 120;
66
+ const body = document.querySelector('body');
67
+ body.style.setProperty('--nav-height', `${this.navbarHeight * 2}px`);
66
68
  }
67
69
  async componentWillLoad() {
68
70
  // Check for site header labels and set them to variables accordingly.
@@ -94,29 +96,21 @@ export class SiteHeader {
94
96
  if (this.groupType !== '') {
95
97
  this.isDesktopMenuDropdown = true;
96
98
  }
97
- const body = document.querySelector('body');
98
- body.style.setProperty('--nav-height', `${this.navbarHeight * 2}px`);
99
99
  }
100
100
  hasScrolled() {
101
101
  let topOffset = window.pageYOffset;
102
102
  const bodyElementClasses = document.querySelector('body').classList;
103
- const body = document.querySelector('body');
104
- body.style.setProperty('--nav-height', `${this.navbarHeight * 2}px`);
105
- if (bodyElementClasses.contains('hy-menu-sidepanel__no-scroll') ||
106
- bodyElementClasses.contains('hy-menu-sidebar__no-scroll')) {
107
- return;
108
- }
109
103
  if (Math.abs(this.lastScrollTop - topOffset) <= this.delta) {
110
104
  return;
111
105
  }
112
106
  let hySiteHeader = this.el.querySelector('.hy-site-header');
113
107
  if (!hySiteHeader)
114
108
  return;
109
+ topOffset < 140 ? hySiteHeader.classList.add('is-at-top') : hySiteHeader.classList.remove('is-at-top');
115
110
  // If current position > last position AND scrolled past navbar...
116
111
  if (topOffset > this.lastScrollTop && topOffset > this.navbarHeight) {
117
112
  // Scroll Down
118
- hySiteHeader.classList.remove('hy-site-header--sticky-visible');
119
- hySiteHeader.classList.remove('has-toolbar', 'has-toolbar--large');
113
+ hySiteHeader.classList.remove('hy-site-header--sticky-visible', 'has-toolbar', 'has-toolbar--large');
120
114
  bodyElementClasses.remove('sticky-active');
121
115
  // Close Search panel
122
116
  //CludoSayt.hide();
@@ -125,18 +119,14 @@ export class SiteHeader {
125
119
  else {
126
120
  // Scroll Up
127
121
  if (topOffset <= this.navbarHeight) {
128
- hySiteHeader.classList.remove('hy-site-header--sticky-active');
129
- hySiteHeader.classList.remove('hy-site-header--sticky-visible');
130
- hySiteHeader.classList.remove('hy-site-header--sticky-hidden');
131
- hySiteHeader.classList.remove('has-toolbar', 'has-toolbar--large');
122
+ hySiteHeader.classList.remove('hy-site-header--sticky-active', 'hy-site-header--sticky-visible', 'hy-site-header--sticky-hidden', 'has-toolbar', 'has-toolbar--large');
132
123
  bodyElementClasses.remove('sticky-active');
133
124
  // Close desktop menu panel if it's open.
134
125
  }
135
126
  else {
136
- hySiteHeader.classList.add('hy-site-header--sticky-active');
127
+ hySiteHeader.classList.add('hy-site-header--sticky-active', 'hy-site-header--sticky-visible');
137
128
  hySiteHeader.classList.remove('hy-site-header--sticky-hidden');
138
- hySiteHeader.classList.add('hy-site-header--sticky-visible');
139
- bodyElementClasses.add('sticky-active');
129
+ !this.isBottomVisible && bodyElementClasses.add('sticky-active');
140
130
  if (bodyElementClasses.contains('toolbar-horizontal')) {
141
131
  hySiteHeader.classList.add('has-toolbar');
142
132
  if (bodyElementClasses.contains('toolbar-tray-open')) {
@@ -149,19 +139,13 @@ export class SiteHeader {
149
139
  }
150
140
  disconnectedCallback() {
151
141
  clearTimeout(clickTimer);
152
- clearTimeout(scrollTimer);
153
142
  this.ro.disconnect();
154
- clearTimeout(scrollTimeout);
143
+ this.io.disconnect();
155
144
  clearTimeout(clickTimeout);
156
145
  }
157
146
  applySizeClasses(size) {
158
147
  // Set the menu-type based on the width of the browser.
159
- if (size <= 1200) {
160
- this.menuType = MenuType.mobile;
161
- }
162
- else {
163
- this.menuType = MenuType.desktop;
164
- }
148
+ size <= 1200 ? (this.menuType = MenuType.mobile) : (this.menuType = MenuType.desktop);
165
149
  // Pass the menu type to menu component.
166
150
  this.isMobile = this.menuType === (MenuType.mobile || MenuType.tablet);
167
151
  const menuAttribute = this.menuType;
@@ -175,7 +159,12 @@ export class SiteHeader {
175
159
  const logoSizeGroup = this.isMobile ? SiteLogoSize.small : SiteLogoSize.small;
176
160
  const logoColor = ColorVariant.black;
177
161
  const logoColorGroup = ColorVariant.white;
178
- let classAttributes = ['hy-site-header', `hy-site-header--${this.menuType}`, this.isGroup ? 'is-group' : ''];
162
+ let classAttributes = [
163
+ 'hy-site-header',
164
+ `hy-site-header--${this.menuType}`,
165
+ this.isGroup ? 'is-group' : '',
166
+ 'is-at-top',
167
+ ];
179
168
  const toggleMenuMobileAndRemoveListener = () => {
180
169
  window.removeEventListener('click', handleClickOutside);
181
170
  this.mobileMenuToggle();
@@ -682,6 +671,7 @@ export class SiteHeader {
682
671
  "isDesktopMenuOpen": {},
683
672
  "isDesktopMenuDropdown": {},
684
673
  "isTopMenuOpen": {},
674
+ "isBottomVisible": {},
685
675
  "lastScrollTop": {},
686
676
  "delta": {},
687
677
  "navbarHeight": {}
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;
@@ -22,7 +22,8 @@
22
22
  --additional-red-light: #e5053a;
23
23
  --additional-red-dark: #a31621;
24
24
  --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
25
+ --additional-yellow-light: #f9a21a;
26
+ --additional-yellow: #c47f1b;
26
27
  --additional-skyblue: #48c5f8;
27
28
  --additional-orange: #d14600;
28
29
  --additional-green-light: #96ba3c;