@genesislcap/foundation-header 14.357.0 → 14.358.0

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.
@@ -25,6 +25,48 @@
25
25
  }
26
26
  ]
27
27
  },
28
+ {
29
+ "kind": "javascript-module",
30
+ "path": "src/components/rapid-components.ts",
31
+ "declarations": [
32
+ {
33
+ "kind": "function",
34
+ "name": "registerCommonRapidComponents",
35
+ "privacy": "public"
36
+ }
37
+ ],
38
+ "exports": [
39
+ {
40
+ "kind": "js",
41
+ "name": "registerCommonRapidComponents",
42
+ "declaration": {
43
+ "name": "registerCommonRapidComponents",
44
+ "module": "src/components/rapid-components.ts"
45
+ }
46
+ }
47
+ ]
48
+ },
49
+ {
50
+ "kind": "javascript-module",
51
+ "path": "src/components/zero-components.ts",
52
+ "declarations": [
53
+ {
54
+ "kind": "function",
55
+ "name": "registerCommonZeroComponents",
56
+ "privacy": "public"
57
+ }
58
+ ],
59
+ "exports": [
60
+ {
61
+ "kind": "js",
62
+ "name": "registerCommonZeroComponents",
63
+ "declaration": {
64
+ "name": "registerCommonZeroComponents",
65
+ "module": "src/components/zero-components.ts"
66
+ }
67
+ }
68
+ ]
69
+ },
28
70
  {
29
71
  "kind": "javascript-module",
30
72
  "path": "src/config/config.ts",
@@ -180,48 +222,6 @@
180
222
  }
181
223
  ]
182
224
  },
183
- {
184
- "kind": "javascript-module",
185
- "path": "src/components/rapid-components.ts",
186
- "declarations": [
187
- {
188
- "kind": "function",
189
- "name": "registerCommonRapidComponents",
190
- "privacy": "public"
191
- }
192
- ],
193
- "exports": [
194
- {
195
- "kind": "js",
196
- "name": "registerCommonRapidComponents",
197
- "declaration": {
198
- "name": "registerCommonRapidComponents",
199
- "module": "src/components/rapid-components.ts"
200
- }
201
- }
202
- ]
203
- },
204
- {
205
- "kind": "javascript-module",
206
- "path": "src/components/zero-components.ts",
207
- "declarations": [
208
- {
209
- "kind": "function",
210
- "name": "registerCommonZeroComponents",
211
- "privacy": "public"
212
- }
213
- ],
214
- "exports": [
215
- {
216
- "kind": "js",
217
- "name": "registerCommonZeroComponents",
218
- "declaration": {
219
- "name": "registerCommonZeroComponents",
220
- "module": "src/components/zero-components.ts"
221
- }
222
- }
223
- ]
224
- },
225
225
  {
226
226
  "kind": "javascript-module",
227
227
  "path": "src/main/index.ts",
@@ -287,7 +287,7 @@
287
287
  {
288
288
  "kind": "variable",
289
289
  "name": "navTemplate",
290
- "default": "html<Navigation>`\n ${when((x) => !x.hideSideBar, sideNavTemplate)}\n <div class=\"nav-listbox\" data-test-id=\"nav-bar\" role=\"navigation\" aria-label=\"Main menu\">\n ${app.registerElementsTarget<HeaderTargetId>('header-start')}\n <div class=\"nav-leftside\">\n ${app.registerElementsTarget<NavTargetId>('nav-start')}\n ${when(\n (x) => !x.hideSideBar,\n html<Navigation>`\n <${buttonTag}\n class=\"bars-container\"\n @click=${(x) => x.toggleNavVisibility()}\n data-test-id=\"hamburger-menu\"\n aria-label=\"Toggle side menu\"\n aria-controls=\"side-nav\"\n aria-expanded=${(x) => x.sideNavOpen}\n appearance=\"stealth\"\n @focusin=${(x) => x.closeNav()}\n >\n <${iconTag}\n name=\"bars\"\n part=\"nav-visibility-icon\"\n class=\"nav-visibility-icon\"\n >\n </${iconTag}>\n </${buttonTag}>\n `,\n )}\n <div class=\"logo-container\" data-test-id=\"nav-bar-logo\">\n <img\n src=${(x) => x.logoSrc}\n class=\"logo\"\n part=\"logo\"\n data-test-id=\"logo\"\n alt=\"${(x) => x.logoAltText}\"\n />\n </div>\n <slot name=\"routes\" data-test-id=\"route-buttons\">\n ${(x) => (x.routeNavItems ? routeNavItemsTemplate('header') : defaultRouteNavItemsTemplate)}\n </slot>\n ${app.registerElementsTarget<NavTargetId>('nav')}\n </div>\n <div class=\"nav-rightside\">\n <slot name=\"routes-end\" data-test-id=\"route-end-buttons\"></slot>\n ${when(\n (x) => x.showEnvironmentIndicator,\n html<Navigation>`\n <${environmentIndicatorTag} class=\"environment-indicator\"></${environmentIndicatorTag}>\n `,\n )}\n ${app.registerElementsTarget<NavTargetId>('nav-end')}\n ${when(\n (x) => x.showLuminanceToggleButton,\n html<Navigation>`\n <div\n class=\"icon-container\"\n data-test-id=\"luminance-toggle-button\"\n part=\"luminance-button\"\n aria-label=\"Luminance toggle\"\n >\n <${iconTag}\n @click=${(x) => x.luminanceIconEvent()}\n variant=\"regular\"\n name=\"moon\"\n part=\"luminance-icon\"\n ></${iconTag}>\n </div>\n `,\n )}\n ${when(\n (x) => x.showMiscToggleButton,\n html<Navigation>`\n <div class=\"icon-container\" data-test-id=\"misc-toggle-button\" part=\"misc-button\" aria-label=\"Misc icon\">\n <${iconTag} @click=${(x) => x.miscIconEvent()} name=\"th\" part=\"misc-icon\">\n </${iconTag}>\n </div>\n `,\n )}\n ${when(\n (x) => x.showConnectionIndicator,\n html<Navigation>`\n <div class=\"connection-indicator-container\" data-test-id=\"connection-indicator\">\n <${connectionIndicatorTag} show-label=\"false\">\n </${connectionIndicatorTag}>\n </div>\n `,\n )}\n ${when(\n (x) => x.showLanguageSelector && x.languageOptions,\n html<Navigation>`\n <${selectTag}\n class=\"language-selector\"\n position=\"below\"\n data-test-id=\"language-selector\"\n part=\"language-selector\"\n @change=\"${(x, c) => x.changeLanguage(c.event as CustomEvent)}\"\n aria-label=\"Language selector\"\n >\n ${repeat(\n (x) => x.languageOptions.availableLanguages,\n html`\n <${optionTag}\n value=\"${(x) => x}\"\n ?selected=\"${(x, c) => x === c.parent.languageOptions.selectedLanguage}\"\n >\n ${(x) => x.toUpperCase()}\n </${optionTag}>\n `,\n )}\n </${selectTag}>\n `,\n )}\n ${() => accountMenuTemplate}\n </div>\n ${app.registerElementsTarget<HeaderTargetId>(['header', 'header-end'])}\n </div>\n`",
290
+ "default": "html<Navigation>`\n ${when((x) => !x.hideSideBar, sideNavTemplate)}\n <div\n class=\"nav-listbox\"\n data-test-id=\"nav-bar\"\n part=\"root\"\n role=\"navigation\"\n aria-label=\"Main menu\"\n >\n ${app.registerElementsTarget<HeaderTargetId>('header-start')}\n <div class=\"nav-leftside\">\n ${app.registerElementsTarget<NavTargetId>('nav-start')}\n ${when(\n (x) => !x.hideSideBar,\n html<Navigation>`\n <${buttonTag}\n class=\"bars-container\"\n @click=${(x) => x.toggleNavVisibility()}\n data-test-id=\"hamburger-menu\"\n aria-label=\"Toggle side menu\"\n aria-controls=\"side-nav\"\n aria-expanded=${(x) => x.sideNavOpen}\n appearance=\"stealth\"\n @focusin=${(x) => x.closeNav()}\n >\n <${iconTag}\n name=\"bars\"\n part=\"nav-visibility-icon\"\n class=\"nav-visibility-icon\"\n >\n </${iconTag}>\n </${buttonTag}>\n `,\n )}\n <div class=\"logo-container\" data-test-id=\"nav-bar-logo\">\n <img\n src=${(x) => x.logoSrc}\n class=\"logo\"\n part=\"logo\"\n data-test-id=\"logo\"\n alt=\"${(x) => x.logoAltText}\"\n />\n </div>\n <slot name=\"routes\" data-test-id=\"route-buttons\">\n ${(x) => (x.routeNavItems ? routeNavItemsTemplate('header') : defaultRouteNavItemsTemplate)}\n </slot>\n ${app.registerElementsTarget<NavTargetId>('nav')}\n </div>\n <div class=\"nav-rightside\">\n <slot name=\"routes-end\" data-test-id=\"route-end-buttons\"></slot>\n ${when(\n (x) => x.showEnvironmentIndicator,\n html<Navigation>`\n <${environmentIndicatorTag} class=\"environment-indicator\"></${environmentIndicatorTag}>\n `,\n )}\n ${app.registerElementsTarget<NavTargetId>('nav-end')}\n ${when(\n (x) => x.showLuminanceToggleButton,\n html<Navigation>`\n <div\n class=\"icon-container\"\n data-test-id=\"luminance-toggle-button\"\n part=\"luminance-button\"\n aria-label=\"Luminance toggle\"\n >\n <${iconTag}\n @click=${(x) => x.luminanceIconEvent()}\n variant=\"regular\"\n name=\"moon\"\n part=\"luminance-icon\"\n ></${iconTag}>\n </div>\n `,\n )}\n ${when(\n (x) => x.showMiscToggleButton,\n html<Navigation>`\n <div class=\"icon-container\" data-test-id=\"misc-toggle-button\" part=\"misc-button\" aria-label=\"Misc icon\">\n <${iconTag} @click=${(x) => x.miscIconEvent()} name=\"th\" part=\"misc-icon\">\n </${iconTag}>\n </div>\n `,\n )}\n ${when(\n (x) => x.showConnectionIndicator,\n html<Navigation>`\n <div class=\"connection-indicator-container\" data-test-id=\"connection-indicator\">\n <${connectionIndicatorTag} show-label=\"false\">\n </${connectionIndicatorTag}>\n </div>\n `,\n )}\n ${when(\n (x) => x.showLanguageSelector && x.languageOptions,\n html<Navigation>`\n <${selectTag}\n class=\"language-selector\"\n position=\"below\"\n data-test-id=\"language-selector\"\n part=\"language-selector\"\n @change=\"${(x, c) => x.changeLanguage(c.event as CustomEvent)}\"\n aria-label=\"Language selector\"\n >\n ${repeat(\n (x) => x.languageOptions.availableLanguages,\n html`\n <${optionTag}\n value=\"${(x) => x}\"\n ?selected=\"${(x, c) => x === c.parent.languageOptions.selectedLanguage}\"\n >\n ${(x) => x.toUpperCase()}\n </${optionTag}>\n `,\n )}\n </${selectTag}>\n `,\n )}\n ${() => accountMenuTemplate}\n </div>\n ${app.registerElementsTarget<HeaderTargetId>(['header', 'header-end'])}\n </div>\n`",
291
291
  "description": "Template for Navigation class",
292
292
  "return": {
293
293
  "type": {
@@ -3199,12 +3199,6 @@
3199
3199
  "declarations": [],
3200
3200
  "exports": []
3201
3201
  },
3202
- {
3203
- "kind": "javascript-module",
3204
- "path": "src/templates/rapid.template.ts",
3205
- "declarations": [],
3206
- "exports": []
3207
- },
3208
3202
  {
3209
3203
  "kind": "javascript-module",
3210
3204
  "path": "src/styles/colors.ts",
@@ -3366,6 +3360,12 @@
3366
3360
  }
3367
3361
  ]
3368
3362
  },
3363
+ {
3364
+ "kind": "javascript-module",
3365
+ "path": "src/templates/rapid.template.ts",
3366
+ "declarations": [],
3367
+ "exports": []
3368
+ },
3369
3369
  {
3370
3370
  "kind": "javascript-module",
3371
3371
  "path": "src/utils/index.ts",
@@ -1 +1 @@
1
- {"version":3,"file":"main.styles.d.ts","sourceRoot":"","sources":["../../../src/main/main.styles.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,iDA2WgD,CAAC"}
1
+ {"version":3,"file":"main.styles.d.ts","sourceRoot":"","sources":["../../../src/main/main.styles.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,iDA6YgD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"main.template.d.ts","sourceRoot":"","sources":["../../../src/main/main.template.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAc1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAOzC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,UAAU,CAIpD,CAAC;AAsLF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,+BAoHvB,CAAC;AAiDF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,GAAI,WAAM,2BAIzC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,UAAU,CAEpD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,+BAAc,CAAC"}
1
+ {"version":3,"file":"main.template.d.ts","sourceRoot":"","sources":["../../../src/main/main.template.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AAc1D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AAOzC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,UAAU,CAIpD,CAAC;AAwLF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,+BA0HvB,CAAC;AAiDF;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,mBAAmB,GAAI,WAAM,2BAIzC,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,UAAU,CAEpD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,+BAAc,CAAC"}
@@ -34,7 +34,7 @@ export const MainStyles = css `
34
34
  }
35
35
 
36
36
  .nav-listbox {
37
- background: var(--neutral-layer-2);
37
+ background: var(--foundation-header-background-color, var(--neutral-layer-1));
38
38
  display: flex;
39
39
  flex: 1;
40
40
  flex-direction: row;
@@ -46,10 +46,14 @@ export const MainStyles = css `
46
46
  .nav-button {
47
47
  height: calc(var(--base-height-multiplier) * (var(--design-unit) - 1) * 1px);
48
48
  margin: 0;
49
+ background: var(--foundation-header-rest-item-background, var(--neutral-fill-rest));
50
+
51
+ &:hover {
52
+ color: var(--accent-foreground-hover);
53
+ }
49
54
  }
50
55
 
51
56
  .nav-leftside {
52
- background: var(--neutral-layer-2);
53
57
  flex: 1;
54
58
  display: flex;
55
59
  flex-direction: row;
@@ -188,7 +192,7 @@ export const MainStyles = css `
188
192
 
189
193
  ${flyoutTag}::part(header),
190
194
  ${flyoutTag}::part(content) {
191
- padding: calc(var(--design-unit) * 2px);
195
+ padding: calc(var(--design-unit) * 3px);
192
196
  }
193
197
 
194
198
  .notifications-button {
@@ -198,6 +202,7 @@ export const MainStyles = css `
198
202
  .side-nav-buttons-container {
199
203
  display: flex;
200
204
  flex-direction: column;
205
+ gap: calc(var(--design-unit) * 2px);
201
206
  }
202
207
 
203
208
  .account-menu {
@@ -254,8 +259,8 @@ export const MainStyles = css `
254
259
  top: 100%;
255
260
  left: 0;
256
261
  min-width: 175px;
257
- background: var(--neutral-layer-2);
258
- border: calc(var(--stroke-width) * 1px) solid var(--neutral-layer-1);
262
+ background: var(--foundation-header-background-color, var(--neutral-layer-2));
263
+ border: calc(var(--stroke-width) * 1px) solid var(--neutral-stroke-rest);
259
264
  z-index: 1000;
260
265
  opacity: 0%;
261
266
  visibility: hidden;
@@ -332,6 +337,30 @@ export const MainStyles = css `
332
337
 
333
338
  .side-nav-buttons-container .nav-button-wrapper {
334
339
  width: 100%;
340
+ display: flex;
341
+
342
+ rapid-button {
343
+ background: transparent;
344
+ border-radius: 0;
345
+ height: calc(
346
+ (((var(--base-height-multiplier) + var(--density)) * var(--design-unit)) - 4) * 1px
347
+ );
348
+ }
349
+
350
+ rapid-button::part(control) {
351
+ justify-content: flex-start;
352
+ }
353
+
354
+ rapid-button.route-selected {
355
+ background-color: var(--neutral-fill-stealth-rest);
356
+ border-left: 3px solid
357
+ var(--foundation-header-selected-item-background, var(--accent-fill-rest));
358
+ color: var(--accent-foreground-rest);
359
+
360
+ &:hover {
361
+ color: var(--accent-foreground-rest);
362
+ }
363
+ }
335
364
  }
336
365
 
337
366
  .side-nav-buttons-container .nav-button-wrapper .nav-button {
@@ -350,7 +379,12 @@ export const MainStyles = css `
350
379
 
351
380
  .route-selected,
352
381
  .nav-submenu-wrapper .nav-button.sub-selected {
353
- background-color: var(--highlight-selected-menu, var(--accent-fill-rest));
382
+ background-color: var(--foundation-header-selected-item-background, var(--accent-fill-rest));
383
+ color: var(--foreground-on-accent-rest);
384
+
385
+ &:hover {
386
+ color: var(--foreground-on-accent-rest);
387
+ }
354
388
  }
355
389
 
356
390
  .dropdown-indicator {
@@ -67,6 +67,7 @@ const routeNavItemsTemplate = (navId) => html `
67
67
  <div class="nav-button-wrapper">
68
68
  <${buttonTag}
69
69
  appearance="neutral-grey"
70
+ part="${(x) => `${x.navId}-item-rest`} ${(x, c) => navigationClassMatcher(`${x.navId}-item-active`, x.routePath, c.parent.pathName)}"
70
71
  class="nav-button ${(x, c) => navigationClassMatcher('route-selected', x.routePath, c.parent.pathName)} ${(x, c) => classNames(['has-active-child', c.parent.hasActiveChild(x)])}"
71
72
  slot="routes"
72
73
  @click=${(x, c) => c.parent.handleNavButtonClick(x)}
@@ -138,6 +139,7 @@ const sideNavTemplate = html `
138
139
  data-test-id="side-nav"
139
140
  role="navigation"
140
141
  aria-label="Side navigation"
142
+ part="flyout-root"
141
143
  >
142
144
  <img
143
145
  slot="title"
@@ -184,7 +186,13 @@ const sideNavTemplate = html `
184
186
  */
185
187
  export const navTemplate = html `
186
188
  ${when((x) => !x.hideSideBar, sideNavTemplate)}
187
- <div class="nav-listbox" data-test-id="nav-bar" role="navigation" aria-label="Main menu">
189
+ <div
190
+ class="nav-listbox"
191
+ data-test-id="nav-bar"
192
+ part="root"
193
+ role="navigation"
194
+ aria-label="Main menu"
195
+ >
188
196
  ${app.registerElementsTarget('header-start')}
189
197
  <div class="nav-leftside">
190
198
  ${app.registerElementsTarget('nav-start')}
@@ -182,7 +182,7 @@ const sideNavTemplate = html `
182
182
  */
183
183
  export const rapidTemplate = html `
184
184
  ${when((x) => !x.hideSideBar, sideNavTemplate)}
185
- <div class="nav-listbox" data-test-id="nav-bar" role="navigation" aria-label="Main menu">
185
+ <div class="nav-listbox" part="root" data-test-id="nav-bar" role="navigation" aria-label="Main menu">
186
186
  ${app.registerElementsTarget('header-start')}
187
187
  <div class="nav-leftside">
188
188
  ${app.registerElementsTarget('nav-start')}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@genesislcap/foundation-header",
3
3
  "description": "Genesis Foundation Header",
4
- "version": "14.357.0",
4
+ "version": "14.358.0",
5
5
  "license": "SEE LICENSE IN license.txt",
6
6
  "main": "dist/esm/index.js",
7
7
  "types": "dist/foundation-header.d.ts",
@@ -77,28 +77,28 @@
77
77
  }
78
78
  },
79
79
  "devDependencies": {
80
- "@genesislcap/foundation-testing": "14.357.0",
81
- "@genesislcap/genx": "14.357.0",
82
- "@genesislcap/rollup-builder": "14.357.0",
83
- "@genesislcap/ts-builder": "14.357.0",
84
- "@genesislcap/uvu-playwright-builder": "14.357.0",
85
- "@genesislcap/vite-builder": "14.357.0",
86
- "@genesislcap/webpack-builder": "14.357.0"
80
+ "@genesislcap/foundation-testing": "14.358.0",
81
+ "@genesislcap/genx": "14.358.0",
82
+ "@genesislcap/rollup-builder": "14.358.0",
83
+ "@genesislcap/ts-builder": "14.358.0",
84
+ "@genesislcap/uvu-playwright-builder": "14.358.0",
85
+ "@genesislcap/vite-builder": "14.358.0",
86
+ "@genesislcap/webpack-builder": "14.358.0"
87
87
  },
88
88
  "dependencies": {
89
- "@genesislcap/foundation-auth": "14.357.0",
90
- "@genesislcap/foundation-comms": "14.357.0",
91
- "@genesislcap/foundation-events": "14.357.0",
92
- "@genesislcap/foundation-i18n": "14.357.0",
93
- "@genesislcap/foundation-logger": "14.357.0",
94
- "@genesislcap/foundation-login": "14.357.0",
95
- "@genesislcap/foundation-shell": "14.357.0",
96
- "@genesislcap/foundation-ui": "14.357.0",
97
- "@genesislcap/foundation-user": "14.357.0",
98
- "@genesislcap/foundation-utils": "14.357.0",
99
- "@genesislcap/foundation-zero": "14.357.0",
100
- "@genesislcap/rapid-design-system": "14.357.0",
101
- "@genesislcap/web-core": "14.357.0"
89
+ "@genesislcap/foundation-auth": "14.358.0",
90
+ "@genesislcap/foundation-comms": "14.358.0",
91
+ "@genesislcap/foundation-events": "14.358.0",
92
+ "@genesislcap/foundation-i18n": "14.358.0",
93
+ "@genesislcap/foundation-logger": "14.358.0",
94
+ "@genesislcap/foundation-login": "14.358.0",
95
+ "@genesislcap/foundation-shell": "14.358.0",
96
+ "@genesislcap/foundation-ui": "14.358.0",
97
+ "@genesislcap/foundation-user": "14.358.0",
98
+ "@genesislcap/foundation-utils": "14.358.0",
99
+ "@genesislcap/foundation-zero": "14.358.0",
100
+ "@genesislcap/rapid-design-system": "14.358.0",
101
+ "@genesislcap/web-core": "14.358.0"
102
102
  },
103
103
  "repository": {
104
104
  "type": "git",
@@ -109,5 +109,5 @@
109
109
  "access": "public"
110
110
  },
111
111
  "customElements": "dist/custom-elements.json",
112
- "gitHead": "5335c46d078e396fc60085ba28420fcf5a7af8b9"
112
+ "gitHead": "7aee2c72c154451a9da8c25bcaaa25f2e44ba9ef"
113
113
  }