@ng-vagabond-lab/ng-dsv 0.2.11 → 0.2.13
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/fesm2022/ng-vagabond-lab-ng-dsv-api.mjs +16 -11
- package/fesm2022/ng-vagabond-lab-ng-dsv-api.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-base-service.mjs +32 -22
- package/fesm2022/ng-vagabond-lab-ng-dsv-base-service.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-base.mjs +29 -25
- package/fesm2022/ng-vagabond-lab-ng-dsv-base.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-date.mjs +3 -3
- package/fesm2022/ng-vagabond-lab-ng-dsv-date.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-accordion.mjs +15 -9
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-accordion.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-avatar.mjs +11 -7
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-avatar.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-button.mjs +26 -16
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-button.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-card.mjs +16 -14
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-card.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-chip.mjs +7 -5
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-chip.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-color.mjs +22 -14
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-color.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-container.mjs +7 -5
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-container.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-file.mjs +35 -22
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-file.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-form-reactive.mjs +70 -47
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-form-reactive.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-form-signal.mjs +81 -54
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-form-signal.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-header.mjs +11 -7
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-header.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-img.mjs +19 -11
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-img.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-item.mjs +15 -9
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-item.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-linear-progress.mjs +9 -6
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-linear-progress.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-link-pipe.mjs +6 -6
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-link-pipe.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-list.mjs +22 -17
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-list.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-menu.mjs +24 -18
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-menu.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-modal.mjs +46 -29
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-modal.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-paginate.mjs +7 -5
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-paginate.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-scroll.mjs +33 -21
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-scroll.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-skeleton.mjs +3 -3
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-skeleton.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-tab.mjs +14 -10
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-tab.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-table.mjs +15 -9
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-table.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-theme.mjs +11 -10
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-theme.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-toast.mjs +16 -11
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-toast.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-tooltip.mjs +15 -9
- package/fesm2022/ng-vagabond-lab-ng-dsv-ds-tooltip.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-environment.mjs +7 -5
- package/fesm2022/ng-vagabond-lab-ng-dsv-environment.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-i18n.mjs +10 -6
- package/fesm2022/ng-vagabond-lab-ng-dsv-i18n.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-module-admin.mjs +51 -33
- package/fesm2022/ng-vagabond-lab-ng-dsv-module-admin.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-module-auth.mjs +21 -15
- package/fesm2022/ng-vagabond-lab-ng-dsv-module-auth.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-module-contact.mjs +5 -4
- package/fesm2022/ng-vagabond-lab-ng-dsv-module-contact.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-platform.mjs +9 -6
- package/fesm2022/ng-vagabond-lab-ng-dsv-platform.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-router.mjs +13 -11
- package/fesm2022/ng-vagabond-lab-ng-dsv-router.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-storage.mjs +15 -9
- package/fesm2022/ng-vagabond-lab-ng-dsv-storage.mjs.map +1 -1
- package/fesm2022/ng-vagabond-lab-ng-dsv-template.mjs +38 -28
- package/fesm2022/ng-vagabond-lab-ng-dsv-template.mjs.map +1 -1
- package/package.json +1 -1
- package/types/ng-vagabond-lab-ng-dsv-ds-form-signal.d.ts +1 -1
- package/types/ng-vagabond-lab-ng-dsv-i18n.d.ts +1 -0
|
@@ -12,10 +12,10 @@ class RouterExternalPipe {
|
|
|
12
12
|
event.stopPropagation();
|
|
13
13
|
this.dsvLinkExternal.emit();
|
|
14
14
|
}
|
|
15
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
16
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
15
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: RouterExternalPipe, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
16
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.1", type: RouterExternalPipe, isStandalone: true, selector: "a[dsvLinkExternal]", outputs: { dsvLinkExternal: "dsvLinkExternal" }, host: { attributes: { "target": "_blank", "rel": "noopener noreferrer" }, listeners: { "click": "onClick($event)" }, classAttribute: "primary text bold" }, ngImport: i0 });
|
|
17
17
|
}
|
|
18
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
18
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: RouterExternalPipe, decorators: [{
|
|
19
19
|
type: Directive,
|
|
20
20
|
args: [{
|
|
21
21
|
selector: 'a[dsvLinkExternal]',
|
|
@@ -43,10 +43,10 @@ class RouterInternalPipe {
|
|
|
43
43
|
this.dsvLink.emit();
|
|
44
44
|
}
|
|
45
45
|
}
|
|
46
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
47
|
-
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "
|
|
46
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: RouterInternalPipe, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
47
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.1", type: RouterInternalPipe, isStandalone: true, selector: "a[dsvLink]", outputs: { dsvLink: "dsvLink" }, host: { listeners: { "click": "onClick($event)" }, classAttribute: "text" }, ngImport: i0 });
|
|
48
48
|
}
|
|
49
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
49
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: RouterInternalPipe, decorators: [{
|
|
50
50
|
type: Directive,
|
|
51
51
|
args: [{
|
|
52
52
|
selector: 'a[dsvLink]',
|
|
@@ -62,8 +62,10 @@ class RouterService {
|
|
|
62
62
|
modalService = inject(ModalService);
|
|
63
63
|
plateformService = inject(PlatformService);
|
|
64
64
|
location = inject(Location);
|
|
65
|
-
isLoading = signal(true,
|
|
66
|
-
|
|
65
|
+
isLoading = signal(true, /* @ts-ignore */
|
|
66
|
+
...(ngDevMode ? [{ debugName: "isLoading" }] : /* istanbul ignore next */ []));
|
|
67
|
+
currentUrl = signal('', /* @ts-ignore */
|
|
68
|
+
...(ngDevMode ? [{ debugName: "currentUrl" }] : /* istanbul ignore next */ []));
|
|
67
69
|
interval = undefined;
|
|
68
70
|
constructor() {
|
|
69
71
|
this.router.events.subscribe((event) => {
|
|
@@ -94,10 +96,10 @@ class RouterService {
|
|
|
94
96
|
goBack() {
|
|
95
97
|
this.location.back();
|
|
96
98
|
}
|
|
97
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
98
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
99
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: RouterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
100
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: RouterService, providedIn: 'root' });
|
|
99
101
|
}
|
|
100
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
102
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: RouterService, decorators: [{
|
|
101
103
|
type: Injectable,
|
|
102
104
|
args: [{
|
|
103
105
|
providedIn: 'root',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-vagabond-lab-ng-dsv-router.mjs","sources":["../../../projects/ng-dsv/router/pipe/router-external.pipe.ts","../../../projects/ng-dsv/router/pipe/router-internal.pipe.ts","../../../projects/ng-dsv/router/service/router.service.ts","../../../projects/ng-dsv/router/ng-vagabond-lab-ng-dsv-router.ts"],"sourcesContent":["import { Directive, output } from '@angular/core';\n\n@Directive({\n selector: 'a[dsvLinkExternal]',\n host: {\n class: 'primary text bold',\n target: '_blank',\n rel: 'noopener noreferrer',\n '(click)': 'onClick($event)',\n },\n})\nexport class RouterExternalPipe {\n readonly dsvLinkExternal = output<void>();\n\n onClick(event: Event): void {\n event.stopPropagation();\n this.dsvLinkExternal.emit();\n }\n}\n","import { Directive, ElementRef, inject, output } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Directive({\n selector: 'a[dsvLink]',\n host: {\n class: 'text',\n '(click)': 'onClick($event)',\n },\n})\nexport class RouterInternalPipe {\n readonly router = inject(Router);\n readonly element = inject(ElementRef);\n\n readonly dsvLink = output<void>();\n\n onClick(event: Event): void {\n event.stopPropagation();\n event.preventDefault();\n const url = this.element.nativeElement.getAttribute('href');\n if (url && url !== '#') {\n this.router.navigate([url]);\n } else {\n this.dsvLink.emit();\n }\n }\n}\n","import { Location } from '@angular/common';\nimport { inject, Injectable, signal } from '@angular/core';\nimport { NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router } from '@angular/router';\nimport { ModalService } from '@ng-vagabond-lab/ng-dsv/ds/modal';\nimport { PlatformService } from '@ng-vagabond-lab/ng-dsv/platform';\nimport { filter } from 'rxjs';\n\ndeclare const gtag: Function;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RouterService {\n readonly router = inject(Router);\n readonly modalService = inject(ModalService);\n readonly plateformService = inject(PlatformService);\n readonly location = inject(Location);\n\n readonly isLoading = signal<boolean>(true);\n\n readonly currentUrl = signal<string>('');\n\n interval: ReturnType<typeof setTimeout> | undefined = undefined;\n\n constructor() {\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationStart) {\n this.isLoading.set(true);\n } else if (\n event instanceof NavigationEnd ||\n event instanceof NavigationCancel ||\n event instanceof NavigationError\n ) {\n this.currentUrl.set(event.url);\n this.isLoading.set(false);\n this.modalService.closeAll();\n clearInterval(this.interval);\n }\n });\n }\n\n initAnalytics(key: string): void {\n if (this.plateformService.isPlatformBrowser()) {\n this.router.events\n .pipe(filter((event) => event instanceof NavigationEnd))\n .subscribe((event: NavigationEnd) => {\n gtag('config', key, {\n page_path: event.urlAfterRedirects,\n });\n });\n }\n }\n\n goBack() {\n this.location.back();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;;;;;MAWa,kBAAkB,CAAA;IAClB,eAAe,GAAG,MAAM,EAAQ;AAEzC,IAAA,OAAO,CAAC,KAAY,EAAA;QAChB,KAAK,CAAC,eAAe,EAAE;AACvB,QAAA,IAAI,CAAC,eAAe,CAAC,IAAI,EAAE;IAC/B;
|
|
1
|
+
{"version":3,"file":"ng-vagabond-lab-ng-dsv-router.mjs","sources":["../../../projects/ng-dsv/router/pipe/router-external.pipe.ts","../../../projects/ng-dsv/router/pipe/router-internal.pipe.ts","../../../projects/ng-dsv/router/service/router.service.ts","../../../projects/ng-dsv/router/ng-vagabond-lab-ng-dsv-router.ts"],"sourcesContent":["import { Directive, output } from '@angular/core';\n\n@Directive({\n selector: 'a[dsvLinkExternal]',\n host: {\n class: 'primary text bold',\n target: '_blank',\n rel: 'noopener noreferrer',\n '(click)': 'onClick($event)',\n },\n})\nexport class RouterExternalPipe {\n readonly dsvLinkExternal = output<void>();\n\n onClick(event: Event): void {\n event.stopPropagation();\n this.dsvLinkExternal.emit();\n }\n}\n","import { Directive, ElementRef, inject, output } from '@angular/core';\nimport { Router } from '@angular/router';\n\n@Directive({\n selector: 'a[dsvLink]',\n host: {\n class: 'text',\n '(click)': 'onClick($event)',\n },\n})\nexport class RouterInternalPipe {\n readonly router = inject(Router);\n readonly element = inject(ElementRef);\n\n readonly dsvLink = output<void>();\n\n onClick(event: Event): void {\n event.stopPropagation();\n event.preventDefault();\n const url = this.element.nativeElement.getAttribute('href');\n if (url && url !== '#') {\n this.router.navigate([url]);\n } else {\n this.dsvLink.emit();\n }\n }\n}\n","import { Location } from '@angular/common';\nimport { inject, Injectable, signal } from '@angular/core';\nimport { NavigationCancel, NavigationEnd, NavigationError, NavigationStart, Router } from '@angular/router';\nimport { ModalService } from '@ng-vagabond-lab/ng-dsv/ds/modal';\nimport { PlatformService } from '@ng-vagabond-lab/ng-dsv/platform';\nimport { filter } from 'rxjs';\n\ndeclare const gtag: Function;\n\n@Injectable({\n providedIn: 'root',\n})\nexport class RouterService {\n readonly router = inject(Router);\n readonly modalService = inject(ModalService);\n readonly plateformService = inject(PlatformService);\n readonly location = inject(Location);\n\n readonly isLoading = signal<boolean>(true);\n\n readonly currentUrl = signal<string>('');\n\n interval: ReturnType<typeof setTimeout> | undefined = undefined;\n\n constructor() {\n this.router.events.subscribe((event) => {\n if (event instanceof NavigationStart) {\n this.isLoading.set(true);\n } else if (\n event instanceof NavigationEnd ||\n event instanceof NavigationCancel ||\n event instanceof NavigationError\n ) {\n this.currentUrl.set(event.url);\n this.isLoading.set(false);\n this.modalService.closeAll();\n clearInterval(this.interval);\n }\n });\n }\n\n initAnalytics(key: string): void {\n if (this.plateformService.isPlatformBrowser()) {\n this.router.events\n .pipe(filter((event) => event instanceof NavigationEnd))\n .subscribe((event: NavigationEnd) => {\n gtag('config', key, {\n page_path: event.urlAfterRedirects,\n });\n });\n }\n }\n\n goBack() {\n this.location.back();\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,8 @@ import { PlatformService } from '@ng-vagabond-lab/ng-dsv/platform';
|
|
|
4
4
|
|
|
5
5
|
class StorageService {
|
|
6
6
|
platformService = inject(PlatformService);
|
|
7
|
-
suffixe = signal('',
|
|
7
|
+
suffixe = signal('', /* @ts-ignore */
|
|
8
|
+
...(ngDevMode ? [{ debugName: "suffixe" }] : /* istanbul ignore next */ []));
|
|
8
9
|
setItem(key, value) {
|
|
9
10
|
if (this.platformService.isPlatformBrowser()) {
|
|
10
11
|
localStorage.setItem(key + this.suffixe(), JSON.stringify(value));
|
|
@@ -36,10 +37,10 @@ class StorageService {
|
|
|
36
37
|
localStorage.clear();
|
|
37
38
|
}
|
|
38
39
|
}
|
|
39
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
40
|
-
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "
|
|
40
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
41
|
+
static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: StorageService, providedIn: 'root' });
|
|
41
42
|
}
|
|
42
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
43
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: StorageService, decorators: [{
|
|
43
44
|
type: Injectable,
|
|
44
45
|
args: [{
|
|
45
46
|
providedIn: 'root',
|
|
@@ -51,7 +52,8 @@ const removeDuplicate = (datas = [], name = 'id') => {
|
|
|
51
52
|
};
|
|
52
53
|
|
|
53
54
|
class Store {
|
|
54
|
-
data = signal([],
|
|
55
|
+
data = signal([], /* @ts-ignore */
|
|
56
|
+
...(ngDevMode ? [{ debugName: "data" }] : /* istanbul ignore next */ []));
|
|
55
57
|
update(id, data, add) {
|
|
56
58
|
this.data.update((values) => {
|
|
57
59
|
values[id] = { ...data, ...add };
|
|
@@ -67,11 +69,15 @@ class Store {
|
|
|
67
69
|
}
|
|
68
70
|
|
|
69
71
|
class StoreMap {
|
|
70
|
-
_data = signal(new Map(),
|
|
72
|
+
_data = signal(new Map(), /* @ts-ignore */
|
|
73
|
+
...(ngDevMode ? [{ debugName: "_data" }] : /* istanbul ignore next */ []));
|
|
71
74
|
data = this._data.asReadonly();
|
|
72
|
-
values = computed(() => Array.from(this._data().values()),
|
|
73
|
-
|
|
74
|
-
|
|
75
|
+
values = computed(() => Array.from(this._data().values()), /* @ts-ignore */
|
|
76
|
+
...(ngDevMode ? [{ debugName: "values" }] : /* istanbul ignore next */ []));
|
|
77
|
+
keys = computed(() => Array.from(this._data().keys()), /* @ts-ignore */
|
|
78
|
+
...(ngDevMode ? [{ debugName: "keys" }] : /* istanbul ignore next */ []));
|
|
79
|
+
size = computed(() => this._data().size, /* @ts-ignore */
|
|
80
|
+
...(ngDevMode ? [{ debugName: "size" }] : /* istanbul ignore next */ []));
|
|
75
81
|
get(key) {
|
|
76
82
|
return this._data().get(key);
|
|
77
83
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-vagabond-lab-ng-dsv-storage.mjs","sources":["../../../projects/ng-dsv/storage/service/storage.service.ts","../../../projects/ng-dsv/storage/utils/storage.utils.ts","../../../projects/ng-dsv/storage/store/store.ts","../../../projects/ng-dsv/storage/store/store.map.ts","../../../projects/ng-dsv/storage/ng-vagabond-lab-ng-dsv-storage.ts"],"sourcesContent":["import { inject, Injectable, signal } from '@angular/core';\nimport { PlatformService } from '@ng-vagabond-lab/ng-dsv/platform';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class StorageService {\n readonly platformService = inject(PlatformService);\n\n readonly suffixe = signal<string>('');\n\n setItem(key: string, value: unknown): void {\n if (this.platformService.isPlatformBrowser()) {\n localStorage.setItem(key + this.suffixe(), JSON.stringify(value));\n }\n }\n\n parse<T>(value: string): T | null {\n try {\n return JSON.parse(value);\n } catch (exception) {\n console.error(value, (exception as string).toString().split('\\n').slice(0, 3).join('\\n'));\n return value as T;\n }\n }\n\n getItem<T>(key: string): T | null {\n if (this.platformService.isPlatformBrowser()) {\n const item = localStorage.getItem(key + this.suffixe());\n return item ? this.parse<T>(item) : null;\n }\n return null;\n }\n\n removeItem(key: string): void {\n if (this.platformService.isPlatformBrowser()) {\n localStorage.removeItem(key + this.suffixe());\n }\n }\n\n clear(): void {\n if (this.platformService.isPlatformBrowser()) {\n localStorage.clear();\n }\n }\n}\n","export const removeDuplicate = <U>(datas: U[] = [], name: string = 'id'): U[] => {\n return datas.filter(\n (item, index, self) => index === self.findIndex((t) => t[name as keyof U] === item[name as keyof U]),\n );\n};\n","import { signal } from '@angular/core';\nimport { removeDuplicate } from '../utils/storage.utils';\n\nexport class Store<T> {\n readonly data = signal<T[]>([]);\n\n update(id: number, data: T, add?: T): void {\n this.data.update((values) => {\n values[id] = { ...data, ...add };\n return [...values];\n });\n }\n\n updateForPage(page: number, data: T[]): void {\n this.data.update((values) => {\n let newValues = page === 1 ? [] : [...values];\n return [...removeDuplicate([...newValues, ...data])];\n });\n }\n}\n","import { computed, signal } from '@angular/core';\n\nexport class StoreMap<K, V> {\n private readonly _data = signal<Map<K, V>>(new Map());\n\n readonly data = this._data.asReadonly();\n readonly values = computed<V[]>(() => Array.from(this._data().values()));\n readonly keys = computed<K[]>(() => Array.from(this._data().keys()));\n readonly size = computed<number>(() => this._data().size);\n\n get(key: K): V | undefined {\n return this._data().get(key);\n }\n\n has(key: K): boolean {\n return this._data().has(key);\n }\n\n set(key: K, value: V): void {\n this._data.update((map) => new Map(map).set(key, value));\n }\n\n patch(key: K, partial: Partial<V>): void {\n this._data.update((map) => {\n const existing = map.get(key);\n if (!existing) return map;\n return new Map(map).set(key, { ...existing, ...partial });\n });\n }\n\n setMany(entries: [K, V][]): void {\n this._data.update((map) => {\n const next = new Map(map);\n entries.forEach(([k, v]) => next.set(k, v));\n return next;\n });\n }\n\n delete(key: K): void {\n this._data.update((map) => {\n const next = new Map(map);\n next.delete(key);\n return next;\n });\n }\n\n clear(): void {\n this._data.set(new Map());\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;;;MAMa,cAAc,CAAA;AACd,IAAA,eAAe,GAAG,MAAM,CAAC,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"ng-vagabond-lab-ng-dsv-storage.mjs","sources":["../../../projects/ng-dsv/storage/service/storage.service.ts","../../../projects/ng-dsv/storage/utils/storage.utils.ts","../../../projects/ng-dsv/storage/store/store.ts","../../../projects/ng-dsv/storage/store/store.map.ts","../../../projects/ng-dsv/storage/ng-vagabond-lab-ng-dsv-storage.ts"],"sourcesContent":["import { inject, Injectable, signal } from '@angular/core';\nimport { PlatformService } from '@ng-vagabond-lab/ng-dsv/platform';\n\n@Injectable({\n providedIn: 'root',\n})\nexport class StorageService {\n readonly platformService = inject(PlatformService);\n\n readonly suffixe = signal<string>('');\n\n setItem(key: string, value: unknown): void {\n if (this.platformService.isPlatformBrowser()) {\n localStorage.setItem(key + this.suffixe(), JSON.stringify(value));\n }\n }\n\n parse<T>(value: string): T | null {\n try {\n return JSON.parse(value);\n } catch (exception) {\n console.error(value, (exception as string).toString().split('\\n').slice(0, 3).join('\\n'));\n return value as T;\n }\n }\n\n getItem<T>(key: string): T | null {\n if (this.platformService.isPlatformBrowser()) {\n const item = localStorage.getItem(key + this.suffixe());\n return item ? this.parse<T>(item) : null;\n }\n return null;\n }\n\n removeItem(key: string): void {\n if (this.platformService.isPlatformBrowser()) {\n localStorage.removeItem(key + this.suffixe());\n }\n }\n\n clear(): void {\n if (this.platformService.isPlatformBrowser()) {\n localStorage.clear();\n }\n }\n}\n","export const removeDuplicate = <U>(datas: U[] = [], name: string = 'id'): U[] => {\n return datas.filter(\n (item, index, self) => index === self.findIndex((t) => t[name as keyof U] === item[name as keyof U]),\n );\n};\n","import { signal } from '@angular/core';\nimport { removeDuplicate } from '../utils/storage.utils';\n\nexport class Store<T> {\n readonly data = signal<T[]>([]);\n\n update(id: number, data: T, add?: T): void {\n this.data.update((values) => {\n values[id] = { ...data, ...add };\n return [...values];\n });\n }\n\n updateForPage(page: number, data: T[]): void {\n this.data.update((values) => {\n let newValues = page === 1 ? [] : [...values];\n return [...removeDuplicate([...newValues, ...data])];\n });\n }\n}\n","import { computed, signal } from '@angular/core';\n\nexport class StoreMap<K, V> {\n private readonly _data = signal<Map<K, V>>(new Map());\n\n readonly data = this._data.asReadonly();\n readonly values = computed<V[]>(() => Array.from(this._data().values()));\n readonly keys = computed<K[]>(() => Array.from(this._data().keys()));\n readonly size = computed<number>(() => this._data().size);\n\n get(key: K): V | undefined {\n return this._data().get(key);\n }\n\n has(key: K): boolean {\n return this._data().has(key);\n }\n\n set(key: K, value: V): void {\n this._data.update((map) => new Map(map).set(key, value));\n }\n\n patch(key: K, partial: Partial<V>): void {\n this._data.update((map) => {\n const existing = map.get(key);\n if (!existing) return map;\n return new Map(map).set(key, { ...existing, ...partial });\n });\n }\n\n setMany(entries: [K, V][]): void {\n this._data.update((map) => {\n const next = new Map(map);\n entries.forEach(([k, v]) => next.set(k, v));\n return next;\n });\n }\n\n delete(key: K): void {\n this._data.update((map) => {\n const next = new Map(map);\n next.delete(key);\n return next;\n });\n }\n\n clear(): void {\n this._data.set(new Map());\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
|
|
@@ -15,7 +15,8 @@ import { DsvCardComponent } from '@ng-vagabond-lab/ng-dsv/ds/card';
|
|
|
15
15
|
import { TranslatePipe } from '@ngx-translate/core';
|
|
16
16
|
|
|
17
17
|
class MenuLanguageFormComponent {
|
|
18
|
-
language = input('',
|
|
18
|
+
language = input('', /* @ts-ignore */
|
|
19
|
+
...(ngDevMode ? [{ debugName: "language" }] : /* istanbul ignore next */ []));
|
|
19
20
|
callback = output();
|
|
20
21
|
languageForm = form(signal({
|
|
21
22
|
language: this.language(),
|
|
@@ -31,21 +32,22 @@ class MenuLanguageFormComponent {
|
|
|
31
32
|
});
|
|
32
33
|
});
|
|
33
34
|
}
|
|
34
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
35
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "
|
|
35
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: MenuLanguageFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
36
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.1", type: MenuLanguageFormComponent, isStandalone: true, selector: "dsv-menu-language-form", inputs: { language: { classPropertyName: "language", publicName: "language", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { callback: "callback" }, ngImport: i0, template: "<dsv-form-signal [form]=\"languageForm\" textValid=\"\">\n <dsv-form-signal-select\n [withLabel]=\"false\"\n [form]=\"languageForm\"\n fieldName=\"language\"\n (callbackChange)=\"this.callback.emit($event)\"\n [list]=\"languages\"\n />\n</dsv-form-signal>\n", styles: [""], dependencies: [{ kind: "component", type: DsvFormSignalComponent, selector: "dsv-form-signal", inputs: ["form", "urlBack", "textValid", "formValid"], outputs: ["callbackBack", "callback"] }, { kind: "component", type: DsvFormSignalSelectComponent, selector: "dsv-form-signal-select", inputs: ["multiple", "list"] }] });
|
|
36
37
|
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
38
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: MenuLanguageFormComponent, decorators: [{
|
|
38
39
|
type: Component,
|
|
39
40
|
args: [{ selector: 'dsv-menu-language-form', imports: [DsvFormSignalComponent, DsvFormSignalSelectComponent], template: "<dsv-form-signal [form]=\"languageForm\" textValid=\"\">\n <dsv-form-signal-select\n [withLabel]=\"false\"\n [form]=\"languageForm\"\n fieldName=\"language\"\n (callbackChange)=\"this.callback.emit($event)\"\n [list]=\"languages\"\n />\n</dsv-form-signal>\n" }]
|
|
40
41
|
}], ctorParameters: () => [], propDecorators: { language: [{ type: i0.Input, args: [{ isSignal: true, alias: "language", required: false }] }], callback: [{ type: i0.Output, args: ["callback"] }] } });
|
|
41
42
|
|
|
42
43
|
class MenuSlotDirective {
|
|
43
44
|
template = inject(TemplateRef);
|
|
44
|
-
menuSlot = input.required(
|
|
45
|
-
|
|
46
|
-
static
|
|
45
|
+
menuSlot = input.required(/* @ts-ignore */
|
|
46
|
+
...(ngDevMode ? [{ debugName: "menuSlot" }] : /* istanbul ignore next */ []));
|
|
47
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: MenuSlotDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
|
|
48
|
+
static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.1", type: MenuSlotDirective, isStandalone: true, selector: "[menuSlot]", inputs: { menuSlot: { classPropertyName: "menuSlot", publicName: "menuSlot", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });
|
|
47
49
|
}
|
|
48
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
50
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: MenuSlotDirective, decorators: [{
|
|
49
51
|
type: Directive,
|
|
50
52
|
args: [{ selector: '[menuSlot]', standalone: true }]
|
|
51
53
|
}], propDecorators: { menuSlot: [{ type: i0.Input, args: [{ isSignal: true, alias: "menuSlot", required: true }] }] } });
|
|
@@ -55,18 +57,20 @@ class MenuContainer {
|
|
|
55
57
|
routerService = inject(RouterService);
|
|
56
58
|
menuService = inject(MenuService);
|
|
57
59
|
i18nService = inject(I18nService);
|
|
58
|
-
slots = contentChildren(MenuSlotDirective,
|
|
59
|
-
|
|
60
|
+
slots = contentChildren(MenuSlotDirective, /* @ts-ignore */
|
|
61
|
+
...(ngDevMode ? [{ debugName: "slots" }] : /* istanbul ignore next */ []));
|
|
62
|
+
menu = input(/* @ts-ignore */
|
|
63
|
+
...(ngDevMode ? [undefined, { debugName: "menu" }] : /* istanbul ignore next */ []));
|
|
60
64
|
getSlot(id) {
|
|
61
65
|
return this.slots()?.find((s) => s.menuSlot() === id)?.template ?? null;
|
|
62
66
|
}
|
|
63
67
|
isActive(url) {
|
|
64
68
|
return this.routerService.currentUrl().includes(url);
|
|
65
69
|
}
|
|
66
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "
|
|
67
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "
|
|
70
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: MenuContainer, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
71
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.1", type: MenuContainer, isStandalone: true, selector: "app-menu-container", inputs: { menu: { classPropertyName: "menu", publicName: "menu", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "slots", predicate: MenuSlotDirective, isSignal: true }], ngImport: i0, template: "<dsv-menu>\n @for (item of menu()?.content; track item.url) {\n @if (!item.role || authService.hasRole(item.role)) {\n <dsv-item\n [icon]=\"item.icon\"\n [text]=\"item.text\"\n [url]=\"item.url\"\n [class.active]=\"isActive(item.url)\"\n (callback)=\"menuService.closeMenu()\"\n />\n <ng-container *ngTemplateOutlet=\"getSlot(item.id)\"></ng-container>\n }\n }\n\n <div class=\"footer\">\n <dsv-menu-language-form\n [language]=\"i18nService.currentLanguage()\"\n (callback)=\"i18nService.switchLanguage($event)\"\n />\n <dsv-theme-switch />\n </div>\n</dsv-menu>\n", styles: [":host{display:flex;width:100%;height:100%}:host dsv-menu{padding-top:10px}:host dsv-item.active{text-decoration:underline}:host .footer{display:flex;flex-direction:row;align-items:center;justify-content:space-around;width:100%}\n"], dependencies: [{ kind: "component", type: DsvMenuComponent, selector: "dsv-menu", inputs: ["showFooter"] }, { kind: "component", type: DsvItemComponent, selector: "dsv-item", inputs: ["icon", "text", "nb", "url", "small"], outputs: ["callback"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: DsvThemeSwitchComponent, selector: "dsv-theme-switch" }, { kind: "component", type: MenuLanguageFormComponent, selector: "dsv-menu-language-form", inputs: ["language"], outputs: ["callback"] }] });
|
|
68
72
|
}
|
|
69
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
73
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: MenuContainer, decorators: [{
|
|
70
74
|
type: Component,
|
|
71
75
|
args: [{ selector: 'app-menu-container', imports: [
|
|
72
76
|
DsvMenuComponent,
|
|
@@ -78,34 +82,40 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.14", ngImpo
|
|
|
78
82
|
}], propDecorators: { slots: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => MenuSlotDirective), { isSignal: true }] }], menu: [{ type: i0.Input, args: [{ isSignal: true, alias: "menu", required: false }] }] } });
|
|
79
83
|
|
|
80
84
|
class AccessDeniedComponent {
|
|
81
|
-
contactEmail = input('vagabond.git@gmail.com',
|
|
82
|
-
|
|
83
|
-
static
|
|
85
|
+
contactEmail = input('vagabond.git@gmail.com', /* @ts-ignore */
|
|
86
|
+
...(ngDevMode ? [{ debugName: "contactEmail" }] : /* istanbul ignore next */ []));
|
|
87
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
88
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.1", type: AccessDeniedComponent, isStandalone: true, selector: "lib-access-denied", inputs: { contactEmail: { classPropertyName: "contactEmail", publicName: "contactEmail", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<dsv-card>\n <div class=\"dsv-card-header\">\n <h2>Access Denied</h2>\n </div>\n <div class=\"dsv-card-content\">\n <div class=\"flex error text gap10\">\n <i class=\"ri-information-line\"></i>\n Vous n'avez pas les droits pour acceder \u00E0 cette page.\n </div>\n <div class=\"contact\">\n Pour me contacter, veuillez \u00E9crire \u00E0 l'adresse mail suivante :\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n <dsv-button routerLink=\"/\" color=\"primary\" [prevent]=\"false\">page d'accueil</dsv-button>\n </div>\n</dsv-card>\n", styles: [":host{width:100%}:host .dsv-card-content>div{margin:40px 0}:host .dsv-card-content .contact{margin:60px 0}:host .dsv-card-content dsv-button{display:flex;justify-content:center}\n"], dependencies: [{ kind: "component", type: DsvCardComponent, selector: "dsv-card" }, { kind: "component", type: DsvButtonComponent, selector: "dsv-button", inputs: ["libelle", "routerLink", "icon", "iconEnd", "disabled", "noHover", "type", "prevent"], outputs: ["callback"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "browserUrl", "routerLink"] }] });
|
|
84
89
|
}
|
|
85
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
90
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: AccessDeniedComponent, decorators: [{
|
|
86
91
|
type: Component,
|
|
87
92
|
args: [{ selector: 'lib-access-denied', imports: [DsvCardComponent, DsvButtonComponent, RouterLink], template: "<dsv-card>\n <div class=\"dsv-card-header\">\n <h2>Access Denied</h2>\n </div>\n <div class=\"dsv-card-content\">\n <div class=\"flex error text gap10\">\n <i class=\"ri-information-line\"></i>\n Vous n'avez pas les droits pour acceder \u00E0 cette page.\n </div>\n <div class=\"contact\">\n Pour me contacter, veuillez \u00E9crire \u00E0 l'adresse mail suivante :\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n <dsv-button routerLink=\"/\" color=\"primary\" [prevent]=\"false\">page d'accueil</dsv-button>\n </div>\n</dsv-card>\n", styles: [":host{width:100%}:host .dsv-card-content>div{margin:40px 0}:host .dsv-card-content .contact{margin:60px 0}:host .dsv-card-content dsv-button{display:flex;justify-content:center}\n"] }]
|
|
88
93
|
}], propDecorators: { contactEmail: [{ type: i0.Input, args: [{ isSignal: true, alias: "contactEmail", required: false }] }] } });
|
|
89
94
|
|
|
90
95
|
class FooterComponent {
|
|
91
|
-
contactEmail = input('vagabond.git@gmail.com',
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
96
|
+
contactEmail = input('vagabond.git@gmail.com', /* @ts-ignore */
|
|
97
|
+
...(ngDevMode ? [{ debugName: "contactEmail" }] : /* istanbul ignore next */ []));
|
|
98
|
+
copyright = input(/* @ts-ignore */
|
|
99
|
+
...(ngDevMode ? [undefined, { debugName: "copyright" }] : /* istanbul ignore next */ []));
|
|
100
|
+
withMentions = input(true, /* @ts-ignore */
|
|
101
|
+
...(ngDevMode ? [{ debugName: "withMentions" }] : /* istanbul ignore next */ []));
|
|
102
|
+
withX = input(true, /* @ts-ignore */
|
|
103
|
+
...(ngDevMode ? [{ debugName: "withX" }] : /* istanbul ignore next */ []));
|
|
104
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: FooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
105
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.1", type: FooterComponent, isStandalone: true, selector: "app-footer", inputs: { contactEmail: { classPropertyName: "contactEmail", publicName: "contactEmail", isSignal: true, isRequired: false, transformFunction: null }, copyright: { classPropertyName: "copyright", publicName: "copyright", isSignal: true, isRequired: false, transformFunction: null }, withMentions: { classPropertyName: "withMentions", publicName: "withMentions", isSignal: true, isRequired: false, transformFunction: null }, withX: { classPropertyName: "withX", publicName: "withX", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<footer>\n <hr />\n <ng-content />\n <div class=\"footer-content\">\n <div>\n <div>\n <a href=\"/contact\" dsvLink>Contact</a>\n </div>\n <div>\n <strong>Mail : </strong>\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n @if (withMentions()) {\n <div>\n <a href=\"/mentions-legales\" dsvLink>{{ 'MENTIONS_LEGALES' | translate }}</a>\n </div>\n }\n </div>\n <div>\n <div class=\"created-by\">\n <a href=\"/contact\" dsvLink\n ><img class=\"vagabond\" title=\"vagabond\" alt=\"vagabond\" src=\"images/vagabond.png\"\n /></a>\n <div>\n <a href=\"/contact\" dsvLink>{{ 'CREATE_BY' | translate }}</a>\n <div class=\"flex-row gap5\">\n <a href=\"https://github.com/vagabon\" title=\"Github de Vagabond\" dsvLinkExternal>\n <img title=\"logo Github\" alt=\"logo Github\" src=\"/images/icons/github.png\" />\n </a>\n @if (withX()) {\n <a href=\"https://twitter.com/VagabondDev\" title=\"X de Vagabond\" dsvLinkExternal>\n <img title=\"logo X\" alt=\"logo X\" src=\"/images/icons/x.png\" />\n </a>\n }\n <a href=\"https://discord.gg/TUy5MtVRt7\" title=\"Discord de Vagabond\" dsvLinkExternal>\n <img title=\"logo discord\" alt=\"logo discord\" src=\"/images/icons/discord.png\"\n /></a>\n <a href=\"https://blog.vagabond.synology.me\" title=\"Blog de Vagabond\" dsvLinkExternal>\n <img\n title=\"logo blog vagabond\"\n alt=\"Me suivre sur mon blog\"\n src=\"/images/icons/blog.png\"\n /></a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"copyright\">Copyright © 2026 {{ copyright() }}</p>\n</footer>\n", styles: ["footer{padding:15px}footer hr{border:none;height:1px;background:linear-gradient(to right,transparent 0%,var(--border) 10%,var(--border) 90%,transparent 100%)}footer a{font-weight:700}footer>p{font-size:1rem;margin-top:10px;text-align:justify}footer .footer-content{margin-top:20px;align-items:flex-start;display:flex}footer .footer-content>div{width:50%;align-items:flex-start;display:flex;flex-direction:column;gap:20px}footer .footer-content>div:nth-child(2){align-items:end}footer .footer-content .created-by{display:flex;align-items:center;background:#c4c4c4;color:var(--text);border-radius:30px;padding:5px 10px}footer .footer-content .created-by img.vagabond{width:60px;height:60px;border-radius:50%}footer .footer-content .created-by>div{display:flex;flex-direction:column;gap:5px;margin:0 10px}footer .footer-content .created-by>div>span{font-weight:700}footer .footer-content .created-by>div>div{display:flex;gap:5px;align-items:center;justify-content:center}footer .footer-content .created-by>div>div a{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%}footer .footer-content .created-by>div>div a img{border-radius:10px;width:25px;height:25px}@media screen and (max-width:510px){footer .footer-content{flex-direction:column}footer .footer-content>div{width:100%}footer .footer-content>div:nth-child(2){align-items:flex-end;margin:10px 10px 0}}footer .copyright{margin-top:20px}:host-context(body.dark) .created-by{background-color:#404040!important}\n"], dependencies: [{ kind: "directive", type: RouterInternalPipe, selector: "a[dsvLink]", outputs: ["dsvLink"] }, { kind: "directive", type: RouterExternalPipe, selector: "a[dsvLinkExternal]", outputs: ["dsvLinkExternal"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] });
|
|
97
106
|
}
|
|
98
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
107
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: FooterComponent, decorators: [{
|
|
99
108
|
type: Component,
|
|
100
109
|
args: [{ selector: 'app-footer', imports: [RouterInternalPipe, RouterExternalPipe, TranslatePipe], template: "<footer>\n <hr />\n <ng-content />\n <div class=\"footer-content\">\n <div>\n <div>\n <a href=\"/contact\" dsvLink>Contact</a>\n </div>\n <div>\n <strong>Mail : </strong>\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n @if (withMentions()) {\n <div>\n <a href=\"/mentions-legales\" dsvLink>{{ 'MENTIONS_LEGALES' | translate }}</a>\n </div>\n }\n </div>\n <div>\n <div class=\"created-by\">\n <a href=\"/contact\" dsvLink\n ><img class=\"vagabond\" title=\"vagabond\" alt=\"vagabond\" src=\"images/vagabond.png\"\n /></a>\n <div>\n <a href=\"/contact\" dsvLink>{{ 'CREATE_BY' | translate }}</a>\n <div class=\"flex-row gap5\">\n <a href=\"https://github.com/vagabon\" title=\"Github de Vagabond\" dsvLinkExternal>\n <img title=\"logo Github\" alt=\"logo Github\" src=\"/images/icons/github.png\" />\n </a>\n @if (withX()) {\n <a href=\"https://twitter.com/VagabondDev\" title=\"X de Vagabond\" dsvLinkExternal>\n <img title=\"logo X\" alt=\"logo X\" src=\"/images/icons/x.png\" />\n </a>\n }\n <a href=\"https://discord.gg/TUy5MtVRt7\" title=\"Discord de Vagabond\" dsvLinkExternal>\n <img title=\"logo discord\" alt=\"logo discord\" src=\"/images/icons/discord.png\"\n /></a>\n <a href=\"https://blog.vagabond.synology.me\" title=\"Blog de Vagabond\" dsvLinkExternal>\n <img\n title=\"logo blog vagabond\"\n alt=\"Me suivre sur mon blog\"\n src=\"/images/icons/blog.png\"\n /></a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"copyright\">Copyright © 2026 {{ copyright() }}</p>\n</footer>\n", styles: ["footer{padding:15px}footer hr{border:none;height:1px;background:linear-gradient(to right,transparent 0%,var(--border) 10%,var(--border) 90%,transparent 100%)}footer a{font-weight:700}footer>p{font-size:1rem;margin-top:10px;text-align:justify}footer .footer-content{margin-top:20px;align-items:flex-start;display:flex}footer .footer-content>div{width:50%;align-items:flex-start;display:flex;flex-direction:column;gap:20px}footer .footer-content>div:nth-child(2){align-items:end}footer .footer-content .created-by{display:flex;align-items:center;background:#c4c4c4;color:var(--text);border-radius:30px;padding:5px 10px}footer .footer-content .created-by img.vagabond{width:60px;height:60px;border-radius:50%}footer .footer-content .created-by>div{display:flex;flex-direction:column;gap:5px;margin:0 10px}footer .footer-content .created-by>div>span{font-weight:700}footer .footer-content .created-by>div>div{display:flex;gap:5px;align-items:center;justify-content:center}footer .footer-content .created-by>div>div a{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%}footer .footer-content .created-by>div>div a img{border-radius:10px;width:25px;height:25px}@media screen and (max-width:510px){footer .footer-content{flex-direction:column}footer .footer-content>div{width:100%}footer .footer-content>div:nth-child(2){align-items:flex-end;margin:10px 10px 0}}footer .copyright{margin-top:20px}:host-context(body.dark) .created-by{background-color:#404040!important}\n"] }]
|
|
101
110
|
}], propDecorators: { contactEmail: [{ type: i0.Input, args: [{ isSignal: true, alias: "contactEmail", required: false }] }], copyright: [{ type: i0.Input, args: [{ isSignal: true, alias: "copyright", required: false }] }], withMentions: [{ type: i0.Input, args: [{ isSignal: true, alias: "withMentions", required: false }] }], withX: [{ type: i0.Input, args: [{ isSignal: true, alias: "withX", required: false }] }] } });
|
|
102
111
|
|
|
103
112
|
class NotFoundComponent {
|
|
104
|
-
contactEmail = input('vagabond.git@gmail.com',
|
|
105
|
-
|
|
106
|
-
static
|
|
113
|
+
contactEmail = input('vagabond.git@gmail.com', /* @ts-ignore */
|
|
114
|
+
...(ngDevMode ? [{ debugName: "contactEmail" }] : /* istanbul ignore next */ []));
|
|
115
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
116
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.1", type: NotFoundComponent, isStandalone: true, selector: "app-not-found", inputs: { contactEmail: { classPropertyName: "contactEmail", publicName: "contactEmail", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<dsv-card>\n <div class=\"dsv-card-header\">\n <h2>{{ 'NOT_FOUND_PAGE' | translate }}</h2>\n </div>\n <div class=\"dsv-card-content\">\n <div class=\"flex error text gap10\">\n <i class=\"ri-information-line\"></i>\n {{ 'NOT_FOUND_PAGE_DESCRIPTION' | translate }}\n </div>\n <div class=\"contact\">\n {{ 'CONTACT_ME' | translate }}\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n <dsv-button routerLink=\"/\" color=\"primary\" [prevent]=\"false\" libelle=\"BACK_TO_HOME\" />\n </div>\n</dsv-card>\n", styles: [":host{width:100%}:host .dsv-card-content>div{margin:40px 0}:host .dsv-card-content .contact{margin:60px 0}:host .dsv-card-content dsv-button{display:flex;justify-content:center}\n"], dependencies: [{ kind: "component", type: DsvCardComponent, selector: "dsv-card" }, { kind: "directive", type: RouterExternalPipe, selector: "a[dsvLinkExternal]", outputs: ["dsvLinkExternal"] }, { kind: "component", type: DsvButtonComponent, selector: "dsv-button", inputs: ["libelle", "routerLink", "icon", "iconEnd", "disabled", "noHover", "type", "prevent"], outputs: ["callback"] }, { kind: "directive", type: RouterLink, selector: "[routerLink]", inputs: ["target", "queryParams", "fragment", "queryParamsHandling", "state", "info", "relativeTo", "preserveFragment", "skipLocationChange", "replaceUrl", "browserUrl", "routerLink"] }, { kind: "pipe", type: TranslatePipe, name: "translate" }] });
|
|
107
117
|
}
|
|
108
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "
|
|
118
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.1", ngImport: i0, type: NotFoundComponent, decorators: [{
|
|
109
119
|
type: Component,
|
|
110
120
|
args: [{ selector: 'app-not-found', imports: [DsvCardComponent, RouterExternalPipe, DsvButtonComponent, RouterLink, TranslatePipe], template: "<dsv-card>\n <div class=\"dsv-card-header\">\n <h2>{{ 'NOT_FOUND_PAGE' | translate }}</h2>\n </div>\n <div class=\"dsv-card-content\">\n <div class=\"flex error text gap10\">\n <i class=\"ri-information-line\"></i>\n {{ 'NOT_FOUND_PAGE_DESCRIPTION' | translate }}\n </div>\n <div class=\"contact\">\n {{ 'CONTACT_ME' | translate }}\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n <dsv-button routerLink=\"/\" color=\"primary\" [prevent]=\"false\" libelle=\"BACK_TO_HOME\" />\n </div>\n</dsv-card>\n", styles: [":host{width:100%}:host .dsv-card-content>div{margin:40px 0}:host .dsv-card-content .contact{margin:60px 0}:host .dsv-card-content dsv-button{display:flex;justify-content:center}\n"] }]
|
|
111
121
|
}], propDecorators: { contactEmail: [{ type: i0.Input, args: [{ isSignal: true, alias: "contactEmail", required: false }] }] } });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ng-vagabond-lab-ng-dsv-template.mjs","sources":["../../../projects/ng-dsv/template/menu/component/language/menu-language-form.component.ts","../../../projects/ng-dsv/template/menu/component/language/menu-language-form.component.html","../../../projects/ng-dsv/template/menu/slot/menu.slot.ts","../../../projects/ng-dsv/template/menu/container/menu.container.ts","../../../projects/ng-dsv/template/menu/container/menu.container.html","../../../projects/ng-dsv/template/access-denied/component/access-denied.component.ts","../../../projects/ng-dsv/template/access-denied/component/access-denied.component.html","../../../projects/ng-dsv/template/footer/component/footer.component.ts","../../../projects/ng-dsv/template/footer/component/footer.component.html","../../../projects/ng-dsv/template/not-found/component/not-found.component.ts","../../../projects/ng-dsv/template/not-found/component/not-found.component.html","../../../projects/ng-dsv/template/ng-vagabond-lab-ng-dsv-template.ts"],"sourcesContent":["import { Component, effect, input, output, signal } from '@angular/core';\nimport { form } from '@angular/forms/signals';\nimport { ApiDto } from '@ng-vagabond-lab/ng-dsv/api';\nimport { DsvFormSignalComponent, DsvFormSignalSelectComponent } from '@ng-vagabond-lab/ng-dsv/ds/form/signal';\nimport { MenuLanguageDto } from '../../dto/language/menu.language.dto';\n\n@Component({\n selector: 'dsv-menu-language-form',\n imports: [DsvFormSignalComponent, DsvFormSignalSelectComponent],\n templateUrl: './menu-language-form.component.html',\n styleUrl: './menu-language-form.component.scss',\n})\nexport class MenuLanguageFormComponent {\n readonly language = input<string>('');\n\n readonly callback = output<string>();\n\n readonly languageForm = form<MenuLanguageDto>(\n signal<MenuLanguageDto>({\n language: this.language(),\n }),\n );\n\n readonly languages: (ApiDto & { name: string })[] = [\n { id: 'fr', name: 'FR' },\n { id: 'en', name: 'EN' },\n ];\n\n constructor() {\n effect(() => {\n this.languageForm().reset({\n language: this.language(),\n });\n });\n }\n}\n","<dsv-form-signal [form]=\"languageForm\" textValid=\"\">\n <dsv-form-signal-select\n [withLabel]=\"false\"\n [form]=\"languageForm\"\n fieldName=\"language\"\n (callbackChange)=\"this.callback.emit($event)\"\n [list]=\"languages\"\n />\n</dsv-form-signal>\n","import { Directive, inject, input, TemplateRef } from '@angular/core';\n\n@Directive({ selector: '[menuSlot]', standalone: true })\nexport class MenuSlotDirective {\n readonly template = inject(TemplateRef);\n\n readonly menuSlot = input.required<string>();\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { Component, contentChildren, inject, input, TemplateRef } from '@angular/core';\nimport { DsvItemComponent } from '@ng-vagabond-lab/ng-dsv/ds/item';\nimport { DsvMenuComponent, MenuService } from '@ng-vagabond-lab/ng-dsv/ds/menu';\nimport { DsvThemeSwitchComponent } from '@ng-vagabond-lab/ng-dsv/ds/theme';\nimport { I18nService } from '@ng-vagabond-lab/ng-dsv/i18n';\nimport { AuthService } from '@ng-vagabond-lab/ng-dsv/module/auth';\nimport { RouterService } from '@ng-vagabond-lab/ng-dsv/router';\nimport { MenuLanguageFormComponent } from '../component/language/menu-language-form.component';\nimport { MenuDto } from '../dto/menu.dto';\nimport { MenuSlotDirective } from '../slot/menu.slot';\n\n@Component({\n selector: 'app-menu-container',\n imports: [\n DsvMenuComponent,\n DsvItemComponent,\n NgTemplateOutlet,\n DsvThemeSwitchComponent,\n MenuLanguageFormComponent,\n ],\n templateUrl: './menu.container.html',\n styleUrls: ['./menu.container.scss'],\n})\nexport class MenuContainer {\n readonly authService = inject(AuthService);\n readonly routerService = inject(RouterService);\n readonly menuService = inject(MenuService);\n readonly i18nService = inject(I18nService);\n\n readonly slots = contentChildren(MenuSlotDirective);\n\n readonly menu = input<MenuDto>();\n\n getSlot(id: string): TemplateRef<any> | null {\n return this.slots()?.find((s) => s.menuSlot() === id)?.template ?? null;\n }\n\n isActive(url: string): boolean {\n return this.routerService.currentUrl().includes(url);\n }\n}\n","<dsv-menu>\n @for (item of menu()?.content; track item.url) {\n @if (!item.role || authService.hasRole(item.role)) {\n <dsv-item\n [icon]=\"item.icon\"\n [text]=\"item.text\"\n [url]=\"item.url\"\n [class.active]=\"isActive(item.url)\"\n (callback)=\"menuService.closeMenu()\"\n />\n <ng-container *ngTemplateOutlet=\"getSlot(item.id)\"></ng-container>\n }\n }\n\n <div class=\"footer\">\n <dsv-menu-language-form\n [language]=\"i18nService.currentLanguage()\"\n (callback)=\"i18nService.switchLanguage($event)\"\n />\n <dsv-theme-switch />\n </div>\n</dsv-menu>\n","import { Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { DsvButtonComponent } from '@ng-vagabond-lab/ng-dsv/ds/button';\nimport { DsvCardComponent } from '@ng-vagabond-lab/ng-dsv/ds/card';\n\n@Component({\n selector: 'lib-access-denied',\n imports: [DsvCardComponent, DsvButtonComponent, RouterLink],\n templateUrl: './access-denied.component.html',\n styleUrl: './access-denied.component.scss',\n})\nexport class AccessDeniedComponent {\n readonly contactEmail = input<string>('vagabond.git@gmail.com');\n}\n","<dsv-card>\n <div class=\"dsv-card-header\">\n <h2>Access Denied</h2>\n </div>\n <div class=\"dsv-card-content\">\n <div class=\"flex error text gap10\">\n <i class=\"ri-information-line\"></i>\n Vous n'avez pas les droits pour acceder à cette page.\n </div>\n <div class=\"contact\">\n Pour me contacter, veuillez écrire à l'adresse mail suivante :\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n <dsv-button routerLink=\"/\" color=\"primary\" [prevent]=\"false\">page d'accueil</dsv-button>\n </div>\n</dsv-card>\n","import { Component, input } from '@angular/core';\nimport { RouterExternalPipe, RouterInternalPipe } from '@ng-vagabond-lab/ng-dsv/router';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n@Component({\n selector: 'app-footer',\n imports: [RouterInternalPipe, RouterExternalPipe, TranslatePipe],\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss'],\n})\nexport class FooterComponent {\n readonly contactEmail = input<string>('vagabond.git@gmail.com');\n\n readonly copyright = input<string>();\n readonly withMentions = input<boolean>(true);\n readonly withX = input<boolean>(true);\n}\n","<footer>\n <hr />\n <ng-content />\n <div class=\"footer-content\">\n <div>\n <div>\n <a href=\"/contact\" dsvLink>Contact</a>\n </div>\n <div>\n <strong>Mail : </strong>\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n @if (withMentions()) {\n <div>\n <a href=\"/mentions-legales\" dsvLink>{{ 'MENTIONS_LEGALES' | translate }}</a>\n </div>\n }\n </div>\n <div>\n <div class=\"created-by\">\n <a href=\"/contact\" dsvLink\n ><img class=\"vagabond\" title=\"vagabond\" alt=\"vagabond\" src=\"images/vagabond.png\"\n /></a>\n <div>\n <a href=\"/contact\" dsvLink>{{ 'CREATE_BY' | translate }}</a>\n <div class=\"flex-row gap5\">\n <a href=\"https://github.com/vagabon\" title=\"Github de Vagabond\" dsvLinkExternal>\n <img title=\"logo Github\" alt=\"logo Github\" src=\"/images/icons/github.png\" />\n </a>\n @if (withX()) {\n <a href=\"https://twitter.com/VagabondDev\" title=\"X de Vagabond\" dsvLinkExternal>\n <img title=\"logo X\" alt=\"logo X\" src=\"/images/icons/x.png\" />\n </a>\n }\n <a href=\"https://discord.gg/TUy5MtVRt7\" title=\"Discord de Vagabond\" dsvLinkExternal>\n <img title=\"logo discord\" alt=\"logo discord\" src=\"/images/icons/discord.png\"\n /></a>\n <a href=\"https://blog.vagabond.synology.me\" title=\"Blog de Vagabond\" dsvLinkExternal>\n <img\n title=\"logo blog vagabond\"\n alt=\"Me suivre sur mon blog\"\n src=\"/images/icons/blog.png\"\n /></a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"copyright\">Copyright © 2026 {{ copyright() }}</p>\n</footer>\n","import { Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { DsvButtonComponent } from '@ng-vagabond-lab/ng-dsv/ds/button';\nimport { DsvCardComponent } from '@ng-vagabond-lab/ng-dsv/ds/card';\nimport { RouterExternalPipe } from '@ng-vagabond-lab/ng-dsv/router';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n@Component({\n selector: 'app-not-found',\n imports: [DsvCardComponent, RouterExternalPipe, DsvButtonComponent, RouterLink, TranslatePipe],\n templateUrl: './not-found.component.html',\n styleUrls: ['./not-found.component.scss'],\n})\nexport class NotFoundComponent {\n readonly contactEmail = input<string>('vagabond.git@gmail.com');\n}\n","<dsv-card>\n <div class=\"dsv-card-header\">\n <h2>{{ 'NOT_FOUND_PAGE' | translate }}</h2>\n </div>\n <div class=\"dsv-card-content\">\n <div class=\"flex error text gap10\">\n <i class=\"ri-information-line\"></i>\n {{ 'NOT_FOUND_PAGE_DESCRIPTION' | translate }}\n </div>\n <div class=\"contact\">\n {{ 'CONTACT_ME' | translate }}\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n <dsv-button routerLink=\"/\" color=\"primary\" [prevent]=\"false\" libelle=\"BACK_TO_HOME\" />\n </div>\n</dsv-card>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ng-vagabond-lab-ng-dsv-template.mjs","sources":["../../../projects/ng-dsv/template/menu/component/language/menu-language-form.component.ts","../../../projects/ng-dsv/template/menu/component/language/menu-language-form.component.html","../../../projects/ng-dsv/template/menu/slot/menu.slot.ts","../../../projects/ng-dsv/template/menu/container/menu.container.ts","../../../projects/ng-dsv/template/menu/container/menu.container.html","../../../projects/ng-dsv/template/access-denied/component/access-denied.component.ts","../../../projects/ng-dsv/template/access-denied/component/access-denied.component.html","../../../projects/ng-dsv/template/footer/component/footer.component.ts","../../../projects/ng-dsv/template/footer/component/footer.component.html","../../../projects/ng-dsv/template/not-found/component/not-found.component.ts","../../../projects/ng-dsv/template/not-found/component/not-found.component.html","../../../projects/ng-dsv/template/ng-vagabond-lab-ng-dsv-template.ts"],"sourcesContent":["import { Component, effect, input, output, signal } from '@angular/core';\nimport { form } from '@angular/forms/signals';\nimport { ApiDto } from '@ng-vagabond-lab/ng-dsv/api';\nimport { DsvFormSignalComponent, DsvFormSignalSelectComponent } from '@ng-vagabond-lab/ng-dsv/ds/form/signal';\nimport { MenuLanguageDto } from '../../dto/language/menu.language.dto';\n\n@Component({\n selector: 'dsv-menu-language-form',\n imports: [DsvFormSignalComponent, DsvFormSignalSelectComponent],\n templateUrl: './menu-language-form.component.html',\n styleUrl: './menu-language-form.component.scss',\n})\nexport class MenuLanguageFormComponent {\n readonly language = input<string>('');\n\n readonly callback = output<string>();\n\n readonly languageForm = form<MenuLanguageDto>(\n signal<MenuLanguageDto>({\n language: this.language(),\n }),\n );\n\n readonly languages: (ApiDto & { name: string })[] = [\n { id: 'fr', name: 'FR' },\n { id: 'en', name: 'EN' },\n ];\n\n constructor() {\n effect(() => {\n this.languageForm().reset({\n language: this.language(),\n });\n });\n }\n}\n","<dsv-form-signal [form]=\"languageForm\" textValid=\"\">\n <dsv-form-signal-select\n [withLabel]=\"false\"\n [form]=\"languageForm\"\n fieldName=\"language\"\n (callbackChange)=\"this.callback.emit($event)\"\n [list]=\"languages\"\n />\n</dsv-form-signal>\n","import { Directive, inject, input, TemplateRef } from '@angular/core';\n\n@Directive({ selector: '[menuSlot]', standalone: true })\nexport class MenuSlotDirective {\n readonly template = inject(TemplateRef);\n\n readonly menuSlot = input.required<string>();\n}\n","import { NgTemplateOutlet } from '@angular/common';\nimport { Component, contentChildren, inject, input, TemplateRef } from '@angular/core';\nimport { DsvItemComponent } from '@ng-vagabond-lab/ng-dsv/ds/item';\nimport { DsvMenuComponent, MenuService } from '@ng-vagabond-lab/ng-dsv/ds/menu';\nimport { DsvThemeSwitchComponent } from '@ng-vagabond-lab/ng-dsv/ds/theme';\nimport { I18nService } from '@ng-vagabond-lab/ng-dsv/i18n';\nimport { AuthService } from '@ng-vagabond-lab/ng-dsv/module/auth';\nimport { RouterService } from '@ng-vagabond-lab/ng-dsv/router';\nimport { MenuLanguageFormComponent } from '../component/language/menu-language-form.component';\nimport { MenuDto } from '../dto/menu.dto';\nimport { MenuSlotDirective } from '../slot/menu.slot';\n\n@Component({\n selector: 'app-menu-container',\n imports: [\n DsvMenuComponent,\n DsvItemComponent,\n NgTemplateOutlet,\n DsvThemeSwitchComponent,\n MenuLanguageFormComponent,\n ],\n templateUrl: './menu.container.html',\n styleUrls: ['./menu.container.scss'],\n})\nexport class MenuContainer {\n readonly authService = inject(AuthService);\n readonly routerService = inject(RouterService);\n readonly menuService = inject(MenuService);\n readonly i18nService = inject(I18nService);\n\n readonly slots = contentChildren(MenuSlotDirective);\n\n readonly menu = input<MenuDto>();\n\n getSlot(id: string): TemplateRef<any> | null {\n return this.slots()?.find((s) => s.menuSlot() === id)?.template ?? null;\n }\n\n isActive(url: string): boolean {\n return this.routerService.currentUrl().includes(url);\n }\n}\n","<dsv-menu>\n @for (item of menu()?.content; track item.url) {\n @if (!item.role || authService.hasRole(item.role)) {\n <dsv-item\n [icon]=\"item.icon\"\n [text]=\"item.text\"\n [url]=\"item.url\"\n [class.active]=\"isActive(item.url)\"\n (callback)=\"menuService.closeMenu()\"\n />\n <ng-container *ngTemplateOutlet=\"getSlot(item.id)\"></ng-container>\n }\n }\n\n <div class=\"footer\">\n <dsv-menu-language-form\n [language]=\"i18nService.currentLanguage()\"\n (callback)=\"i18nService.switchLanguage($event)\"\n />\n <dsv-theme-switch />\n </div>\n</dsv-menu>\n","import { Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { DsvButtonComponent } from '@ng-vagabond-lab/ng-dsv/ds/button';\nimport { DsvCardComponent } from '@ng-vagabond-lab/ng-dsv/ds/card';\n\n@Component({\n selector: 'lib-access-denied',\n imports: [DsvCardComponent, DsvButtonComponent, RouterLink],\n templateUrl: './access-denied.component.html',\n styleUrl: './access-denied.component.scss',\n})\nexport class AccessDeniedComponent {\n readonly contactEmail = input<string>('vagabond.git@gmail.com');\n}\n","<dsv-card>\n <div class=\"dsv-card-header\">\n <h2>Access Denied</h2>\n </div>\n <div class=\"dsv-card-content\">\n <div class=\"flex error text gap10\">\n <i class=\"ri-information-line\"></i>\n Vous n'avez pas les droits pour acceder à cette page.\n </div>\n <div class=\"contact\">\n Pour me contacter, veuillez écrire à l'adresse mail suivante :\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n <dsv-button routerLink=\"/\" color=\"primary\" [prevent]=\"false\">page d'accueil</dsv-button>\n </div>\n</dsv-card>\n","import { Component, input } from '@angular/core';\nimport { RouterExternalPipe, RouterInternalPipe } from '@ng-vagabond-lab/ng-dsv/router';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n@Component({\n selector: 'app-footer',\n imports: [RouterInternalPipe, RouterExternalPipe, TranslatePipe],\n templateUrl: './footer.component.html',\n styleUrls: ['./footer.component.scss'],\n})\nexport class FooterComponent {\n readonly contactEmail = input<string>('vagabond.git@gmail.com');\n\n readonly copyright = input<string>();\n readonly withMentions = input<boolean>(true);\n readonly withX = input<boolean>(true);\n}\n","<footer>\n <hr />\n <ng-content />\n <div class=\"footer-content\">\n <div>\n <div>\n <a href=\"/contact\" dsvLink>Contact</a>\n </div>\n <div>\n <strong>Mail : </strong>\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n @if (withMentions()) {\n <div>\n <a href=\"/mentions-legales\" dsvLink>{{ 'MENTIONS_LEGALES' | translate }}</a>\n </div>\n }\n </div>\n <div>\n <div class=\"created-by\">\n <a href=\"/contact\" dsvLink\n ><img class=\"vagabond\" title=\"vagabond\" alt=\"vagabond\" src=\"images/vagabond.png\"\n /></a>\n <div>\n <a href=\"/contact\" dsvLink>{{ 'CREATE_BY' | translate }}</a>\n <div class=\"flex-row gap5\">\n <a href=\"https://github.com/vagabon\" title=\"Github de Vagabond\" dsvLinkExternal>\n <img title=\"logo Github\" alt=\"logo Github\" src=\"/images/icons/github.png\" />\n </a>\n @if (withX()) {\n <a href=\"https://twitter.com/VagabondDev\" title=\"X de Vagabond\" dsvLinkExternal>\n <img title=\"logo X\" alt=\"logo X\" src=\"/images/icons/x.png\" />\n </a>\n }\n <a href=\"https://discord.gg/TUy5MtVRt7\" title=\"Discord de Vagabond\" dsvLinkExternal>\n <img title=\"logo discord\" alt=\"logo discord\" src=\"/images/icons/discord.png\"\n /></a>\n <a href=\"https://blog.vagabond.synology.me\" title=\"Blog de Vagabond\" dsvLinkExternal>\n <img\n title=\"logo blog vagabond\"\n alt=\"Me suivre sur mon blog\"\n src=\"/images/icons/blog.png\"\n /></a>\n </div>\n </div>\n </div>\n </div>\n </div>\n <p class=\"copyright\">Copyright © 2026 {{ copyright() }}</p>\n</footer>\n","import { Component, input } from '@angular/core';\nimport { RouterLink } from '@angular/router';\nimport { DsvButtonComponent } from '@ng-vagabond-lab/ng-dsv/ds/button';\nimport { DsvCardComponent } from '@ng-vagabond-lab/ng-dsv/ds/card';\nimport { RouterExternalPipe } from '@ng-vagabond-lab/ng-dsv/router';\nimport { TranslatePipe } from '@ngx-translate/core';\n\n@Component({\n selector: 'app-not-found',\n imports: [DsvCardComponent, RouterExternalPipe, DsvButtonComponent, RouterLink, TranslatePipe],\n templateUrl: './not-found.component.html',\n styleUrls: ['./not-found.component.scss'],\n})\nexport class NotFoundComponent {\n readonly contactEmail = input<string>('vagabond.git@gmail.com');\n}\n","<dsv-card>\n <div class=\"dsv-card-header\">\n <h2>{{ 'NOT_FOUND_PAGE' | translate }}</h2>\n </div>\n <div class=\"dsv-card-content\">\n <div class=\"flex error text gap10\">\n <i class=\"ri-information-line\"></i>\n {{ 'NOT_FOUND_PAGE_DESCRIPTION' | translate }}\n </div>\n <div class=\"contact\">\n {{ 'CONTACT_ME' | translate }}\n <a href=\"mailto:{{ contactEmail() }}\" dsvLinkExternal>{{ contactEmail() }}</a>\n </div>\n <dsv-button routerLink=\"/\" color=\"primary\" [prevent]=\"false\" libelle=\"BACK_TO_HOME\" />\n </div>\n</dsv-card>\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -84,7 +84,7 @@ declare class DsvFormSignalSearchbarComponent extends DsvBaseFormSignalComponent
|
|
|
84
84
|
readonly callbackSearch: _angular_core.OutputEmitterRef<string>;
|
|
85
85
|
readonly form: _angular_forms_signals.FieldTree<{
|
|
86
86
|
search: string;
|
|
87
|
-
}, string | number>;
|
|
87
|
+
}, string | number, "writable">;
|
|
88
88
|
constructor();
|
|
89
89
|
onSend(value: string): void;
|
|
90
90
|
static ɵfac: _angular_core.ɵɵFactoryDeclaration<DsvFormSignalSearchbarComponent, never>;
|
|
@@ -12,6 +12,7 @@ declare class I18nService {
|
|
|
12
12
|
readonly translateService: TranslateService;
|
|
13
13
|
readonly platformService: PlatformService;
|
|
14
14
|
readonly storageService: StorageService;
|
|
15
|
+
readonly document: Document;
|
|
15
16
|
readonly currentLanguage: _angular_core.WritableSignal<string>;
|
|
16
17
|
readonly hasChange: _angular_core.WritableSignal<boolean>;
|
|
17
18
|
constructor();
|