@genesislcap/foundation-header 14.143.0 → 14.143.2

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 (50) hide show
  1. package/dist/custom-elements.json +31 -561
  2. package/dist/dts/components/components.d.ts +9 -0
  3. package/dist/dts/components/components.d.ts.map +1 -0
  4. package/dist/dts/components/index.d.ts +2 -0
  5. package/dist/dts/components/index.d.ts.map +1 -0
  6. package/dist/dts/config/index.d.ts +0 -2
  7. package/dist/dts/config/index.d.ts.map +1 -1
  8. package/dist/dts/main/index.d.ts +1 -1
  9. package/dist/dts/main/index.d.ts.map +1 -1
  10. package/dist/dts/main/main.d.ts +22 -64
  11. package/dist/dts/main/main.d.ts.map +1 -1
  12. package/dist/dts/main/main.styles.d.ts.map +1 -1
  13. package/dist/dts/main/main.template.d.ts.map +1 -1
  14. package/dist/esm/components/components.js +42 -0
  15. package/dist/esm/components/index.js +1 -0
  16. package/dist/esm/config/index.js +0 -2
  17. package/dist/esm/main/index.js +1 -1
  18. package/dist/esm/main/main.js +22 -57
  19. package/dist/esm/main/main.styles.js +133 -56
  20. package/dist/esm/main/main.template.js +28 -32
  21. package/dist/foundation-header.api.json +0 -219
  22. package/dist/foundation-header.d.ts +24 -200
  23. package/docs/api/foundation-header.md +0 -14
  24. package/docs/api/foundation-header.navigation.md +0 -1
  25. package/docs/api-report.md +2 -46
  26. package/package.json +13 -14
  27. package/dist/dts/components/zero-components.d.ts +0 -6
  28. package/dist/dts/components/zero-components.d.ts.map +0 -1
  29. package/dist/dts/config/config.d.ts +0 -33
  30. package/dist/dts/config/config.d.ts.map +0 -1
  31. package/dist/dts/config/configure.d.ts +0 -27
  32. package/dist/dts/config/configure.d.ts.map +0 -1
  33. package/dist/dts/config/templates.d.ts +0 -34
  34. package/dist/dts/config/templates.d.ts.map +0 -1
  35. package/dist/dts/tags/index.d.ts +0 -2
  36. package/dist/dts/tags/index.d.ts.map +0 -1
  37. package/dist/dts/tags/tags.d.ts +0 -36
  38. package/dist/dts/tags/tags.d.ts.map +0 -1
  39. package/dist/esm/components/zero-components.js +0 -48
  40. package/dist/esm/config/config.js +0 -18
  41. package/dist/esm/config/configure.js +0 -56
  42. package/dist/esm/config/templates.js +0 -14
  43. package/dist/esm/tags/index.js +0 -1
  44. package/dist/esm/tags/tags.js +0 -39
  45. package/docs/api/foundation-header.configure.md +0 -46
  46. package/docs/api/foundation-header.defaultheaderconfig.md +0 -13
  47. package/docs/api/foundation-header.foundationheader.md +0 -39
  48. package/docs/api/foundation-header.headerconfig.md +0 -21
  49. package/docs/api/foundation-header.headerconfig.templateoptions.md +0 -18
  50. package/docs/api/foundation-header.navigation.headerconfig.md +0 -11
@@ -0,0 +1,9 @@
1
+ export declare const loadZeroDesignSystem: () => Promise<any>;
2
+ /**
3
+ * Load the wp5 module federation remote versions, or fallback to code split bundled versions.
4
+ * You would really be targeting the client's design system, components etc here. For now just targeting zero.
5
+ */
6
+ export declare const loadRemotes: () => Promise<{
7
+ ZeroDesignSystem: any;
8
+ }>;
9
+ //# sourceMappingURL=components.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"components.d.ts","sourceRoot":"","sources":["../../../src/components/components.ts"],"names":[],"mappings":"AAqBA,eAAO,MAAM,oBAAoB,oBAWhC,CAAC;AAEF;;;GAGG;AACH,eAAO,MAAM,WAAW;;EAKvB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './components';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
@@ -1,4 +1,2 @@
1
- export * from './config';
2
- export * from './configure';
3
1
  export * from './targetId';
4
2
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/config/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC"}
@@ -1,4 +1,4 @@
1
1
  export * from './main.styles';
2
- export * from './main.template';
2
+ export { NavTemplate } from './main.template';
3
3
  export * from './main';
4
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/main/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,cAAc,iBAAiB,CAAC;AAChC,cAAc,QAAQ,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/main/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAC9C,cAAc,QAAQ,CAAC"}
@@ -1,7 +1,6 @@
1
1
  import { Auth, CredentialManager } from '@genesislcap/foundation-comms';
2
2
  import { I18next } from '@genesislcap/foundation-i18n';
3
3
  import type { FoundationRouteNavItem } from '@genesislcap/foundation-ui';
4
- import { HeaderConfig } from '../config';
5
4
  /**
6
5
  * Events dispatched by the navigation control buttons
7
6
  * @public
@@ -50,7 +49,9 @@ declare const Navigation_base: abstract new (...args: any[]) => {
50
49
  readonly classList: DOMTokenList;
51
50
  className: string;
52
51
  readonly clientHeight: number;
53
- readonly clientLeft: number;
52
+ readonly clientLeft: number; /**
53
+ * Username of the logged in user
54
+ */
54
55
  readonly clientTop: number;
55
56
  readonly clientWidth: number;
56
57
  id: string;
@@ -64,14 +65,6 @@ declare const Navigation_base: abstract new (...args: any[]) => {
64
65
  readonly prefix: string;
65
66
  readonly scrollHeight: number;
66
67
  scrollLeft: number;
67
- /**
68
- * Optional attribute which controls the icon to show on the navigation bar and flyout
69
- * Control via `logo-src`
70
- *
71
- * @remarks
72
- *
73
- * If this attribute is not set then the Genesis logo is shown instead
74
- */
75
68
  scrollTop: number;
76
69
  readonly scrollWidth: number;
77
70
  readonly shadowRoot: ShadowRoot;
@@ -179,16 +172,7 @@ declare const Navigation_base: abstract new (...args: any[]) => {
179
172
  ariaColIndexText: string;
180
173
  ariaColSpan: string;
181
174
  ariaCurrent: string;
182
- ariaDisabled: string; /**
183
- * Emits the event corresponding to the luminance icon being clicked
184
- *
185
- * @remarks
186
- *
187
- * Activated when the user clicks on the moon icon on the navigation
188
- * bar right hand side
189
- *
190
- * @internal
191
- */
175
+ ariaDisabled: string;
192
176
  ariaExpanded: string;
193
177
  ariaHasPopup: string;
194
178
  ariaHidden: string;
@@ -211,7 +195,14 @@ declare const Navigation_base: abstract new (...args: any[]) => {
211
195
  ariaRowIndex: string;
212
196
  ariaRowIndexText: string;
213
197
  ariaRowSpan: string;
214
- /**
198
+ ariaSelected: string;
199
+ ariaSetSize: string;
200
+ ariaSort: string;
201
+ ariaValueMax: string;
202
+ ariaValueMin: string;
203
+ ariaValueNow: string;
204
+ ariaValueText: string;
205
+ role: string; /**
215
206
  * Emits the event corresponding to the notification icon being clicked
216
207
  *
217
208
  * @remarks
@@ -221,14 +212,6 @@ declare const Navigation_base: abstract new (...args: any[]) => {
221
212
  *
222
213
  * @internal
223
214
  */
224
- ariaSelected: string;
225
- ariaSetSize: string;
226
- ariaSort: string;
227
- ariaValueMax: string;
228
- ariaValueMin: string;
229
- ariaValueNow: string;
230
- ariaValueText: string;
231
- role: string;
232
215
  animate(keyframes: PropertyIndexedKeyframes | Keyframe[], options?: number | KeyframeAnimationOptions): Animation;
233
216
  getAnimations(options?: GetAnimationsOptions): Animation[];
234
217
  after(...nodes: (string | Node)[]): void;
@@ -399,7 +382,6 @@ export declare class Navigation extends Navigation_base {
399
382
  auth: Auth;
400
383
  credentialManager: CredentialManager;
401
384
  i18next: I18next;
402
- headerConfig: HeaderConfig;
403
385
  ready: boolean;
404
386
  /**
405
387
  * Username of the logged in user
@@ -492,6 +474,16 @@ export declare class Navigation extends Navigation_base {
492
474
  * If present the defined {@link @genesislcap/foundation-ui#FoundationRouteNavItem | FoundationRouteNavItems} will be rendered in the header 'routes' slot
493
475
  */
494
476
  routeNavItems: FoundationRouteNavItem[];
477
+ /**
478
+ * Load remote components
479
+ *
480
+ * @remarks
481
+ *
482
+ * With regards to module federation
483
+ *
484
+ * @internal
485
+ */
486
+ loadRemotes(): Promise<void>;
495
487
  selectTemplate(): import("@microsoft/fast-element").ViewTemplate<Navigation, any>;
496
488
  /**
497
489
  * Logs the user out of their session
@@ -581,39 +573,5 @@ export declare class Navigation extends Navigation_base {
581
573
  */
582
574
  toLocalisedText(text: string): string;
583
575
  }
584
- /**
585
- * FoundationHeader is a zero version of the header micro-frontend.
586
- *
587
- * @remarks
588
- * A header version that pre-registers zero components and uses the zero design system. ZeroHeader and its components won't bloat the core bundle as
589
- * these are only loaded on-demand when in use.
590
- *
591
- * @example
592
- * ```ts
593
- * import { FoundationHeader } from '@genesislcap/foundation-header';
594
- * ...
595
- * FoundationHeader
596
- * ```
597
- *
598
- * @example Load the micro frontend on-demand
599
- * ```ts
600
-
601
- * const { FoundationHeader } = await import('@genesislcap/foundation-header');
602
- * return FoundationHeader;
603
- * },
604
- * ```
605
- *
606
- * @public
607
- */
608
- export declare class FoundationHeader extends Navigation {
609
- /**
610
- * @internal
611
- */
612
- connectedCallback(): Promise<void>;
613
- /**
614
- * @internal
615
- */
616
- loadRemotes(): Promise<void>;
617
- }
618
576
  export {};
619
577
  //# sourceMappingURL=main.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/main/main.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../../src/main/main.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,iBAAiB,EAAgB,MAAM,+BAA+B,CAAC;AAEtF,OAAO,EAAE,OAAO,EAAE,MAAM,8BAA8B,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAuB,MAAM,4BAA4B,CAAC;AAS9F;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,wBAAwB,EAAE,IAAI,CAAC;IAC/B,mBAAmB,EAAE,IAAI,CAAC;IAC1B,2BAA2B,EAAE,IAAI,CAAC;IAClC,kBAAkB,EAAE,IAAI,CAAC;CAC1B,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iCAkDA;;OAEG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBAmPH;;;;;;;;;OASG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA3SL;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAKa,UAAW,SAAQ,eAAmC;IAC3D,IAAI,EAAG,IAAI,CAAC;IACC,iBAAiB,EAAG,iBAAiB,CAAC;IAChD,OAAO,EAAG,OAAO,CAAC;IAEf,KAAK,EAAE,OAAO,CAAS;IAEnC;;OAEG;IACgB,QAAQ,EAAE,MAAM,CAAC;IAExB,WAAW,UAAS;IAEnB,iBAAiB;IAU9B;;;;;;;OAOG;IAC8B,OAAO,EAAE,GAAG,CAAQ;IAErD;;;;;;;OAOG;IAEH,yBAAyB,EAAE,OAAO,CAAC;IAEnC;;;;;;;OAOG;IAC8D,oBAAoB,EAAE,OAAO,CAAC;IAE/F;;;;;;;;;OASG;IAEH,uBAAuB,EAAE,OAAO,CAAC;IAEjC;;OAEG;IACH,8BAA8B;IAI9B;;;;OAIG;IAEH,uBAAuB,EAAE,OAAO,CAAQ;IAExC;;;;;;;;OAQG;IAEH,oBAAoB,EAAE,OAAO,CAAS;IAE1B,eAAe,EAAE,eAAe,CAG1C;IAEF;;;;OAIG;IAEH,WAAW,EAAE,OAAO,CAAC;IAErB;;;;OAIG;IACS,YAAY,EAAE,KAAK,CAAC;QAC9B,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC,CAAC;IAEH;;OAEG;IACH,mBAAmB;IAiBnB;;OAEG;IACS,aAAa,EAAE,sBAAsB,EAAE,CAAC;IAEpD;;;;;;;;OAQG;IACG,WAAW;IAKjB,cAAc;IAId;;;;;;;;;OASG;IACU,MAAM;IAgBnB;;;;;;;;;;OAUG;IACI,UAAU,CAAC,IAAI,EAAE,MAAM;IAS9B;;;;;;;;;OASG;IACH,mBAAmB;IAInB;;;;;;;;;OASG;IACH,kBAAkB;IAIlB;;;;;;;;;OASG;IACH,aAAa;IAIb;;;;;;;;;OASG;IACH,qBAAqB;IAIrB;;;;;;;;OAQG;IACH,cAAc,CAAC,CAAC,EAAE,WAAW;IAK7B;;;;;;;;OAQG;IACH,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;CAKtC"}
@@ -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,iDAiLgD,CAAC"}
1
+ {"version":3,"file":"main.styles.d.ts","sourceRoot":"","sources":["../../../src/main/main.styles.ts"],"names":[],"mappings":"AAYA;;;;;;GAMG;AACH,eAAO,MAAM,UAAU,iDA6PgD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"main.template.d.ts","sourceRoot":"","sources":["../../../src/main/main.template.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAU5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AA6EzC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,+BA+GvB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,UAAU,CAEpD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,UAAU,CAEpD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,UAAU,CAEjD,CAAC"}
1
+ {"version":3,"file":"main.template.d.ts","sourceRoot":"","sources":["../../../src/main/main.template.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAE5D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAC;AA0EzC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,WAAW,+BA+GvB,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,UAAU,CAEpD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,YAAY,CAAC,UAAU,CAEpD,CAAC;AAEF;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,YAAY,EAAE,YAAY,CAAC,UAAU,CAEjD,CAAC"}
@@ -0,0 +1,42 @@
1
+ import { __awaiter } from "tslib";
2
+ /**
3
+ * These DS / Component imports will be replaced with an import from the local alpha design system.
4
+ * We're just fixing something on our side to allow you to extend zero.
5
+ */
6
+ import { allComponents, provideFASTDesignSystem } from '@microsoft/fast-components';
7
+ import { logger } from '../utils';
8
+ provideFASTDesignSystem().register(allComponents);
9
+ var ResourceType;
10
+ (function (ResourceType) {
11
+ ResourceType["local"] = "local";
12
+ ResourceType["remote"] = "remote";
13
+ })(ResourceType || (ResourceType = {}));
14
+ function loadZeroFallback() {
15
+ return import(
16
+ /* webpackMode: "lazy" */
17
+ '@genesislcap/foundation-zero');
18
+ }
19
+ export const loadZeroDesignSystem = () => __awaiter(void 0, void 0, void 0, function* () {
20
+ let type = ResourceType.remote;
21
+ try {
22
+ // @ts-ignore
23
+ return yield import('foundationZero/ZeroDesignSystem');
24
+ }
25
+ catch (e) {
26
+ type = ResourceType.local;
27
+ return yield loadZeroFallback();
28
+ }
29
+ finally {
30
+ logger.debug(`Using '${type}' version of foundationZero/DesignSystem`);
31
+ }
32
+ });
33
+ /**
34
+ * Load the wp5 module federation remote versions, or fallback to code split bundled versions.
35
+ * You would really be targeting the client's design system, components etc here. For now just targeting zero.
36
+ */
37
+ export const loadRemotes = () => __awaiter(void 0, void 0, void 0, function* () {
38
+ const { registerZeroDesignSystem } = yield loadZeroDesignSystem();
39
+ return {
40
+ ZeroDesignSystem: registerZeroDesignSystem(),
41
+ };
42
+ });
@@ -0,0 +1 @@
1
+ export * from './components';
@@ -1,3 +1 @@
1
- export * from './config';
2
- export * from './configure';
3
1
  export * from './targetId';
@@ -1,3 +1,3 @@
1
1
  export * from './main.styles';
2
- export * from './main.template';
2
+ export { NavTemplate } from './main.template';
3
3
  export * from './main';
@@ -5,8 +5,7 @@ import { I18next } from '@genesislcap/foundation-i18n';
5
5
  import { FASTElement, customElement, observable, attr } from '@microsoft/fast-element';
6
6
  import { Route } from '@microsoft/fast-router';
7
7
  import logo from '../assets/logo.svg';
8
- import { registerCommonZeroComponents } from '../components/zero-components';
9
- import { HeaderConfig } from '../config';
8
+ import * as Components from '../components';
10
9
  import { logger } from '../utils';
11
10
  import { MainStyles as styles } from './main.styles';
12
11
  import { DynamicTemplate as template, LoadingTemplate, MainTemplate } from './main.template';
@@ -43,7 +42,7 @@ import { DynamicTemplate as template, LoadingTemplate, MainTemplate } from './ma
43
42
  * @fires language-changed - Dispatched when the user changes the language in the language selector.
44
43
  *
45
44
  */
46
- export class Navigation extends EventEmitter(FASTElement) {
45
+ let Navigation = class Navigation extends EventEmitter(FASTElement) {
47
46
  constructor() {
48
47
  var _a;
49
48
  super(...arguments);
@@ -86,10 +85,10 @@ export class Navigation extends EventEmitter(FASTElement) {
86
85
  return __awaiter(this, void 0, void 0, function* () {
87
86
  _super.connectedCallback.call(this);
88
87
  logger.debug(`foundation-header is now connected to the DOM`);
88
+ yield this.loadRemotes();
89
89
  this.userName = this.auth.loggedUserResult
90
90
  ? this.auth.loggedUserResult.username
91
91
  : 'Genesis User';
92
- this.ready = true;
93
92
  });
94
93
  }
95
94
  /**
@@ -117,6 +116,21 @@ export class Navigation extends EventEmitter(FASTElement) {
117
116
  }));
118
117
  }
119
118
  }
119
+ /**
120
+ * Load remote components
121
+ *
122
+ * @remarks
123
+ *
124
+ * With regards to module federation
125
+ *
126
+ * @internal
127
+ */
128
+ loadRemotes() {
129
+ return __awaiter(this, void 0, void 0, function* () {
130
+ const remoteComponents = yield Components.loadRemotes();
131
+ this.ready = true;
132
+ });
133
+ }
120
134
  selectTemplate() {
121
135
  return this.ready ? MainTemplate : LoadingTemplate;
122
136
  }
@@ -247,7 +261,7 @@ export class Navigation extends EventEmitter(FASTElement) {
247
261
  ? this.i18next.t(text, { lng: this.i18next.language })
248
262
  : text;
249
263
  }
250
- }
264
+ };
251
265
  __decorate([
252
266
  Auth
253
267
  ], Navigation.prototype, "auth", void 0);
@@ -257,9 +271,6 @@ __decorate([
257
271
  __decorate([
258
272
  I18next
259
273
  ], Navigation.prototype, "i18next", void 0);
260
- __decorate([
261
- HeaderConfig
262
- ], Navigation.prototype, "headerConfig", void 0);
263
274
  __decorate([
264
275
  observable
265
276
  ], Navigation.prototype, "ready", void 0);
@@ -299,57 +310,11 @@ __decorate([
299
310
  __decorate([
300
311
  observable
301
312
  ], Navigation.prototype, "routeNavItems", void 0);
302
- /**
303
- * FoundationHeader is a zero version of the header micro-frontend.
304
- *
305
- * @remarks
306
- * A header version that pre-registers zero components and uses the zero design system. ZeroHeader and its components won't bloat the core bundle as
307
- * these are only loaded on-demand when in use.
308
- *
309
- * @example
310
- * ```ts
311
- * import { FoundationHeader } from '@genesislcap/foundation-header';
312
- * ...
313
- * FoundationHeader
314
- * ```
315
- *
316
- * @example Load the micro frontend on-demand
317
- * ```ts
318
-
319
- * const { FoundationHeader } = await import('@genesislcap/foundation-header');
320
- * return FoundationHeader;
321
- * },
322
- * ```
323
- *
324
- * @public
325
- */
326
- let FoundationHeader = class FoundationHeader extends Navigation {
327
- /**
328
- * @internal
329
- */
330
- connectedCallback() {
331
- const _super = Object.create(null, {
332
- connectedCallback: { get: () => super.connectedCallback }
333
- });
334
- return __awaiter(this, void 0, void 0, function* () {
335
- _super.connectedCallback.call(this);
336
- yield this.loadRemotes();
337
- });
338
- }
339
- /**
340
- * @internal
341
- */
342
- loadRemotes() {
343
- return __awaiter(this, void 0, void 0, function* () {
344
- yield registerCommonZeroComponents();
345
- });
346
- }
347
- };
348
- FoundationHeader = __decorate([
313
+ Navigation = __decorate([
349
314
  customElement({
350
315
  name: 'foundation-header',
351
316
  template,
352
317
  styles,
353
318
  })
354
- ], FoundationHeader);
355
- export { FoundationHeader };
319
+ ], Navigation);
320
+ export { Navigation };