@softheon/armature 17.23.0 → 17.23.1

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.
@@ -10,6 +10,8 @@ import * as i0 from "@angular/core";
10
10
  * and must be included in the `imports` array of your module.
11
11
  */
12
12
  export declare class SofCalloutComponent {
13
+ /** The callout id */
14
+ id: string;
13
15
  /** The callout type */
14
16
  type: 'info' | 'warning' | 'error' | 'success' | 'neutral';
15
17
  /**
@@ -52,5 +54,5 @@ export declare class SofCalloutComponent {
52
54
  /** Close the callout */
53
55
  dismissCallout(): void;
54
56
  static ɵfac: i0.ɵɵFactoryDeclaration<SofCalloutComponent, never>;
55
- static ɵcmp: i0.ɵɵComponentDeclaration<SofCalloutComponent, "sof-callout", never, { "type": { "alias": "type"; "required": true; }; "text": { "alias": "text"; "required": true; }; "extendedText": { "alias": "extendedText"; "required": false; }; "textSize": { "alias": "textSize"; "required": false; }; "canDismiss": { "alias": "canDismiss"; "required": false; }; }, { "dismissEvent": "dismissEvent"; }, never, ["[callout-custom-content]"], true, never>;
57
+ static ɵcmp: i0.ɵɵComponentDeclaration<SofCalloutComponent, "sof-callout", never, { "id": { "alias": "id"; "required": false; }; "type": { "alias": "type"; "required": true; }; "text": { "alias": "text"; "required": true; }; "extendedText": { "alias": "extendedText"; "required": false; }; "textSize": { "alias": "textSize"; "required": false; }; "canDismiss": { "alias": "canDismiss"; "required": false; }; }, { "dismissEvent": "dismissEvent"; }, never, ["[callout-custom-content]"], true, never>;
56
58
  }
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Navigation panel logo
3
+ */
4
+ export interface NavPanelLogo {
5
+ /** The url address */
6
+ url: string;
7
+ /**
8
+ * The alt text for screen reader
9
+ * @note Should be the brand name + 'logo'
10
+ */
11
+ altText: string;
12
+ }
@@ -8,19 +8,4 @@ export interface NavPanelSettings {
8
8
  * @default true
9
9
  */
10
10
  allowNavToggle?: boolean;
11
- /**
12
- * To show the login/logout button
13
- * @default false
14
- */
15
- showAuthButton?: boolean;
16
- /**
17
- * To show the language settings button
18
- * @default false
19
- */
20
- showLanguageButton?: boolean;
21
- /**
22
- * To show the whats new button
23
- * @default false
24
- */
25
- showWhatsNewButton?: boolean;
26
11
  }
@@ -1,8 +1,9 @@
1
- import { AfterViewInit, ElementRef, EventEmitter, OnInit, Signal, WritableSignal } from '@angular/core';
1
+ import { EventEmitter, OnInit, Signal } from '@angular/core';
2
2
  import { BreakpointState } from '@angular/cdk/layout';
3
3
  import { MatSidenavContent } from '@angular/material/sidenav';
4
4
  import { NavPanelNode } from './models/nav-panel-nodes';
5
5
  import { NavPanelSettings } from './models/nav-panel-settings';
6
+ import { NavPanelLogo } from './models/nav-panel-logo';
6
7
  import * as i0 from "@angular/core";
7
8
  /**
8
9
  * The Navigation Panel Component
@@ -10,15 +11,9 @@ import * as i0 from "@angular/core";
10
11
  * @note Designed to be used with the 'SofHeaderPortalComponent' component as its child.
11
12
  * @see [Figma/portal-ui-shell]({@link https://www.figma.com/design/W5HVNCcN9HafDRvc5N7Z28/%5BWIP%5D-Softheon-Unified-Design-System-v1.0?node-id=14089-118395&t=G5IKDvYHpwU0vOFq-0})
12
13
  *
13
- * @todo `language settings` - awaiting design ( its own component, modal )
14
- * @see [Figma/language-switcher]({@link https://www.figma.com/design/W5HVNCcN9HafDRvc5N7Z28/%5BWIP%5D-Softheon-Unified-Design-System-v1.0?node-id=14089-118249&t=qMyPFk9iMfbU6iRS-0})
15
- * @todo `mobile styling` - awaiting design
16
- * @todo `whats new` - awaiting design ( its own component, modal )
17
- * @note _this component should need 2 data points when the 'what's new' flow is implemented_ -
18
- * - does the user have unread release notes? - if so style the button appropriately
19
- * - what is the current version? - to display on badge
14
+ * @todo `mobile styling` - awaiting design, minor adjustments have been made - 1/2/25 ...
20
15
  */
21
- export declare class SofNavPanelComponent implements OnInit, AfterViewInit {
16
+ export declare class SofNavPanelComponent implements OnInit {
22
17
  /**
23
18
  * Component Input (required) - Navigation node data
24
19
  * @see {@link NavPanelNode}
@@ -31,35 +26,18 @@ export declare class SofNavPanelComponent implements OnInit, AfterViewInit {
31
26
  * @see {@link initSettings()}
32
27
  */
33
28
  settings?: NavPanelSettings;
34
- /**
35
- * Whats new data
36
- * @note this is a w.i.p. awaiting design for `whats new` modal
37
- */
38
- whatsNewData?: any;
39
- /**
40
- * Logout button text
41
- * @note can be translation key
42
- */
43
- logoutText: string;
44
29
  /**
45
30
  * Should scroll to top on `NavigationEnd` event?
46
31
  * @default true
47
32
  */
48
33
  private scrollToTopOnNavigationEndEvent;
49
- /**
50
- * Emit this event to show the whats new modal
51
- * @note this is a w.i.p. awaiting design for `whats new` modal
52
- */
53
- showWhatsNewEvent: EventEmitter<void>;
34
+ /** The brand logo config */
35
+ brandLogo?: NavPanelLogo;
54
36
  /**
55
37
  * Is the nav panel open
56
38
  * @note this is needed to pass panel opened state to the SofHeaderPortalComponent
57
39
  */
58
40
  isNavPanelOpenedEvent: EventEmitter<boolean>;
59
- /** Logout event, the application consuming this component is responsible for the actual logout */
60
- logoutEvent: EventEmitter<void>;
61
- /** Nav panels footer element reference */
62
- navPanelFooter: ElementRef<HTMLElement>;
63
41
  /**
64
42
  * Main content for scroll position
65
43
  * @note this is the element which has the apps 'main' scrollbar.
@@ -69,27 +47,10 @@ export declare class SofNavPanelComponent implements OnInit, AfterViewInit {
69
47
  private breakpointObserver;
70
48
  /** Has the small screen breakpoint been hit */
71
49
  isSmallScreen: Signal<BreakpointState>;
72
- /** Inject the translate service */
73
- private translateService;
74
- /** Current language to display */
75
- currentLangLabel: string;
76
- /**
77
- * How much padding-bottom.px to add, depending on footer content/height
78
- * @default 40
79
- */
80
- footerSpacePadding: WritableSignal<number>;
81
50
  /** Angular's router */
82
51
  private router;
83
52
  /** On Init - Initialize the settings */
84
53
  ngOnInit(): void;
85
- /** After View Init - Set the footer space, scroll to top if needed */
86
- ngAfterViewInit(): void;
87
- /**
88
- * Scrolls to the top of page
89
- * @note using `window.scrollTo` will not work if using this component as the main scrollbar does not live on the window level.
90
- * Configuring `scrollPositionRestoration` in the router module will not work either.
91
- */
92
- scrollToTop(): void;
93
54
  /**
94
55
  * Initializes the nav panel settings, defaults will be set if `null` or `undefined`
95
56
  * @note The 'nullish coalescing assignment operator' `??=` assigns defaults for `boolean` and `number` types,
@@ -100,22 +61,11 @@ export declare class SofNavPanelComponent implements OnInit, AfterViewInit {
100
61
  */
101
62
  private initSettings;
102
63
  /**
103
- * Calculate the padding based on the footer height depending on how many buttons are present
104
- * @note If no buttons, the footer is removed and the default padding is returned
105
- * @returns `padding: number` the number of pixels to add to the `<nav>` elements `[style.paddingBottom.px]`
106
- * @default 40
107
- */
108
- private calcFooterSpacePadding;
109
- /** Emits the logout event */
110
- logout(): void;
111
- /**
112
- * Applies the language to the translate service
113
- * Sets local storage for preferred language
114
- * @todo right now portals are only using 'en' & 'es', will need to update if more langs are added.
64
+ * Scrolls to the top of page
65
+ * @note using `window.scrollTo` will not work if using this component as the main scrollbar does not live on the window level.
66
+ * Configuring `scrollPositionRestoration` in the router module will not work either.
115
67
  */
116
- toggleLanguage(): void;
117
- /** Emits event to show the whats new modal */
118
- showWhatsNew(): void;
68
+ scrollToTop(): void;
119
69
  static ɵfac: i0.ɵɵFactoryDeclaration<SofNavPanelComponent, never>;
120
- static ɵcmp: i0.ɵɵComponentDeclaration<SofNavPanelComponent, "sof-nav-panel", never, { "nodes": { "alias": "nodes"; "required": true; }; "settings": { "alias": "settings"; "required": false; }; "whatsNewData": { "alias": "whatsNewData"; "required": false; }; "logoutText": { "alias": "logoutText"; "required": false; }; "scrollToTopOnNavigationEndEvent": { "alias": "scrollToTopOnNavigationEndEvent"; "required": false; }; }, { "showWhatsNewEvent": "showWhatsNewEvent"; "isNavPanelOpenedEvent": "isNavPanelOpenedEvent"; "logoutEvent": "logoutEvent"; }, never, ["[sof-nav-panel-main-content]"], true, never>;
70
+ static ɵcmp: i0.ɵɵComponentDeclaration<SofNavPanelComponent, "sof-nav-panel", never, { "nodes": { "alias": "nodes"; "required": true; }; "settings": { "alias": "settings"; "required": false; }; "scrollToTopOnNavigationEndEvent": { "alias": "scrollToTopOnNavigationEndEvent"; "required": false; }; "brandLogo": { "alias": "brandLogo"; "required": false; }; }, { "isNavPanelOpenedEvent": "isNavPanelOpenedEvent"; }, never, ["[sof-nav-panel-main-content]"], true, never>;
121
71
  }
@@ -6,6 +6,7 @@ export * from './models/nav-theme.settings';
6
6
  export * from './models/breadcrumb';
7
7
  export * from './components/sof-navigation-panel/models/nav-panel-nodes';
8
8
  export * from './components/sof-navigation-panel/models/nav-panel-settings';
9
+ export * from './components/sof-navigation-panel/models/nav-panel-logo';
9
10
  export * from './components/navigation/navigation.component';
10
11
  export * from './components/sof-breadcrumbs/sof-breadcrumbs-hierarchy/sof-breadcrumbs-hierarchy.component';
11
12
  export * from './components/sof-breadcrumbs/sof-breadcrumbs-history/sof-breadcrumbs-history.component';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softheon/armature",
3
- "version": "17.23.0",
3
+ "version": "17.23.1",
4
4
  "dependencies": {
5
5
  "tslib": "^2.5.0"
6
6
  },