@itcenteratunihelsinki/huds-lib 0.6.6 → 0.6.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 (35) hide show
  1. package/dist/cjs/huds-lib.cjs.js +1 -1
  2. package/dist/cjs/{hy-accordion-container_89.cjs.entry.js → hy-accordion-container_83.cjs.entry.js} +606 -1314
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/collection/collection-manifest.json +0 -12
  5. package/dist/collection/components/navigation/hy-menu-main-group/hy-menu-main-group.js +20 -1
  6. package/dist/collection/components/site-header/site-header.css +16 -1
  7. package/dist/collection/components/site-header/site-header.js +15 -37
  8. package/dist/esm/huds-lib.js +1 -1
  9. package/dist/esm/{hy-accordion-container_89.entry.js → hy-accordion-container_83.entry.js} +608 -1310
  10. package/dist/esm/loader.js +1 -1
  11. package/dist/huds-lib/huds-lib.esm.js +1 -1
  12. package/dist/huds-lib/p-f86741ed.entry.js +86 -0
  13. package/dist/types/components/navigation/hy-menu-main-group/hy-menu-main-group.d.ts +1 -0
  14. package/dist/types/components/site-header/site-header.d.ts +0 -1
  15. package/dist/types/components.d.ts +3 -212
  16. package/package.json +1 -1
  17. package/dist/collection/components/navigation/menu/menu.css +0 -262
  18. package/dist/collection/components/navigation/menu/menu.js +0 -431
  19. package/dist/collection/components/navigation/menu-item/menu-item.css +0 -348
  20. package/dist/collection/components/navigation/menu-item/menu-item.js +0 -557
  21. package/dist/collection/components/navigation/menu-level-container/menu-level-container.css +0 -129
  22. package/dist/collection/components/navigation/menu-level-container/menu-level-container.js +0 -300
  23. package/dist/collection/components/navigation/menu-mobile-breadcrumb/menu-mobile-breadcrumb.css +0 -90
  24. package/dist/collection/components/navigation/menu-mobile-breadcrumb/menu-mobile-breadcrumb.js +0 -151
  25. package/dist/collection/components/navigation/mobile-menu-shortcuts/mobile-menu-shortcuts.css +0 -140
  26. package/dist/collection/components/navigation/mobile-menu-shortcuts/mobile-menu-shortcuts.js +0 -68
  27. package/dist/collection/components/site-header/hy-desktop-menu-links/hy-desktop-menu-links.css +0 -469
  28. package/dist/collection/components/site-header/hy-desktop-menu-links/hy-desktop-menu-links.js +0 -482
  29. package/dist/huds-lib/p-f28263c0.entry.js +0 -86
  30. package/dist/types/components/navigation/menu/menu.d.ts +0 -30
  31. package/dist/types/components/navigation/menu-item/menu-item.d.ts +0 -31
  32. package/dist/types/components/navigation/menu-level-container/menu-level-container.d.ts +0 -27
  33. package/dist/types/components/navigation/menu-mobile-breadcrumb/menu-mobile-breadcrumb.d.ts +0 -12
  34. package/dist/types/components/navigation/mobile-menu-shortcuts/mobile-menu-shortcuts.d.ts +0 -13
  35. package/dist/types/components/site-header/hy-desktop-menu-links/hy-desktop-menu-links.d.ts +0 -60
@@ -1,557 +0,0 @@
1
- import { Component, Element, Event, h, Host, Listen, Prop } from '@stencil/core';
2
- import { MenuType } from '../../../utils/utils';
3
- export class MenuItem {
4
- constructor() {
5
- this.inActiveTrail = false;
6
- this.isActive = false;
7
- this.isActiveChild = false;
8
- this.isHeading = false;
9
- this.isParent = false;
10
- this.isDemo = false;
11
- this.isExternal = false;
12
- //@Prop() depth: number = 0;
13
- this.menuItemAlternative = false;
14
- this.menuLinkId = '';
15
- this.menuType = MenuType.desktop;
16
- this.menuButtonSubmenuExpand = '';
17
- this.ariaExpanded = false;
18
- this.depth = 0;
19
- this.hasChildren = null;
20
- this.label = '';
21
- this.parentAsHeading = '';
22
- this.parentExpanded = false;
23
- this.url = '';
24
- }
25
- // Listener for submenu expand button. Listener will toggle menu level
26
- // container and add its parent to breadcrumbs.
27
- handleClick() {
28
- this.menuContainerToggled.emit({
29
- triggerItem: this.menuLinkId,
30
- triggerType: 'add',
31
- });
32
- const currentParent = this.el.parentNode;
33
- let parentLabel = currentParent.parentElement.getAttribute('label')
34
- ? currentParent.parentElement.getAttribute('label')
35
- : this.menuButtonBreadcrumbMain;
36
- let isMainMenu = parentLabel == this.menuButtonBreadcrumbMain;
37
- this.addBreadcrumb.emit({
38
- url: this.url,
39
- label: parentLabel,
40
- bid: this.menuLinkId,
41
- isMainMenu: isMainMenu,
42
- });
43
- }
44
- componentWillLoad() {
45
- // If is-active class is added by system, add it to menu component as well.
46
- if (this.el.classList.contains('is-active')) {
47
- this.isActive = true;
48
- }
49
- // Notify breadcrumbs if item is in active trail.
50
- if (this.inActiveTrail && !this.isActive) {
51
- const currentParent = this.el.parentNode;
52
- let parentLabel = currentParent.parentElement.getAttribute('label')
53
- ? currentParent.parentElement.getAttribute('label')
54
- : this.menuButtonBreadcrumbMain;
55
- this.addBreadcrumb.emit({
56
- url: this.url,
57
- label: parentLabel,
58
- bid: this.menuLinkId,
59
- });
60
- }
61
- // If current menu item is active, trigger all parent menuLevelContainer
62
- // elements in the same active-trail to open the menu.
63
- if (this.isActive) {
64
- const getParents = (elem) => {
65
- let parents = [];
66
- while (elem.parentNode && elem.parentNode.nodeName.toLowerCase() != 'hy-menu') {
67
- elem = elem.parentNode;
68
- parents.push(elem);
69
- }
70
- return parents;
71
- };
72
- const parents = getParents(this.el);
73
- parents.forEach((element) => {
74
- if (element.tagName.toLowerCase() === 'hy-menu-item') {
75
- this.menuContainerActiveTrail.emit({
76
- triggerItem: element.getAttribute('menu-link-id'),
77
- });
78
- }
79
- });
80
- }
81
- this.hasChildren = this.el.getElementsByTagName('hy-menu-level-container').length >= 1;
82
- }
83
- render() {
84
- switch (this.menuType) {
85
- case MenuType.desktop:
86
- return (h(Host, { class: {
87
- 'is-active': this.isActive,
88
- 'hy-menu-item': true,
89
- 'hy-menu-item--alternative': this.menuItemAlternative,
90
- 'hy-menu-item--desktop': true,
91
- 'is-demo': this.isDemo,
92
- } },
93
- h("a", { "aria-current": this.isHeading.toString(), href: this.url, class: {
94
- 'is-active': this.isActive,
95
- 'in-active-trail': this.inActiveTrail,
96
- 'is-heading': this.isHeading,
97
- 'hy-menu-item--desktop': true,
98
- 'is-demo': this.isDemo,
99
- } },
100
- this.depth == 1 && (h("span", { class: "hy-menu-item__heading__icon" },
101
- h("hy-icon", { icon: 'hy-icon-arrow-right', size: 40 }))),
102
- this.depth == 2 && (h("span", { class: "hy-menu-item__heading__icon" },
103
- h("hy-icon", { icon: 'hy-icon-caret-right', size: 12 }))),
104
- h("span", { class: 'hy-menu-item__label' }, this.label)),
105
- this.hasChildren && h("slot", null)));
106
- case MenuType.mobile:
107
- return (h(Host, { class: {
108
- 'is-active': this.isActive,
109
- 'hy-menu-item': true,
110
- 'hy-menu-item--alternative': this.menuItemAlternative,
111
- 'hy-menu-item--mobile': true,
112
- 'is-demo': this.isDemo,
113
- } },
114
- h("a", { "aria-current": this.isHeading.toString(), href: this.url, class: {
115
- 'is-active': this.isActive,
116
- 'in-active-trail': this.inActiveTrail,
117
- 'is-heading': this.isHeading,
118
- 'hy-menu-item--mobile': true,
119
- 'is-demo': this.isDemo,
120
- 'is-external': this.isExternal,
121
- first: this.depth == 1,
122
- } },
123
- this.depth !== 1 && !this.isHeading && h("hy-icon", { icon: 'hy-icon-caret-right', size: 10 }),
124
- h("span", { class: 'hy-menu-item__label' },
125
- this.label,
126
- this.isExternal && h("hy-icon", { icon: 'hy-icon-arrow-right', size: 12 }))),
127
- this.hasChildren && (h("button", { "aria-haspopup": 'true', "aria-label": `Open submenu for ${this.label}`, onClick: () => this.handleClick(), class: 'hy-menu-item__button' },
128
- h("hy-icon", { icon: 'hy-icon-caret-right', size: 16 }))),
129
- this.hasChildren && h("slot", null)));
130
- }
131
- }
132
- static get is() { return "hy-menu-item"; }
133
- static get encapsulation() { return "shadow"; }
134
- static get originalStyleUrls() { return {
135
- "$": ["menu-item.scss"]
136
- }; }
137
- static get styleUrls() { return {
138
- "$": ["menu-item.css"]
139
- }; }
140
- static get properties() { return {
141
- "inActiveTrail": {
142
- "type": "boolean",
143
- "mutable": false,
144
- "complexType": {
145
- "original": "boolean",
146
- "resolved": "boolean",
147
- "references": {}
148
- },
149
- "required": false,
150
- "optional": false,
151
- "docs": {
152
- "tags": [],
153
- "text": ""
154
- },
155
- "attribute": "in-active-trail",
156
- "reflect": false,
157
- "defaultValue": "false"
158
- },
159
- "isActive": {
160
- "type": "boolean",
161
- "mutable": false,
162
- "complexType": {
163
- "original": "boolean",
164
- "resolved": "boolean",
165
- "references": {}
166
- },
167
- "required": false,
168
- "optional": false,
169
- "docs": {
170
- "tags": [],
171
- "text": ""
172
- },
173
- "attribute": "is-active",
174
- "reflect": false,
175
- "defaultValue": "false"
176
- },
177
- "isActiveChild": {
178
- "type": "boolean",
179
- "mutable": false,
180
- "complexType": {
181
- "original": "boolean",
182
- "resolved": "boolean",
183
- "references": {}
184
- },
185
- "required": false,
186
- "optional": true,
187
- "docs": {
188
- "tags": [],
189
- "text": ""
190
- },
191
- "attribute": "is-active-child",
192
- "reflect": false,
193
- "defaultValue": "false"
194
- },
195
- "isHeading": {
196
- "type": "boolean",
197
- "mutable": false,
198
- "complexType": {
199
- "original": "boolean",
200
- "resolved": "boolean",
201
- "references": {}
202
- },
203
- "required": false,
204
- "optional": false,
205
- "docs": {
206
- "tags": [],
207
- "text": ""
208
- },
209
- "attribute": "is-heading",
210
- "reflect": false,
211
- "defaultValue": "false"
212
- },
213
- "isParent": {
214
- "type": "boolean",
215
- "mutable": false,
216
- "complexType": {
217
- "original": "boolean",
218
- "resolved": "boolean",
219
- "references": {}
220
- },
221
- "required": false,
222
- "optional": false,
223
- "docs": {
224
- "tags": [],
225
- "text": ""
226
- },
227
- "attribute": "is-parent",
228
- "reflect": false,
229
- "defaultValue": "false"
230
- },
231
- "isDemo": {
232
- "type": "boolean",
233
- "mutable": false,
234
- "complexType": {
235
- "original": "boolean",
236
- "resolved": "boolean",
237
- "references": {}
238
- },
239
- "required": false,
240
- "optional": false,
241
- "docs": {
242
- "tags": [],
243
- "text": ""
244
- },
245
- "attribute": "is-demo",
246
- "reflect": false,
247
- "defaultValue": "false"
248
- },
249
- "isExternal": {
250
- "type": "boolean",
251
- "mutable": false,
252
- "complexType": {
253
- "original": "boolean",
254
- "resolved": "boolean",
255
- "references": {}
256
- },
257
- "required": false,
258
- "optional": false,
259
- "docs": {
260
- "tags": [],
261
- "text": ""
262
- },
263
- "attribute": "is-external",
264
- "reflect": false,
265
- "defaultValue": "false"
266
- },
267
- "menuItemAlternative": {
268
- "type": "boolean",
269
- "mutable": false,
270
- "complexType": {
271
- "original": "boolean",
272
- "resolved": "boolean",
273
- "references": {}
274
- },
275
- "required": false,
276
- "optional": false,
277
- "docs": {
278
- "tags": [],
279
- "text": ""
280
- },
281
- "attribute": "menu-item-alternative",
282
- "reflect": false,
283
- "defaultValue": "false"
284
- },
285
- "menuLinkId": {
286
- "type": "string",
287
- "mutable": false,
288
- "complexType": {
289
- "original": "string",
290
- "resolved": "string",
291
- "references": {}
292
- },
293
- "required": false,
294
- "optional": false,
295
- "docs": {
296
- "tags": [],
297
- "text": ""
298
- },
299
- "attribute": "menu-link-id",
300
- "reflect": false,
301
- "defaultValue": "''"
302
- },
303
- "menuType": {
304
- "type": "string",
305
- "mutable": false,
306
- "complexType": {
307
- "original": "MenuType",
308
- "resolved": "MenuType.desktop | MenuType.mobile | MenuType.tablet",
309
- "references": {
310
- "MenuType": {
311
- "location": "import",
312
- "path": "../../../utils/utils"
313
- }
314
- }
315
- },
316
- "required": false,
317
- "optional": false,
318
- "docs": {
319
- "tags": [],
320
- "text": ""
321
- },
322
- "attribute": "menu-type",
323
- "reflect": false,
324
- "defaultValue": "MenuType.desktop"
325
- },
326
- "menuButtonSubmenuExpand": {
327
- "type": "string",
328
- "mutable": false,
329
- "complexType": {
330
- "original": "string",
331
- "resolved": "string",
332
- "references": {}
333
- },
334
- "required": false,
335
- "optional": true,
336
- "docs": {
337
- "tags": [],
338
- "text": ""
339
- },
340
- "attribute": "menu-button-submenu-expand",
341
- "reflect": false,
342
- "defaultValue": "''"
343
- },
344
- "menuButtonBreadcrumbMain": {
345
- "type": "string",
346
- "mutable": false,
347
- "complexType": {
348
- "original": "string",
349
- "resolved": "string",
350
- "references": {}
351
- },
352
- "required": false,
353
- "optional": true,
354
- "docs": {
355
- "tags": [],
356
- "text": ""
357
- },
358
- "attribute": "menu-button-breadcrumb-main",
359
- "reflect": false
360
- },
361
- "ariaExpanded": {
362
- "type": "boolean",
363
- "mutable": true,
364
- "complexType": {
365
- "original": "boolean",
366
- "resolved": "boolean",
367
- "references": {}
368
- },
369
- "required": false,
370
- "optional": false,
371
- "docs": {
372
- "tags": [],
373
- "text": ""
374
- },
375
- "attribute": "aria-expanded",
376
- "reflect": false,
377
- "defaultValue": "false"
378
- },
379
- "depth": {
380
- "type": "number",
381
- "mutable": true,
382
- "complexType": {
383
- "original": "number",
384
- "resolved": "number",
385
- "references": {}
386
- },
387
- "required": false,
388
- "optional": false,
389
- "docs": {
390
- "tags": [],
391
- "text": ""
392
- },
393
- "attribute": "depth",
394
- "reflect": true,
395
- "defaultValue": "0"
396
- },
397
- "hasChildren": {
398
- "type": "boolean",
399
- "mutable": true,
400
- "complexType": {
401
- "original": "boolean",
402
- "resolved": "boolean",
403
- "references": {}
404
- },
405
- "required": false,
406
- "optional": false,
407
- "docs": {
408
- "tags": [],
409
- "text": ""
410
- },
411
- "attribute": "has-children",
412
- "reflect": false,
413
- "defaultValue": "null"
414
- },
415
- "label": {
416
- "type": "string",
417
- "mutable": true,
418
- "complexType": {
419
- "original": "string",
420
- "resolved": "string",
421
- "references": {}
422
- },
423
- "required": false,
424
- "optional": false,
425
- "docs": {
426
- "tags": [],
427
- "text": ""
428
- },
429
- "attribute": "label",
430
- "reflect": false,
431
- "defaultValue": "''"
432
- },
433
- "parentAsHeading": {
434
- "type": "string",
435
- "mutable": true,
436
- "complexType": {
437
- "original": "string",
438
- "resolved": "string",
439
- "references": {}
440
- },
441
- "required": false,
442
- "optional": false,
443
- "docs": {
444
- "tags": [],
445
- "text": ""
446
- },
447
- "attribute": "parent-as-heading",
448
- "reflect": false,
449
- "defaultValue": "''"
450
- },
451
- "parentExpanded": {
452
- "type": "boolean",
453
- "mutable": true,
454
- "complexType": {
455
- "original": "boolean",
456
- "resolved": "boolean",
457
- "references": {}
458
- },
459
- "required": false,
460
- "optional": false,
461
- "docs": {
462
- "tags": [],
463
- "text": ""
464
- },
465
- "attribute": "parent-expanded",
466
- "reflect": true,
467
- "defaultValue": "false"
468
- },
469
- "url": {
470
- "type": "string",
471
- "mutable": true,
472
- "complexType": {
473
- "original": "string",
474
- "resolved": "string",
475
- "references": {}
476
- },
477
- "required": false,
478
- "optional": false,
479
- "docs": {
480
- "tags": [],
481
- "text": ""
482
- },
483
- "attribute": "url",
484
- "reflect": false,
485
- "defaultValue": "''"
486
- }
487
- }; }
488
- static get events() { return [{
489
- "method": "addBreadcrumb",
490
- "name": "addBreadcrumb",
491
- "bubbles": true,
492
- "cancelable": true,
493
- "composed": true,
494
- "docs": {
495
- "tags": [],
496
- "text": ""
497
- },
498
- "complexType": {
499
- "original": "any",
500
- "resolved": "any",
501
- "references": {}
502
- }
503
- }, {
504
- "method": "menuContainerActiveTrail",
505
- "name": "menuContainerActiveTrail",
506
- "bubbles": true,
507
- "cancelable": true,
508
- "composed": true,
509
- "docs": {
510
- "tags": [],
511
- "text": ""
512
- },
513
- "complexType": {
514
- "original": "any",
515
- "resolved": "any",
516
- "references": {}
517
- }
518
- }, {
519
- "method": "menuContainerToggled",
520
- "name": "menuContainerToggled",
521
- "bubbles": true,
522
- "cancelable": true,
523
- "composed": true,
524
- "docs": {
525
- "tags": [],
526
- "text": ""
527
- },
528
- "complexType": {
529
- "original": "any",
530
- "resolved": "any",
531
- "references": {}
532
- }
533
- }, {
534
- "method": "routeClicked",
535
- "name": "routeClicked",
536
- "bubbles": true,
537
- "cancelable": true,
538
- "composed": true,
539
- "docs": {
540
- "tags": [],
541
- "text": ""
542
- },
543
- "complexType": {
544
- "original": "any",
545
- "resolved": "any",
546
- "references": {}
547
- }
548
- }]; }
549
- static get elementRef() { return "el"; }
550
- static get listeners() { return [{
551
- "name": "handleClick",
552
- "method": "handleClick",
553
- "target": undefined,
554
- "capture": true,
555
- "passive": false
556
- }]; }
557
- }
@@ -1,129 +0,0 @@
1
- :root {
2
- --brand-main: #0e688b;
3
- --brand-main-soft: #b1e7ff;
4
- --brand-main-bright: #48c5f8;
5
- --brand-main-light: #107eab;
6
- --brand-main-active: #005379;
7
- --brand-main-dark: #003146;
8
- --brand-main-nearly-black: #000222;
9
- --link-blue: #0479a4;
10
- --link-disabled: #767676;
11
- --grayscale-white: #fff;
12
- --grayscale-slightly-gray: #fefefe;
13
- --grayscale-light: #f8f8f8;
14
- --grayscale-medium: #d2d2d2;
15
- --grayscale-background-box: #f5f5f5;
16
- --grayscale-tabs-border: #e6e6e6;
17
- --grayscale-background-arrow: #dfdfdf;
18
- --grayscale-medium-dark: #979797;
19
- --grayscale-dark: #555555;
20
- --grayscale-dark-text: #222222;
21
- --grayscale-black: #000000;
22
- --additional-red-light: #e5053a;
23
- --additional-red-dark: #a31621;
24
- --additional-purple-light: #420039;
25
- --additional-yellow: #f9a21a;
26
- --additional-skyblue: #48c5f8;
27
- --additional-orange: #d14600;
28
- --additional-green-light: #96ba3c;
29
- --additional-green-dark: #006400;
30
- --hover-gray: #eaeaea;
31
- }
32
-
33
- * {
34
- -webkit-box-sizing: border-box;
35
- box-sizing: border-box;
36
- }
37
-
38
- :root {
39
- --gutter-mobile: 16px;
40
- --gutter-narrow: 24px;
41
- --gutter-medium: 24px;
42
- --gutter-wide: 24px;
43
- --gutter-extrawide: 32px;
44
- }
45
-
46
- /**
47
- * Mixin for fluid type.
48
- * Example usage: @include fluid-type(font-size, 320px, 1600px, 32px, 80px);
49
- */
50
-
51
- :root {
52
- --breakpoint-extrawide: 75.0625rem;
53
- --breakpoint-max-width: 75.0625rem;
54
- --breakpoint-medium: 48rem;
55
- --breakpoint-narrow: 30rem;
56
- --breakpoint-wide: 60rem;
57
- }
58
-
59
- .hy-menu-level-container--mobile {
60
- background-color: var(--grayscale-white);
61
- display: block;
62
- height: 0;
63
- left: 0;
64
- position: absolute;
65
- top: 0;
66
- -webkit-transform: translateX(100%);
67
- transform: translateX(100%);
68
- -webkit-transition: visibility 0.3s ease-in-out, opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
69
- transition: visibility 0.3s ease-in-out, opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
70
- transition: transform 0.3s ease-in-out, visibility 0.3s ease-in-out, opacity 0.3s ease-in-out;
71
- transition: transform 0.3s ease-in-out, visibility 0.3s ease-in-out, opacity 0.3s ease-in-out, -webkit-transform 0.3s ease-in-out;
72
- visibility: hidden !important;
73
- width: 100%;
74
- }
75
-
76
- .hy-menu-level-container--mobile.is-open {
77
- height: auto;
78
- -webkit-transform: translateX(0);
79
- transform: translateX(0);
80
- visibility: visible !important;
81
- padding-bottom: 96px;
82
- }
83
-
84
- .hy-menu-level-container--mobile.hy-menu-level-container--level-0 {
85
- padding-top: 8px;
86
- position: relative;
87
- }
88
-
89
- .hy-menu-level-container--mobile.hy-menu-level-container--level-0:before {
90
- background-color: var(--brand-main-light);
91
- content: "";
92
- display: block;
93
- height: 3px;
94
- left: 0;
95
- position: absolute;
96
- right: 0;
97
- top: 0;
98
- }
99
-
100
- .hy-menu-level-container--mobile:focus {
101
- outline: 0;
102
- }
103
-
104
- .hy-menu-level-container--desktop {
105
- -webkit-box-align: start;
106
- -ms-flex-align: start;
107
- align-items: flex-start;
108
- display: -webkit-box;
109
- display: -ms-flexbox;
110
- display: flex;
111
- -webkit-box-orient: vertical;
112
- -webkit-box-direction: normal;
113
- -ms-flex-flow: column;
114
- flex-flow: column;
115
- width: 100%;
116
- }
117
-
118
- .hy-menu-level-container--desktop.is-open {
119
- display: block;
120
- visibility: visible;
121
- }
122
-
123
- .hy-menu-level-container--desktop:not(.hy-menu-level-container--level-0):not(.hy-menu-level-container--level-2) {
124
- display: none;
125
- }
126
-
127
- .hy-menu-level-container--desktop.hy-menu-level-container--level-2 {
128
- background-color: var(--grayscale-background-box);
129
- }