@rxap/layout 18.3.4-dev.0 → 19.0.0-dev.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.
- package/CHANGELOG.md +8 -0
- package/README.md +1 -1
- package/compodoc/changelog.html +89 -0
- package/compodoc/components/AppsButtonComponent.html +18 -23
- package/compodoc/components/BaseLayoutComponent.html +8 -13
- package/compodoc/components/DefaultHeaderComponent.html +76 -35
- package/compodoc/components/FooterComponent.html +7 -12
- package/compodoc/components/HeaderComponent.html +13 -18
- package/compodoc/components/LayoutComponent.html +29 -72
- package/compodoc/components/MinimalLayoutComponent.html +5 -10
- package/compodoc/components/NavigationComponent.html +31 -36
- package/compodoc/components/NavigationItemComponent.html +52 -51
- package/compodoc/components/NavigationProgressBarComponent.html +9 -14
- package/compodoc/components/ReleaseInfoComponent.html +11 -16
- package/compodoc/components/SettingsButtonComponent.html +64 -53
- package/compodoc/components/SidenavComponent.html +35 -40
- package/compodoc/components/SidenavToggleButtonComponent.html +11 -16
- package/compodoc/components/UserProfileIconComponent.html +18 -20
- package/compodoc/dependencies.html +23 -17
- package/compodoc/index.html +1 -1
- package/compodoc/injectables/DefaultHeaderService.html +585 -0
- package/compodoc/interfaces/NavigationDividerItem.html +1 -1
- package/compodoc/interfaces/NavigationInsertItem.html +1 -1
- package/compodoc/interfaces/NavigationItem.html +3 -3
- package/compodoc/interfaces/NavigationStatus.html +1 -1
- package/compodoc/interfaces/ReleaseInfoModule.html +2 -0
- package/compodoc/interfaces/SettingsMenuItem.html +2 -0
- package/compodoc/js/menu-wc.js +3 -0
- package/compodoc/js/menu-wc_es5.js +2 -2
- package/compodoc/js/search/search_index.js +2 -2
- package/compodoc/miscellaneous/functions.html +387 -6
- package/compodoc/miscellaneous/typealiases.html +19 -0
- package/compodoc/miscellaneous/variables.html +50 -1
- package/compodoc/overview.html +1 -1
- package/compodoc/properties.html +1 -1
- package/docs/assets/navigation.js +1 -1
- package/docs/assets/search.js +1 -1
- package/docs/classes/AppsButtonComponent.html +3 -3
- package/docs/classes/BaseLayoutComponent.html +1 -1
- package/docs/classes/DefaultHeaderComponent.html +5 -2
- package/docs/classes/DefaultHeaderService.html +16 -0
- package/docs/classes/ExternalAppsService.html +2 -2
- package/docs/classes/FooterComponent.html +2 -2
- package/docs/classes/FooterDirective.html +2 -2
- package/docs/classes/FooterService.html +6 -6
- package/docs/classes/HeaderComponent.html +2 -2
- package/docs/classes/HeaderDirective.html +2 -2
- package/docs/classes/HeaderService.html +6 -6
- package/docs/classes/LayoutComponent.html +2 -2
- package/docs/classes/LayoutService.html +2 -2
- package/docs/classes/LogoService.html +2 -2
- package/docs/classes/MinimalLayoutComponent.html +1 -1
- package/docs/classes/NavigationComponent.html +2 -2
- package/docs/classes/NavigationItemComponent.html +2 -2
- package/docs/classes/NavigationProgressBarComponent.html +2 -2
- package/docs/classes/NavigationService.html +3 -3
- package/docs/classes/ReleaseInfoComponent.html +2 -2
- package/docs/classes/SettingsButtonComponent.html +2 -2
- package/docs/classes/SidenavComponent.html +2 -2
- package/docs/classes/SidenavFooterDirective.html +2 -2
- package/docs/classes/SidenavHeaderDirective.html +2 -2
- package/docs/classes/SidenavToggleButtonComponent.html +2 -2
- package/docs/classes/UserProfileIconComponent.html +2 -2
- package/docs/documentation.json +2279 -1170
- package/docs/functions/IsNavigationDividerItem.html +1 -1
- package/docs/functions/IsNavigationInsertItem.html +1 -1
- package/docs/functions/IsNavigationItem.html +1 -1
- package/docs/functions/provideExternalApps.html +1 -1
- package/docs/functions/provideLayout.html +1 -1
- package/docs/functions/withDefaultHeaderComponent.html +1 -1
- package/docs/functions/withDefaultHeaderItems.html +1 -0
- package/docs/functions/withFooterComponents.html +1 -1
- package/docs/functions/withHeaderComponents.html +1 -1
- package/docs/functions/withNavigationConfig.html +1 -1
- package/docs/functions/withNavigationInserts.html +1 -1
- package/docs/functions/withReleaseInfoModules.html +1 -1
- package/docs/functions/withSettingsMenuItems.html +1 -1
- package/docs/functions/withUserProfileDataSource.html +1 -1
- package/docs/index.html +1 -1
- package/docs/interfaces/NavigationDividerItem.html +2 -2
- package/docs/interfaces/NavigationInsertItem.html +2 -2
- package/docs/interfaces/NavigationItem.html +2 -2
- package/docs/interfaces/NavigationStatus.html +2 -2
- package/docs/interfaces/ReleaseInfoModule.html +2 -2
- package/docs/interfaces/SettingsMenuItem.html +2 -2
- package/docs/modules.html +5 -1
- package/docs/types/DefaultHeaderItemComponent.html +1 -0
- package/docs/types/ExternalApp.html +1 -1
- package/docs/types/ExtractUsernameFromProfileFn.html +1 -1
- package/docs/types/Navigation.html +1 -1
- package/docs/types/NavigationWithInserts.html +1 -1
- package/docs/types/SettingsMenuItemComponent.html +1 -1
- package/docs/variables/EXTRACT_USERNAME_FROM_PROFILE.html +1 -1
- package/docs/variables/RXAP_DEFAULT_HEADER_ITEM_COMPONENT.html +1 -0
- package/docs/variables/RXAP_EXTERNAL_APP.html +1 -1
- package/docs/variables/RXAP_EXTERNAL_APP_FILTER.html +1 -1
- package/docs/variables/RXAP_FOOTER_COMPONENT.html +1 -1
- package/docs/variables/RXAP_HEADER_COMPONENT.html +1 -1
- package/docs/variables/RXAP_LAYOUT_APPS_GRID.html +1 -1
- package/docs/variables/RXAP_LOGO_CONFIG.html +1 -1
- package/docs/variables/RXAP_NAVIGATION_CONFIG.html +1 -1
- package/docs/variables/RXAP_NAVIGATION_CONFIG_INSERTS.html +1 -1
- package/docs/variables/RXAP_RELEASE_INFO_MODULE.html +1 -1
- package/docs/variables/RXAP_SETTINGS_MENU_ITEM.html +1 -1
- package/docs/variables/RXAP_SETTINGS_MENU_ITEM_COMPONENT.html +1 -1
- package/docs/variables/RXAP_USER_PROFILE_DATA_SOURCE.html +1 -1
- package/fesm2022/rxap-layout.mjs +93 -93
- package/fesm2022/rxap-layout.mjs.map +1 -1
- package/package.json +43 -46
- package/src/migrations/18.0.0/add-seperate-external-apps-provider/__snapshots__/add-seperate-external-apps-provider.spec.ts.snap +22 -0
- package/src/migrations/18.0.0/add-theme-provider-to-app-config/__snapshots__/add-theme-provider-to-app-config.spec.ts.snap +18 -0
- package/src/migrations/18.0.0/add-user-theme-provider-to-layout-providers/__snapshots__/add-user-theme-provider-to-layout-providers.spec.ts.snap +51 -0
- package/src/migrations/18.0.0/add-with-user-profile-provider/__snapshots__/add-with-user-profile-provider.spec.ts.snap +53 -0
- package/theme.css +425 -1
- package/esm2022/index.mjs +0 -63
- package/esm2022/lib/base-layout/base-layout.component.mjs +0 -16
- package/esm2022/lib/default-header/apps-button/apps-button.component.mjs +0 -40
- package/esm2022/lib/default-header/default-header.component.mjs +0 -39
- package/esm2022/lib/default-header/default-header.service.mjs +0 -65
- package/esm2022/lib/default-header/settings-button/settings-button.component.mjs +0 -78
- package/esm2022/lib/default-header/sidenav-toggle-button/sidenav-toggle-button.component.mjs +0 -24
- package/esm2022/lib/default-header/user-profile-icon/user-profile-icon.component.mjs +0 -35
- package/esm2022/lib/external-apps.service.mjs +0 -99
- package/esm2022/lib/footer/footer.component.mjs +0 -21
- package/esm2022/lib/footer/footer.directive.mjs +0 -30
- package/esm2022/lib/footer.service.mjs +0 -58
- package/esm2022/lib/header/header.component.mjs +0 -24
- package/esm2022/lib/header/header.directive.mjs +0 -30
- package/esm2022/lib/header.service.mjs +0 -60
- package/esm2022/lib/layout/layout.component.mjs +0 -50
- package/esm2022/lib/layout.service.mjs +0 -93
- package/esm2022/lib/logo.service.mjs +0 -23
- package/esm2022/lib/minimal-layout/minimal-layout.component.mjs +0 -16
- package/esm2022/lib/navigation/navigation-item/navigation-item.component.mjs +0 -139
- package/esm2022/lib/navigation/navigation-item.mjs +0 -10
- package/esm2022/lib/navigation/navigation.component.mjs +0 -57
- package/esm2022/lib/navigation-progress-bar/navigation-progress-bar.component.mjs +0 -23
- package/esm2022/lib/navigation.service.mjs +0 -141
- package/esm2022/lib/provide.mjs +0 -105
- package/esm2022/lib/release-info/release-info.component.mjs +0 -28
- package/esm2022/lib/sidenav/sidenav-footer.directive.mjs +0 -20
- package/esm2022/lib/sidenav/sidenav-header.directive.mjs +0 -20
- package/esm2022/lib/sidenav/sidenav.component.mjs +0 -60
- package/esm2022/lib/tokens.mjs +0 -23
- package/esm2022/lib/types.mjs +0 -2
- package/esm2022/rxap-layout.mjs +0 -5
|
@@ -1,60 +0,0 @@
|
|
|
1
|
-
import { ComponentPortal, } from '@angular/cdk/portal';
|
|
2
|
-
import { computed, inject, Injectable, isDevMode, signal, } from '@angular/core';
|
|
3
|
-
import { RXAP_HEADER_COMPONENT } from './tokens';
|
|
4
|
-
import { coerceArray } from '@rxap/utilities';
|
|
5
|
-
import * as i0 from "@angular/core";
|
|
6
|
-
export class HeaderService {
|
|
7
|
-
constructor() {
|
|
8
|
-
this.components = coerceArray(inject(RXAP_HEADER_COMPONENT, { optional: true }));
|
|
9
|
-
/**
|
|
10
|
-
* Represents an array of `Portal` objects with unknown type.
|
|
11
|
-
*
|
|
12
|
-
* @typedef {Array<Portal<unknown>>} SignalPortals
|
|
13
|
-
*/
|
|
14
|
-
this.portals = signal(this.components.map(component => new ComponentPortal(component)));
|
|
15
|
-
/**
|
|
16
|
-
* Computes the count of portals.
|
|
17
|
-
*
|
|
18
|
-
* @returns {number} The count of portals.
|
|
19
|
-
*/
|
|
20
|
-
this.portalCount = computed(() => this.portals().length);
|
|
21
|
-
}
|
|
22
|
-
/**
|
|
23
|
-
* Adds a portal to the list of portals.
|
|
24
|
-
*
|
|
25
|
-
* @param {Portal<unknown>} portal - The portal to be added.
|
|
26
|
-
*
|
|
27
|
-
* @return {void}
|
|
28
|
-
*/
|
|
29
|
-
pushPortal(portal) {
|
|
30
|
-
if (!this.portals().includes(portal)) {
|
|
31
|
-
this.portals.update(portals => [...portals, portal]);
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
if (isDevMode()) {
|
|
35
|
-
console.warn('Can not add the same portal multiple times');
|
|
36
|
-
}
|
|
37
|
-
}
|
|
38
|
-
}
|
|
39
|
-
/**
|
|
40
|
-
* Removes a portal from the list of portals.
|
|
41
|
-
*
|
|
42
|
-
* @param {Portal<unknown>} portal - The portal to be removed.
|
|
43
|
-
* @return {void}
|
|
44
|
-
*/
|
|
45
|
-
removePortal(portal) {
|
|
46
|
-
const index = this.portals().indexOf(portal);
|
|
47
|
-
if (index !== -1) {
|
|
48
|
-
this.portals.update(portals => {
|
|
49
|
-
portals.splice(index, 1);
|
|
50
|
-
return portals.slice();
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
}
|
|
54
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: HeaderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
55
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: HeaderService }); }
|
|
56
|
-
}
|
|
57
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: HeaderService, decorators: [{
|
|
58
|
-
type: Injectable
|
|
59
|
-
}] });
|
|
60
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaGVhZGVyLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL2hlYWRlci5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxlQUFlLEdBRWhCLE1BQU0scUJBQXFCLENBQUM7QUFDN0IsT0FBTyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sVUFBVSxFQUNWLFNBQVMsRUFDVCxNQUFNLEdBQ1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sVUFBVSxDQUFDO0FBQ2pELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQzs7QUFHOUMsTUFBTSxPQUFPLGFBQWE7SUFEMUI7UUFHbUIsZUFBVSxHQUFHLFdBQVcsQ0FBQyxNQUFNLENBQUMscUJBQXFCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRTdGOzs7O1dBSUc7UUFDYSxZQUFPLEdBQUcsTUFBTSxDQUF5QixJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLElBQUksZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUczSDs7OztXQUlHO1FBQ2EsZ0JBQVcsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLE1BQU0sQ0FBQyxDQUFDO0tBb0NyRTtJQWpDQzs7Ozs7O09BTUc7SUFDSSxVQUFVLENBQUMsTUFBdUI7UUFDdkMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztZQUNyQyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRSxDQUFDLENBQUUsR0FBRyxPQUFPLEVBQUUsTUFBTSxDQUFFLENBQUMsQ0FBQztRQUN6RCxDQUFDO2FBQU0sQ0FBQztZQUNOLElBQUksU0FBUyxFQUFFLEVBQUUsQ0FBQztnQkFDaEIsT0FBTyxDQUFDLElBQUksQ0FBQyw0Q0FBNEMsQ0FBQyxDQUFDO1lBQzdELENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7OztPQUtHO0lBQ0ksWUFBWSxDQUFDLE1BQXVCO1FBQ3pDLE1BQU0sS0FBSyxHQUFHLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUM7UUFDN0MsSUFBSSxLQUFLLEtBQUssQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUNqQixJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsRUFBRTtnQkFDNUIsT0FBTyxDQUFDLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7Z0JBQ3pCLE9BQU8sT0FBTyxDQUFDLEtBQUssRUFBRSxDQUFDO1lBQ3pCLENBQUMsQ0FBQyxDQUFDO1FBQ0wsQ0FBQztJQUNILENBQUM7OEdBbkRVLGFBQWE7a0hBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7XG4gIENvbXBvbmVudFBvcnRhbCxcbiAgUG9ydGFsLFxufSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIGNvbXB1dGVkLFxuICBpbmplY3QsXG4gIEluamVjdGFibGUsXG4gIGlzRGV2TW9kZSxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFJYQVBfSEVBREVSX0NPTVBPTkVOVCB9IGZyb20gJy4vdG9rZW5zJztcbmltcG9ydCB7IGNvZXJjZUFycmF5IH0gZnJvbSAnQHJ4YXAvdXRpbGl0aWVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEhlYWRlclNlcnZpY2Uge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgY29tcG9uZW50cyA9IGNvZXJjZUFycmF5KGluamVjdChSWEFQX0hFQURFUl9DT01QT05FTlQsIHsgb3B0aW9uYWw6IHRydWUgfSkpO1xuXG4gIC8qKlxuICAgKiBSZXByZXNlbnRzIGFuIGFycmF5IG9mIGBQb3J0YWxgIG9iamVjdHMgd2l0aCB1bmtub3duIHR5cGUuXG4gICAqXG4gICAqIEB0eXBlZGVmIHtBcnJheTxQb3J0YWw8dW5rbm93bj4+fSBTaWduYWxQb3J0YWxzXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcG9ydGFscyA9IHNpZ25hbDxBcnJheTxQb3J0YWw8dW5rbm93bj4+Pih0aGlzLmNvbXBvbmVudHMubWFwKGNvbXBvbmVudCA9PiBuZXcgQ29tcG9uZW50UG9ydGFsKGNvbXBvbmVudCkpKTtcblxuXG4gIC8qKlxuICAgKiBDb21wdXRlcyB0aGUgY291bnQgb2YgcG9ydGFscy5cbiAgICpcbiAgICogQHJldHVybnMge251bWJlcn0gVGhlIGNvdW50IG9mIHBvcnRhbHMuXG4gICAqL1xuICBwdWJsaWMgcmVhZG9ubHkgcG9ydGFsQ291bnQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLnBvcnRhbHMoKS5sZW5ndGgpO1xuXG5cbiAgLyoqXG4gICAqIEFkZHMgYSBwb3J0YWwgdG8gdGhlIGxpc3Qgb2YgcG9ydGFscy5cbiAgICpcbiAgICogQHBhcmFtIHtQb3J0YWw8dW5rbm93bj59IHBvcnRhbCAtIFRoZSBwb3J0YWwgdG8gYmUgYWRkZWQuXG4gICAqXG4gICAqIEByZXR1cm4ge3ZvaWR9XG4gICAqL1xuICBwdWJsaWMgcHVzaFBvcnRhbChwb3J0YWw6IFBvcnRhbDx1bmtub3duPikge1xuICAgIGlmICghdGhpcy5wb3J0YWxzKCkuaW5jbHVkZXMocG9ydGFsKSkge1xuICAgICAgdGhpcy5wb3J0YWxzLnVwZGF0ZShwb3J0YWxzID0+IFsgLi4ucG9ydGFscywgcG9ydGFsIF0pO1xuICAgIH0gZWxzZSB7XG4gICAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgICAgY29uc29sZS53YXJuKCdDYW4gbm90IGFkZCB0aGUgc2FtZSBwb3J0YWwgbXVsdGlwbGUgdGltZXMnKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyBhIHBvcnRhbCBmcm9tIHRoZSBsaXN0IG9mIHBvcnRhbHMuXG4gICAqXG4gICAqIEBwYXJhbSB7UG9ydGFsPHVua25vd24+fSBwb3J0YWwgLSBUaGUgcG9ydGFsIHRvIGJlIHJlbW92ZWQuXG4gICAqIEByZXR1cm4ge3ZvaWR9XG4gICAqL1xuICBwdWJsaWMgcmVtb3ZlUG9ydGFsKHBvcnRhbDogUG9ydGFsPHVua25vd24+KSB7XG4gICAgY29uc3QgaW5kZXggPSB0aGlzLnBvcnRhbHMoKS5pbmRleE9mKHBvcnRhbCk7XG4gICAgaWYgKGluZGV4ICE9PSAtMSkge1xuICAgICAgdGhpcy5wb3J0YWxzLnVwZGF0ZShwb3J0YWxzID0+IHtcbiAgICAgICAgcG9ydGFscy5zcGxpY2UoaW5kZXgsIDEpO1xuICAgICAgICByZXR1cm4gcG9ydGFscy5zbGljZSgpO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG5cbn1cbiJdfQ==
|
|
@@ -1,50 +0,0 @@
|
|
|
1
|
-
import { AsyncPipe, NgClass, NgIf, NgOptimizedImage, NgStyle, } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, computed, inject, } from '@angular/core';
|
|
3
|
-
import { MatButtonModule } from '@angular/material/button';
|
|
4
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
5
|
-
import { MatMenuModule } from '@angular/material/menu';
|
|
6
|
-
import { MatSidenavModule } from '@angular/material/sidenav';
|
|
7
|
-
import { RouterLink, RouterOutlet, } from '@angular/router';
|
|
8
|
-
import { FooterComponent } from '../footer/footer.component';
|
|
9
|
-
import { HeaderComponent } from '../header/header.component';
|
|
10
|
-
import { LogoService } from '../logo.service';
|
|
11
|
-
import { NavigationProgressBarComponent } from '../navigation-progress-bar/navigation-progress-bar.component';
|
|
12
|
-
import { NavigationComponent } from '../navigation/navigation.component';
|
|
13
|
-
import { ReleaseInfoComponent } from '../release-info/release-info.component';
|
|
14
|
-
import { SidenavFooterDirective } from '../sidenav/sidenav-footer.directive';
|
|
15
|
-
import { SidenavComponent } from '../sidenav/sidenav.component';
|
|
16
|
-
import * as i0 from "@angular/core";
|
|
17
|
-
export class LayoutComponent {
|
|
18
|
-
constructor() {
|
|
19
|
-
this.logoService = inject(LogoService);
|
|
20
|
-
this.logoSrc = computed(() => this.logoService.src());
|
|
21
|
-
this.logoWidth = computed(() => this.logoService.width());
|
|
22
|
-
this.logoHeight = computed(() => this.logoService.height());
|
|
23
|
-
}
|
|
24
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: LayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
25
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: LayoutComponent, isStandalone: true, selector: "rxap-layout", ngImport: i0, template: "<rxap-header class=\"z-10 w-full fixed top-0\"></rxap-header>\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n<rxap-sidenav>\n <router-outlet></router-outlet>\n <ng-template rxapSidenavFooter>\n <img\n [src]=\"logoSrc()\"\n [routerLink]=\"['/']\"\n [width]=\"logoWidth()\"\n [height]=\"logoHeight()\"\n alt=\"logo\"\n class=\"grow-0 mx-16 cursor-pointer\"\n />\n <div class=\"grow-0 px-16 mt-4\">\n <rxap-release-info></rxap-release-info>\n </div>\n </ng-template>\n</rxap-sidenav>\n<rxap-footer class=\"z-10 w-full fixed bottom-0\"></rxap-footer>\n", styles: [""], dependencies: [{ kind: "component", type: HeaderComponent, selector: "rxap-header", inputs: ["color"] }, { kind: "ngmodule", type: MatSidenavModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "component", type: FooterComponent, selector: "rxap-footer" }, { kind: "ngmodule", type: MatMenuModule }, { kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: SidenavComponent, selector: "rxap-sidenav" }, { kind: "component", type: ReleaseInfoComponent, selector: "rxap-release-info" }, { kind: "directive", type: SidenavFooterDirective, selector: "[rxapSidenavFooter]" }, { kind: "component", type: NavigationProgressBarComponent, selector: "rxap-navigation-progress-bar" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
26
|
-
}
|
|
27
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: LayoutComponent, decorators: [{
|
|
28
|
-
type: Component,
|
|
29
|
-
args: [{ selector: 'rxap-layout', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
30
|
-
HeaderComponent,
|
|
31
|
-
MatSidenavModule,
|
|
32
|
-
AsyncPipe,
|
|
33
|
-
MatIconModule,
|
|
34
|
-
MatButtonModule,
|
|
35
|
-
RouterLink,
|
|
36
|
-
NgIf,
|
|
37
|
-
FooterComponent,
|
|
38
|
-
MatMenuModule,
|
|
39
|
-
NgOptimizedImage,
|
|
40
|
-
NavigationComponent,
|
|
41
|
-
RouterOutlet,
|
|
42
|
-
NgStyle,
|
|
43
|
-
NgClass,
|
|
44
|
-
SidenavComponent,
|
|
45
|
-
ReleaseInfoComponent,
|
|
46
|
-
SidenavFooterDirective,
|
|
47
|
-
NavigationProgressBarComponent,
|
|
48
|
-
], template: "<rxap-header class=\"z-10 w-full fixed top-0\"></rxap-header>\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n<rxap-sidenav>\n <router-outlet></router-outlet>\n <ng-template rxapSidenavFooter>\n <img\n [src]=\"logoSrc()\"\n [routerLink]=\"['/']\"\n [width]=\"logoWidth()\"\n [height]=\"logoHeight()\"\n alt=\"logo\"\n class=\"grow-0 mx-16 cursor-pointer\"\n />\n <div class=\"grow-0 px-16 mt-4\">\n <rxap-release-info></rxap-release-info>\n </div>\n </ng-template>\n</rxap-sidenav>\n<rxap-footer class=\"z-10 w-full fixed bottom-0\"></rxap-footer>\n" }]
|
|
49
|
-
}] });
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvbGF5b3V0L3NyYy9saWIvbGF5b3V0L2xheW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL2xheW91dC9sYXlvdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFNBQVMsRUFDVCxPQUFPLEVBQ1AsSUFBSSxFQUNKLGdCQUFnQixFQUNoQixPQUFPLEdBQ1IsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsTUFBTSxHQUVQLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUMzRCxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDdkQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3ZELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFDTCxVQUFVLEVBQ1YsWUFBWSxHQUNiLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDOUMsT0FBTyxFQUFFLDhCQUE4QixFQUFFLE1BQU0sOERBQThELENBQUM7QUFDOUcsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0NBQW9DLENBQUM7QUFDekUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDOUUsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDN0UsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sOEJBQThCLENBQUM7O0FBOEJoRSxNQUFNLE9BQU8sZUFBZTtJQTNCNUI7UUE2Qm1CLGdCQUFXLEdBQUcsTUFBTSxDQUFDLFdBQVcsQ0FBQyxDQUFDO1FBQ25DLFlBQU8sR0FBbUIsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztRQUNqRSxjQUFTLEdBQW1CLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLEtBQUssRUFBRSxDQUFDLENBQUM7UUFDckUsZUFBVSxHQUFtQixRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFDO0tBRXhGOzhHQVBZLGVBQWU7a0dBQWYsZUFBZSx1RUMzRDVCLHltQkFtQkEsMEREb0JJLGVBQWUsMEVBQ2YsZ0JBQWdCLDhCQUVoQixhQUFhLDhCQUNiLGVBQWUsK0JBQ2YsVUFBVSxvT0FFVixlQUFlLHVEQUNmLGFBQWEsK0JBR2IsWUFBWSwySkFHWixnQkFBZ0IseURBQ2hCLG9CQUFvQiw4REFDcEIsc0JBQXNCLGdFQUN0Qiw4QkFBOEI7OzJGQUdyQixlQUFlO2tCQTNCM0IsU0FBUzsrQkFDRSxhQUFhLG1CQUdOLHVCQUF1QixDQUFDLE1BQU0sY0FDbkMsSUFBSSxXQUNQO3dCQUNQLGVBQWU7d0JBQ2YsZ0JBQWdCO3dCQUNoQixTQUFTO3dCQUNULGFBQWE7d0JBQ2IsZUFBZTt3QkFDZixVQUFVO3dCQUNWLElBQUk7d0JBQ0osZUFBZTt3QkFDZixhQUFhO3dCQUNiLGdCQUFnQjt3QkFDaEIsbUJBQW1CO3dCQUNuQixZQUFZO3dCQUNaLE9BQU87d0JBQ1AsT0FBTzt3QkFDUCxnQkFBZ0I7d0JBQ2hCLG9CQUFvQjt3QkFDcEIsc0JBQXNCO3dCQUN0Qiw4QkFBOEI7cUJBQy9CIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXN5bmNQaXBlLFxuICBOZ0NsYXNzLFxuICBOZ0lmLFxuICBOZ09wdGltaXplZEltYWdlLFxuICBOZ1N0eWxlLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIGluamVjdCxcbiAgU2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE1hdEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2J1dHRvbic7XG5pbXBvcnQgeyBNYXRJY29uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvaWNvbic7XG5pbXBvcnQgeyBNYXRNZW51TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvbWVudSc7XG5pbXBvcnQgeyBNYXRTaWRlbmF2TW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvbWF0ZXJpYWwvc2lkZW5hdic7XG5pbXBvcnQge1xuICBSb3V0ZXJMaW5rLFxuICBSb3V0ZXJPdXRsZXQsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBGb290ZXJDb21wb25lbnQgfSBmcm9tICcuLi9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBMb2dvU2VydmljZSB9IGZyb20gJy4uL2xvZ28uc2VydmljZSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uUHJvZ3Jlc3NCYXJDb21wb25lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci5jb21wb25lbnQnO1xuaW1wb3J0IHsgTmF2aWdhdGlvbkNvbXBvbmVudCB9IGZyb20gJy4uL25hdmlnYXRpb24vbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuaW1wb3J0IHsgUmVsZWFzZUluZm9Db21wb25lbnQgfSBmcm9tICcuLi9yZWxlYXNlLWluZm8vcmVsZWFzZS1pbmZvLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBTaWRlbmF2Rm9vdGVyRGlyZWN0aXZlIH0gZnJvbSAnLi4vc2lkZW5hdi9zaWRlbmF2LWZvb3Rlci5kaXJlY3RpdmUnO1xuaW1wb3J0IHsgU2lkZW5hdkNvbXBvbmVudCB9IGZyb20gJy4uL3NpZGVuYXYvc2lkZW5hdi5jb21wb25lbnQnO1xuXG5cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ3J4YXAtbGF5b3V0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2xheW91dC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9sYXlvdXQuY29tcG9uZW50LnNjc3MnIF0sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBzdGFuZGFsb25lOiB0cnVlLFxuICBpbXBvcnRzOiBbXG4gICAgSGVhZGVyQ29tcG9uZW50LFxuICAgIE1hdFNpZGVuYXZNb2R1bGUsXG4gICAgQXN5bmNQaXBlLFxuICAgIE1hdEljb25Nb2R1bGUsXG4gICAgTWF0QnV0dG9uTW9kdWxlLFxuICAgIFJvdXRlckxpbmssXG4gICAgTmdJZixcbiAgICBGb290ZXJDb21wb25lbnQsXG4gICAgTWF0TWVudU1vZHVsZSxcbiAgICBOZ09wdGltaXplZEltYWdlLFxuICAgIE5hdmlnYXRpb25Db21wb25lbnQsXG4gICAgUm91dGVyT3V0bGV0LFxuICAgIE5nU3R5bGUsXG4gICAgTmdDbGFzcyxcbiAgICBTaWRlbmF2Q29tcG9uZW50LFxuICAgIFJlbGVhc2VJbmZvQ29tcG9uZW50LFxuICAgIFNpZGVuYXZGb290ZXJEaXJlY3RpdmUsXG4gICAgTmF2aWdhdGlvblByb2dyZXNzQmFyQ29tcG9uZW50LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBMYXlvdXRDb21wb25lbnQge1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbG9nb1NlcnZpY2UgPSBpbmplY3QoTG9nb1NlcnZpY2UpO1xuICBwdWJsaWMgcmVhZG9ubHkgbG9nb1NyYzogU2lnbmFsPHN0cmluZz4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLmxvZ29TZXJ2aWNlLnNyYygpKTtcbiAgcHVibGljIHJlYWRvbmx5IGxvZ29XaWR0aDogU2lnbmFsPG51bWJlcj4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLmxvZ29TZXJ2aWNlLndpZHRoKCkpO1xuICBwdWJsaWMgcmVhZG9ubHkgbG9nb0hlaWdodDogU2lnbmFsPG51bWJlcj4gPSBjb21wdXRlZCgoKSA9PiB0aGlzLmxvZ29TZXJ2aWNlLmhlaWdodCgpKTtcblxufVxuIiwiPHJ4YXAtaGVhZGVyIGNsYXNzPVwiei0xMCB3LWZ1bGwgZml4ZWQgdG9wLTBcIj48L3J4YXAtaGVhZGVyPlxuPHJ4YXAtbmF2aWdhdGlvbi1wcm9ncmVzcy1iYXI+PC9yeGFwLW5hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyPlxuPHJ4YXAtc2lkZW5hdj5cbiAgPHJvdXRlci1vdXRsZXQ+PC9yb3V0ZXItb3V0bGV0PlxuICA8bmctdGVtcGxhdGUgcnhhcFNpZGVuYXZGb290ZXI+XG4gICAgPGltZ1xuICAgICAgW3NyY109XCJsb2dvU3JjKClcIlxuICAgICAgW3JvdXRlckxpbmtdPVwiWycvJ11cIlxuICAgICAgW3dpZHRoXT1cImxvZ29XaWR0aCgpXCJcbiAgICAgIFtoZWlnaHRdPVwibG9nb0hlaWdodCgpXCJcbiAgICAgIGFsdD1cImxvZ29cIlxuICAgICAgY2xhc3M9XCJncm93LTAgbXgtMTYgY3Vyc29yLXBvaW50ZXJcIlxuICAgIC8+XG4gICAgPGRpdiBjbGFzcz1cImdyb3ctMCBweC0xNiBtdC00XCI+XG4gICAgICA8cnhhcC1yZWxlYXNlLWluZm8+PC9yeGFwLXJlbGVhc2UtaW5mbz5cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbjwvcnhhcC1zaWRlbmF2PlxuPHJ4YXAtZm9vdGVyIGNsYXNzPVwiei0xMCB3LWZ1bGwgZml4ZWQgYm90dG9tLTBcIj48L3J4YXAtZm9vdGVyPlxuIl19
|
|
@@ -1,93 +0,0 @@
|
|
|
1
|
-
import { MediaMatcher } from '@angular/cdk/layout';
|
|
2
|
-
import { computed, effect, inject, Injectable, isDevMode, signal, } from '@angular/core';
|
|
3
|
-
import { toSignal } from '@angular/core/rxjs-interop';
|
|
4
|
-
import { ConfigService } from '@rxap/config';
|
|
5
|
-
import { ObserveCurrentThemeDensity } from '@rxap/ngx-theme';
|
|
6
|
-
import { Observable } from 'rxjs';
|
|
7
|
-
import { FooterService } from './footer.service';
|
|
8
|
-
import { HeaderService } from './header.service';
|
|
9
|
-
import * as i0 from "@angular/core";
|
|
10
|
-
export class LayoutService {
|
|
11
|
-
constructor() {
|
|
12
|
-
this.currentThemeDensity = toSignal(ObserveCurrentThemeDensity());
|
|
13
|
-
this.footerService = inject(FooterService);
|
|
14
|
-
this.headerService = inject(HeaderService);
|
|
15
|
-
this.config = inject(ConfigService);
|
|
16
|
-
this.mediaMatcher = inject(MediaMatcher);
|
|
17
|
-
const mobileQuery = this.mediaMatcher.matchMedia('(max-width: 959px)');
|
|
18
|
-
this.isMobile = toSignal(new Observable(subscriber => {
|
|
19
|
-
mobileQuery.addEventListener('change', (event) => {
|
|
20
|
-
subscriber.next(event.matches);
|
|
21
|
-
});
|
|
22
|
-
}), { initialValue: mobileQuery.matches });
|
|
23
|
-
const initialCollapsable = this.config.get('navigation.collapsable', true);
|
|
24
|
-
const collapsable = initialCollapsable && !this.isMobile();
|
|
25
|
-
const pinned = this.config.get('navigation.pinned', false);
|
|
26
|
-
const mode = this.config.get('navigation.mode', pinned || !collapsable ? 'side' : 'over');
|
|
27
|
-
const opened = this.config.get('navigation.opened', (!collapsable || pinned) && !this.isMobile());
|
|
28
|
-
const fixedInViewport = this.config.get('navigation.fixedInViewport', true);
|
|
29
|
-
if (isDevMode()) {
|
|
30
|
-
console.log({
|
|
31
|
-
initialCollapsable,
|
|
32
|
-
collapsable,
|
|
33
|
-
pinned,
|
|
34
|
-
mode,
|
|
35
|
-
opened,
|
|
36
|
-
fixedInViewport,
|
|
37
|
-
});
|
|
38
|
-
}
|
|
39
|
-
this.opened = signal(opened);
|
|
40
|
-
this.mode = signal(mode);
|
|
41
|
-
this.pinned = signal(pinned);
|
|
42
|
-
this.collapsable = signal(collapsable);
|
|
43
|
-
this.fixedInViewport = signal(fixedInViewport);
|
|
44
|
-
this.collapsed = computed(() => this.collapsable() && !this.opened() && !this.pinned());
|
|
45
|
-
this.fixedBottomGap = computed(() => {
|
|
46
|
-
const footerPortalCount = this.footerService.portalCount();
|
|
47
|
-
const currentThemeDensity = this.currentThemeDensity() ?? 0;
|
|
48
|
-
return footerPortalCount * (currentThemeDensity * 4 + 64);
|
|
49
|
-
});
|
|
50
|
-
this.fixedTopGap = computed(() => {
|
|
51
|
-
const headerPortalCount = this.headerService.portalCount();
|
|
52
|
-
const currentThemeDensity = this.currentThemeDensity() ?? 0;
|
|
53
|
-
return headerPortalCount * (currentThemeDensity * 4 + 64);
|
|
54
|
-
});
|
|
55
|
-
if (initialCollapsable) {
|
|
56
|
-
effect(() => {
|
|
57
|
-
const isMobile = this.isMobile();
|
|
58
|
-
this.collapsable.set(!isMobile);
|
|
59
|
-
if (!isMobile && !this.pinned()) {
|
|
60
|
-
this.opened.set(false);
|
|
61
|
-
}
|
|
62
|
-
}, { allowSignalWrites: true });
|
|
63
|
-
}
|
|
64
|
-
effect(() => {
|
|
65
|
-
if (this.pinned()) {
|
|
66
|
-
this.mode.set('side');
|
|
67
|
-
this.opened.set(true);
|
|
68
|
-
}
|
|
69
|
-
else {
|
|
70
|
-
this.mode.set('over');
|
|
71
|
-
this.opened.set(false);
|
|
72
|
-
}
|
|
73
|
-
}, { allowSignalWrites: true });
|
|
74
|
-
}
|
|
75
|
-
toggleOpened() {
|
|
76
|
-
this.opened.update(opened => !opened);
|
|
77
|
-
}
|
|
78
|
-
togglePinned() {
|
|
79
|
-
this.pinned.update(pinned => !pinned);
|
|
80
|
-
}
|
|
81
|
-
openSidenav() {
|
|
82
|
-
this.opened.set(true);
|
|
83
|
-
}
|
|
84
|
-
closeSidenav() {
|
|
85
|
-
this.opened.set(false);
|
|
86
|
-
}
|
|
87
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: LayoutService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
88
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: LayoutService }); }
|
|
89
|
-
}
|
|
90
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: LayoutService, decorators: [{
|
|
91
|
-
type: Injectable
|
|
92
|
-
}], ctorParameters: () => [] });
|
|
93
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibGF5b3V0LnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL2xheW91dC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQ0wsUUFBUSxFQUNSLE1BQU0sRUFDTixNQUFNLEVBQ04sVUFBVSxFQUNWLFNBQVMsRUFDVCxNQUFNLEdBR1AsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBRXRELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDN0MsT0FBTyxFQUFFLDBCQUEwQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLE1BQU0sQ0FBQztBQUNsQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDakQsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGtCQUFrQixDQUFDOztBQUdqRCxNQUFNLE9BQU8sYUFBYTtJQWtCeEI7UUFWZ0Isd0JBQW1CLEdBQUcsUUFBUSxDQUFDLDBCQUEwQixFQUFFLENBQUMsQ0FBQztRQUs1RCxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0QyxrQkFBYSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUN0QyxXQUFNLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBQy9CLGlCQUFZLEdBQUcsTUFBTSxDQUFDLFlBQVksQ0FBQyxDQUFDO1FBR25ELE1BQU0sV0FBVyxHQUFHLElBQUksQ0FBQyxZQUFZLENBQUMsVUFBVSxDQUFDLG9CQUFvQixDQUFDLENBQUM7UUFDdkUsSUFBSSxDQUFDLFFBQVEsR0FBRyxRQUFRLENBQUMs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QUMsRUFBRSxDQUFDLENBQUMsTUFBTSxDQUFDLENBQUM7SUFDeEMsQ0FBQztJQUVELFdBQVc7UUFDVCxJQUFJLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQsWUFBWTtRQUNWLElBQUksQ0FBQyxNQUFNLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxDQUFDO0lBQ3pCLENBQUM7OEdBakdVLGFBQWE7a0hBQWIsYUFBYTs7MkZBQWIsYUFBYTtrQkFEekIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE1lZGlhTWF0Y2hlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9sYXlvdXQnO1xuaW1wb3J0IHtcbiAgY29tcHV0ZWQsXG4gIGVmZmVjdCxcbiAgaW5qZWN0LFxuICBJbmplY3RhYmxlLFxuICBpc0Rldk1vZGUsXG4gIHNpZ25hbCxcbiAgU2lnbmFsLFxuICBXcml0YWJsZVNpZ25hbCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0b1NpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE1hdERyYXdlck1vZGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9zaWRlbmF2JztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAcnhhcC9jb25maWcnO1xuaW1wb3J0IHsgT2JzZXJ2ZUN1cnJlbnRUaGVtZURlbnNpdHkgfSBmcm9tICdAcnhhcC9uZ3gtdGhlbWUnO1xuaW1wb3J0IHsgT2JzZXJ2YWJsZSB9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHsgRm9vdGVyU2VydmljZSB9IGZyb20gJy4vZm9vdGVyLnNlcnZpY2UnO1xuaW1wb3J0IHsgSGVhZGVyU2VydmljZSB9IGZyb20gJy4vaGVhZGVyLnNlcnZpY2UnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgTGF5b3V0U2VydmljZSB7XG5cbiAgcHVibGljIHJlYWRvbmx5IG9wZW5lZDogV3JpdGFibGVTaWduYWw8Ym9vbGVhbj47XG4gIHB1YmxpYyByZWFkb25seSBtb2RlOiBXcml0YWJsZVNpZ25hbDxNYXREcmF3ZXJNb2RlPjtcbiAgcHVibGljIHJlYWRvbmx5IHBpbm5lZDogV3JpdGFibGVTaWduYWw8Ym9vbGVhbj47XG4gIHB1YmxpYyByZWFkb25seSBjb2xsYXBzYWJsZTogV3JpdGFibGVTaWduYWw8Ym9vbGVhbj47XG4gIHB1YmxpYyByZWFkb25seSBmaXhlZEJvdHRvbUdhcDogU2lnbmFsPG51bWJlcj47XG4gIHB1YmxpYyByZWFkb25seSBmaXhlZFRvcEdhcDogU2lnbmFsPG51bWJlcj47XG4gIHB1YmxpYyByZWFkb25seSBjdXJyZW50VGhlbWVEZW5zaXR5ID0gdG9TaWduYWwoT2JzZXJ2ZUN1cnJlbnRUaGVtZURlbnNpdHkoKSk7XG4gIHB1YmxpYyByZWFkb25seSBpc01vYmlsZTogU2lnbmFsPGJvb2xlYW4+O1xuICBwdWJsaWMgcmVhZG9ubHkgZml4ZWRJblZpZXdwb3J0OiBXcml0YWJsZVNpZ25hbDxib29sZWFuPjtcbiAgcHVibGljIHJlYWRvbmx5IGNvbGxhcHNlZDogU2lnbmFsPGJvb2xlYW4+O1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgZm9vdGVyU2VydmljZSA9IGluamVjdChGb290ZXJTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBoZWFkZXJTZXJ2aWNlID0gaW5qZWN0KEhlYWRlclNlcnZpY2UpO1xuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZyA9IGluamVjdChDb25maWdTZXJ2aWNlKTtcbiAgcHJpdmF0ZSByZWFkb25seSBtZWRpYU1hdGNoZXIgPSBpbmplY3QoTWVkaWFNYXRjaGVyKTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBjb25zdCBtb2JpbGVRdWVyeSA9IHRoaXMubWVkaWFNYXRjaGVyLm1hdGNoTWVkaWEoJyhtYXgtd2lkdGg6IDk1OXB4KScpO1xuICAgIHRoaXMuaXNNb2JpbGUgPSB0b1NpZ25hbChuZXcgT2JzZXJ2YWJsZTxib29sZWFuPihzdWJzY3JpYmVyID0+IHtcbiAgICAgIG1vYmlsZVF1ZXJ5LmFkZEV2ZW50TGlzdGVuZXIoJ2NoYW5nZScsIChldmVudCkgPT4ge1xuICAgICAgICBzdWJzY3JpYmVyLm5leHQoZXZlbnQubWF0Y2hlcyk7XG4gICAgICB9KTtcbiAgICB9KSwgeyBpbml0aWFsVmFsdWU6IG1vYmlsZVF1ZXJ5Lm1hdGNoZXMgfSk7XG5cbiAgICBjb25zdCBpbml0aWFsQ29sbGFwc2FibGUgPSB0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24uY29sbGFwc2FibGUnLCB0cnVlKTtcbiAgICBjb25zdCBjb2xsYXBzYWJsZSA9IGluaXRpYWxDb2xsYXBzYWJsZSAmJiAhdGhpcy5pc01vYmlsZSgpO1xuICAgIGNvbnN0IHBpbm5lZCA9IHRoaXMuY29uZmlnLmdldCgnbmF2aWdhdGlvbi5waW5uZWQnLCBmYWxzZSk7XG4gICAgY29uc3QgbW9kZSA9IHRoaXMuY29uZmlnLmdldCgnbmF2aWdhdGlvbi5tb2RlJywgcGlubmVkIHx8ICFjb2xsYXBzYWJsZSA/ICdzaWRlJyA6ICdvdmVyJyk7XG4gICAgY29uc3Qgb3BlbmVkID0gdGhpcy5jb25maWcuZ2V0KCduYXZpZ2F0aW9uLm9wZW5lZCcsICghY29sbGFwc2FibGUgfHwgcGlubmVkKSAmJiAhdGhpcy5pc01vYmlsZSgpKTtcbiAgICBjb25zdCBmaXhlZEluVmlld3BvcnQgPSB0aGlzLmNvbmZpZy5nZXQoJ25hdmlnYXRpb24uZml4ZWRJblZpZXdwb3J0JywgdHJ1ZSk7XG5cbiAgICBpZiAoaXNEZXZNb2RlKCkpIHtcbiAgICAgIGNvbnNvbGUubG9nKHtcbiAgICAgICAgaW5pdGlhbENvbGxhcHNhYmxlLFxuICAgICAgICBjb2xsYXBzYWJsZSxcbiAgICAgICAgcGlubmVkLFxuICAgICAgICBtb2RlLFxuICAgICAgICBvcGVuZWQsXG4gICAgICAgIGZpeGVkSW5WaWV3cG9ydCxcbiAgICAgIH0pO1xuICAgIH1cblxuICAgIHRoaXMub3BlbmVkID0gc2lnbmFsKG9wZW5lZCk7XG4gICAgdGhpcy5tb2RlID0gc2lnbmFsKG1vZGUpO1xuICAgIHRoaXMucGlubmVkID0gc2lnbmFsKHBpbm5lZCk7XG4gICAgdGhpcy5jb2xsYXBzYWJsZSA9IHNpZ25hbChjb2xsYXBzYWJsZSk7XG4gICAgdGhpcy5maXhlZEluVmlld3BvcnQgPSBzaWduYWwoZml4ZWRJblZpZXdwb3J0KTtcbiAgICB0aGlzLmNvbGxhcHNlZCA9IGNvbXB1dGVkKCgpID0+IHRoaXMuY29sbGFwc2FibGUoKSAmJiAhdGhpcy5vcGVuZWQoKSAmJiAhdGhpcy5waW5uZWQoKSk7XG5cbiAgICB0aGlzLmZpeGVkQm90dG9tR2FwID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgICAgY29uc3QgZm9vdGVyUG9ydGFsQ291bnQgPSB0aGlzLmZvb3RlclNlcnZpY2UucG9ydGFsQ291bnQoKTtcbiAgICAgIGNvbnN0IGN1cnJlbnRUaGVtZURlbnNpdHkgPSB0aGlzLmN1cnJlbnRUaGVtZURlbnNpdHkoKSA/PyAwO1xuICAgICAgcmV0dXJuIGZvb3RlclBvcnRhbENvdW50ICogKGN1cnJlbnRUaGVtZURlbnNpdHkgKiA0ICsgNjQpO1xuICAgIH0pO1xuXG4gICAgdGhpcy5maXhlZFRvcEdhcCA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICAgIGNvbnN0IGhlYWRlclBvcnRhbENvdW50ID0gdGhpcy5oZWFkZXJTZXJ2aWNlLnBvcnRhbENvdW50KCk7XG4gICAgICBjb25zdCBjdXJyZW50VGhlbWVEZW5zaXR5ID0gdGhpcy5jdXJyZW50VGhlbWVEZW5zaXR5KCkgPz8gMDtcbiAgICAgIHJldHVybiBoZWFkZXJQb3J0YWxDb3VudCAqIChjdXJyZW50VGhlbWVEZW5zaXR5ICogNCArIDY0KTtcbiAgICB9KTtcblxuICAgIGlmIChpbml0aWFsQ29sbGFwc2FibGUpIHtcbiAgICAgIGVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGNvbnN0IGlzTW9iaWxlID0gdGhpcy5pc01vYmlsZSgpO1xuICAgICAgICB0aGlzLmNvbGxhcHNhYmxlLnNldCghaXNNb2JpbGUpO1xuICAgICAgICBpZiAoIWlzTW9iaWxlICYmICF0aGlzLnBpbm5lZCgpKSB7XG4gICAgICAgICAgdGhpcy5vcGVuZWQuc2V0KGZhbHNlKTtcbiAgICAgICAgfVxuICAgICAgfSwgeyBhbGxvd1NpZ25hbFdyaXRlczogdHJ1ZSB9KTtcbiAgICB9XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGlmICh0aGlzLnBpbm5lZCgpKSB7XG4gICAgICAgIHRoaXMubW9kZS5zZXQoJ3NpZGUnKTtcbiAgICAgICAgdGhpcy5vcGVuZWQuc2V0KHRydWUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhpcy5tb2RlLnNldCgnb3ZlcicpO1xuICAgICAgICB0aGlzLm9wZW5lZC5zZXQoZmFsc2UpO1xuICAgICAgfVxuICAgIH0sIHsgYWxsb3dTaWduYWxXcml0ZXM6IHRydWUgfSk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlT3BlbmVkKCkge1xuICAgIHRoaXMub3BlbmVkLnVwZGF0ZShvcGVuZWQgPT4gIW9wZW5lZCk7XG4gIH1cblxuICBwdWJsaWMgdG9nZ2xlUGlubmVkKCkge1xuICAgIHRoaXMucGlubmVkLnVwZGF0ZShwaW5uZWQgPT4gIXBpbm5lZCk7XG4gIH1cblxuICBvcGVuU2lkZW5hdigpIHtcbiAgICB0aGlzLm9wZW5lZC5zZXQodHJ1ZSk7XG4gIH1cblxuICBjbG9zZVNpZGVuYXYoKSB7XG4gICAgdGhpcy5vcGVuZWQuc2V0KGZhbHNlKTtcbiAgfVxufVxuIl19
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { computed, inject, Injectable, signal, } from '@angular/core';
|
|
2
|
-
import { ConfigService } from '@rxap/config';
|
|
3
|
-
import { RXAP_LOGO_CONFIG } from './tokens';
|
|
4
|
-
import * as i0 from "@angular/core";
|
|
5
|
-
export class LogoService {
|
|
6
|
-
constructor() {
|
|
7
|
-
this.config = inject(ConfigService);
|
|
8
|
-
this.logo = signal(inject(RXAP_LOGO_CONFIG, { optional: true }) ??
|
|
9
|
-
this.config.get('logo', {
|
|
10
|
-
src: 'logo.png',
|
|
11
|
-
width: 192,
|
|
12
|
-
}));
|
|
13
|
-
this.src = computed(() => this.logo().src);
|
|
14
|
-
this.width = computed(() => this.logo().width);
|
|
15
|
-
this.height = computed(() => this.logo().height);
|
|
16
|
-
}
|
|
17
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: LogoService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
|
|
18
|
-
static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: LogoService }); }
|
|
19
|
-
}
|
|
20
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: LogoService, decorators: [{
|
|
21
|
-
type: Injectable
|
|
22
|
-
}] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nby5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9sb2dvLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUNMLFFBQVEsRUFDUixNQUFNLEVBQ04sVUFBVSxFQUNWLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBQzdDLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFVBQVUsQ0FBQzs7QUFHNUMsTUFBTSxPQUFPLFdBQVc7SUFEeEI7UUFHbUIsV0FBTSxHQUFHLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQztRQUNoQyxTQUFJLEdBQUcsTUFBTSxDQUMzQixNQUFNLENBQUMsZ0JBQWdCLEVBQUUsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLENBQUM7WUFDNUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFO2dCQUN0QixHQUFHLEVBQUUsVUFBVTtnQkFDZixLQUFLLEVBQUUsR0FBRzthQUNYLENBQUMsQ0FDSCxDQUFDO1FBRWMsUUFBRyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDdEMsVUFBSyxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDMUMsV0FBTSxHQUFHLFFBQVEsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUM7S0FFN0Q7OEdBZlksV0FBVztrSEFBWCxXQUFXOzsyRkFBWCxXQUFXO2tCQUR2QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgY29tcHV0ZWQsXG4gIGluamVjdCxcbiAgSW5qZWN0YWJsZSxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IENvbmZpZ1NlcnZpY2UgfSBmcm9tICdAcnhhcC9jb25maWcnO1xuaW1wb3J0IHsgUlhBUF9MT0dPX0NPTkZJRyB9IGZyb20gJy4vdG9rZW5zJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIExvZ29TZXJ2aWNlIHtcblxuICBwcml2YXRlIHJlYWRvbmx5IGNvbmZpZyA9IGluamVjdChDb25maWdTZXJ2aWNlKTtcbiAgcHVibGljIHJlYWRvbmx5IGxvZ28gPSBzaWduYWwoXG4gICAgaW5qZWN0KFJYQVBfTE9HT19DT05GSUcsIHsgb3B0aW9uYWw6IHRydWUgfSkgPz9cbiAgICB0aGlzLmNvbmZpZy5nZXQoJ2xvZ28nLCB7XG4gICAgICBzcmM6ICdsb2dvLnBuZycsXG4gICAgICB3aWR0aDogMTkyLFxuICAgIH0pLFxuICApO1xuXG4gIHB1YmxpYyByZWFkb25seSBzcmMgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmxvZ28oKS5zcmMpO1xuICBwdWJsaWMgcmVhZG9ubHkgd2lkdGggPSBjb21wdXRlZCgoKSA9PiB0aGlzLmxvZ28oKS53aWR0aCk7XG4gIHB1YmxpYyByZWFkb25seSBoZWlnaHQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmxvZ28oKS5oZWlnaHQpO1xuXG59XG4iXX0=
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, } from '@angular/core';
|
|
2
|
-
import { RouterOutlet } from '@angular/router';
|
|
3
|
-
import { BaseLayoutComponent } from '../base-layout/base-layout.component';
|
|
4
|
-
import { FooterComponent } from '../footer/footer.component';
|
|
5
|
-
import { HeaderComponent } from '../header/header.component';
|
|
6
|
-
import { NavigationProgressBarComponent } from '../navigation-progress-bar/navigation-progress-bar.component';
|
|
7
|
-
import * as i0 from "@angular/core";
|
|
8
|
-
export class MinimalLayoutComponent {
|
|
9
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: MinimalLayoutComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
10
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.0", type: MinimalLayoutComponent, isStandalone: true, selector: "rxap-minimal-layout", ngImport: i0, template: "<rxap-header class=\"z-10 w-full fixed top-0\"></rxap-header>\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n<router-outlet></router-outlet>\n<rxap-footer class=\"z-10 w-full fixed bottom-0\"></rxap-footer>\n", styles: [""], dependencies: [{ kind: "directive", type: RouterOutlet, selector: "router-outlet", inputs: ["name"], outputs: ["activate", "deactivate", "attach", "detach"], exportAs: ["outlet"] }, { kind: "component", type: NavigationProgressBarComponent, selector: "rxap-navigation-progress-bar" }, { kind: "component", type: HeaderComponent, selector: "rxap-header", inputs: ["color"] }, { kind: "component", type: FooterComponent, selector: "rxap-footer" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
11
|
-
}
|
|
12
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: MinimalLayoutComponent, decorators: [{
|
|
13
|
-
type: Component,
|
|
14
|
-
args: [{ selector: 'rxap-minimal-layout', standalone: true, imports: [RouterOutlet, BaseLayoutComponent, NavigationProgressBarComponent, HeaderComponent, FooterComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: "<rxap-header class=\"z-10 w-full fixed top-0\"></rxap-header>\n<rxap-navigation-progress-bar></rxap-navigation-progress-bar>\n<router-outlet></router-outlet>\n<rxap-footer class=\"z-10 w-full fixed bottom-0\"></rxap-footer>\n" }]
|
|
15
|
-
}] });
|
|
16
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWluaW1hbC1sYXlvdXQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9taW5pbWFsLWxheW91dC9taW5pbWFsLWxheW91dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL21pbmltYWwtbGF5b3V0L21pbmltYWwtbGF5b3V0LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxHQUNWLE1BQU0sZUFBZSxDQUFDO0FBQ3ZCLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvQyxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxzQ0FBc0MsQ0FBQztBQUMzRSxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzdELE9BQU8sRUFBRSw4QkFBOEIsRUFBRSxNQUFNLDhEQUE4RCxDQUFDOztBQVU5RyxNQUFNLE9BQU8sc0JBQXNCOzhHQUF0QixzQkFBc0I7a0dBQXRCLHNCQUFzQiwrRUNsQm5DLG1PQUlBLDBERFNhLFlBQVksMkpBQXVCLDhCQUE4Qix5RUFBRSxlQUFlLDJFQUFFLGVBQWU7OzJGQUtuRyxzQkFBc0I7a0JBUmxDLFNBQVM7K0JBQ0UscUJBQXFCLGNBQ25CLElBQUksV0FDUCxDQUFFLFlBQVksRUFBRSxtQkFBbUIsRUFBRSw4QkFBOEIsRUFBRSxlQUFlLEVBQUUsZUFBZSxDQUFFLG1CQUcvRix1QkFBdUIsQ0FBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBSb3V0ZXJPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9yb3V0ZXInO1xuaW1wb3J0IHsgQmFzZUxheW91dENvbXBvbmVudCB9IGZyb20gJy4uL2Jhc2UtbGF5b3V0L2Jhc2UtbGF5b3V0LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBGb290ZXJDb21wb25lbnQgfSBmcm9tICcuLi9mb290ZXIvZm9vdGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBIZWFkZXJDb21wb25lbnQgfSBmcm9tICcuLi9oZWFkZXIvaGVhZGVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uUHJvZ3Jlc3NCYXJDb21wb25lbnQgfSBmcm9tICcuLi9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyeGFwLW1pbmltYWwtbGF5b3V0JyxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogWyBSb3V0ZXJPdXRsZXQsIEJhc2VMYXlvdXRDb21wb25lbnQsIE5hdmlnYXRpb25Qcm9ncmVzc0JhckNvbXBvbmVudCwgSGVhZGVyQ29tcG9uZW50LCBGb290ZXJDb21wb25lbnQgXSxcbiAgdGVtcGxhdGVVcmw6ICcuL21pbmltYWwtbGF5b3V0LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmw6ICcuL21pbmltYWwtbGF5b3V0LmNvbXBvbmVudC5zY3NzJyxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG59KVxuZXhwb3J0IGNsYXNzIE1pbmltYWxMYXlvdXRDb21wb25lbnQge31cbiIsIjxyeGFwLWhlYWRlciBjbGFzcz1cInotMTAgdy1mdWxsIGZpeGVkIHRvcC0wXCI+PC9yeGFwLWhlYWRlcj5cbjxyeGFwLW5hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyPjwvcnhhcC1uYXZpZ2F0aW9uLXByb2dyZXNzLWJhcj5cbjxyb3V0ZXItb3V0bGV0Pjwvcm91dGVyLW91dGxldD5cbjxyeGFwLWZvb3RlciBjbGFzcz1cInotMTAgdy1mdWxsIGZpeGVkIGJvdHRvbS0wXCI+PC9yeGFwLWZvb3Rlcj5cbiJdfQ==
|
|
@@ -1,139 +0,0 @@
|
|
|
1
|
-
import { animate, style, transition, trigger, } from '@angular/animations';
|
|
2
|
-
import { NgClass, NgIf, } from '@angular/common';
|
|
3
|
-
import { ChangeDetectionStrategy, Component, computed, ElementRef, forwardRef, inject, input, Renderer2, signal, ViewEncapsulation, } from '@angular/core';
|
|
4
|
-
import { MatRippleModule } from '@angular/material/core';
|
|
5
|
-
import { MatDividerModule } from '@angular/material/divider';
|
|
6
|
-
import { MatIconModule } from '@angular/material/icon';
|
|
7
|
-
import { NavigationEnd, Router, RouterLink, RouterLinkActive, } from '@angular/router';
|
|
8
|
-
import { IconDirective } from '@rxap/material-directives/icon';
|
|
9
|
-
import { coerceArray } from '@rxap/utilities';
|
|
10
|
-
import { debounceTime, Subscription, } from 'rxjs';
|
|
11
|
-
import { filter, startWith, tap, } from 'rxjs/operators';
|
|
12
|
-
import { LayoutService } from '../../layout.service';
|
|
13
|
-
import { NavigationComponent } from '../navigation.component';
|
|
14
|
-
import * as i0 from "@angular/core";
|
|
15
|
-
import * as i1 from "@angular/material/core";
|
|
16
|
-
import * as i2 from "@angular/material/icon";
|
|
17
|
-
import * as i3 from "@angular/material/divider";
|
|
18
|
-
export class NavigationItemComponent {
|
|
19
|
-
constructor() {
|
|
20
|
-
this.level = input(0);
|
|
21
|
-
this.children = null;
|
|
22
|
-
this.item = input.required();
|
|
23
|
-
this.active = signal(false);
|
|
24
|
-
this.itemClasses = computed(() => {
|
|
25
|
-
let classes = `level-${this.level() * 4}`;
|
|
26
|
-
if (this.collapsed()) {
|
|
27
|
-
classes += ' invisible';
|
|
28
|
-
}
|
|
29
|
-
return classes;
|
|
30
|
-
});
|
|
31
|
-
this.layoutService = inject(LayoutService);
|
|
32
|
-
this.collapsed = computed(() => this.layoutService.collapsed());
|
|
33
|
-
this._subscription = new Subscription();
|
|
34
|
-
this.router = inject(Router);
|
|
35
|
-
this.elementRef = inject(ElementRef);
|
|
36
|
-
this.renderer = inject(Renderer2);
|
|
37
|
-
}
|
|
38
|
-
ngOnChanges(changes) {
|
|
39
|
-
if (changes['item']) {
|
|
40
|
-
const item = changes['item'].currentValue;
|
|
41
|
-
this.children =
|
|
42
|
-
item.children && item.children.length ? item.children : null;
|
|
43
|
-
}
|
|
44
|
-
}
|
|
45
|
-
ngAfterViewInit() {
|
|
46
|
-
this._subscription.add(this.router.events
|
|
47
|
-
.pipe(filter((event) => event instanceof NavigationEnd), debounceTime(100), startWith(true), tap(() => {
|
|
48
|
-
let isActive = true;
|
|
49
|
-
const urlParts = this.router.url.split('/');
|
|
50
|
-
if (urlParts[0] === '') {
|
|
51
|
-
urlParts[0] = '/';
|
|
52
|
-
}
|
|
53
|
-
const routerLink = coerceArray(this.item().routerLink).map(fragment => fragment.split('/')).flat();
|
|
54
|
-
if (routerLink[0] === '') {
|
|
55
|
-
routerLink[0] = '/';
|
|
56
|
-
}
|
|
57
|
-
for (let i = 0; i < routerLink.length; i++) {
|
|
58
|
-
if (urlParts[i] !== routerLink[i]) {
|
|
59
|
-
isActive = false;
|
|
60
|
-
break;
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
this.active.set(isActive);
|
|
64
|
-
if (isActive) {
|
|
65
|
-
this.renderer.addClass(this.elementRef.nativeElement, 'active');
|
|
66
|
-
}
|
|
67
|
-
else {
|
|
68
|
-
this.renderer.removeClass(this.elementRef.nativeElement, 'active');
|
|
69
|
-
}
|
|
70
|
-
}))
|
|
71
|
-
.subscribe());
|
|
72
|
-
}
|
|
73
|
-
ngOnDestroy() {
|
|
74
|
-
this._subscription?.unsubscribe();
|
|
75
|
-
}
|
|
76
|
-
// region type save item property
|
|
77
|
-
// required to check the type of the item property in the ngFor loop
|
|
78
|
-
isNavigationDividerItem(item) {
|
|
79
|
-
return item['divider'];
|
|
80
|
-
}
|
|
81
|
-
isNavigationItem(item) {
|
|
82
|
-
return !this.isNavigationDividerItem(item);
|
|
83
|
-
}
|
|
84
|
-
asNavigationItem(item) {
|
|
85
|
-
if (!this.isNavigationItem(item)) {
|
|
86
|
-
throw new Error('The item is not a NavigationItem');
|
|
87
|
-
}
|
|
88
|
-
return item;
|
|
89
|
-
}
|
|
90
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: NavigationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
91
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: NavigationItemComponent, isStandalone: true, selector: "li[rxap-navigation-item]", inputs: { level: { classPropertyName: "level", publicName: "level", isSignal: true, isRequired: false, transformFunction: null }, item: { classPropertyName: "item", publicName: "item", isSignal: true, isRequired: true, transformFunction: null } }, usesOnChanges: true, ngImport: i0, template: "<div [ngClass]=\"{\n 'border-l-4 text-accent-400 border-accent-600': active(),\n }\">\n <a [routerLink]=\"item().routerLink\"\n class=\"h-12 pl-4 pr-5 flex flex-row justify-between items-center gap-x-4\"\n matRipple\n routerLinkActive\n\n >\n <span\n [ngClass]=\"itemClasses()\"\n class=\"grow whitespace-nowrap\"\n >\n {{ item().label }}\n </span>\n <mat-icon *ngIf=\"item().icon as icon\" [rxapIcon]=\"icon\"></mat-icon>\n </a>\n\n <ng-container *ngIf=\"item().children?.length && active()\">\n\n <mat-divider></mat-divider>\n\n <ul [@sub-nav]\n [items]=\"children ?? []\"\n [level]=\"level() + 1\"\n rxap-navigation\n >\n </ul>\n\n <mat-divider></mat-divider>\n\n </ng-container>\n</div>\n", styles: [""], dependencies: [{ kind: "directive", type: i0.forwardRef(() => RouterLinkActive), selector: "[routerLinkActive]", inputs: ["routerLinkActiveOptions", "ariaCurrentWhenActive", "routerLinkActive"], outputs: ["isActiveChange"], exportAs: ["routerLinkActive"] }, { kind: "directive", type: i0.forwardRef(() => RouterLink), selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "routerLink"] }, { kind: "directive", type: i0.forwardRef(() => NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatRippleModule) }, { kind: "directive", type: i0.forwardRef(() => i1.MatRipple), selector: "[mat-ripple], [matRipple]", inputs: ["matRippleColor", "matRippleUnbounded", "matRippleCentered", "matRippleRadius", "matRippleAnimation", "matRippleDisabled", "matRippleTrigger"], exportAs: ["matRipple"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatIconModule) }, { kind: "component", type: i0.forwardRef(() => i2.MatIcon), selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "directive", type: i0.forwardRef(() => IconDirective), selector: "mat-icon[rxapIcon]", inputs: ["rxapIcon"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatDividerModule) }, { kind: "component", type: i0.forwardRef(() => i3.MatDivider), selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i0.forwardRef(() => NavigationComponent), selector: "ul[rxap-navigation]", inputs: ["items", "level", "root"] }, { kind: "directive", type: i0.forwardRef(() => NgClass), selector: "[ngClass]", inputs: ["class", "ngClass"] }], animations: [
|
|
92
|
-
trigger('sub-nav', [
|
|
93
|
-
transition(':enter', [
|
|
94
|
-
style({
|
|
95
|
-
display: 'block',
|
|
96
|
-
height: '0',
|
|
97
|
-
overflow: 'hidden',
|
|
98
|
-
}),
|
|
99
|
-
animate(150, style({ height: '*' })),
|
|
100
|
-
]),
|
|
101
|
-
transition(':leave', [
|
|
102
|
-
style({ overflow: 'hidden' }),
|
|
103
|
-
animate(300, style({ height: '0' })),
|
|
104
|
-
style({ display: 'none' }),
|
|
105
|
-
]),
|
|
106
|
-
]),
|
|
107
|
-
], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
108
|
-
}
|
|
109
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: NavigationItemComponent, decorators: [{
|
|
110
|
-
type: Component,
|
|
111
|
-
args: [{ selector: 'li[rxap-navigation-item]', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, animations: [
|
|
112
|
-
trigger('sub-nav', [
|
|
113
|
-
transition(':enter', [
|
|
114
|
-
style({
|
|
115
|
-
display: 'block',
|
|
116
|
-
height: '0',
|
|
117
|
-
overflow: 'hidden',
|
|
118
|
-
}),
|
|
119
|
-
animate(150, style({ height: '*' })),
|
|
120
|
-
]),
|
|
121
|
-
transition(':leave', [
|
|
122
|
-
style({ overflow: 'hidden' }),
|
|
123
|
-
animate(300, style({ height: '0' })),
|
|
124
|
-
style({ display: 'none' }),
|
|
125
|
-
]),
|
|
126
|
-
]),
|
|
127
|
-
], standalone: true, imports: [
|
|
128
|
-
RouterLinkActive,
|
|
129
|
-
RouterLink,
|
|
130
|
-
NgIf,
|
|
131
|
-
MatRippleModule,
|
|
132
|
-
MatIconModule,
|
|
133
|
-
IconDirective,
|
|
134
|
-
MatDividerModule,
|
|
135
|
-
forwardRef(() => NavigationComponent),
|
|
136
|
-
NgClass,
|
|
137
|
-
], template: "<div [ngClass]=\"{\n 'border-l-4 text-accent-400 border-accent-600': active(),\n }\">\n <a [routerLink]=\"item().routerLink\"\n class=\"h-12 pl-4 pr-5 flex flex-row justify-between items-center gap-x-4\"\n matRipple\n routerLinkActive\n\n >\n <span\n [ngClass]=\"itemClasses()\"\n class=\"grow whitespace-nowrap\"\n >\n {{ item().label }}\n </span>\n <mat-icon *ngIf=\"item().icon as icon\" [rxapIcon]=\"icon\"></mat-icon>\n </a>\n\n <ng-container *ngIf=\"item().children?.length && active()\">\n\n <mat-divider></mat-divider>\n\n <ul [@sub-nav]\n [items]=\"children ?? []\"\n [level]=\"level() + 1\"\n rxap-navigation\n >\n </ul>\n\n <mat-divider></mat-divider>\n\n </ng-container>\n</div>\n" }]
|
|
138
|
-
}] });
|
|
139
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvbGF5b3V0L3NyYy9saWIvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLWl0ZW0vbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudC50cyIsIi4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2FuZ3VsYXIvbGF5b3V0L3NyYy9saWIvbmF2aWdhdGlvbi9uYXZpZ2F0aW9uLWl0ZW0vbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCxPQUFPLEVBQ1AsS0FBSyxFQUNMLFVBQVUsRUFDVixPQUFPLEdBQ1IsTUFBTSxxQkFBcUIsQ0FBQztBQUM3QixPQUFPLEVBQ0wsT0FBTyxFQUNQLElBQUksR0FDTCxNQUFNLGlCQUFpQixDQUFDO0FBQ3pCLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFFBQVEsRUFDUixVQUFVLEVBQ1YsVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBR0wsU0FBUyxFQUNULE1BQU0sRUFHTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQ3pELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQ0wsYUFBYSxFQUNiLE1BQU0sRUFDTixVQUFVLEVBQ1YsZ0JBQWdCLEdBQ2pCLE1BQU0saUJBQWlCLENBQUM7QUFDekIsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQy9ELE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUM5QyxPQUFPLEVB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QUUsR0FBRztvQ0FDWCxRQUFRLEVBQUUsUUFBUTtpQ0FDbkIsQ0FBQztnQ0FDRixPQUFPLENBQUMsR0FBRyxFQUFFLEtBQUssQ0FBQyxFQUFFLE1BQU0sRUFBRSxHQUFHLEVBQUUsQ0FBQyxDQUFDOzZCQUNyQyxDQUFDOzRCQUNGLFVBQVUsQ0FBQyxRQUFRLEVBQUU7Z0NBQ25CLEtBQUssQ0FBQyxFQUFFLFFBQVEsRUFBRSxRQUFRLEVBQUUsQ0FBQztnQ0FDN0IsT0FBTyxDQUFDLEdBQUcsRUFBRSxLQUFLLENBQUMsRUFBRSxNQUFNLEVBQUUsR0FBRyxFQUFFLENBQUMsQ0FBQztnQ0FDcEMsS0FBSyxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDOzZCQUMzQixDQUFDO3lCQUNILENBQUM7cUJBQ0gsY0FDVyxJQUFJLFdBQ1A7d0JBQ1AsZ0JBQWdCO3dCQUNoQixVQUFVO3dCQUNWLElBQUk7d0JBQ0osZUFBZTt3QkFDZixhQUFhO3dCQUNiLGFBQWE7d0JBQ2IsZ0JBQWdCO3dCQUNoQixVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsbUJBQW1CLENBQUM7d0JBQ3JDLE9BQU87cUJBQ1IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICBhbmltYXRlLFxuICBzdHlsZSxcbiAgdHJhbnNpdGlvbixcbiAgdHJpZ2dlcixcbn0gZnJvbSAnQGFuZ3VsYXIvYW5pbWF0aW9ucyc7XG5pbXBvcnQge1xuICBOZ0NsYXNzLFxuICBOZ0lmLFxufSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgY29tcHV0ZWQsXG4gIEVsZW1lbnRSZWYsXG4gIGZvcndhcmRSZWYsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIE9uQ2hhbmdlcyxcbiAgT25EZXN0cm95LFxuICBSZW5kZXJlcjIsXG4gIHNpZ25hbCxcbiAgU2ltcGxlQ2hhbmdlcyxcbiAgdmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbiwgQWZ0ZXJWaWV3SW5pdCxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBNYXRSaXBwbGVNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9jb3JlJztcbmltcG9ydCB7IE1hdERpdmlkZXJNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9kaXZpZGVyJztcbmltcG9ydCB7IE1hdEljb25Nb2R1bGUgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9pY29uJztcbmltcG9ydCB7XG4gIE5hdmlnYXRpb25FbmQsXG4gIFJvdXRlcixcbiAgUm91dGVyTGluayxcbiAgUm91dGVyTGlua0FjdGl2ZSxcbn0gZnJvbSAnQGFuZ3VsYXIvcm91dGVyJztcbmltcG9ydCB7IEljb25EaXJlY3RpdmUgfSBmcm9tICdAcnhhcC9tYXRlcmlhbC1kaXJlY3RpdmVzL2ljb24nO1xuaW1wb3J0IHsgY29lcmNlQXJyYXkgfSBmcm9tICdAcnhhcC91dGlsaXRpZXMnO1xuaW1wb3J0IHtcbiAgZGVib3VuY2VUaW1lLFxuICBTdWJzY3JpcHRpb24sXG59IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtcbiAgZmlsdGVyLFxuICBzdGFydFdpdGgsXG4gIHRhcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uLy4uL2xheW91dC5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIE5hdmlnYXRpb24sXG4gIE5hdmlnYXRpb25EaXZpZGVySXRlbSxcbiAgTmF2aWdhdGlvbkl0ZW0sXG59IGZyb20gJy4uL25hdmlnYXRpb24taXRlbSc7XG5pbXBvcnQgeyBOYXZpZ2F0aW9uQ29tcG9uZW50IH0gZnJvbSAnLi4vbmF2aWdhdGlvbi5jb21wb25lbnQnO1xuXG5AQ29tcG9uZW50KHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9jb21wb25lbnQtc2VsZWN0b3JcbiAgc2VsZWN0b3I6ICdsaVtyeGFwLW5hdmlnYXRpb24taXRlbV0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL25hdmlnYXRpb24taXRlbS5jb21wb25lbnQuc2NzcycgXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGFuaW1hdGlvbnM6IFtcbiAgICB0cmlnZ2VyKCdzdWItbmF2JywgW1xuICAgICAgdHJhbnNpdGlvbignOmVudGVyJywgW1xuICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgZGlzcGxheTogJ2Jsb2NrJyxcbiAgICAgICAgICBoZWlnaHQ6ICcwJyxcbiAgICAgICAgICBvdmVyZmxvdzogJ2hpZGRlbicsXG4gICAgICAgIH0pLFxuICAgICAgICBhbmltYXRlKDE1MCwgc3R5bGUoeyBoZWlnaHQ6ICcqJyB9KSksXG4gICAgICBdKSxcbiAgICAgIHRyYW5zaXRpb24oJzpsZWF2ZScsIFtcbiAgICAgICAgc3R5bGUoeyBvdmVyZmxvdzogJ2hpZGRlbicgfSksXG4gICAgICAgIGFuaW1hdGUoMzAwLCBzdHlsZSh7IGhlaWdodDogJzAnIH0pKSxcbiAgICAgICAgc3R5bGUoeyBkaXNwbGF5OiAnbm9uZScgfSksXG4gICAgICBdKSxcbiAgICBdKSxcbiAgXSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIFJvdXRlckxpbmtBY3RpdmUsXG4gICAgUm91dGVyTGluayxcbiAgICBOZ0lmLFxuICAgIE1hdFJpcHBsZU1vZHVsZSxcbiAgICBNYXRJY29uTW9kdWxlLFxuICAgIEljb25EaXJlY3RpdmUsXG4gICAgTWF0RGl2aWRlck1vZHVsZSxcbiAgICBmb3J3YXJkUmVmKCgpID0+IE5hdmlnYXRpb25Db21wb25lbnQpLFxuICAgIE5nQ2xhc3MsXG4gIF1cbn0pXG5leHBvcnQgY2xhc3MgTmF2aWdhdGlvbkl0ZW1Db21wb25lbnRcbiAgaW1wbGVtZW50cyBPbkNoYW5nZXMsIE9uRGVzdHJveSwgQWZ0ZXJWaWV3SW5pdCB7XG5cbiAgcHVibGljIHJlYWRvbmx5IGxldmVsID0gaW5wdXQoMCk7XG5cbiAgcHVibGljIGNoaWxkcmVuOiBOYXZpZ2F0aW9uIHwgbnVsbCA9IG51bGw7XG5cbiAgcHVibGljIHJlYWRvbmx5IGl0ZW0gPSBpbnB1dC5yZXF1aXJlZDxOYXZpZ2F0aW9uSXRlbT4oKTtcbiAgcHVibGljIHJlYWRvbmx5IGFjdGl2ZSA9IHNpZ25hbChmYWxzZSk7XG5cbiAgcHVibGljIHJlYWRvbmx5IGl0ZW1DbGFzc2VzID0gY29tcHV0ZWQoKCkgPT4ge1xuICAgIGxldCBjbGFzc2VzID0gYGxldmVsLSR7IHRoaXMubGV2ZWwoKSAqIDQgfWA7XG4gICAgaWYgKHRoaXMuY29sbGFwc2VkKCkpIHtcbiAgICAgIGNsYXNzZXMgKz0gJyBpbnZpc2libGUnO1xuICAgIH1cbiAgICByZXR1cm4gY2xhc3NlcztcbiAgfSk7XG5cbiAgcHJpdmF0ZSByZWFkb25seSBsYXlvdXRTZXJ2aWNlID0gaW5qZWN0KExheW91dFNlcnZpY2UpO1xuXG4gIHB1YmxpYyByZWFkb25seSBjb2xsYXBzZWQgPSBjb21wdXRlZCgoKSA9PiB0aGlzLmxheW91dFNlcnZpY2UuY29sbGFwc2VkKCkpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgX3N1YnNjcmlwdGlvbiA9IG5ldyBTdWJzY3JpcHRpb24oKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IHJvdXRlciA9IGluamVjdChSb3V0ZXIpO1xuICBwcml2YXRlIHJlYWRvbmx5IGVsZW1lbnRSZWYgPSBpbmplY3QoRWxlbWVudFJlZik7XG4gIHByaXZhdGUgcmVhZG9ubHkgcmVuZGVyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcblxuICBwdWJsaWMgbmdPbkNoYW5nZXMoY2hhbmdlczogU2ltcGxlQ2hhbmdlcykge1xuICAgIGlmIChjaGFuZ2VzWydpdGVtJ10pIHtcbiAgICAgIGNvbnN0IGl0ZW06IE5hdmlnYXRpb25JdGVtID0gY2hhbmdlc1snaXRlbSddLmN1cnJlbnRWYWx1ZTtcbiAgICAgIHRoaXMuY2hpbGRyZW4gPVxuICAgICAgICBpdGVtLmNoaWxkcmVuICYmIGl0ZW0uY2hpbGRyZW4ubGVuZ3RoID8gaXRlbS5jaGlsZHJlbiA6IG51bGw7XG4gICAgfVxuICB9XG5cbiAgcHVibGljIG5nQWZ0ZXJWaWV3SW5pdCgpIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24uYWRkKFxuICAgICAgdGhpcy5yb3V0ZXIuZXZlbnRzXG4gICAgICAgICAgLnBpcGUoXG4gICAgICAgICAgICBmaWx0ZXIoKGV2ZW50KSA9PiBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25FbmQpLFxuICAgICAgICAgICAgZGVib3VuY2VUaW1lKDEwMCksXG4gICAgICAgICAgICBzdGFydFdpdGgodHJ1ZSksXG4gICAgICAgICAgICB0YXAoKCkgPT4ge1xuICAgICAgICAgICAgICBsZXQgaXNBY3RpdmUgPSB0cnVlO1xuICAgICAgICAgICAgICBjb25zdCB1cmxQYXJ0cyA9IHRoaXMucm91dGVyLnVybC5zcGxpdCgnLycpO1xuICAgICAgICAgICAgICBpZiAodXJsUGFydHNbMF0gPT09ICcnKSB7XG4gICAgICAgICAgICAgICAgdXJsUGFydHNbMF0gPSAnLyc7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgY29uc3Qgcm91dGVyTGluayA9IGNvZXJjZUFycmF5KHRoaXMuaXRlbSgpLnJvdXRlckxpbmspLm1hcChmcmFnbWVudCA9PiBmcmFnbWVudC5zcGxpdCgnLycpKS5mbGF0KCk7XG4gICAgICAgICAgICAgIGlmIChyb3V0ZXJMaW5rWzBdID09PSAnJykge1xuICAgICAgICAgICAgICAgIHJvdXRlckxpbmtbMF0gPSAnLyc7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCByb3V0ZXJMaW5rLmxlbmd0aDsgaSsrKSB7XG4gICAgICAgICAgICAgICAgaWYgKHVybFBhcnRzW2ldICE9PSByb3V0ZXJMaW5rW2ldKSB7XG4gICAgICAgICAgICAgICAgICBpc0FjdGl2ZSA9IGZhbHNlO1xuICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgIHRoaXMuYWN0aXZlLnNldChpc0FjdGl2ZSk7XG4gICAgICAgICAgICAgIGlmIChpc0FjdGl2ZSkge1xuICAgICAgICAgICAgICAgIHRoaXMucmVuZGVyZXIuYWRkQ2xhc3ModGhpcy5lbGVtZW50UmVmLm5hdGl2ZUVsZW1lbnQsICdhY3RpdmUnKTtcbiAgICAgICAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgICAgICB0aGlzLnJlbmRlcmVyLnJlbW92ZUNsYXNzKHRoaXMuZWxlbWVudFJlZi5uYXRpdmVFbGVtZW50LCAnYWN0aXZlJyk7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgIClcbiAgICAgICAgICAuc3Vic2NyaWJlKCksXG4gICAgKTtcbiAgfVxuXG4gIHB1YmxpYyBuZ09uRGVzdHJveSgpIHtcbiAgICB0aGlzLl9zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gIH1cblxuICAvLyByZWdpb24gdHlwZSBzYXZlIGl0ZW0gcHJvcGVydHlcblxuICAvLyByZXF1aXJlZCB0byBjaGVjayB0aGUgdHlwZSBvZiB0aGUgaXRlbSBwcm9wZXJ0eSBpbiB0aGUgbmdGb3IgbG9vcFxuXG4gIHB1YmxpYyBpc05hdmlnYXRpb25EaXZpZGVySXRlbShcbiAgICBpdGVtOiBOYXZpZ2F0aW9uSXRlbSB8IE5hdmlnYXRpb25EaXZpZGVySXRlbSxcbiAgKTogaXRlbSBpcyBOYXZpZ2F0aW9uRGl2aWRlckl0ZW0ge1xuICAgIHJldHVybiAoaXRlbSBhcyBhbnkpWydkaXZpZGVyJ107XG4gIH1cblxuICBwdWJsaWMgaXNOYXZpZ2F0aW9uSXRlbShcbiAgICBpdGVtOiBOYXZpZ2F0aW9uSXRlbSB8IE5hdmlnYXRpb25EaXZpZGVySXRlbSxcbiAgKTogaXRlbSBpcyBOYXZpZ2F0aW9uSXRlbSB7XG4gICAgcmV0dXJuICF0aGlzLmlzTmF2aWdhdGlvbkRpdmlkZXJJdGVtKGl0ZW0pO1xuICB9XG5cbiAgcHVibGljIGFzTmF2aWdhdGlvbkl0ZW0oXG4gICAgaXRlbTogTmF2aWdhdGlvbkl0ZW0gfCBOYXZpZ2F0aW9uRGl2aWRlckl0ZW0sXG4gICk6IE5hdmlnYXRpb25JdGVtIHtcbiAgICBpZiAoIXRoaXMuaXNOYXZpZ2F0aW9uSXRlbShpdGVtKSkge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdUaGUgaXRlbSBpcyBub3QgYSBOYXZpZ2F0aW9uSXRlbScpO1xuICAgIH1cbiAgICByZXR1cm4gaXRlbTtcbiAgfVxuXG4gIC8vIGVuZHJlZ2lvblxufVxuIiwiPGRpdiBbbmdDbGFzc109XCJ7XG4gICAgICdib3JkZXItbC00IHRleHQtYWNjZW50LTQwMCBib3JkZXItYWNjZW50LTYwMCc6IGFjdGl2ZSgpLFxuICAgICB9XCI+XG4gIDxhIFtyb3V0ZXJMaW5rXT1cIml0ZW0oKS5yb3V0ZXJMaW5rXCJcbiAgICAgY2xhc3M9XCJoLTEyIHBsLTQgcHItNSBmbGV4IGZsZXgtcm93IGp1c3RpZnktYmV0d2VlbiBpdGVtcy1jZW50ZXIgZ2FwLXgtNFwiXG4gICAgIG1hdFJpcHBsZVxuICAgICByb3V0ZXJMaW5rQWN0aXZlXG5cbiAgPlxuICAgIDxzcGFuXG4gICAgICBbbmdDbGFzc109XCJpdGVtQ2xhc3NlcygpXCJcbiAgICAgIGNsYXNzPVwiZ3JvdyB3aGl0ZXNwYWNlLW5vd3JhcFwiXG4gICAgPlxuICAgICAge3sgaXRlbSgpLmxhYmVsIH19XG4gICAgPC9zcGFuPlxuICAgIDxtYXQtaWNvbiAqbmdJZj1cIml0ZW0oKS5pY29uIGFzIGljb25cIiBbcnhhcEljb25dPVwiaWNvblwiPjwvbWF0LWljb24+XG4gIDwvYT5cblxuICA8bmctY29udGFpbmVyICpuZ0lmPVwiaXRlbSgpLmNoaWxkcmVuPy5sZW5ndGggJiYgYWN0aXZlKClcIj5cblxuICAgIDxtYXQtZGl2aWRlcj48L21hdC1kaXZpZGVyPlxuXG4gICAgPHVsIFtAc3ViLW5hdl1cbiAgICAgICAgW2l0ZW1zXT1cImNoaWxkcmVuID8/IFtdXCJcbiAgICAgICAgW2xldmVsXT1cImxldmVsKCkgKyAxXCJcbiAgICAgICAgcnhhcC1uYXZpZ2F0aW9uXG4gICAgPlxuICAgIDwvdWw+XG5cbiAgICA8bWF0LWRpdmlkZXI+PC9tYXQtZGl2aWRlcj5cblxuICA8L25nLWNvbnRhaW5lcj5cbjwvZGl2PlxuIl19
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export function IsNavigationDividerItem(item) {
|
|
2
|
-
return !!item && !!item['divider'];
|
|
3
|
-
}
|
|
4
|
-
export function IsNavigationInsertItem(item) {
|
|
5
|
-
return !!item && !!item['insert'];
|
|
6
|
-
}
|
|
7
|
-
export function IsNavigationItem(item) {
|
|
8
|
-
return (!!item && !!item['routerLink'] && !!item['label']);
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1pdGVtLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9uYXZpZ2F0aW9uL25hdmlnYXRpb24taXRlbS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFxQkEsTUFBTSxVQUFVLHVCQUF1QixDQUNyQyxJQUFTO0lBRVQsT0FBTyxDQUFDLENBQUMsSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDckMsQ0FBQztBQU1ELE1BQU0sVUFBVSxzQkFBc0IsQ0FDcEMsSUFBUztJQUVULE9BQU8sQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQ3BDLENBQUM7QUFvQkQsTUFBTSxVQUFVLGdCQUFnQixDQUFDLElBQVM7SUFDeEMsT0FBTyxDQUNMLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUNsRCxDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEljb25Db25maWcgfSBmcm9tICdAcnhhcC91dGlsaXRpZXMnO1xuaW1wb3J0IHtcbiAgQWJzdHJhY3RUeXBlLFxuICBJbmplY3Rpb25Ub2tlbixcbiAgVHlwZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBPYnNlcnZhYmxlIH0gZnJvbSAncnhqcyc7XG5cbmV4cG9ydCB0eXBlIE5hdmlnYXRpb24gPSBBcnJheTxOYXZpZ2F0aW9uSXRlbSB8IE5hdmlnYXRpb25EaXZpZGVySXRlbT47XG5cbmV4cG9ydCB0eXBlIE5hdmlnYXRpb25XaXRoSW5zZXJ0cyA9IEFycmF5PFxuICB8IE5hdmlnYXRpb25JdGVtPE5hdmlnYXRpb25XaXRoSW5zZXJ0cz5cbiAgfCBOYXZpZ2F0aW9uRGl2aWRlckl0ZW1cbiAgfCBOYXZpZ2F0aW9uSW5zZXJ0SXRlbVxuPjtcblxuZXhwb3J0IGludGVyZmFjZSBOYXZpZ2F0aW9uRGl2aWRlckl0ZW0ge1xuICBkaXZpZGVyOiBib29sZWFuO1xuICB0aXRsZT86IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIElzTmF2aWdhdGlvbkRpdmlkZXJJdGVtKFxuICBpdGVtOiBhbnksXG4pOiBpdGVtIGlzIE5hdmlnYXRpb25EaXZpZGVySXRlbSB7XG4gIHJldHVybiAhIWl0ZW0gJiYgISFpdGVtWydkaXZpZGVyJ107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF2aWdhdGlvbkluc2VydEl0ZW0ge1xuICBpbnNlcnQ6IHN0cmluZztcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIElzTmF2aWdhdGlvbkluc2VydEl0ZW0oXG4gIGl0ZW06IGFueSxcbik6IGl0ZW0gaXMgTmF2aWdhdGlvbkluc2VydEl0ZW0ge1xuICByZXR1cm4gISFpdGVtICYmICEhaXRlbVsnaW5zZXJ0J107XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgTmF2aWdhdGlvblN0YXR1cyB7XG4gIGlzVmlzaWJsZShcbiAgICBuYXZpZ2F0aW9uSXRlbTogTmF2aWdhdGlvbkl0ZW0sXG4gICk6IE9ic2VydmFibGU8Ym9vbGVhbj4gfCBQcm9taXNlPGJvb2xlYW4+IHwgYm9vbGVhbjtcbn1cblxuZXhwb3J0IGludGVyZmFjZSBOYXZpZ2F0aW9uSXRlbTxDaGlsZHJlbiA9IE5hdmlnYXRpb24+IGV4dGVuZHMgUmVjb3JkPHN0cmluZywgdW5rbm93bj4ge1xuICByb3V0ZXJMaW5rOiBzdHJpbmdbXSB8IHN0cmluZztcbiAgbGFiZWw6IHN0cmluZztcbiAgY2hpbGRyZW4/OiBDaGlsZHJlbjtcbiAgaWNvbj86IEljb25Db25maWc7XG4gIHN0YXR1cz86IEFycmF5PFxuICAgIHwgVHlwZTxOYXZpZ2F0aW9uU3RhdHVzPlxuICAgIHwgSW5qZWN0aW9uVG9rZW48TmF2aWdhdGlvblN0YXR1cz5cbiAgICB8IEFic3RyYWN0VHlwZTxOYXZpZ2F0aW9uU3RhdHVzPlxuICA+O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gSXNOYXZpZ2F0aW9uSXRlbShpdGVtOiBhbnkpOiBpdGVtIGlzIE5hdmlnYXRpb25JdGVtIHtcbiAgcmV0dXJuIChcbiAgICAhIWl0ZW0gJiYgISFpdGVtWydyb3V0ZXJMaW5rJ10gJiYgISFpdGVtWydsYWJlbCddXG4gICk7XG59XG4iXX0=
|
|
@@ -1,57 +0,0 @@
|
|
|
1
|
-
import { AsyncPipe, NgFor, NgIf, } from '@angular/common';
|
|
2
|
-
import { ChangeDetectionStrategy, Component, computed, forwardRef, inject, INJECTOR, input, runInInjectionContext, ViewEncapsulation, } from '@angular/core';
|
|
3
|
-
import { toSignal } from '@angular/core/rxjs-interop';
|
|
4
|
-
import { MatDividerModule } from '@angular/material/divider';
|
|
5
|
-
import { LayoutService } from '../layout.service';
|
|
6
|
-
import { NavigationService } from '../navigation.service';
|
|
7
|
-
import { NavigationItemComponent } from './navigation-item/navigation-item.component';
|
|
8
|
-
import * as i0 from "@angular/core";
|
|
9
|
-
import * as i1 from "@angular/material/divider";
|
|
10
|
-
export class NavigationComponent {
|
|
11
|
-
constructor() {
|
|
12
|
-
this.items = input();
|
|
13
|
-
this.level = input(0);
|
|
14
|
-
this.navigationService = inject(NavigationService);
|
|
15
|
-
this.layoutService = inject(LayoutService);
|
|
16
|
-
this.collapsed = computed(() => this.layoutService.collapsed());
|
|
17
|
-
this.navigationItems = computed(() => this.items() ?? []);
|
|
18
|
-
this.root = input(false);
|
|
19
|
-
this.injector = inject(INJECTOR);
|
|
20
|
-
}
|
|
21
|
-
ngOnInit() {
|
|
22
|
-
if (this.root()) {
|
|
23
|
-
runInInjectionContext(this.injector, () => {
|
|
24
|
-
this.navigationItems = toSignal(this.navigationService.config$, { initialValue: [] });
|
|
25
|
-
});
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
// region type save item property
|
|
29
|
-
// required to check the type of the item property in the ngFor loop
|
|
30
|
-
isNavigationDividerItem(item) {
|
|
31
|
-
return item['divider'];
|
|
32
|
-
}
|
|
33
|
-
isNavigationItem(item) {
|
|
34
|
-
return !this.isNavigationDividerItem(item);
|
|
35
|
-
}
|
|
36
|
-
asNavigationItem(item) {
|
|
37
|
-
if (!this.isNavigationItem(item)) {
|
|
38
|
-
throw new Error('The item is not a NavigationItem');
|
|
39
|
-
}
|
|
40
|
-
return item;
|
|
41
|
-
}
|
|
42
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: NavigationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
43
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.0", type: NavigationComponent, isStandalone: true, selector: "ul[rxap-navigation]", inputs: { items: { classPropertyName: "items", publicName: "items", isSignal: true, isRequired: false, transformFunction: null }, level: { classPropertyName: "level", publicName: "level", isSignal: true, isRequired: false, transformFunction: null }, root: { classPropertyName: "root", publicName: "root", isSignal: true, isRequired: false, transformFunction: null } }, host: { classAttribute: "list-none dark:text-neutral-400 text-neutral-700" }, ngImport: i0, template: "<ng-template [ngForOf]=\"navigationItems()\" let-item ngFor>\n <ng-template [ngIf]=\"isNavigationDividerItem(item)\">\n <mat-divider></mat-divider>\n <div *ngIf=\"!collapsed() && item.title\" class=\"pl-5 h-6\">\n {{item.title}}\n </div>\n </ng-template>\n <ng-template [ngIf]=\"isNavigationItem(item)\">\n <li [item]=\"asNavigationItem(item)\"\n [level]=\"level()\"\n class=\"dark:hover:text-white hover:text-black\"\n rxap-navigation-item>\n </li>\n </ng-template>\n</ng-template>\n", styles: [""], dependencies: [{ kind: "directive", type: i0.forwardRef(() => NgFor), selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i0.forwardRef(() => NgIf), selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: i0.forwardRef(() => MatDividerModule) }, { kind: "component", type: i0.forwardRef(() => i1.MatDivider), selector: "mat-divider", inputs: ["vertical", "inset"] }, { kind: "component", type: i0.forwardRef(() => NavigationItemComponent), selector: "li[rxap-navigation-item]", inputs: ["level", "item"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
|
|
44
|
-
}
|
|
45
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: NavigationComponent, decorators: [{
|
|
46
|
-
type: Component,
|
|
47
|
-
args: [{ selector: 'ul[rxap-navigation]', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, standalone: true, host: {
|
|
48
|
-
class: 'list-none dark:text-neutral-400 text-neutral-700',
|
|
49
|
-
}, imports: [
|
|
50
|
-
NgFor,
|
|
51
|
-
NgIf,
|
|
52
|
-
MatDividerModule,
|
|
53
|
-
forwardRef(() => NavigationItemComponent),
|
|
54
|
-
AsyncPipe,
|
|
55
|
-
], template: "<ng-template [ngForOf]=\"navigationItems()\" let-item ngFor>\n <ng-template [ngIf]=\"isNavigationDividerItem(item)\">\n <mat-divider></mat-divider>\n <div *ngIf=\"!collapsed() && item.title\" class=\"pl-5 h-6\">\n {{item.title}}\n </div>\n </ng-template>\n <ng-template [ngIf]=\"isNavigationItem(item)\">\n <li [item]=\"asNavigationItem(item)\"\n [level]=\"level()\"\n class=\"dark:hover:text-white hover:text-black\"\n rxap-navigation-item>\n </li>\n </ng-template>\n</ng-template>\n" }]
|
|
56
|
-
}] });
|
|
57
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL25hdmlnYXRpb24vbmF2aWdhdGlvbi5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL25hdmlnYXRpb24vbmF2aWdhdGlvbi5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQ0wsU0FBUyxFQUNULEtBQUssRUFDTCxJQUFJLEdBQ0wsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxRQUFRLEVBQ1IsVUFBVSxFQUNWLE1BQU0sRUFDTixRQUFRLEVBQ1IsS0FBSyxFQUVMLHFCQUFxQixFQUNyQixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLFFBQVEsRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3RELE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzdELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQU0xRCxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSw2Q0FBNkMsQ0FBQzs7O0FBc0J0RixNQUFNLE9BQU8sbUJBQW1CO0lBcEJoQztRQXNCUyxVQUFLLEdBQUcsS0FBSyxFQUFjLENBQUM7UUFFNUIsVUFBSyxHQUFHLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUVQLHNCQUFpQixHQUFHLE1BQU0sQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBRTlDLGtCQUFhLEdBQUcsTUFBTSxDQUFDLGFBQWEsQ0FBQyxDQUFDO1FBRXZDLGNBQVMsR0FBRyxRQUFRLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxDQUFDO1FBRXBFLG9CQUFlLEdBQUcsUUFBUSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztRQUU1QyxTQUFJLEdBQUcsS0FBSyxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRW5CLGFBQVEsR0FBRyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUM7S0FtQzlDO0lBakNRLFFBQVE7UUFDYixJQUFJLElBQUksQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDO1lBQ2hCLHFCQUFxQixDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsR0FBRyxFQUFFO2dCQUN4QyxJQUFJLENBQUMsZUFBZSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsaUJBQWlCLENBQUMsT0FBTyxFQUFFLEVBQUUsWUFBWSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7WUFDeEYsQ0FBQyxDQUFDLENBQUM7UUFDTCxDQUFDO0lBQ0gsQ0FBQztJQUNELGlDQUFpQztJQUVqQyxvRUFBb0U7SUFFN0QsdUJBQXVCLENBQzVCLElBQTRDO1FBRTVDLE9BQVEsSUFBWSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQ2xDLENBQUM7SUFFTSxnQkFBZ0IsQ0FDckIsSUFBNEM7UUFFNUMsT0FBTyxDQUFDLElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRU0sZ0JBQWdCLENBQ3JCLElBQTRDO1FBRTVDLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQztZQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLGtDQUFrQyxDQUFDLENBQUM7UUFDdEQsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDO0lBQ2QsQ0FBQzs4R0FoRFUsbUJBQW1CO2tHQUFuQixtQkFBbUIsOGdCQ2hEaEMsbWhCQWVBLDhFRDBCSSxLQUFLLHdJQUNMLElBQUksaUhBQ0osZ0JBQWdCLDZLQUNDLHVCQUF1Qjs7MkZBSS9CLG1CQUFtQjtrQkFwQi9CLFNBQVM7K0JBRUUscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksY0FDekIsSUFBSSxRQUVWO3dCQUNKLEtBQUssRUFBRSxrREFBa0Q7cUJBQzFELFdBQ1E7d0JBQ1AsS0FBSzt3QkFDTCxJQUFJO3dCQUNKLGdCQUFnQjt3QkFDaEIsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLHVCQUF1QixDQUFDO3dCQUN6QyxTQUFTO3FCQUNWIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQXN5bmNQaXBlLFxuICBOZ0ZvcixcbiAgTmdJZixcbn0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbXB1dGVkLFxuICBmb3J3YXJkUmVmLFxuICBpbmplY3QsXG4gIElOSkVDVE9SLFxuICBpbnB1dCxcbiAgT25Jbml0LFxuICBydW5JbkluamVjdGlvbkNvbnRleHQsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTWF0RGl2aWRlck1vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL21hdGVyaWFsL2RpdmlkZXInO1xuaW1wb3J0IHsgTGF5b3V0U2VydmljZSB9IGZyb20gJy4uL2xheW91dC5zZXJ2aWNlJztcbmltcG9ydCB7IE5hdmlnYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vbmF2aWdhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7XG4gIE5hdmlnYXRpb24sXG4gIE5hdmlnYXRpb25EaXZpZGVySXRlbSxcbiAgTmF2aWdhdGlvbkl0ZW0sXG59IGZyb20gJy4vbmF2aWdhdGlvbi1pdGVtJztcbmltcG9ydCB7IE5hdmlnYXRpb25JdGVtQ29tcG9uZW50IH0gZnJvbSAnLi9uYXZpZ2F0aW9uLWl0ZW0vbmF2aWdhdGlvbi1pdGVtLmNvbXBvbmVudCc7XG5cbkBDb21wb25lbnQoe1xuICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQGFuZ3VsYXItZXNsaW50L2NvbXBvbmVudC1zZWxlY3RvclxuICBzZWxlY3RvcjogJ3VsW3J4YXAtbmF2aWdhdGlvbl0nLFxuICB0ZW1wbGF0ZVVybDogJy4vbmF2aWdhdGlvbi5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWyAnLi9uYXZpZ2F0aW9uLmNvbXBvbmVudC5zY3NzJyBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEBhbmd1bGFyLWVzbGludC9uby1ob3N0LW1ldGFkYXRhLXByb3BlcnR5XG4gIGhvc3Q6IHtcbiAgICBjbGFzczogJ2xpc3Qtbm9uZSBkYXJrOnRleHQtbmV1dHJhbC00MDAgdGV4dC1uZXV0cmFsLTcwMCcsXG4gIH0sXG4gIGltcG9ydHM6IFtcbiAgICBOZ0ZvcixcbiAgICBOZ0lmLFxuICAgIE1hdERpdmlkZXJNb2R1bGUsXG4gICAgZm9yd2FyZFJlZigoKSA9PiBOYXZpZ2F0aW9uSXRlbUNvbXBvbmVudCksXG4gICAgQXN5bmNQaXBlLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXZpZ2F0aW9uQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcblxuICBwdWJsaWMgaXRlbXMgPSBpbnB1dDxOYXZpZ2F0aW9uPigpO1xuXG4gIHB1YmxpYyBsZXZlbCA9IGlucHV0KDApO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbmF2aWdhdGlvblNlcnZpY2UgPSBpbmplY3QoTmF2aWdhdGlvblNlcnZpY2UpO1xuXG4gIHByaXZhdGUgcmVhZG9ubHkgbGF5b3V0U2VydmljZSA9IGluamVjdChMYXlvdXRTZXJ2aWNlKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgY29sbGFwc2VkID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5sYXlvdXRTZXJ2aWNlLmNvbGxhcHNlZCgpKTtcblxuICBwdWJsaWMgbmF2aWdhdGlvbkl0ZW1zID0gY29tcHV0ZWQoKCkgPT4gdGhpcy5pdGVtcygpID8/IFtdKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgcm9vdCA9IGlucHV0KGZhbHNlKTtcblxuICBwcml2YXRlIHJlYWRvbmx5IGluamVjdG9yID0gaW5qZWN0KElOSkVDVE9SKTtcblxuICBwdWJsaWMgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMucm9vdCgpKSB7XG4gICAgICBydW5JbkluamVjdGlvbkNvbnRleHQodGhpcy5pbmplY3RvciwgKCkgPT4ge1xuICAgICAgICB0aGlzLm5hdmlnYXRpb25JdGVtcyA9IHRvU2lnbmFsKHRoaXMubmF2aWdhdGlvblNlcnZpY2UuY29uZmlnJCwgeyBpbml0aWFsVmFsdWU6IFtdIH0pO1xuICAgICAgfSk7XG4gICAgfVxuICB9XG4gIC8vIHJlZ2lvbiB0eXBlIHNhdmUgaXRlbSBwcm9wZXJ0eVxuXG4gIC8vIHJlcXVpcmVkIHRvIGNoZWNrIHRoZSB0eXBlIG9mIHRoZSBpdGVtIHByb3BlcnR5IGluIHRoZSBuZ0ZvciBsb29wXG5cbiAgcHVibGljIGlzTmF2aWdhdGlvbkRpdmlkZXJJdGVtKFxuICAgIGl0ZW06IE5hdmlnYXRpb25JdGVtIHwgTmF2aWdhdGlvbkRpdmlkZXJJdGVtLFxuICApOiBpdGVtIGlzIE5hdmlnYXRpb25EaXZpZGVySXRlbSB7XG4gICAgcmV0dXJuIChpdGVtIGFzIGFueSlbJ2RpdmlkZXInXTtcbiAgfVxuXG4gIHB1YmxpYyBpc05hdmlnYXRpb25JdGVtKFxuICAgIGl0ZW06IE5hdmlnYXRpb25JdGVtIHwgTmF2aWdhdGlvbkRpdmlkZXJJdGVtLFxuICApOiBpdGVtIGlzIE5hdmlnYXRpb25JdGVtIHtcbiAgICByZXR1cm4gIXRoaXMuaXNOYXZpZ2F0aW9uRGl2aWRlckl0ZW0oaXRlbSk7XG4gIH1cblxuICBwdWJsaWMgYXNOYXZpZ2F0aW9uSXRlbShcbiAgICBpdGVtOiBOYXZpZ2F0aW9uSXRlbSB8IE5hdmlnYXRpb25EaXZpZGVySXRlbSxcbiAgKTogTmF2aWdhdGlvbkl0ZW0ge1xuICAgIGlmICghdGhpcy5pc05hdmlnYXRpb25JdGVtKGl0ZW0pKSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ1RoZSBpdGVtIGlzIG5vdCBhIE5hdmlnYXRpb25JdGVtJyk7XG4gICAgfVxuICAgIHJldHVybiBpdGVtO1xuICB9XG5cbiAgLy8gZW5kcmVnaW9uXG59XG4iLCI8bmctdGVtcGxhdGUgW25nRm9yT2ZdPVwibmF2aWdhdGlvbkl0ZW1zKClcIiBsZXQtaXRlbSBuZ0Zvcj5cbiAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cImlzTmF2aWdhdGlvbkRpdmlkZXJJdGVtKGl0ZW0pXCI+XG4gICAgPG1hdC1kaXZpZGVyPjwvbWF0LWRpdmlkZXI+XG4gICAgPGRpdiAqbmdJZj1cIiFjb2xsYXBzZWQoKSAmJiBpdGVtLnRpdGxlXCIgY2xhc3M9XCJwbC01IGgtNlwiPlxuICAgICAge3tpdGVtLnRpdGxlfX1cbiAgICA8L2Rpdj5cbiAgPC9uZy10ZW1wbGF0ZT5cbiAgPG5nLXRlbXBsYXRlIFtuZ0lmXT1cImlzTmF2aWdhdGlvbkl0ZW0oaXRlbSlcIj5cbiAgICA8bGkgW2l0ZW1dPVwiYXNOYXZpZ2F0aW9uSXRlbShpdGVtKVwiXG4gICAgICAgIFtsZXZlbF09XCJsZXZlbCgpXCJcbiAgICAgICAgY2xhc3M9XCJkYXJrOmhvdmVyOnRleHQtd2hpdGUgaG92ZXI6dGV4dC1ibGFja1wiXG4gICAgICAgIHJ4YXAtbmF2aWdhdGlvbi1pdGVtPlxuICAgIDwvbGk+XG4gIDwvbmctdGVtcGxhdGU+XG48L25nLXRlbXBsYXRlPlxuIl19
|
|
@@ -1,23 +0,0 @@
|
|
|
1
|
-
import { ChangeDetectionStrategy, Component, inject, } from '@angular/core';
|
|
2
|
-
import { toSignal } from '@angular/core/rxjs-interop';
|
|
3
|
-
import { MatProgressBar } from '@angular/material/progress-bar';
|
|
4
|
-
import { NavigationCancel, NavigationEnd, NavigationStart, Router, } from '@angular/router';
|
|
5
|
-
import { filter, map, } from 'rxjs/operators';
|
|
6
|
-
import * as i0 from "@angular/core";
|
|
7
|
-
export class NavigationProgressBarComponent {
|
|
8
|
-
constructor() {
|
|
9
|
-
this.router = inject(Router);
|
|
10
|
-
this.navigating = toSignal(this.router.events.pipe(filter(event => event instanceof NavigationStart ||
|
|
11
|
-
event instanceof NavigationEnd ||
|
|
12
|
-
event instanceof NavigationCancel), map(event => event instanceof NavigationStart)), { initialValue: true });
|
|
13
|
-
}
|
|
14
|
-
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: NavigationProgressBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
15
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.2.0", type: NavigationProgressBarComponent, isStandalone: true, selector: "rxap-navigation-progress-bar", ngImport: i0, template: "@if (navigating()) {\n<mat-progress-bar color=\"accent\" mode=\"indeterminate\"></mat-progress-bar>\n}\n", styles: [""], dependencies: [{ kind: "component", type: MatProgressBar, selector: "mat-progress-bar", inputs: ["color", "value", "bufferValue", "mode"], outputs: ["animationEnd"], exportAs: ["matProgressBar"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
|
|
16
|
-
}
|
|
17
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.0", ngImport: i0, type: NavigationProgressBarComponent, decorators: [{
|
|
18
|
-
type: Component,
|
|
19
|
-
args: [{ selector: 'rxap-navigation-progress-bar', changeDetection: ChangeDetectionStrategy.OnPush, standalone: true, imports: [
|
|
20
|
-
MatProgressBar,
|
|
21
|
-
], template: "@if (navigating()) {\n<mat-progress-bar color=\"accent\" mode=\"indeterminate\"></mat-progress-bar>\n}\n" }]
|
|
22
|
-
}] });
|
|
23
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi1wcm9ncmVzcy1iYXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvYW5ndWxhci9sYXlvdXQvc3JjL2xpYi9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci9uYXZpZ2F0aW9uLXByb2dyZXNzLWJhci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9hbmd1bGFyL2xheW91dC9zcmMvbGliL25hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyL25hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdEQsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ2hFLE9BQU8sRUFDTCxnQkFBZ0IsRUFDaEIsYUFBYSxFQUNiLGVBQWUsRUFDZixNQUFNLEdBQ1AsTUFBTSxpQkFBaUIsQ0FBQztBQUN6QixPQUFPLEVBQ0wsTUFBTSxFQUNOLEdBQUcsR0FDSixNQUFNLGdCQUFnQixDQUFDOztBQVl4QixNQUFNLE9BQU8sOEJBQThCO0lBVjNDO1FBWWtCLFdBQU0sR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUM7UUFFeEIsZUFBVSxHQUFHLFFBQVEsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQzNELE1BQU0sQ0FDSixLQUFLLENBQUMsRUFBRSxDQUNOLEtBQUssWUFBWSxlQUFlO1lBQ2hDLEtBQUssWUFBWSxhQUFhO1lBQzlCLEtBQUssWUFBWSxnQkFBZ0IsQ0FDcEMsRUFDRCxHQUFHLENBQUMsS0FBSyxDQUFDLEVBQUUsQ0FBQyxLQUFLLFlBQVksZUFBZSxDQUFDLENBQy9DLEVBQUUsRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztLQUU1Qjs4R0FkWSw4QkFBOEI7a0dBQTlCLDhCQUE4Qix3RkM1QjNDLDBHQUdBLDBERHNCSSxjQUFjOzsyRkFHTCw4QkFBOEI7a0JBVjFDLFNBQVM7K0JBQ0UsOEJBQThCLG1CQUd2Qix1QkFBdUIsQ0FBQyxNQUFNLGNBQ25DLElBQUksV0FDUDt3QkFDUCxjQUFjO3FCQUNmIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG4gIENvbXBvbmVudCxcbiAgaW5qZWN0LFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRvU2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZS9yeGpzLWludGVyb3AnO1xuaW1wb3J0IHsgTWF0UHJvZ3Jlc3NCYXIgfSBmcm9tICdAYW5ndWxhci9tYXRlcmlhbC9wcm9ncmVzcy1iYXInO1xuaW1wb3J0IHtcbiAgTmF2aWdhdGlvbkNhbmNlbCxcbiAgTmF2aWdhdGlvbkVuZCxcbiAgTmF2aWdhdGlvblN0YXJ0LFxuICBSb3V0ZXIsXG59IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQge1xuICBmaWx0ZXIsXG4gIG1hcCxcbn0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdyeGFwLW5hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyJyxcbiAgdGVtcGxhdGVVcmw6ICcuL25hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbICcuL25hdmlnYXRpb24tcHJvZ3Jlc3MtYmFyLmNvbXBvbmVudC5zY3NzJyBdLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgaW1wb3J0czogW1xuICAgIE1hdFByb2dyZXNzQmFyLFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBOYXZpZ2F0aW9uUHJvZ3Jlc3NCYXJDb21wb25lbnQge1xuXG4gIHB1YmxpYyByZWFkb25seSByb3V0ZXIgPSBpbmplY3QoUm91dGVyKTtcblxuICBwdWJsaWMgcmVhZG9ubHkgbmF2aWdhdGluZyA9IHRvU2lnbmFsKHRoaXMucm91dGVyLmV2ZW50cy5waXBlKFxuICAgIGZpbHRlcihcbiAgICAgIGV2ZW50ID0+XG4gICAgICAgIGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvblN0YXJ0IHx8XG4gICAgICAgIGV2ZW50IGluc3RhbmNlb2YgTmF2aWdhdGlvbkVuZCB8fFxuICAgICAgICBldmVudCBpbnN0YW5jZW9mIE5hdmlnYXRpb25DYW5jZWwsXG4gICAgKSxcbiAgICBtYXAoZXZlbnQgPT4gZXZlbnQgaW5zdGFuY2VvZiBOYXZpZ2F0aW9uU3RhcnQpLFxuICApLCB7IGluaXRpYWxWYWx1ZTogdHJ1ZSB9KTtcblxufVxuIiwiQGlmIChuYXZpZ2F0aW5nKCkpIHtcbjxtYXQtcHJvZ3Jlc3MtYmFyIGNvbG9yPVwiYWNjZW50XCIgbW9kZT1cImluZGV0ZXJtaW5hdGVcIj48L21hdC1wcm9ncmVzcy1iYXI+XG59XG4iXX0=
|