@softpak/components 19.9.0 → 19.9.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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Component, Input, ViewChild, EventEmitter, ViewChildren, ContentChild, Output } from '@angular/core';
2
+ import { Component, Input, ViewChild, input, EventEmitter, ViewChildren, ContentChild, Output } from '@angular/core';
3
3
  import * as i2 from '@ngx-translate/core';
4
4
  import { TranslateModule } from '@ngx-translate/core';
5
5
  import * as i3 from '@fortawesome/angular-fontawesome';
@@ -156,6 +156,7 @@ var spxNavigation_reducer = /*#__PURE__*/Object.freeze({
156
156
  class SpxNavigationComponent {
157
157
  constructor(appStore) {
158
158
  this.appStore = appStore;
159
+ this.spxOverwriteNavItems = input();
159
160
  this.spxClick = new EventEmitter();
160
161
  this.navItems = this.appStore.select(spxNavigationReducer$1.selectMenuItems);
161
162
  }
@@ -166,7 +167,7 @@ class SpxNavigationComponent {
166
167
  this.spxClick.emit(link);
167
168
  }
168
169
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: SpxNavigationComponent, deps: [{ token: i1.Store }], target: i0.ɵɵFactoryTarget.Component }); }
169
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.5", type: SpxNavigationComponent, isStandalone: true, selector: "spx-navigation", outputs: { spxClick: "spxClick" }, queries: [{ propertyName: "iconTemplateRef", first: true, predicate: ["icon"], descendants: true }], viewQueries: [{ propertyName: "tiles", predicate: ["tiles"], descendants: true }], ngImport: i0, template: "<spx-home-tiles [spxCols]=\"1\">\n @for (item of navItems | async; track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n</spx-home-tiles>\n", dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }, { kind: "component", type: SpxHomeTilesComponent, selector: "spx-home-tiles", inputs: ["spxCols"] }, { kind: "component", type: SpxHomeTileComponent, selector: "spx-home-tile", inputs: ["spxAutofocus", "spxClass", "spxSubtitle", "spxTitle"] }] }); }
170
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.5", type: SpxNavigationComponent, isStandalone: true, selector: "spx-navigation", inputs: { spxOverwriteNavItems: { classPropertyName: "spxOverwriteNavItems", publicName: "spxOverwriteNavItems", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { spxClick: "spxClick" }, queries: [{ propertyName: "iconTemplateRef", first: true, predicate: ["icon"], descendants: true }], viewQueries: [{ propertyName: "tiles", predicate: ["tiles"], descendants: true }], ngImport: i0, template: "<spx-home-tiles [spxCols]=\"1\">\n @if (spxOverwriteNavItems() && spxOverwriteNavItems()?.length) {\n @for (item of spxOverwriteNavItems(); track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n }\n @else {\n @for (item of navItems | async; track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n }\n</spx-home-tiles>\n", dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "ngmodule", type: TranslateModule }, { kind: "pipe", type: i2.TranslatePipe, name: "translate" }, { kind: "ngmodule", type: FontAwesomeModule }, { kind: "component", type: i3.FaIconComponent, selector: "fa-icon", inputs: ["icon", "title", "animation", "mask", "flip", "size", "pull", "border", "inverse", "symbol", "rotate", "fixedWidth", "transform", "a11yRole"] }, { kind: "pipe", type: SpxCapitalizePipe, name: "capitalize" }, { kind: "component", type: SpxHomeTilesComponent, selector: "spx-home-tiles", inputs: ["spxCols"] }, { kind: "component", type: SpxHomeTileComponent, selector: "spx-home-tile", inputs: ["spxAutofocus", "spxClass", "spxSubtitle", "spxTitle"] }] }); }
170
171
  }
171
172
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImport: i0, type: SpxNavigationComponent, decorators: [{
172
173
  type: Component,
@@ -177,7 +178,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.5", ngImpor
177
178
  SpxCapitalizePipe,
178
179
  SpxHomeTilesComponent,
179
180
  SpxHomeTileComponent
180
- ], template: "<spx-home-tiles [spxCols]=\"1\">\n @for (item of navItems | async; track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n</spx-home-tiles>\n" }]
181
+ ], template: "<spx-home-tiles [spxCols]=\"1\">\n @if (spxOverwriteNavItems() && spxOverwriteNavItems()?.length) {\n @for (item of spxOverwriteNavItems(); track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n }\n @else {\n @for (item of navItems | async; track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n }\n</spx-home-tiles>\n" }]
181
182
  }], ctorParameters: () => [{ type: i1.Store }], propDecorators: { tiles: [{
182
183
  type: ViewChildren,
183
184
  args: ['tiles']
@@ -1 +1 @@
1
- {"version":3,"file":"softpak-components-spx-navigation.mjs","sources":["../../../../projects/softpak/components/spx-navigation/spx-home-tiles.component.ts","../../../../projects/softpak/components/spx-navigation/spx-home-tile.component.ts","../../../../projects/softpak/components/spx-navigation/store/spx-navigation/spx-navigation.actions.ts","../../../../projects/softpak/components/spx-navigation/store/spx-navigation/spx-navigation.initial.ts","../../../../projects/softpak/components/spx-navigation/store/spx-navigation/spx-navigation.reducer.ts","../../../../projects/softpak/components/spx-navigation/spx-navigation.component.ts","../../../../projects/softpak/components/spx-navigation/spx-navigation.component.html","../../../../projects/softpak/components/spx-navigation/softpak-components-spx-navigation.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'spx-home-tiles',\n standalone: true,\n template: `<div class=\"mx-auto max-w-lg grid gap-3\"\n [class.grid-cols-1]=\"this.spxCols === 1\"\n [class.grid-cols-2]=\"this.spxCols === 2\"><ng-content></ng-content></div>`,\n})\nexport class SpxHomeTilesComponent {\n @Input() spxCols: 1 | 2 = 2;\n}\n","import { NgClass } from '@angular/common';\nimport { Component, ElementRef, Input, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'spx-home-tile',\n imports: [\n NgClass\n ],\n template: `<button #button\n class=\"border border-transparent flex flex-col w-full px-4 py-2 relative rounded text-center focus:outline-none focus:ring-2 focus:ring-offset-2\"\n type=\"button\"\n part=\"button\"\n [attr.autofocus]=\"this.spxAutofocus ? this.spxAutofocus : undefined\"\n [class.bg-blue-600]=\"!this.spxClass\"\n [class.focus:ring-blue-500]=\"!this.spxClass\"\n [class.hover:bg-blue-800]=\"!this.spxClass\"\n [class.text-white]=\"!this.spxClass\"\n [ngClass]=\"this.spxClass ? this.spxClass : undefined\">\n <div class=\"flex gap-5 items-center\">\n <div class=\"fal my-2 self-center text-xl w-5\"><ng-content></ng-content></div>\n <div class=\"grow flex flex-col text-left\">\n <div class=\"text-lg font-bold text-ellipsis overflow-hidden\">{{ this.spxTitle }}</div>\n @if (this.spxSubtitle) {\n <div class=\"text-sm opacity-70 text-ellipsis overflow-hidden\">{{ this.spxSubtitle }}</div>\n }\n </div>\n </div>\n </button>`\n})\nexport class SpxHomeTileComponent {\n @Input() spxAutofocus?: boolean;\n @Input() spxClass?: string;\n @Input() spxSubtitle?: string;\n @Input() spxTitle?: string;\n @ViewChild('button') private buttonRef?: ElementRef<HTMLButtonElement>;\n\n setFocus(): void {\n this.buttonRef?.nativeElement.focus();\n }\n}\n","import { createAction, props, union } from '@ngrx/store';\nimport { SpxNavigationItemI } from '../../spx-navigation-item.interface';\n\nexport const addPages = createAction('[SPX / Navigation] Add items', props<{\n navigationItems: SpxNavigationItemI[];\n}>());\nexport const initialize = createAction('[SPX / Navigation] Initialize', props<{\n navigationItems: SpxNavigationItemI[];\n}>());\nexport const update = createAction('[SPX / Navigation] Update', props<{\n accessList: string[];\n signedIn: boolean;\n}>());\n\nconst all = union({\n addPages,\n initialize,\n update\n});\n\nexport type Actions = typeof all;\n","import { StateI } from \"./spx-navigation.state\";\n\nexport const initialState: StateI = {\n accessList: [],\n navigationItems: [],\n menuItems: [],\n signedIn: false,\n tabs: [],\n};\n","\nimport * as actions from './spx-navigation.actions';\nimport { createFeature, createReducer, on } from '@ngrx/store';\nimport { StateI } from './spx-navigation.state';\nimport { initialState } from './spx-navigation.initial';\n\nexport default createFeature({\n name: 'spxNavigation',\n reducer: createReducer(\n initialState,\n on(actions.initialize, (state: StateI, { navigationItems }): StateI => ({\n ...state,\n navigationItems: navigationItems,\n menuItems: navigationItems.slice().filter(navigationItem => !navigationItem.signInRequired && (navigationItem.hasTile === undefined || navigationItem.hasTile)),\n tabs: navigationItems.slice().filter(navigationItem => !navigationItem.signInRequired && navigationItem.hasTab),\n })),\n on(actions.update, (state: StateI, { accessList, signedIn }): StateI => ({\n ...state,\n accessList,\n menuItems: state.navigationItems.slice().filter(navigationItem => (!navigationItem.signInRequired || signedIn) && navigationItem?.hasTile !== false).filter(item => item.accessKey === undefined || accessList.includes(item.accessKey)),\n signedIn,\n tabs: state.navigationItems.slice().filter(navigationItem => (!navigationItem.signInRequired || signedIn) && navigationItem.hasTab).filter(item => item.accessKey === undefined || accessList.includes(item.accessKey)),\n })),\n on(actions.addPages, (state: StateI, { navigationItems }): StateI => ({\n ...state,\n navigationItems: [...state.navigationItems.slice(), ...navigationItems],\n menuItems: [...state.menuItems.slice(), ...navigationItems.slice().filter(navigationItem => (!navigationItem.signInRequired || state.signedIn) && navigationItem?.hasTile !== false).filter(item => item.accessKey === undefined || state.accessList.includes(item.accessKey))],\n tabs: [...state.tabs.slice(), ...navigationItems.slice().filter(navigationItem => (!navigationItem.signInRequired || state.signedIn) && navigationItem.hasTab).filter(item => item.accessKey === undefined || state.accessList.includes(item.accessKey))],\n })),\n ),\n});\n","import { Component, ContentChild, EventEmitter, Output, QueryList, TemplateRef, ViewChildren } from '@angular/core';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { SpxCapitalizePipe } from '@softpak/components/spx-capitalize';\nimport { SpxHomeTilesComponent } from './spx-home-tiles.component';\nimport { SpxHomeTileComponent } from './spx-home-tile.component';\nimport { Store } from '@ngrx/store';\nimport spxNavigationReducer from './store/spx-navigation/spx-navigation.reducer';\nimport { AsyncPipe } from '@angular/common';\n\n@Component({\n selector: 'spx-navigation',\n templateUrl: './spx-navigation.component.html',\n imports: [\n AsyncPipe,\n TranslateModule,\n FontAwesomeModule,\n SpxCapitalizePipe,\n SpxHomeTilesComponent,\n SpxHomeTileComponent\n ]\n})\nexport class SpxNavigationComponent {\n @ViewChildren('tiles') tiles?: QueryList<SpxHomeTileComponent>;\n @ContentChild('icon', { static: false }) iconTemplateRef?: TemplateRef<any>;\n @Output() spxClick: EventEmitter<string> = new EventEmitter<string>();\n navItems = this.appStore.select(spxNavigationReducer.selectMenuItems);\n constructor(\n private readonly appStore: Store,\n ) { }\n\n setFocus(): void {\n this.tiles?.first?.setFocus();\n }\n\n onNavigate(link: string) {\n this.spxClick.emit(link);\n }\n}\n","<spx-home-tiles [spxCols]=\"1\">\n @for (item of navItems | async; track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n</spx-home-tiles>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["actions.initialize","actions.update","actions.addPages","spxNavigationReducer"],"mappings":"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"}
1
+ {"version":3,"file":"softpak-components-spx-navigation.mjs","sources":["../../../../projects/softpak/components/spx-navigation/spx-home-tiles.component.ts","../../../../projects/softpak/components/spx-navigation/spx-home-tile.component.ts","../../../../projects/softpak/components/spx-navigation/store/spx-navigation/spx-navigation.actions.ts","../../../../projects/softpak/components/spx-navigation/store/spx-navigation/spx-navigation.initial.ts","../../../../projects/softpak/components/spx-navigation/store/spx-navigation/spx-navigation.reducer.ts","../../../../projects/softpak/components/spx-navigation/spx-navigation.component.ts","../../../../projects/softpak/components/spx-navigation/spx-navigation.component.html","../../../../projects/softpak/components/spx-navigation/softpak-components-spx-navigation.ts"],"sourcesContent":["import { Component, Input } from '@angular/core';\n\n@Component({\n selector: 'spx-home-tiles',\n standalone: true,\n template: `<div class=\"mx-auto max-w-lg grid gap-3\"\n [class.grid-cols-1]=\"this.spxCols === 1\"\n [class.grid-cols-2]=\"this.spxCols === 2\"><ng-content></ng-content></div>`,\n})\nexport class SpxHomeTilesComponent {\n @Input() spxCols: 1 | 2 = 2;\n}\n","import { NgClass } from '@angular/common';\nimport { Component, ElementRef, Input, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'spx-home-tile',\n imports: [\n NgClass\n ],\n template: `<button #button\n class=\"border border-transparent flex flex-col w-full px-4 py-2 relative rounded text-center focus:outline-none focus:ring-2 focus:ring-offset-2\"\n type=\"button\"\n part=\"button\"\n [attr.autofocus]=\"this.spxAutofocus ? this.spxAutofocus : undefined\"\n [class.bg-blue-600]=\"!this.spxClass\"\n [class.focus:ring-blue-500]=\"!this.spxClass\"\n [class.hover:bg-blue-800]=\"!this.spxClass\"\n [class.text-white]=\"!this.spxClass\"\n [ngClass]=\"this.spxClass ? this.spxClass : undefined\">\n <div class=\"flex gap-5 items-center\">\n <div class=\"fal my-2 self-center text-xl w-5\"><ng-content></ng-content></div>\n <div class=\"grow flex flex-col text-left\">\n <div class=\"text-lg font-bold text-ellipsis overflow-hidden\">{{ this.spxTitle }}</div>\n @if (this.spxSubtitle) {\n <div class=\"text-sm opacity-70 text-ellipsis overflow-hidden\">{{ this.spxSubtitle }}</div>\n }\n </div>\n </div>\n </button>`\n})\nexport class SpxHomeTileComponent {\n @Input() spxAutofocus?: boolean;\n @Input() spxClass?: string;\n @Input() spxSubtitle?: string;\n @Input() spxTitle?: string;\n @ViewChild('button') private buttonRef?: ElementRef<HTMLButtonElement>;\n\n setFocus(): void {\n this.buttonRef?.nativeElement.focus();\n }\n}\n","import { createAction, props, union } from '@ngrx/store';\nimport { SpxNavigationItemI } from '../../spx-navigation-item.interface';\n\nexport const addPages = createAction('[SPX / Navigation] Add items', props<{\n navigationItems: SpxNavigationItemI[];\n}>());\nexport const initialize = createAction('[SPX / Navigation] Initialize', props<{\n navigationItems: SpxNavigationItemI[];\n}>());\nexport const update = createAction('[SPX / Navigation] Update', props<{\n accessList: string[];\n signedIn: boolean;\n}>());\n\nconst all = union({\n addPages,\n initialize,\n update\n});\n\nexport type Actions = typeof all;\n","import { StateI } from \"./spx-navigation.state\";\n\nexport const initialState: StateI = {\n accessList: [],\n navigationItems: [],\n menuItems: [],\n signedIn: false,\n tabs: [],\n};\n","\nimport * as actions from './spx-navigation.actions';\nimport { createFeature, createReducer, on } from '@ngrx/store';\nimport { StateI } from './spx-navigation.state';\nimport { initialState } from './spx-navigation.initial';\n\nexport default createFeature({\n name: 'spxNavigation',\n reducer: createReducer(\n initialState,\n on(actions.initialize, (state: StateI, { navigationItems }): StateI => ({\n ...state,\n navigationItems: navigationItems,\n menuItems: navigationItems.slice().filter(navigationItem => !navigationItem.signInRequired && (navigationItem.hasTile === undefined || navigationItem.hasTile)),\n tabs: navigationItems.slice().filter(navigationItem => !navigationItem.signInRequired && navigationItem.hasTab),\n })),\n on(actions.update, (state: StateI, { accessList, signedIn }): StateI => ({\n ...state,\n accessList,\n menuItems: state.navigationItems.slice().filter(navigationItem => (!navigationItem.signInRequired || signedIn) && navigationItem?.hasTile !== false).filter(item => item.accessKey === undefined || accessList.includes(item.accessKey)),\n signedIn,\n tabs: state.navigationItems.slice().filter(navigationItem => (!navigationItem.signInRequired || signedIn) && navigationItem.hasTab).filter(item => item.accessKey === undefined || accessList.includes(item.accessKey)),\n })),\n on(actions.addPages, (state: StateI, { navigationItems }): StateI => ({\n ...state,\n navigationItems: [...state.navigationItems.slice(), ...navigationItems],\n menuItems: [...state.menuItems.slice(), ...navigationItems.slice().filter(navigationItem => (!navigationItem.signInRequired || state.signedIn) && navigationItem?.hasTile !== false).filter(item => item.accessKey === undefined || state.accessList.includes(item.accessKey))],\n tabs: [...state.tabs.slice(), ...navigationItems.slice().filter(navigationItem => (!navigationItem.signInRequired || state.signedIn) && navigationItem.hasTab).filter(item => item.accessKey === undefined || state.accessList.includes(item.accessKey))],\n })),\n ),\n});\n","import { Component, ContentChild, EventEmitter, input, Output, QueryList, TemplateRef, ViewChildren } from '@angular/core';\nimport { TranslateModule } from '@ngx-translate/core';\nimport { FontAwesomeModule } from '@fortawesome/angular-fontawesome';\nimport { SpxCapitalizePipe } from '@softpak/components/spx-capitalize';\nimport { SpxHomeTilesComponent } from './spx-home-tiles.component';\nimport { SpxHomeTileComponent } from './spx-home-tile.component';\nimport { Store } from '@ngrx/store';\nimport spxNavigationReducer from './store/spx-navigation/spx-navigation.reducer';\nimport { AsyncPipe } from '@angular/common';\nimport { SpxNavigationItemI } from './spx-navigation-item.interface';\n\n@Component({\n selector: 'spx-navigation',\n templateUrl: './spx-navigation.component.html',\n imports: [\n AsyncPipe,\n TranslateModule,\n FontAwesomeModule,\n SpxCapitalizePipe,\n SpxHomeTilesComponent,\n SpxHomeTileComponent\n ]\n})\nexport class SpxNavigationComponent {\n readonly spxOverwriteNavItems = input<SpxNavigationItemI[]>();\n @ViewChildren('tiles') tiles?: QueryList<SpxHomeTileComponent>;\n @ContentChild('icon', { static: false }) iconTemplateRef?: TemplateRef<any>;\n @Output() spxClick: EventEmitter<string> = new EventEmitter<string>();\n navItems = this.appStore.select(spxNavigationReducer.selectMenuItems);\n constructor(\n private readonly appStore: Store,\n ) { }\n\n setFocus(): void {\n this.tiles?.first?.setFocus();\n }\n\n onNavigate(link: string) {\n this.spxClick.emit(link);\n }\n}\n","<spx-home-tiles [spxCols]=\"1\">\n @if (spxOverwriteNavItems() && spxOverwriteNavItems()?.length) {\n @for (item of spxOverwriteNavItems(); track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n }\n @else {\n @for (item of navItems | async; track item; let i = $index) {\n <spx-home-tile #tiles (click)=\"item.onClick ? item.onClick() : (item.routerLink ? onNavigate(item.routerLink) : null)\"\n [spxAutofocus]=\"i === 0\"\n [spxClass]=\"item.tileClasses ? item.tileClasses : undefined\"\n [spxTitle]=\"item.title | translate | capitalize\"\n [spxSubtitle]=\"item.subtite ? (item.subtite | translate | capitalize) : undefined\">\n <fa-icon [icon]=\"item.icon\"></fa-icon>\n </spx-home-tile>\n }\n }\n</spx-home-tiles>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["actions.initialize","actions.update","actions.addPages","spxNavigationReducer"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@softpak/components",
3
- "version": "19.9.0",
3
+ "version": "19.9.2",
4
4
  "private": false,
5
5
  "peerDependencies": {
6
6
  "@angular/common": "19.x.x",
@@ -34,6 +34,10 @@
34
34
  "types": "./spx-alert/index.d.ts",
35
35
  "default": "./fesm2022/softpak-components-spx-alert.mjs"
36
36
  },
37
+ "./spx-button": {
38
+ "types": "./spx-button/index.d.ts",
39
+ "default": "./fesm2022/softpak-components-spx-button.mjs"
40
+ },
37
41
  "./spx-app-configuration": {
38
42
  "types": "./spx-app-configuration/index.d.ts",
39
43
  "default": "./fesm2022/softpak-components-spx-app-configuration.mjs"
@@ -46,9 +50,9 @@
46
50
  "types": "./spx-capitalize/index.d.ts",
47
51
  "default": "./fesm2022/softpak-components-spx-capitalize.mjs"
48
52
  },
49
- "./spx-button": {
50
- "types": "./spx-button/index.d.ts",
51
- "default": "./fesm2022/softpak-components-spx-button.mjs"
53
+ "./spx-change-details": {
54
+ "types": "./spx-change-details/index.d.ts",
55
+ "default": "./fesm2022/softpak-components-spx-change-details.mjs"
52
56
  },
53
57
  "./spx-card": {
54
58
  "types": "./spx-card/index.d.ts",
@@ -62,10 +66,6 @@
62
66
  "types": "./spx-channel-selection/index.d.ts",
63
67
  "default": "./fesm2022/softpak-components-spx-channel-selection.mjs"
64
68
  },
65
- "./spx-change-details": {
66
- "types": "./spx-change-details/index.d.ts",
67
- "default": "./fesm2022/softpak-components-spx-change-details.mjs"
68
- },
69
69
  "./spx-form-section": {
70
70
  "types": "./spx-form-section/index.d.ts",
71
71
  "default": "./fesm2022/softpak-components-spx-form-section.mjs"
@@ -130,13 +130,13 @@
130
130
  "types": "./spx-translate/index.d.ts",
131
131
  "default": "./fesm2022/softpak-components-spx-translate.mjs"
132
132
  },
133
- "./spx-validation": {
134
- "types": "./spx-validation/index.d.ts",
135
- "default": "./fesm2022/softpak-components-spx-validation.mjs"
136
- },
137
133
  "./spx-update": {
138
134
  "types": "./spx-update/index.d.ts",
139
135
  "default": "./fesm2022/softpak-components-spx-update.mjs"
136
+ },
137
+ "./spx-validation": {
138
+ "types": "./spx-validation/index.d.ts",
139
+ "default": "./fesm2022/softpak-components-spx-validation.mjs"
140
140
  }
141
141
  }
142
142
  }
@@ -1,16 +1,18 @@
1
1
  import { EventEmitter, QueryList, TemplateRef } from '@angular/core';
2
2
  import { SpxHomeTileComponent } from './spx-home-tile.component';
3
3
  import { Store } from '@ngrx/store';
4
+ import { SpxNavigationItemI } from './spx-navigation-item.interface';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class SpxNavigationComponent {
6
7
  private readonly appStore;
8
+ readonly spxOverwriteNavItems: import("@angular/core").InputSignal<SpxNavigationItemI[] | undefined>;
7
9
  tiles?: QueryList<SpxHomeTileComponent>;
8
10
  iconTemplateRef?: TemplateRef<any>;
9
11
  spxClick: EventEmitter<string>;
10
- navItems: import("rxjs").Observable<import("@softpak/components/spx-navigation").SpxNavigationItemI[]>;
12
+ navItems: import("rxjs").Observable<SpxNavigationItemI[]>;
11
13
  constructor(appStore: Store);
12
14
  setFocus(): void;
13
15
  onNavigate(link: string): void;
14
16
  static ɵfac: i0.ɵɵFactoryDeclaration<SpxNavigationComponent, never>;
15
- static ɵcmp: i0.ɵɵComponentDeclaration<SpxNavigationComponent, "spx-navigation", never, {}, { "spxClick": "spxClick"; }, ["iconTemplateRef"], never, true, never>;
17
+ static ɵcmp: i0.ɵɵComponentDeclaration<SpxNavigationComponent, "spx-navigation", never, { "spxOverwriteNavItems": { "alias": "spxOverwriteNavItems"; "required": false; "isSignal": true; }; }, { "spxClick": "spxClick"; }, ["iconTemplateRef"], never, true, never>;
16
18
  }
@@ -18,11 +18,11 @@ export declare const update: import("@ngrx/store").ActionCreator<"[SPX / Navigat
18
18
  } & import("@ngrx/store").Action<"[SPX / Navigation] Update">>;
19
19
  declare const all: ({
20
20
  navigationItems: SpxNavigationItemI[];
21
- } & import("@ngrx/store").Action<"[SPX / Navigation] Add items">) | ({
22
- navigationItems: SpxNavigationItemI[];
23
21
  } & import("@ngrx/store").Action<"[SPX / Navigation] Initialize">) | ({
24
22
  accessList: string[];
25
23
  signedIn: boolean;
26
- } & import("@ngrx/store").Action<"[SPX / Navigation] Update">);
24
+ } & import("@ngrx/store").Action<"[SPX / Navigation] Update">) | ({
25
+ navigationItems: SpxNavigationItemI[];
26
+ } & import("@ngrx/store").Action<"[SPX / Navigation] Add items">);
27
27
  export type Actions = typeof all;
28
28
  export {};