valtech-components 2.0.673 → 2.0.675

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/esm2022/lib/components/atoms/button/button.component.mjs +2 -2
  2. package/esm2022/lib/components/molecules/action-card/action-card.component.mjs +2 -2
  3. package/esm2022/lib/components/molecules/footer-links/footer-links.component.mjs +2 -2
  4. package/esm2022/lib/components/molecules/glow-card/glow-card.component.mjs +2 -2
  5. package/esm2022/lib/components/molecules/link/link.component.mjs +2 -2
  6. package/esm2022/lib/components/organisms/bottom-nav/bottom-nav.component.mjs +2 -2
  7. package/esm2022/lib/components/templates/page-content/page-content.component.mjs +2 -2
  8. package/esm2022/lib/components/templates/page-wrapper/page-wrapper.component.mjs +2 -2
  9. package/esm2022/lib/services/navigation/index.mjs +3 -0
  10. package/esm2022/lib/services/navigation/navigation.service.mjs +210 -0
  11. package/esm2022/lib/services/navigation/types.mjs +16 -0
  12. package/esm2022/lib/version.mjs +6 -0
  13. package/esm2022/public-api.mjs +4 -2
  14. package/fesm2022/valtech-components.mjs +377 -214
  15. package/fesm2022/valtech-components.mjs.map +1 -1
  16. package/lib/components/atoms/button/button.component.d.ts +1 -1
  17. package/lib/components/atoms/rights-footer/rights-footer.component.d.ts +2 -2
  18. package/lib/components/atoms/text/text.component.d.ts +1 -1
  19. package/lib/components/molecules/features-list/features-list.component.d.ts +1 -1
  20. package/lib/components/molecules/link/link.component.d.ts +1 -1
  21. package/lib/components/organisms/article/article.component.d.ts +4 -4
  22. package/lib/components/organisms/toolbar/toolbar.component.d.ts +1 -1
  23. package/lib/components/templates/page-content/page-content.component.d.ts +1 -1
  24. package/lib/services/navigation/index.d.ts +2 -0
  25. package/lib/services/navigation/navigation.service.d.ts +126 -0
  26. package/lib/services/navigation/types.d.ts +65 -0
  27. package/lib/version.d.ts +5 -0
  28. package/package.json +1 -1
  29. package/public-api.d.ts +2 -1
  30. package/esm2022/lib/services/navigation.service.mjs +0 -68
  31. package/lib/services/navigation.service.d.ts +0 -45
@@ -1,7 +1,7 @@
1
1
  import { EventEmitter, OnChanges, OnInit, SimpleChanges } from '@angular/core';
2
2
  import { DownloadService } from '../../../services/download.service';
3
3
  import { IconService } from '../../../services/icons.service';
4
- import { NavigationService } from '../../../services/navigation.service';
4
+ import { NavigationService } from '../../../services/navigation';
5
5
  import { ButtonMetadata } from '../../types';
6
6
  import * as i0 from "@angular/core";
7
7
  export declare class ButtonComponent implements OnInit, OnChanges {
@@ -39,11 +39,11 @@ export declare class RightsFooterComponent {
39
39
  /**
40
40
  * Computed helper for align prop in template.
41
41
  */
42
- propsAlign: import("@angular/core").Signal<"left" | "right" | "center">;
42
+ propsAlign: import("@angular/core").Signal<"left" | "center" | "right">;
43
43
  /**
44
44
  * Computed helper for color prop in template.
45
45
  */
46
- propsColor: import("@angular/core").Signal<"primary" | "secondary" | "tertiary" | "success" | "warning" | "danger" | "light" | "medium" | "dark">;
46
+ propsColor: import("@angular/core").Signal<"medium" | "primary" | "secondary" | "tertiary" | "success" | "warning" | "danger" | "light" | "dark">;
47
47
  /**
48
48
  * Computed helper for withMargin prop in template.
49
49
  */
@@ -11,7 +11,7 @@ export declare class TextComponent {
11
11
  */
12
12
  displayContent: import("@angular/core").Signal<string>;
13
13
  propsColor: import("@angular/core").Signal<import("@ionic/core").Color>;
14
- propsSize: import("@angular/core").Signal<"medium" | "small" | "large" | "xlarge">;
14
+ propsSize: import("@angular/core").Signal<"small" | "medium" | "large" | "xlarge">;
15
15
  propsBold: import("@angular/core").Signal<boolean>;
16
16
  propsProcessLinks: import("@angular/core").Signal<boolean>;
17
17
  propsAllowPartialBold: import("@angular/core").Signal<boolean>;
@@ -48,7 +48,7 @@ export declare class FeaturesListComponent {
48
48
  iconColor: string;
49
49
  iconSize: number;
50
50
  mode: "horizontal" | "vertical";
51
- gap: "medium" | "small" | "large";
51
+ gap: "small" | "medium" | "large";
52
52
  alignment: "center" | "start";
53
53
  }>;
54
54
  /** Resolved icon color (handles Ionic colors and CSS colors) */
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter, OnInit } from '@angular/core';
2
- import { NavigationService } from '../../../services/navigation.service';
2
+ import { NavigationService } from '../../../services/navigation';
3
3
  import { LinkMetadata } from './types';
4
4
  import * as i0 from "@angular/core";
5
5
  export declare class LinkComponent implements OnInit {
@@ -45,7 +45,7 @@ export declare class ArticleComponent implements OnInit {
45
45
  getVideoElement(element: ArticleElement): ArticleVideoElement;
46
46
  getCustomElement(element: ArticleElement): ArticleCustomElement;
47
47
  getQuoteTextProps(element: ArticleElement): {
48
- size: "medium" | "small" | "large" | "xlarge";
48
+ size: "small" | "medium" | "large" | "xlarge";
49
49
  color: import("@ionic/core").Color;
50
50
  content?: string;
51
51
  bold: boolean;
@@ -57,11 +57,11 @@ export declare class ArticleComponent implements OnInit {
57
57
  linkConfig?: import("valtech-components").LinkProcessorConfig;
58
58
  allowPartialBold?: boolean;
59
59
  authorColor?: import("@ionic/core").Color;
60
- alignment?: "left" | "right" | "center";
60
+ alignment?: "left" | "center" | "right";
61
61
  showQuoteMark?: boolean;
62
62
  };
63
63
  getHighlightTextProps(element: ArticleElement): {
64
- size: "medium" | "small" | "large" | "xlarge";
64
+ size: "small" | "medium" | "large" | "xlarge";
65
65
  color: import("@ionic/core").Color;
66
66
  content?: string;
67
67
  bold: boolean;
@@ -90,7 +90,7 @@ export declare class ArticleComponent implements OnInit {
90
90
  contentInterpolation?: Record<string, string | number>;
91
91
  icon?: import("valtech-components").IconMetada;
92
92
  shape?: "round";
93
- size?: "default" | "small" | "large";
93
+ size?: "small" | "large" | "default";
94
94
  fill?: "default" | "clear" | "outline" | "solid";
95
95
  type: "button" | "submit" | "reset";
96
96
  token?: string;
@@ -72,7 +72,7 @@ export declare class ToolbarComponent implements OnInit {
72
72
  };
73
73
  showFlags?: boolean;
74
74
  color: import("@ionic/core").Color;
75
- size?: "default" | "small" | "large";
75
+ size?: "small" | "large" | "default";
76
76
  fill?: "default" | "clear" | "outline" | "solid";
77
77
  shape?: "round";
78
78
  expand?: "full" | "block";
@@ -1,6 +1,6 @@
1
1
  import { EventEmitter } from '@angular/core';
2
2
  import { ThemeService } from '../../../services/theme.service';
3
- import { NavigationService } from '../../../services/navigation.service';
3
+ import { NavigationService } from '../../../services/navigation';
4
4
  import { PageContentMetadata } from './types';
5
5
  import * as i0 from "@angular/core";
6
6
  /**
@@ -0,0 +1,2 @@
1
+ export * from './navigation.service';
2
+ export * from './types';
@@ -0,0 +1,126 @@
1
+ import { Location } from '@angular/common';
2
+ import { Router } from '@angular/router';
3
+ import { InAppBrowserService } from '../in-app-browser.service';
4
+ import { HeaderConfig, HomeHeaderConfig, CustomHeaderConfig } from './types';
5
+ import * as i0 from "@angular/core";
6
+ /**
7
+ * NavigationService
8
+ *
9
+ * Servicio centralizado para navegacion y configuracion de headers.
10
+ * Permite a las paginas declarar su tipo de header de forma simple.
11
+ *
12
+ * @example
13
+ * // En una pagina con header de tipo "back"
14
+ * export class ProfilePage {
15
+ * private nav = inject(NavigationService);
16
+ *
17
+ * constructor() {
18
+ * this.nav.setBackHeader('pageTitle', 'Settings.Profile');
19
+ * }
20
+ * }
21
+ *
22
+ * @example
23
+ * // En el layout principal (tabs.page.ts)
24
+ * export class TabsPage {
25
+ * private nav = inject(NavigationService);
26
+ *
27
+ * headerConfig = this.nav.headerConfig;
28
+ * headerTitle = this.nav.headerTitle;
29
+ * }
30
+ */
31
+ export declare class NavigationService {
32
+ router: Router;
33
+ location: Location;
34
+ inAppBrowser: InAppBrowserService;
35
+ private i18n;
36
+ private readonly _headerConfig;
37
+ /**
38
+ * Configuracion actual del header (readonly signal)
39
+ */
40
+ readonly headerConfig: import("@angular/core").Signal<HeaderConfig>;
41
+ /**
42
+ * Titulo del header traducido y reactivo al cambio de idioma.
43
+ * Solo aplica para headers tipo 'back' o 'custom' con titleKey.
44
+ */
45
+ readonly headerTitle: import("@angular/core").Signal<string>;
46
+ /**
47
+ * Indica si el header actual tiene boton volver
48
+ */
49
+ readonly hasBackButton: import("@angular/core").Signal<boolean>;
50
+ /**
51
+ * Arbitrary data to be transferred during navigation.
52
+ * @deprecated Use navigateWithData instead
53
+ */
54
+ data: any;
55
+ constructor(router: Router, location: Location, inAppBrowser: InAppBrowserService);
56
+ /**
57
+ * Configura un header tipo "back" con titulo traducido.
58
+ *
59
+ * @param key Clave i18n (ej: 'pageTitle')
60
+ * @param namespace Namespace i18n (ej: 'Settings.Profile')
61
+ * @param backText Texto opcional del boton volver
62
+ *
63
+ * @example
64
+ * this.nav.setBackHeader('pageTitle', 'Settings.Profile');
65
+ */
66
+ setBackHeader(key: string, namespace: string, backText?: string): void;
67
+ /**
68
+ * Configura un header tipo "home" con logo y acciones.
69
+ *
70
+ * @param options Opciones del header home
71
+ *
72
+ * @example
73
+ * this.nav.setHomeHeader({
74
+ * withMenu: true,
75
+ * actions: [
76
+ * { type: 'ICON', token: 'notifications', position: 'right', description: 'notifications-outline' }
77
+ * ]
78
+ * });
79
+ */
80
+ setHomeHeader(options?: Partial<Omit<HomeHeaderConfig, 'type'>>): void;
81
+ /**
82
+ * Configura un header personalizado.
83
+ *
84
+ * @param options Opciones del header
85
+ */
86
+ setCustomHeader(options: Omit<CustomHeaderConfig, 'type'>): void;
87
+ /**
88
+ * Oculta el header completamente.
89
+ */
90
+ hideHeader(): void;
91
+ /**
92
+ * Resetea el header al estado por defecto (home).
93
+ */
94
+ resetHeader(): void;
95
+ /**
96
+ * Opens a URL using the in-app browser service.
97
+ * @param url The URL to open
98
+ */
99
+ navigateInApp(url: string): void;
100
+ /**
101
+ * Navigates to a route and transfers data using Angular Router state.
102
+ * @param route The route to navigate to
103
+ * @param dataTransfer The data to transfer
104
+ */
105
+ navigateWithData(route: string, dataTransfer: any): void;
106
+ /**
107
+ * Navigates to a URL using Angular Router.
108
+ * @param url The URL to navigate to
109
+ */
110
+ navigateByUrl(url: string): void;
111
+ /**
112
+ * Opens a URL in a new browser tab.
113
+ * @param url The URL to open
114
+ */
115
+ openInNewTab(url: string): void;
116
+ /**
117
+ * Navigates back to the previous page in the browser history.
118
+ */
119
+ back(): void;
120
+ /**
121
+ * Traduce una clave i18n en formato 'namespace.key'
122
+ */
123
+ private translateKey;
124
+ static ɵfac: i0.ɵɵFactoryDeclaration<NavigationService, never>;
125
+ static ɵprov: i0.ɵɵInjectableDeclaration<NavigationService>;
126
+ }
@@ -0,0 +1,65 @@
1
+ import { ToolbarAction } from '../../components/types';
2
+ /**
3
+ * Tipos de header soportados por NavigationService
4
+ */
5
+ export type HeaderType = 'home' | 'back' | 'custom' | 'none';
6
+ /**
7
+ * Configuracion de header para paginas con boton volver
8
+ */
9
+ export interface BackHeaderConfig {
10
+ type: 'back';
11
+ /** Clave i18n para el titulo (formato: 'namespace.key') */
12
+ titleKey: string;
13
+ /** Texto del boton volver (opcional, usa icono por defecto) */
14
+ backText?: string;
15
+ }
16
+ /**
17
+ * Configuracion de header para pagina principal (home)
18
+ */
19
+ export interface HomeHeaderConfig {
20
+ type: 'home';
21
+ /** Mostrar menu hamburguesa */
22
+ withMenu?: boolean;
23
+ /** Acciones adicionales en el header */
24
+ actions?: ToolbarAction[];
25
+ /** Logo personalizado (CSS variable o URL) */
26
+ logoSrc?: string;
27
+ }
28
+ /**
29
+ * Configuracion de header personalizado
30
+ */
31
+ export interface CustomHeaderConfig {
32
+ type: 'custom';
33
+ /** Titulo del header */
34
+ title?: string;
35
+ /** Clave i18n para el titulo */
36
+ titleKey?: string;
37
+ /** Mostrar boton volver */
38
+ withBack?: boolean;
39
+ /** Texto del boton volver */
40
+ backText?: string;
41
+ /** Mostrar acciones */
42
+ withActions?: boolean;
43
+ /** Mostrar menu */
44
+ withMenu?: boolean;
45
+ /** Acciones del header */
46
+ actions?: ToolbarAction[];
47
+ }
48
+ /**
49
+ * Sin header
50
+ */
51
+ export interface NoHeaderConfig {
52
+ type: 'none';
53
+ }
54
+ /**
55
+ * Union de todos los tipos de configuracion de header
56
+ */
57
+ export type HeaderConfig = BackHeaderConfig | HomeHeaderConfig | CustomHeaderConfig | NoHeaderConfig;
58
+ /**
59
+ * Configuracion por defecto para header tipo 'home'
60
+ */
61
+ export declare const DEFAULT_HOME_HEADER: HomeHeaderConfig;
62
+ /**
63
+ * Configuracion por defecto para header tipo 'back'
64
+ */
65
+ export declare const DEFAULT_BACK_HEADER: BackHeaderConfig;
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Current version of valtech-components.
3
+ * This is automatically updated during the publish process.
4
+ */
5
+ export declare const VERSION = "2.0.675";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "valtech-components",
3
- "version": "2.0.673",
3
+ "version": "2.0.675",
4
4
  "private": false,
5
5
  "bin": {
6
6
  "valtech-firebase-config": "./src/lib/services/firebase/scripts/generate-sw-config.js"
package/public-api.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './lib/version';
1
2
  export * from './lib/components/atoms/avatar/avatar.component';
2
3
  export * from './lib/components/atoms/avatar/types';
3
4
  export * from './lib/components/atoms/box/box.component';
@@ -232,7 +233,7 @@ export * from './lib/services/in-app-browser.service';
232
233
  export * from './lib/services/link-processor.service';
233
234
  export * from './lib/services/local-storage.service';
234
235
  export * from './lib/services/locale.service';
235
- export * from './lib/services/navigation.service';
236
+ export * from './lib/services/navigation';
236
237
  export * from './lib/services/theme.service';
237
238
  export * from './lib/services/toast.service';
238
239
  export * from './lib/services/types';
@@ -1,68 +0,0 @@
1
- import { Injectable } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- import * as i1 from "@angular/router";
4
- import * as i2 from "@angular/common";
5
- import * as i3 from "./in-app-browser.service";
6
- /**
7
- * Service for navigation and routing within the application.
8
- * Supports navigation with data transfer, in-app browser, and opening links in new tabs.
9
- */
10
- export class NavigationService {
11
- constructor(router, location, inAppBrowser) {
12
- this.router = router;
13
- this.location = location;
14
- this.inAppBrowser = inAppBrowser;
15
- }
16
- /**
17
- * Opens a URL using the in-app browser service.
18
- * @param url The URL to open
19
- */
20
- navigateInApp(url) {
21
- this.inAppBrowser.openWithInAppBrowser(url);
22
- }
23
- /**
24
- * Navigates to a route and transfers data using Angular Router state.
25
- * @param route The route to navigate to
26
- * @param dataTransfer The data to transfer
27
- */
28
- navigateWithData(route, dataTransfer) {
29
- const navigationExtras = {
30
- state: {
31
- data: dataTransfer,
32
- },
33
- };
34
- this.router.navigate([route], navigationExtras);
35
- }
36
- /**
37
- * Navigates to a URL using Angular Router.
38
- * @param url The URL to navigate to
39
- */
40
- navigateByUrl(url) {
41
- this.router
42
- .navigateByUrl(url)
43
- .then(response => { })
44
- .catch(error => { });
45
- }
46
- /**
47
- * Opens a URL in a new browser tab.
48
- * @param url The URL to open
49
- */
50
- openInNewTab(url) {
51
- window.open(url, '_blank', 'noopener,noreferrer');
52
- }
53
- /**
54
- * Navigates back to the previous page in the browser history.
55
- */
56
- back() {
57
- this.location.back();
58
- }
59
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavigationService, deps: [{ token: i1.Router }, { token: i2.Location }, { token: i3.InAppBrowserService }], target: i0.ɵɵFactoryTarget.Injectable }); }
60
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavigationService, providedIn: 'root' }); }
61
- }
62
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.14", ngImport: i0, type: NavigationService, decorators: [{
63
- type: Injectable,
64
- args: [{
65
- providedIn: 'root',
66
- }]
67
- }], ctorParameters: () => [{ type: i1.Router }, { type: i2.Location }, { type: i3.InAppBrowserService }] });
68
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmF2aWdhdGlvbi5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2xpYi9zZXJ2aWNlcy9uYXZpZ2F0aW9uLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7Ozs7QUFJM0M7OztHQUdHO0FBSUgsTUFBTSxPQUFPLGlCQUFpQjtJQU01QixZQUNTLE1BQWMsRUFDZCxRQUFrQixFQUNsQixZQUFpQztRQUZqQyxXQUFNLEdBQU4sTUFBTSxDQUFRO1FBQ2QsYUFBUSxHQUFSLFFBQVEsQ0FBVTtRQUNsQixpQkFBWSxHQUFaLFlBQVksQ0FBcUI7SUFDdkMsQ0FBQztJQUVKOzs7T0FHRztJQUNILGFBQWEsQ0FBQyxHQUFXO1FBQ3ZCLElBQUksQ0FBQyxZQUFZLENBQUMsb0JBQW9CLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDOUMsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxnQkFBZ0IsQ0FBQyxLQUFhLEVBQUUsWUFBaUI7UUFDL0MsTUFBTSxnQkFBZ0IsR0FBcUI7WUFDekMsS0FBSyxFQUFFO2dCQUNMLElBQUksRUFBRSxZQUFZO2FBQ25CO1NBQ0YsQ0FBQztRQUVGLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLENBQUMsS0FBSyxDQUFDLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUNsRCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsYUFBYSxDQUFDLEdBQVc7UUFDdkIsSUFBSSxDQUFDLE1BQU07YUFDUixhQUFhLENBQUMsR0FBRyxDQUFDO2FBQ2xCLElBQUksQ0FBQyxRQUFRLENBQUMsRUFBRSxHQUFFLENBQUMsQ0FBQzthQUNwQixLQUFLLENBQUMsS0FBSyxDQUFDLEVBQUUsR0FBRSxDQUFDLENBQUMsQ0FBQztJQUN4QixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsWUFBWSxDQUFDLEdBQVc7UUFDdEIsTUFBTSxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsUUFBUSxFQUFFLHFCQUFxQixDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFBSTtRQUNGLElBQUksQ0FBQyxRQUFRLENBQUMsSUFBSSxFQUFFLENBQUM7SUFDdkIsQ0FBQzsrR0EzRFUsaUJBQWlCO21IQUFqQixpQkFBaUIsY0FGaEIsTUFBTTs7NEZBRVAsaUJBQWlCO2tCQUg3QixVQUFVO21CQUFDO29CQUNWLFVBQVUsRUFBRSxNQUFNO2lCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IExvY2F0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5hdmlnYXRpb25FeHRyYXMsIFJvdXRlciB9IGZyb20gJ0Bhbmd1bGFyL3JvdXRlcic7XG5pbXBvcnQgeyBJbkFwcEJyb3dzZXJTZXJ2aWNlIH0gZnJvbSAnLi9pbi1hcHAtYnJvd3Nlci5zZXJ2aWNlJztcblxuLyoqXG4gKiBTZXJ2aWNlIGZvciBuYXZpZ2F0aW9uIGFuZCByb3V0aW5nIHdpdGhpbiB0aGUgYXBwbGljYXRpb24uXG4gKiBTdXBwb3J0cyBuYXZpZ2F0aW9uIHdpdGggZGF0YSB0cmFuc2ZlciwgaW4tYXBwIGJyb3dzZXIsIGFuZCBvcGVuaW5nIGxpbmtzIGluIG5ldyB0YWJzLlxuICovXG5ASW5qZWN0YWJsZSh7XG4gIHByb3ZpZGVkSW46ICdyb290Jyxcbn0pXG5leHBvcnQgY2xhc3MgTmF2aWdhdGlvblNlcnZpY2Uge1xuICAvKipcbiAgICogQXJiaXRyYXJ5IGRhdGEgdG8gYmUgdHJhbnNmZXJyZWQgZHVyaW5nIG5hdmlnYXRpb24uXG4gICAqL1xuICBkYXRhOiBhbnk7XG5cbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIHJvdXRlcjogUm91dGVyLFxuICAgIHB1YmxpYyBsb2NhdGlvbjogTG9jYXRpb24sXG4gICAgcHVibGljIGluQXBwQnJvd3NlcjogSW5BcHBCcm93c2VyU2VydmljZVxuICApIHt9XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEgVVJMIHVzaW5nIHRoZSBpbi1hcHAgYnJvd3NlciBzZXJ2aWNlLlxuICAgKiBAcGFyYW0gdXJsIFRoZSBVUkwgdG8gb3BlblxuICAgKi9cbiAgbmF2aWdhdGVJbkFwcCh1cmw6IHN0cmluZykge1xuICAgIHRoaXMuaW5BcHBCcm93c2VyLm9wZW5XaXRoSW5BcHBCcm93c2VyKHVybCk7XG4gIH1cblxuICAvKipcbiAgICogTmF2aWdhdGVzIHRvIGEgcm91dGUgYW5kIHRyYW5zZmVycyBkYXRhIHVzaW5nIEFuZ3VsYXIgUm91dGVyIHN0YXRlLlxuICAgKiBAcGFyYW0gcm91dGUgVGhlIHJvdXRlIHRvIG5hdmlnYXRlIHRvXG4gICAqIEBwYXJhbSBkYXRhVHJhbnNmZXIgVGhlIGRhdGEgdG8gdHJhbnNmZXJcbiAgICovXG4gIG5hdmlnYXRlV2l0aERhdGEocm91dGU6IHN0cmluZywgZGF0YVRyYW5zZmVyOiBhbnkpIHtcbiAgICBjb25zdCBuYXZpZ2F0aW9uRXh0cmFzOiBOYXZpZ2F0aW9uRXh0cmFzID0ge1xuICAgICAgc3RhdGU6IHtcbiAgICAgICAgZGF0YTogZGF0YVRyYW5zZmVyLFxuICAgICAgfSxcbiAgICB9O1xuXG4gICAgdGhpcy5yb3V0ZXIubmF2aWdhdGUoW3JvdXRlXSwgbmF2aWdhdGlvbkV4dHJhcyk7XG4gIH1cblxuICAvKipcbiAgICogTmF2aWdhdGVzIHRvIGEgVVJMIHVzaW5nIEFuZ3VsYXIgUm91dGVyLlxuICAgKiBAcGFyYW0gdXJsIFRoZSBVUkwgdG8gbmF2aWdhdGUgdG9cbiAgICovXG4gIG5hdmlnYXRlQnlVcmwodXJsOiBzdHJpbmcpIHtcbiAgICB0aGlzLnJvdXRlclxuICAgICAgLm5hdmlnYXRlQnlVcmwodXJsKVxuICAgICAgLnRoZW4ocmVzcG9uc2UgPT4ge30pXG4gICAgICAuY2F0Y2goZXJyb3IgPT4ge30pO1xuICB9XG5cbiAgLyoqXG4gICAqIE9wZW5zIGEgVVJMIGluIGEgbmV3IGJyb3dzZXIgdGFiLlxuICAgKiBAcGFyYW0gdXJsIFRoZSBVUkwgdG8gb3BlblxuICAgKi9cbiAgb3BlbkluTmV3VGFiKHVybDogc3RyaW5nKTogdm9pZCB7XG4gICAgd2luZG93Lm9wZW4odXJsLCAnX2JsYW5rJywgJ25vb3BlbmVyLG5vcmVmZXJyZXInKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBOYXZpZ2F0ZXMgYmFjayB0byB0aGUgcHJldmlvdXMgcGFnZSBpbiB0aGUgYnJvd3NlciBoaXN0b3J5LlxuICAgKi9cbiAgYmFjaygpOiB2b2lkIHtcbiAgICB0aGlzLmxvY2F0aW9uLmJhY2soKTtcbiAgfVxufVxuIl19
@@ -1,45 +0,0 @@
1
- import { Location } from '@angular/common';
2
- import { Router } from '@angular/router';
3
- import { InAppBrowserService } from './in-app-browser.service';
4
- import * as i0 from "@angular/core";
5
- /**
6
- * Service for navigation and routing within the application.
7
- * Supports navigation with data transfer, in-app browser, and opening links in new tabs.
8
- */
9
- export declare class NavigationService {
10
- router: Router;
11
- location: Location;
12
- inAppBrowser: InAppBrowserService;
13
- /**
14
- * Arbitrary data to be transferred during navigation.
15
- */
16
- data: any;
17
- constructor(router: Router, location: Location, inAppBrowser: InAppBrowserService);
18
- /**
19
- * Opens a URL using the in-app browser service.
20
- * @param url The URL to open
21
- */
22
- navigateInApp(url: string): void;
23
- /**
24
- * Navigates to a route and transfers data using Angular Router state.
25
- * @param route The route to navigate to
26
- * @param dataTransfer The data to transfer
27
- */
28
- navigateWithData(route: string, dataTransfer: any): void;
29
- /**
30
- * Navigates to a URL using Angular Router.
31
- * @param url The URL to navigate to
32
- */
33
- navigateByUrl(url: string): void;
34
- /**
35
- * Opens a URL in a new browser tab.
36
- * @param url The URL to open
37
- */
38
- openInNewTab(url: string): void;
39
- /**
40
- * Navigates back to the previous page in the browser history.
41
- */
42
- back(): void;
43
- static ɵfac: i0.ɵɵFactoryDeclaration<NavigationService, never>;
44
- static ɵprov: i0.ɵɵInjectableDeclaration<NavigationService>;
45
- }