@ng-vagabond-lab/ng-dsv 0.2.21 → 0.2.26

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 (47) hide show
  1. package/fesm2022/ng-vagabond-lab-ng-dsv-api.mjs +6 -6
  2. package/fesm2022/ng-vagabond-lab-ng-dsv-base-service.mjs +12 -12
  3. package/fesm2022/ng-vagabond-lab-ng-dsv-base.mjs +24 -24
  4. package/fesm2022/ng-vagabond-lab-ng-dsv-date.mjs +3 -3
  5. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-accordion.mjs +11 -9
  6. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-accordion.mjs.map +1 -1
  7. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-avatar.mjs +3 -3
  8. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-button.mjs +6 -6
  9. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-card.mjs +12 -12
  10. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-chip.mjs +3 -3
  11. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-color.mjs +6 -6
  12. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-container.mjs +3 -3
  13. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-file.mjs +9 -9
  14. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-form-reactive.mjs +24 -24
  15. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-form-signal.mjs +27 -27
  16. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-header.mjs +4 -4
  17. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-header.mjs.map +1 -1
  18. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-img.mjs +3 -3
  19. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-item.mjs +3 -3
  20. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-linear-progress.mjs +4 -4
  21. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-linear-progress.mjs.map +1 -1
  22. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-link-pipe.mjs +6 -6
  23. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-list.mjs +12 -12
  24. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-menu.mjs +12 -12
  25. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-modal.mjs +12 -12
  26. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-paginate.mjs +3 -3
  27. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-scroll.mjs +9 -9
  28. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-skeleton.mjs +3 -3
  29. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-tab.mjs +6 -6
  30. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-table.mjs +3 -3
  31. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-theme.mjs +10 -10
  32. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-theme.mjs.map +1 -1
  33. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-toast.mjs +6 -6
  34. package/fesm2022/ng-vagabond-lab-ng-dsv-ds-tooltip.mjs +3 -3
  35. package/fesm2022/ng-vagabond-lab-ng-dsv-environment.mjs +3 -3
  36. package/fesm2022/ng-vagabond-lab-ng-dsv-i18n.mjs +3 -3
  37. package/fesm2022/ng-vagabond-lab-ng-dsv-module-admin.mjs +15 -15
  38. package/fesm2022/ng-vagabond-lab-ng-dsv-module-auth.mjs +9 -9
  39. package/fesm2022/ng-vagabond-lab-ng-dsv-module-contact.mjs +4 -4
  40. package/fesm2022/ng-vagabond-lab-ng-dsv-module-contact.mjs.map +1 -1
  41. package/fesm2022/ng-vagabond-lab-ng-dsv-platform.mjs +3 -3
  42. package/fesm2022/ng-vagabond-lab-ng-dsv-router.mjs +9 -9
  43. package/fesm2022/ng-vagabond-lab-ng-dsv-storage.mjs +3 -3
  44. package/fesm2022/ng-vagabond-lab-ng-dsv-template.mjs +19 -19
  45. package/fesm2022/ng-vagabond-lab-ng-dsv-template.mjs.map +1 -1
  46. package/package.json +1 -1
  47. package/types/ng-vagabond-lab-ng-dsv-ds-accordion.d.ts +1 -2
@@ -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: "22.0.7", ngImport: i0, type: RouterExternalPipe, deps: [], target: i0.ɵɵFactoryTarget.Directive });
16
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", 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 });
15
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: RouterExternalPipe, deps: [], target: i0.ɵɵFactoryTarget.Directive });
16
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.3", 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: "22.0.7", ngImport: i0, type: RouterExternalPipe, decorators: [{
18
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", 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: "22.0.7", ngImport: i0, type: RouterInternalPipe, deps: [], target: i0.ɵɵFactoryTarget.Directive });
47
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.0.7", type: RouterInternalPipe, isStandalone: true, selector: "a[dsvLink]", outputs: { dsvLink: "dsvLink" }, host: { listeners: { "click": "onClick($event)" }, classAttribute: "text" }, ngImport: i0 });
46
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: RouterInternalPipe, deps: [], target: i0.ɵɵFactoryTarget.Directive });
47
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "22.1.3", 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: "22.0.7", ngImport: i0, type: RouterInternalPipe, decorators: [{
49
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: RouterInternalPipe, decorators: [{
50
50
  type: Directive,
51
51
  args: [{
52
52
  selector: 'a[dsvLink]',
@@ -98,10 +98,10 @@ class RouterService {
98
98
  goBack() {
99
99
  this.location.back();
100
100
  }
101
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RouterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
102
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RouterService, providedIn: 'root' });
101
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: RouterService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
102
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: RouterService, providedIn: 'root' });
103
103
  }
104
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: RouterService, decorators: [{
104
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: RouterService, decorators: [{
105
105
  type: Injectable,
106
106
  args: [{
107
107
  providedIn: 'root',
@@ -37,10 +37,10 @@ class StorageService {
37
37
  localStorage.clear();
38
38
  }
39
39
  }
40
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
41
- static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: StorageService, providedIn: 'root' });
40
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: StorageService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
41
+ static ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: StorageService, providedIn: 'root' });
42
42
  }
43
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: StorageService, decorators: [{
43
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: StorageService, decorators: [{
44
44
  type: Injectable,
45
45
  args: [{
46
46
  providedIn: 'root',
@@ -32,10 +32,10 @@ class MenuLanguageFormComponent {
32
32
  });
33
33
  });
34
34
  }
35
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MenuLanguageFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
36
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.7", 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"] }] });
35
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: MenuLanguageFormComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
36
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", 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"] }] });
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MenuLanguageFormComponent, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: MenuLanguageFormComponent, decorators: [{
39
39
  type: Component,
40
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" }]
41
41
  }], ctorParameters: () => [], propDecorators: { language: [{ type: i0.Input, args: [{ isSignal: true, alias: "language", required: false }] }], callback: [{ type: i0.Output, args: ["callback"] }] } });
@@ -44,10 +44,10 @@ class MenuSlotDirective {
44
44
  template = inject(TemplateRef);
45
45
  menuSlot = input.required(/* @ts-ignore */
46
46
  ...(ngDevMode ? [{ debugName: "menuSlot" }] : /* istanbul ignore next */ []));
47
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MenuSlotDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
48
- static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.0.7", type: MenuSlotDirective, isStandalone: true, selector: "[menuSlot]", inputs: { menuSlot: { classPropertyName: "menuSlot", publicName: "menuSlot", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });
47
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: MenuSlotDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
48
+ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "22.1.3", type: MenuSlotDirective, isStandalone: true, selector: "[menuSlot]", inputs: { menuSlot: { classPropertyName: "menuSlot", publicName: "menuSlot", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0 });
49
49
  }
50
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MenuSlotDirective, decorators: [{
50
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: MenuSlotDirective, decorators: [{
51
51
  type: Directive,
52
52
  args: [{ selector: '[menuSlot]', standalone: true }]
53
53
  }], propDecorators: { menuSlot: [{ type: i0.Input, args: [{ isSignal: true, alias: "menuSlot", required: true }] }] } });
@@ -67,10 +67,10 @@ class MenuContainer {
67
67
  isActive(url) {
68
68
  return this.routerService.currentUrl().includes(url);
69
69
  }
70
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MenuContainer, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", 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"] }] });
70
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: MenuContainer, deps: [], target: i0.ɵɵFactoryTarget.Component });
71
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.3", 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"] }] });
72
72
  }
73
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: MenuContainer, decorators: [{
73
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: MenuContainer, decorators: [{
74
74
  type: Component,
75
75
  args: [{ selector: 'app-menu-container', imports: [
76
76
  DsvMenuComponent,
@@ -84,10 +84,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImpor
84
84
  class AccessDeniedComponent {
85
85
  contactEmail = input('vagabond.git@gmail.com', /* @ts-ignore */
86
86
  ...(ngDevMode ? [{ debugName: "contactEmail" }] : /* istanbul ignore next */ []));
87
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.7", 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"] }] });
87
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: AccessDeniedComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
88
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", 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"] }] });
89
89
  }
90
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: AccessDeniedComponent, decorators: [{
90
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: AccessDeniedComponent, decorators: [{
91
91
  type: Component,
92
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"] }]
93
93
  }], propDecorators: { contactEmail: [{ type: i0.Input, args: [{ isSignal: true, alias: "contactEmail", required: false }] }] } });
@@ -101,21 +101,21 @@ class FooterComponent {
101
101
  ...(ngDevMode ? [{ debugName: "withMentions" }] : /* istanbul ignore next */ []));
102
102
  withX = input(true, /* @ts-ignore */
103
103
  ...(ngDevMode ? [{ debugName: "withX" }] : /* istanbul ignore next */ []));
104
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: FooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
105
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.0.7", 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 &copy; 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" }] });
104
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: FooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
105
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.3", 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 &copy; 2026 {{ copyright() }}</p>\n</footer>\n", styles: ["footer{padding:5px}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:var(--background-card-light);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}}footer .copyright{margin-top:20px}\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" }] });
106
106
  }
107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: FooterComponent, decorators: [{
107
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: FooterComponent, decorators: [{
108
108
  type: Component,
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 &copy; 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"] }]
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 &copy; 2026 {{ copyright() }}</p>\n</footer>\n", styles: ["footer{padding:5px}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:var(--background-card-light);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}}footer .copyright{margin-top:20px}\n"] }]
110
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 }] }] } });
111
111
 
112
112
  class NotFoundComponent {
113
113
  contactEmail = input('vagabond.git@gmail.com', /* @ts-ignore */
114
114
  ...(ngDevMode ? [{ debugName: "contactEmail" }] : /* istanbul ignore next */ []));
115
- static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
116
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.0.7", 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" }] });
115
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: NotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
116
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "22.1.3", 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" }] });
117
117
  }
118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.0.7", ngImport: i0, type: NotFoundComponent, decorators: [{
118
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.3", ngImport: i0, type: NotFoundComponent, decorators: [{
119
119
  type: Component,
120
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"] }]
121
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 &copy; 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 &copy; 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
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ng-vagabond-lab/ng-dsv",
3
- "version": "0.2.21",
3
+ "version": "0.2.26",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^20.0.0",
6
6
  "@angular/core": "^20.0.0"
@@ -1,11 +1,10 @@
1
1
  import * as _angular_core from '@angular/core';
2
- import { ElementRef } from '@angular/core';
3
2
 
4
3
  declare class DsvAccordionComponent {
5
4
  readonly open: _angular_core.InputSignal<boolean>;
6
5
  readonly titleText: _angular_core.InputSignal<string>;
7
6
  readonly color: _angular_core.InputSignal<string>;
8
- readonly checkboxRef: _angular_core.Signal<ElementRef<any> | undefined>;
7
+ readonly uuid: _angular_core.WritableSignal<string>;
9
8
  readonly isOpen: _angular_core.WritableSignal<boolean>;
10
9
  readonly hasContent: _angular_core.WritableSignal<boolean>;
11
10
  constructor();