@onemrvapublic/design-system 20.11.3 → 21.0.0-develop.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (205) hide show
  1. package/README.md +5 -9
  2. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs +14 -20
  3. package/fesm2022/onemrvapublic-design-system-flag-icon.mjs.map +1 -1
  4. package/fesm2022/onemrvapublic-design-system-layout.mjs +207 -290
  5. package/fesm2022/onemrvapublic-design-system-layout.mjs.map +1 -1
  6. package/fesm2022/onemrvapublic-design-system-mat-address.mjs +19 -25
  7. package/fesm2022/onemrvapublic-design-system-mat-address.mjs.map +1 -1
  8. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs +58 -223
  9. package/fesm2022/onemrvapublic-design-system-mat-avatar.mjs.map +1 -1
  10. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs +47 -53
  11. package/fesm2022/onemrvapublic-design-system-mat-breadcrumb.mjs.map +1 -1
  12. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs +50 -71
  13. package/fesm2022/onemrvapublic-design-system-mat-carousel.mjs.map +1 -1
  14. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs +27 -29
  15. package/fesm2022/onemrvapublic-design-system-mat-choice-chip.mjs.map +1 -1
  16. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs +24 -42
  17. package/fesm2022/onemrvapublic-design-system-mat-copy-to-clipboard.mjs.map +1 -1
  18. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs +8 -12
  19. package/fesm2022/onemrvapublic-design-system-mat-country-item.mjs.map +1 -1
  20. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs +4 -4
  21. package/fesm2022/onemrvapublic-design-system-mat-datepicker-header.mjs.map +1 -1
  22. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs +10 -18
  23. package/fesm2022/onemrvapublic-design-system-mat-empty-row.mjs.map +1 -1
  24. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs +98 -173
  25. package/fesm2022/onemrvapublic-design-system-mat-file-upload.mjs.map +1 -1
  26. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs +32 -52
  27. package/fesm2022/onemrvapublic-design-system-mat-input-address.mjs.map +1 -1
  28. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs +10 -13
  29. package/fesm2022/onemrvapublic-design-system-mat-input-birthplace.mjs.map +1 -1
  30. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs +10 -13
  31. package/fesm2022/onemrvapublic-design-system-mat-input-country.mjs.map +1 -1
  32. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs +24 -44
  33. package/fesm2022/onemrvapublic-design-system-mat-input-enterprise-number.mjs.map +1 -1
  34. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs +22 -40
  35. package/fesm2022/onemrvapublic-design-system-mat-input-iban.mjs.map +1 -1
  36. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs +26 -39
  37. package/fesm2022/onemrvapublic-design-system-mat-input-phone.mjs.map +1 -1
  38. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs +45 -180
  39. package/fesm2022/onemrvapublic-design-system-mat-message-box.mjs.map +1 -1
  40. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs +38 -63
  41. package/fesm2022/onemrvapublic-design-system-mat-multi-select.mjs.map +1 -1
  42. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs +40 -65
  43. package/fesm2022/onemrvapublic-design-system-mat-navigation.mjs.map +1 -1
  44. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs +19 -59
  45. package/fesm2022/onemrvapublic-design-system-mat-notification.mjs.map +1 -1
  46. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs +23 -49
  47. package/fesm2022/onemrvapublic-design-system-mat-paginator.mjs.map +1 -1
  48. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs +61 -101
  49. package/fesm2022/onemrvapublic-design-system-mat-panel.mjs.map +1 -1
  50. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs +30 -50
  51. package/fesm2022/onemrvapublic-design-system-mat-pop-over.mjs.map +1 -1
  52. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs +26 -38
  53. package/fesm2022/onemrvapublic-design-system-mat-progress-bar.mjs.map +1 -1
  54. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs +66 -105
  55. package/fesm2022/onemrvapublic-design-system-mat-select-search.mjs.map +1 -1
  56. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs +23 -43
  57. package/fesm2022/onemrvapublic-design-system-mat-selectable-box.mjs.map +1 -1
  58. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs +15 -26
  59. package/fesm2022/onemrvapublic-design-system-mat-side-menu.mjs.map +1 -1
  60. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs +62 -177
  61. package/fesm2022/onemrvapublic-design-system-mat-skeleton.mjs.map +1 -1
  62. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs +17 -21
  63. package/fesm2022/onemrvapublic-design-system-mat-spinner.mjs.map +1 -1
  64. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs +14 -22
  65. package/fesm2022/onemrvapublic-design-system-mat-stepper.mjs.map +1 -1
  66. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs +8 -8
  67. package/fesm2022/onemrvapublic-design-system-mat-sticker.mjs.map +1 -1
  68. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs +79 -93
  69. package/fesm2022/onemrvapublic-design-system-mat-table-of-content.mjs.map +1 -1
  70. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs +59 -94
  71. package/fesm2022/onemrvapublic-design-system-mat-task-list.mjs.map +1 -1
  72. package/fesm2022/onemrvapublic-design-system-mat-timepicker.mjs +178 -245
  73. package/fesm2022/onemrvapublic-design-system-mat-timepicker.mjs.map +1 -1
  74. package/fesm2022/onemrvapublic-design-system-mat-toast.mjs +7 -7
  75. package/fesm2022/onemrvapublic-design-system-mat-toast.mjs.map +1 -1
  76. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs +33 -43
  77. package/fesm2022/onemrvapublic-design-system-mat-tooltip.mjs.map +1 -1
  78. package/fesm2022/onemrvapublic-design-system-page-error.mjs +33 -39
  79. package/fesm2022/onemrvapublic-design-system-page-error.mjs.map +1 -1
  80. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs +38 -42
  81. package/fesm2022/onemrvapublic-design-system-page-not-found.mjs.map +1 -1
  82. package/fesm2022/onemrvapublic-design-system-shared.mjs +188 -312
  83. package/fesm2022/onemrvapublic-design-system-shared.mjs.map +1 -1
  84. package/fesm2022/onemrvapublic-design-system-utils.mjs.map +1 -1
  85. package/mat-choice-chip/src/onemrva-mat-choice-chip.component.scss +13 -3
  86. package/mat-empty-row/src/onemrva-mat-empty-row.component.scss +2 -2
  87. package/mat-file-upload/src/components/onemrva-mat-file-panel/onemrva-file-panel.component.scss +1 -1
  88. package/mat-input-phone/src/onemrva-mat-input-phone.component.scss +1 -1
  89. package/mat-panel/src/onemrva-mat-panel-content.scss +1 -1
  90. package/mat-skeleton/src/onemrva-mat-skeleton.component.scss +1 -1
  91. package/mat-table-of-content/src/onemrva-mat-table-of-content.component.scss +10 -2
  92. package/package.json +72 -62
  93. package/theme/index.scss +230 -0
  94. package/theme/overrides/_autocomplete.scss +9 -0
  95. package/theme/overrides/_button-toggle.scss +14 -0
  96. package/theme/overrides/_button.scss +140 -0
  97. package/theme/overrides/_card.scss +34 -0
  98. package/theme/overrides/_carousel.scss +13 -0
  99. package/theme/overrides/_checkbox.scss +49 -0
  100. package/theme/overrides/_chips.scss +42 -0
  101. package/theme/overrides/_datepicker.scss +10 -0
  102. package/theme/overrides/_dialogs.scss +118 -0
  103. package/theme/overrides/_divider.scss +9 -0
  104. package/theme/overrides/_drag-and-drop.scss +74 -0
  105. package/theme/overrides/_expansion.scss +51 -0
  106. package/theme/overrides/_fab.scss +45 -0
  107. package/theme/overrides/_form-field.scss +223 -0
  108. package/theme/overrides/_icon-button.scss +24 -0
  109. package/theme/overrides/_icon.scss +97 -0
  110. package/theme/overrides/_input.scss +18 -0
  111. package/theme/overrides/_layout.scss +35 -0
  112. package/theme/overrides/_menu.scss +45 -0
  113. package/theme/overrides/_option.scss +15 -0
  114. package/theme/overrides/_panel.scss +59 -0
  115. package/theme/overrides/_progress-bar.scss +29 -0
  116. package/theme/overrides/_radio.scss +16 -0
  117. package/theme/overrides/_select.scss +124 -0
  118. package/theme/overrides/_sidenav.scss +13 -0
  119. package/theme/overrides/_slide-toggle.scss +53 -0
  120. package/theme/overrides/_stepper.scss +196 -0
  121. package/theme/overrides/_stickers.scss +13 -0
  122. package/theme/overrides/_table.scss +115 -0
  123. package/theme/overrides/_tabs.scss +20 -0
  124. package/theme/overrides/_toast.scss +16 -0
  125. package/theme/overrides/_toc.scss +26 -0
  126. package/theme/overrides/_toolbar.scss +26 -0
  127. package/theme/overrides/_tooltip.scss +19 -0
  128. package/theme/palettes/_palette.scss +189 -0
  129. package/theme/utilities/_animations.scss +54 -0
  130. package/theme/utilities/_container.scss +14 -0
  131. package/theme/utilities/_fonts.scss +170 -0
  132. package/theme/utilities/_grid.scss +75 -0
  133. package/theme/utilities/_media.scss +33 -0
  134. package/theme/utilities/_palettes.scss +120 -0
  135. package/theme/utilities/_spacing.scss +86 -0
  136. package/theme/utilities/_tokens.scss +123 -0
  137. package/theme/utilities/_utilities.scss +351 -0
  138. package/theme/utilities/_variables.scss +42 -0
  139. package/types/onemrvapublic-design-system-flag-icon.d.ts +18 -0
  140. package/types/onemrvapublic-design-system-layout.d.ts +305 -0
  141. package/{mat-address/index.d.ts → types/onemrvapublic-design-system-mat-address.d.ts} +8 -8
  142. package/types/onemrvapublic-design-system-mat-avatar.d.ts +67 -0
  143. package/{mat-breadcrumb/index.d.ts → types/onemrvapublic-design-system-mat-breadcrumb.d.ts} +8 -6
  144. package/types/onemrvapublic-design-system-mat-carousel.d.ts +52 -0
  145. package/types/onemrvapublic-design-system-mat-choice-chip.d.ts +23 -0
  146. package/types/onemrvapublic-design-system-mat-copy-to-clipboard.d.ts +25 -0
  147. package/types/onemrvapublic-design-system-mat-country-item.d.ts +10 -0
  148. package/types/onemrvapublic-design-system-mat-empty-row.d.ts +18 -0
  149. package/{mat-file-upload/index.d.ts → types/onemrvapublic-design-system-mat-file-upload.d.ts} +53 -51
  150. package/types/onemrvapublic-design-system-mat-input-address.d.ts +32 -0
  151. package/{mat-input-birthplace/index.d.ts → types/onemrvapublic-design-system-mat-input-birthplace.d.ts} +10 -10
  152. package/{mat-input-country/index.d.ts → types/onemrvapublic-design-system-mat-input-country.d.ts} +2 -2
  153. package/types/onemrvapublic-design-system-mat-input-enterprise-number.d.ts +37 -0
  154. package/{mat-input-iban/index.d.ts → types/onemrvapublic-design-system-mat-input-iban.d.ts} +12 -13
  155. package/{mat-input-phone/index.d.ts → types/onemrvapublic-design-system-mat-input-phone.d.ts} +12 -12
  156. package/types/onemrvapublic-design-system-mat-message-box.d.ts +29 -0
  157. package/types/onemrvapublic-design-system-mat-multi-select.d.ts +57 -0
  158. package/types/onemrvapublic-design-system-mat-navigation.d.ts +55 -0
  159. package/types/onemrvapublic-design-system-mat-notification.d.ts +23 -0
  160. package/types/onemrvapublic-design-system-mat-paginator.d.ts +58 -0
  161. package/types/onemrvapublic-design-system-mat-panel.d.ts +66 -0
  162. package/types/onemrvapublic-design-system-mat-pop-over.d.ts +40 -0
  163. package/types/onemrvapublic-design-system-mat-progress-bar.d.ts +16 -0
  164. package/{mat-select-search/index.d.ts → types/onemrvapublic-design-system-mat-select-search.d.ts} +35 -35
  165. package/types/onemrvapublic-design-system-mat-selectable-box.d.ts +26 -0
  166. package/{mat-side-menu/index.d.ts → types/onemrvapublic-design-system-mat-side-menu.d.ts} +6 -6
  167. package/types/onemrvapublic-design-system-mat-skeleton.d.ts +82 -0
  168. package/{mat-spinner/index.d.ts → types/onemrvapublic-design-system-mat-spinner.d.ts} +3 -4
  169. package/{mat-stepper/index.d.ts → types/onemrvapublic-design-system-mat-stepper.d.ts} +3 -6
  170. package/types/onemrvapublic-design-system-mat-table-of-content.d.ts +85 -0
  171. package/types/onemrvapublic-design-system-mat-task-list.d.ts +56 -0
  172. package/{mat-timepicker/index.d.ts → types/onemrvapublic-design-system-mat-timepicker.d.ts} +50 -66
  173. package/types/onemrvapublic-design-system-mat-tooltip.d.ts +40 -0
  174. package/types/onemrvapublic-design-system-page-error.d.ts +29 -0
  175. package/{page-not-found/index.d.ts → types/onemrvapublic-design-system-page-not-found.d.ts} +6 -6
  176. package/{shared/index.d.ts → types/onemrvapublic-design-system-shared.d.ts} +47 -71
  177. package/flag-icon/index.d.ts +0 -18
  178. package/layout/index.d.ts +0 -295
  179. package/mat-avatar/index.d.ts +0 -187
  180. package/mat-carousel/index.d.ts +0 -52
  181. package/mat-choice-chip/index.d.ts +0 -21
  182. package/mat-copy-to-clipboard/index.d.ts +0 -25
  183. package/mat-country-item/index.d.ts +0 -10
  184. package/mat-empty-row/index.d.ts +0 -19
  185. package/mat-input-address/index.d.ts +0 -32
  186. package/mat-input-enterprise-number/index.d.ts +0 -37
  187. package/mat-message-box/index.d.ts +0 -101
  188. package/mat-multi-select/index.d.ts +0 -57
  189. package/mat-navigation/index.d.ts +0 -54
  190. package/mat-notification/index.d.ts +0 -43
  191. package/mat-paginator/index.d.ts +0 -58
  192. package/mat-panel/index.d.ts +0 -66
  193. package/mat-pop-over/index.d.ts +0 -40
  194. package/mat-progress-bar/index.d.ts +0 -18
  195. package/mat-selectable-box/index.d.ts +0 -29
  196. package/mat-skeleton/index.d.ts +0 -100
  197. package/mat-table-of-content/index.d.ts +0 -84
  198. package/mat-task-list/index.d.ts +0 -57
  199. package/mat-tooltip/index.d.ts +0 -40
  200. package/page-error/index.d.ts +0 -34
  201. /package/{mat-datepicker-header/index.d.ts → types/onemrvapublic-design-system-mat-datepicker-header.d.ts} +0 -0
  202. /package/{mat-sticker/index.d.ts → types/onemrvapublic-design-system-mat-sticker.d.ts} +0 -0
  203. /package/{mat-toast/index.d.ts → types/onemrvapublic-design-system-mat-toast.d.ts} +0 -0
  204. /package/{utils/index.d.ts → types/onemrvapublic-design-system-utils.d.ts} +0 -0
  205. /package/{index.d.ts → types/onemrvapublic-design-system.d.ts} +0 -0
@@ -1,45 +1,43 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Input, Component, inject, ElementRef, input, effect, HostListener, Directive, NgModule } from '@angular/core';
2
+ import { input, Component, inject, ElementRef, effect, Directive, NgModule } from '@angular/core';
3
+ import { Overlay, OverlayPositionBuilder } from '@angular/cdk/overlay';
3
4
  import { NgTemplateOutlet } from '@angular/common';
4
5
  import { ComponentPortal } from '@angular/cdk/portal';
5
- import { Overlay, OverlayPositionBuilder } from '@angular/cdk/overlay';
6
6
 
7
7
  class OnemrvaMatTooltipComponent {
8
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: OnemrvaMatTooltipComponent, isStandalone: true, selector: "onemrva-mat-tooltip", inputs: { text: "text", contentTemplate: "contentTemplate" }, ngImport: i0, template: `
8
+ constructor() {
9
+ this.text = input.required(...(ngDevMode ? [{ debugName: "text" }] : []));
10
+ this.contentTemplate = input.required(...(ngDevMode ? [{ debugName: "contentTemplate" }] : []));
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatTooltipComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "21.1.1", type: OnemrvaMatTooltipComponent, isStandalone: true, selector: "onemrva-mat-tooltip", inputs: { text: { classPropertyName: "text", publicName: "text", isSignal: true, isRequired: true, transformFunction: null }, contentTemplate: { classPropertyName: "contentTemplate", publicName: "contentTemplate", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10
14
  <div>
11
15
  <div class="tooltip-container">
12
16
  <ng-template #simpleText>
13
- {{ text }}
17
+ {{ text() }}
14
18
  </ng-template>
15
- <ng-container *ngTemplateOutlet="contentTemplate || simpleText">
16
- </ng-container>
19
+ <ng-container *ngTemplateOutlet="contentTemplate() || simpleText" />
17
20
  </div>
18
21
  </div>
19
22
  `, isInline: true, styles: [".tooltip-container{font-family:var(--text-font);background:var(--mat-sys-background);font-size:12px;color:var(--mat-sys-on-background);box-shadow:0 2px 6px #00000052;border-radius:4px;padding:var(--spacer);font-weight:400;font-style:normal;line-height:18px}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
20
23
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatTooltipComponent, decorators: [{
24
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatTooltipComponent, decorators: [{
22
25
  type: Component,
23
26
  args: [{ selector: 'onemrva-mat-tooltip', template: `
24
27
  <div>
25
28
  <div class="tooltip-container">
26
29
  <ng-template #simpleText>
27
- {{ text }}
30
+ {{ text() }}
28
31
  </ng-template>
29
- <ng-container *ngTemplateOutlet="contentTemplate || simpleText">
30
- </ng-container>
32
+ <ng-container *ngTemplateOutlet="contentTemplate() || simpleText" />
31
33
  </div>
32
34
  </div>
33
35
  `, standalone: true, imports: [NgTemplateOutlet], styles: [".tooltip-container{font-family:var(--text-font);background:var(--mat-sys-background);font-size:12px;color:var(--mat-sys-on-background);box-shadow:0 2px 6px #00000052;border-radius:4px;padding:var(--spacer);font-weight:400;font-style:normal;line-height:18px}\n"] }]
34
- }], propDecorators: { text: [{
35
- type: Input
36
- }], contentTemplate: [{
37
- type: Input
38
- }] } });
36
+ }], propDecorators: { text: [{ type: i0.Input, args: [{ isSignal: true, alias: "text", required: true }] }], contentTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: "contentTemplate", required: true }] }] } });
39
37
 
40
38
  class OnemrvaMatTooltipDirective {
41
39
  ngOnInit() {
42
- if (!this.showToolTip) {
40
+ if (!this.showToolTip()) {
43
41
  return;
44
42
  }
45
43
  }
@@ -47,9 +45,11 @@ class OnemrvaMatTooltipDirective {
47
45
  this._overlay = inject(Overlay);
48
46
  this._overlayPositionBuilder = inject(OverlayPositionBuilder);
49
47
  this._elementRef = inject(ElementRef);
50
- this.showToolTip = true;
48
+ this.showToolTip = input(true, ...(ngDevMode ? [{ debugName: "showToolTip" }] : []));
49
+ this.customToolTip = input(...(ngDevMode ? [undefined, { debugName: "customToolTip" }] : []));
50
+ this.contentTemplate = input(...(ngDevMode ? [undefined, { debugName: "contentTemplate" }] : []));
51
51
  this.position = input('after', ...(ngDevMode ? [{ debugName: "position" }] : []));
52
- this.positionOffset = 5;
52
+ this.positionOffset = input(5, ...(ngDevMode ? [{ debugName: "positionOffset" }] : []));
53
53
  effect(() => {
54
54
  const positionStrategy = this._overlayPositionBuilder
55
55
  .flexibleConnectedTo(this._elementRef)
@@ -111,8 +111,8 @@ class OnemrvaMatTooltipDirective {
111
111
  show() {
112
112
  if (this._overlayRef && !this._overlayRef.hasAttached()) {
113
113
  const tooltipRef = this._overlayRef.attach(new ComponentPortal(OnemrvaMatTooltipComponent));
114
- tooltipRef.instance.text = this.customToolTip;
115
- tooltipRef.instance.contentTemplate = this.contentTemplate;
114
+ tooltipRef.setInput('text', this.customToolTip());
115
+ tooltipRef.setInput('contentTemplate', this.contentTemplate());
116
116
  }
117
117
  }
118
118
  hide() {
@@ -126,37 +126,27 @@ class OnemrvaMatTooltipDirective {
126
126
  this._overlayRef.detach();
127
127
  }
128
128
  }
129
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatTooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
130
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.15", type: OnemrvaMatTooltipDirective, isStandalone: true, selector: "[OnemrvaMatTooltip]", inputs: { showToolTip: { classPropertyName: "showToolTip", publicName: "showToolTip", isSignal: false, isRequired: false, transformFunction: null }, customToolTip: { classPropertyName: "customToolTip", publicName: "customToolTip", isSignal: false, isRequired: false, transformFunction: null }, contentTemplate: { classPropertyName: "contentTemplate", publicName: "contentTemplate", isSignal: false, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, positionOffset: { classPropertyName: "positionOffset", publicName: "positionOffset", isSignal: false, isRequired: false, transformFunction: null } }, host: { listeners: { "mouseenter": "show()", "mouseleave": "hide()" } }, ngImport: i0 }); }
129
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatTooltipDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
130
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "21.1.1", type: OnemrvaMatTooltipDirective, isStandalone: true, selector: "[OnemrvaMatTooltip]", inputs: { showToolTip: { classPropertyName: "showToolTip", publicName: "showToolTip", isSignal: true, isRequired: false, transformFunction: null }, customToolTip: { classPropertyName: "customToolTip", publicName: "customToolTip", isSignal: true, isRequired: false, transformFunction: null }, contentTemplate: { classPropertyName: "contentTemplate", publicName: "contentTemplate", isSignal: true, isRequired: false, transformFunction: null }, position: { classPropertyName: "position", publicName: "position", isSignal: true, isRequired: false, transformFunction: null }, positionOffset: { classPropertyName: "positionOffset", publicName: "positionOffset", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "mouseenter": "show()", "mouseleave": "hide()" } }, ngImport: i0 }); }
131
131
  }
132
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatTooltipDirective, decorators: [{
132
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatTooltipDirective, decorators: [{
133
133
  type: Directive,
134
134
  args: [{
135
135
  selector: '[OnemrvaMatTooltip]',
136
136
  standalone: true,
137
+ host: {
138
+ '(mouseenter)': 'show()',
139
+ '(mouseleave)': 'hide()',
140
+ },
137
141
  }]
138
- }], ctorParameters: () => [], propDecorators: { showToolTip: [{
139
- type: Input
140
- }], customToolTip: [{
141
- type: Input
142
- }], contentTemplate: [{
143
- type: Input
144
- }], position: [{ type: i0.Input, args: [{ isSignal: true, alias: "position", required: false }] }], positionOffset: [{
145
- type: Input
146
- }], show: [{
147
- type: HostListener,
148
- args: ['mouseenter']
149
- }], hide: [{
150
- type: HostListener,
151
- args: ['mouseleave']
152
- }] } });
142
+ }], ctorParameters: () => [], propDecorators: { showToolTip: [{ type: i0.Input, args: [{ isSignal: true, alias: "showToolTip", required: false }] }], customToolTip: [{ type: i0.Input, args: [{ isSignal: true, alias: "customToolTip", required: false }] }], contentTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: "contentTemplate", required: false }] }], position: [{ type: i0.Input, args: [{ isSignal: true, alias: "position", required: false }] }], positionOffset: [{ type: i0.Input, args: [{ isSignal: true, alias: "positionOffset", required: false }] }] } });
153
143
 
154
144
  class OnemrvaMatTooltipModule {
155
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
156
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatTooltipModule, imports: [OnemrvaMatTooltipDirective, OnemrvaMatTooltipComponent], exports: [OnemrvaMatTooltipDirective, OnemrvaMatTooltipComponent] }); }
157
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatTooltipModule }); }
145
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatTooltipModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
146
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatTooltipModule, imports: [OnemrvaMatTooltipDirective, OnemrvaMatTooltipComponent], exports: [OnemrvaMatTooltipDirective, OnemrvaMatTooltipComponent] }); }
147
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatTooltipModule }); }
158
148
  }
159
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaMatTooltipModule, decorators: [{
149
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaMatTooltipModule, decorators: [{
160
150
  type: NgModule,
161
151
  args: [{
162
152
  declarations: [],
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-mat-tooltip.mjs","sources":["../../../../projects/onemrva/design-system/mat-tooltip/src/onemrva-mat-tooltip.component.ts","../../../../projects/onemrva/design-system/mat-tooltip/src/onemrva-mat-tooltip.directive.ts","../../../../projects/onemrva/design-system/mat-tooltip/src/onemrva-mat-tooltip.module.ts","../../../../projects/onemrva/design-system/mat-tooltip/onemrvapublic-design-system-mat-tooltip.ts"],"sourcesContent":["import { Component, Input, TemplateRef } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'onemrva-mat-tooltip',\n styleUrls: ['./onemrva-mat-tooltip.component.scss'],\n template: `\n <div>\n <div class=\"tooltip-container\">\n <ng-template #simpleText>\n {{ text }}\n </ng-template>\n <ng-container *ngTemplateOutlet=\"contentTemplate || simpleText\">\n </ng-container>\n </div>\n </div>\n `,\n standalone: true,\n imports: [NgTemplateOutlet],\n})\nexport class OnemrvaMatTooltipComponent {\n @Input() text!: string;\n @Input() contentTemplate!: TemplateRef<any>;\n}\n","import {\n ComponentRef,\n Directive,\n ElementRef,\n HostListener,\n Input,\n OnDestroy,\n OnInit,\n TemplateRef,\n inject,\n input,\n effect,\n} from '@angular/core';\nimport { OnemrvaMatTooltipComponent } from './onemrva-mat-tooltip.component';\nimport { ComponentPortal } from '@angular/cdk/portal';\nimport {\n ConnectedPosition,\n Overlay,\n OverlayPositionBuilder,\n OverlayRef,\n} from '@angular/cdk/overlay';\nimport { TooltipPosition } from '@angular/material/tooltip';\n\n@Directive({\n selector: '[OnemrvaMatTooltip]',\n standalone: true,\n})\nexport class OnemrvaMatTooltipDirective implements OnInit, OnDestroy {\n private _overlay = inject(Overlay);\n private _overlayPositionBuilder = inject(OverlayPositionBuilder);\n private _elementRef = inject(ElementRef);\n\n @Input() showToolTip = true;\n\n @Input() customToolTip!: string;\n\n @Input() contentTemplate!: TemplateRef<any>;\n\n position = input<TooltipPosition>('after');\n\n @Input() positionOffset = 5;\n\n private _overlayRef!: OverlayRef;\n\n ngOnInit() {\n if (!this.showToolTip) {\n return;\n }\n }\n\n constructor() {\n effect(() => {\n const positionStrategy = this._overlayPositionBuilder\n .flexibleConnectedTo(this._elementRef)\n .withPositions(this.defineStrategy());\n this._overlayRef = this._overlay.create({ positionStrategy });\n });\n }\n\n defineStrategy(): ConnectedPosition[] {\n switch (this.position()) {\n case 'above':\n return [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ];\n\n case 'below':\n return [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n ];\n\n case 'after':\n case 'right':\n return [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n },\n ];\n\n case 'before':\n case 'left':\n return [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n },\n ];\n default:\n return [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n },\n ];\n }\n }\n\n @HostListener('mouseenter')\n show() {\n if (this._overlayRef && !this._overlayRef.hasAttached()) {\n const tooltipRef: ComponentRef<OnemrvaMatTooltipComponent> =\n this._overlayRef.attach(\n new ComponentPortal(OnemrvaMatTooltipComponent),\n );\n tooltipRef.instance.text = this.customToolTip;\n tooltipRef.instance.contentTemplate = this.contentTemplate;\n }\n }\n\n @HostListener('mouseleave')\n hide() {\n this.closeToolTip();\n }\n\n ngOnDestroy() {\n this.closeToolTip();\n }\n\n private closeToolTip() {\n if (this._overlayRef) {\n this._overlayRef.detach();\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatTooltipComponent } from './onemrva-mat-tooltip.component';\nimport { OnemrvaMatTooltipDirective } from './onemrva-mat-tooltip.directive';\n\n@NgModule({\n declarations: [],\n imports: [OnemrvaMatTooltipDirective, OnemrvaMatTooltipComponent],\n exports: [OnemrvaMatTooltipDirective, OnemrvaMatTooltipComponent],\n})\nexport class OnemrvaMatTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-mat-tooltip.mjs","sources":["../../../../projects/onemrva/design-system/mat-tooltip/src/onemrva-mat-tooltip.component.ts","../../../../projects/onemrva/design-system/mat-tooltip/src/onemrva-mat-tooltip.directive.ts","../../../../projects/onemrva/design-system/mat-tooltip/src/onemrva-mat-tooltip.module.ts","../../../../projects/onemrva/design-system/mat-tooltip/onemrvapublic-design-system-mat-tooltip.ts"],"sourcesContent":["import { Component, TemplateRef, input } from '@angular/core';\nimport { NgTemplateOutlet } from '@angular/common';\n\n@Component({\n selector: 'onemrva-mat-tooltip',\n styleUrls: ['./onemrva-mat-tooltip.component.scss'],\n template: `\n <div>\n <div class=\"tooltip-container\">\n <ng-template #simpleText>\n {{ text() }}\n </ng-template>\n <ng-container *ngTemplateOutlet=\"contentTemplate() || simpleText\" />\n </div>\n </div>\n `,\n standalone: true,\n imports: [NgTemplateOutlet],\n})\nexport class OnemrvaMatTooltipComponent {\n readonly text = input.required<string>();\n readonly contentTemplate = input.required<TemplateRef<any>>();\n}\n","import {\n // ComponentRef,\n Directive,\n ElementRef,\n OnDestroy,\n OnInit,\n TemplateRef,\n inject,\n input,\n effect,\n ComponentRef,\n} from '@angular/core';\n// import { OnemrvaMatTooltipComponent } from './onemrva-mat-tooltip.component';\n// import { ComponentPortal } from '@angular/cdk/portal';\nimport {\n ConnectedPosition,\n Overlay,\n OverlayPositionBuilder,\n OverlayRef,\n} from '@angular/cdk/overlay';\nimport { TooltipPosition } from '@angular/material/tooltip';\nimport { OnemrvaMatTooltipComponent } from './onemrva-mat-tooltip.component';\nimport { ComponentPortal } from '@angular/cdk/portal';\n\n@Directive({\n selector: '[OnemrvaMatTooltip]',\n standalone: true,\n host: {\n '(mouseenter)': 'show()',\n '(mouseleave)': 'hide()',\n },\n})\nexport class OnemrvaMatTooltipDirective implements OnInit, OnDestroy {\n private _overlay = inject(Overlay);\n private _overlayPositionBuilder = inject(OverlayPositionBuilder);\n private _elementRef = inject(ElementRef);\n\n readonly showToolTip = input(true);\n\n readonly customToolTip = input<string>();\n\n readonly contentTemplate = input<TemplateRef<any>>();\n\n position = input<TooltipPosition>('after');\n\n readonly positionOffset = input(5);\n\n private _overlayRef!: OverlayRef;\n\n ngOnInit() {\n if (!this.showToolTip()) {\n return;\n }\n }\n\n constructor() {\n effect(() => {\n const positionStrategy = this._overlayPositionBuilder\n .flexibleConnectedTo(this._elementRef)\n .withPositions(this.defineStrategy());\n this._overlayRef = this._overlay.create({ positionStrategy });\n });\n }\n\n defineStrategy(): ConnectedPosition[] {\n switch (this.position()) {\n case 'above':\n return [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'bottom',\n },\n ];\n\n case 'below':\n return [\n {\n originX: 'start',\n originY: 'bottom',\n overlayX: 'start',\n overlayY: 'top',\n },\n ];\n\n case 'after':\n case 'right':\n return [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n },\n ];\n\n case 'before':\n case 'left':\n return [\n {\n originX: 'start',\n originY: 'top',\n overlayX: 'end',\n overlayY: 'top',\n },\n ];\n default:\n return [\n {\n originX: 'end',\n originY: 'top',\n overlayX: 'start',\n overlayY: 'top',\n },\n ];\n }\n }\n\n show() {\n if (this._overlayRef && !this._overlayRef.hasAttached()) {\n const tooltipRef: ComponentRef<OnemrvaMatTooltipComponent> =\n this._overlayRef.attach(\n new ComponentPortal(OnemrvaMatTooltipComponent),\n );\n\n tooltipRef.setInput('text', this.customToolTip());\n tooltipRef.setInput('contentTemplate', this.contentTemplate());\n }\n }\n\n hide() {\n this.closeToolTip();\n }\n\n ngOnDestroy() {\n this.closeToolTip();\n }\n\n private closeToolTip() {\n if (this._overlayRef) {\n this._overlayRef.detach();\n }\n }\n}\n","import { NgModule } from '@angular/core';\nimport { OnemrvaMatTooltipComponent } from './onemrva-mat-tooltip.component';\nimport { OnemrvaMatTooltipDirective } from './onemrva-mat-tooltip.directive';\n\n@NgModule({\n declarations: [],\n imports: [OnemrvaMatTooltipDirective, OnemrvaMatTooltipComponent],\n exports: [OnemrvaMatTooltipDirective, OnemrvaMatTooltipComponent],\n})\nexport class OnemrvaMatTooltipModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,76 +1,70 @@
1
1
  import * as i0 from '@angular/core';
2
- import { TemplateRef, ViewChild, Component, inject, Renderer2, ChangeDetectorRef, Input, ContentChildren } from '@angular/core';
2
+ import { viewChild, TemplateRef, Component, contentChildren, input, computed, inject, Renderer2, ChangeDetectorRef, effect } from '@angular/core';
3
3
  import * as i1 from '@ngx-translate/core';
4
4
  import { TranslateService, TranslateModule } from '@ngx-translate/core';
5
- import { OnemRvaCDNService } from '@onemrvapublic/design-system/shared';
6
5
  import { NgTemplateOutlet } from '@angular/common';
6
+ import { OnemRvaCDNService } from '@onemrvapublic/design-system/shared';
7
7
 
8
8
  class PageErrorActionComponent {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageErrorActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: PageErrorActionComponent, isStandalone: true, selector: "page-error-action", viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: '<ng-template><ng-content></ng-content></ng-template>', isInline: true }); }
9
+ constructor() {
10
+ this.template = viewChild(TemplateRef, ...(ngDevMode ? [{ debugName: "template" }] : []));
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageErrorActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.1", type: PageErrorActionComponent, isStandalone: true, selector: "page-error-action", viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], ngImport: i0, template: '<ng-template><ng-content /></ng-template>', isInline: true }); }
11
14
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageErrorActionComponent, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageErrorActionComponent, decorators: [{
13
16
  type: Component,
14
17
  args: [{
15
18
  selector: 'page-error-action',
16
- template: '<ng-template><ng-content></ng-content></ng-template>',
19
+ template: '<ng-template><ng-content /></ng-template>',
17
20
  standalone: true,
18
21
  }]
19
- }], propDecorators: { template: [{
20
- type: ViewChild,
21
- args: [TemplateRef]
22
- }] } });
22
+ }], propDecorators: { template: [{ type: i0.ViewChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
23
23
 
24
24
  class PageErrorComponent {
25
+ // optional: react to language changes (so ori updates)
25
26
  constructor() {
26
27
  this.defaultCode = 500;
28
+ this.supportedCodes = new Set([
29
+ 500, 404, 403, 401, 400, 503, 502, 408, 429,
30
+ ]);
27
31
  this.mdc = null;
28
- this.code = this.defaultCode;
32
+ this.actions = contentChildren(PageErrorActionComponent, ...(ngDevMode ? [{ debugName: "actions" }] : []));
33
+ this.code = input(this.defaultCode, ...(ngDevMode ? [{ debugName: "code" }] : []));
34
+ this.safeCode = computed(() => {
35
+ const c = this.code();
36
+ return this.supportedCodes.has(c) ? c : this.defaultCode;
37
+ }, ...(ngDevMode ? [{ debugName: "safeCode" }] : []));
29
38
  this.cdn = inject(OnemRvaCDNService);
30
39
  this.renderer = inject(Renderer2);
31
40
  this.translate = inject(TranslateService);
32
41
  this.cd = inject(ChangeDetectorRef);
42
+ effect(() => {
43
+ // track both: safeCode + current language from ngx-translate
44
+ // `instant` won’t trigger by itself when language changes, so use onLangChange if needed
45
+ this.safeCode();
46
+ });
33
47
  }
34
48
  ngAfterViewInit() {
35
49
  this.cd.detectChanges();
36
50
  this.mdc = document.querySelector('#onemrva-drawer-container');
37
- if (this.mdc !== null) {
51
+ if (this.mdc)
38
52
  this.renderer.addClass(this.mdc, 'bkg');
39
- }
40
53
  }
41
54
  ngOnDestroy() {
42
- if (this.mdc !== null) {
55
+ if (this.mdc)
43
56
  this.renderer.removeClass(this.mdc, 'bkg');
44
- }
45
- }
46
- ngOnChanges(changes) {
47
- this.updateTexts();
48
57
  }
49
58
  get ori() {
50
- return this.cdn.getOri(this.translate.instant('error.' + this.code + '.ori'));
51
- }
52
- /**
53
- *
54
- * @private
55
- */
56
- updateTexts() {
57
- const suppoertedCodes = [500, 404, 403, 401, 400, 503, 502, 408, 429];
58
- this.code = suppoertedCodes.includes(this.code)
59
- ? this.code
60
- : this.defaultCode;
59
+ return this.cdn.getOri(this.translate.instant(`error.${this.safeCode()}.ori`));
61
60
  }
62
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
63
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: PageErrorComponent, isStandalone: true, selector: "page-error", inputs: { code: "code" }, queries: [{ propertyName: "actions", predicate: PageErrorActionComponent }], usesOnChanges: true, ngImport: i0, template: "<div class=\"bkg\">\n <!-- do not copy -->\n <div>\n <!-- do not copy -->\n <main class=\"page-error\">\n <section class=\"row\">\n <div class=\"col-6-large col-12 col-left\">\n <div class=\"error-content\">\n <h1>{{ 'error.' + code + '.h1' | translate }}</h1>\n <h2>{{ 'error.' + code + '.h2' | translate }}</h2>\n <p>{{ 'error.' + code + '.p' | translate }}</p>\n @for (action of actions?.toArray(); track action.template) {\n @if (action.template) {\n <ng-container\n *ngTemplateOutlet=\"action.template\"\n ></ng-container>\n }\n }\n </div>\n </div>\n <div class=\"col-6-large col-12 col-right\">\n <img\n alt=\"{{ 'error.' + code + '.h2' | translate }}\"\n [src]=\"ori\"\n class=\"ori\"\n />\n </div>\n </section>\n </main>\n </div>\n <!-- do not copy -->\n</div>\n<!-- do not copy -->\n", styles: [".page-error section.row{min-height:calc(100vh - 200px)}.page-error section.row .col-right{display:grid!important;place-items:center}.page-error section.row .col-right img.ori{height:428px}.page-error section.row .col-left{display:flex!important;align-items:center;justify-content:flex-start;text-align:left}.page-error section.row .col-left .error-content{display:block;height:auto}.page-error section.row .col-left .error-content h1{font:var(--mat-sys-display-medium)}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
61
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageErrorComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
62
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: PageErrorComponent, isStandalone: true, selector: "page-error", inputs: { code: { classPropertyName: "code", publicName: "code", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "actions", predicate: PageErrorActionComponent, isSignal: true }], ngImport: i0, template: "<div class=\"bkg\">\n <!-- do not copy -->\n <div>\n <!-- do not copy -->\n <main class=\"page-error\">\n <section class=\"row\">\n <div class=\"col-6-large col-12 col-left\">\n <div class=\"error-content\">\n <h1>{{ 'error.' + code() + '.h1' | translate }}</h1>\n <h2>{{ 'error.' + code() + '.h2' | translate }}</h2>\n <p>{{ 'error.' + code() + '.p' | translate }}</p>\n @for (action of actions(); track action.template()) {\n @if (action.template()) {\n <ng-container *ngTemplateOutlet=\"action.template()\" />\n }\n }\n </div>\n </div>\n <div class=\"col-6-large col-12 col-right\">\n <img\n alt=\"{{ 'error.' + code() + '.h2' | translate }}\"\n [src]=\"ori\"\n class=\"ori\"\n />\n </div>\n </section>\n </main>\n </div>\n <!-- do not copy -->\n</div>\n<!-- do not copy -->\n", styles: [".page-error section.row{min-height:calc(100vh - 200px)}.page-error section.row .col-right{display:grid!important;place-items:center}.page-error section.row .col-right img.ori{height:428px}.page-error section.row .col-left{display:flex!important;align-items:center;justify-content:flex-start;text-align:left}.page-error section.row .col-left .error-content{display:block;height:auto}.page-error section.row .col-left .error-content h1{font:var(--mat-sys-display-medium)}\n"], dependencies: [{ kind: "ngmodule", type: TranslateModule }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "pipe", type: i1.TranslatePipe, name: "translate" }] }); }
64
63
  }
65
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageErrorComponent, decorators: [{
64
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageErrorComponent, decorators: [{
66
65
  type: Component,
67
- args: [{ selector: 'page-error', standalone: true, imports: [TranslateModule, NgTemplateOutlet], template: "<div class=\"bkg\">\n <!-- do not copy -->\n <div>\n <!-- do not copy -->\n <main class=\"page-error\">\n <section class=\"row\">\n <div class=\"col-6-large col-12 col-left\">\n <div class=\"error-content\">\n <h1>{{ 'error.' + code + '.h1' | translate }}</h1>\n <h2>{{ 'error.' + code + '.h2' | translate }}</h2>\n <p>{{ 'error.' + code + '.p' | translate }}</p>\n @for (action of actions?.toArray(); track action.template) {\n @if (action.template) {\n <ng-container\n *ngTemplateOutlet=\"action.template\"\n ></ng-container>\n }\n }\n </div>\n </div>\n <div class=\"col-6-large col-12 col-right\">\n <img\n alt=\"{{ 'error.' + code + '.h2' | translate }}\"\n [src]=\"ori\"\n class=\"ori\"\n />\n </div>\n </section>\n </main>\n </div>\n <!-- do not copy -->\n</div>\n<!-- do not copy -->\n", styles: [".page-error section.row{min-height:calc(100vh - 200px)}.page-error section.row .col-right{display:grid!important;place-items:center}.page-error section.row .col-right img.ori{height:428px}.page-error section.row .col-left{display:flex!important;align-items:center;justify-content:flex-start;text-align:left}.page-error section.row .col-left .error-content{display:block;height:auto}.page-error section.row .col-left .error-content h1{font:var(--mat-sys-display-medium)}\n"] }]
68
- }], propDecorators: { actions: [{
69
- type: ContentChildren,
70
- args: [PageErrorActionComponent]
71
- }], code: [{
72
- type: Input
73
- }] } });
66
+ args: [{ selector: 'page-error', standalone: true, imports: [TranslateModule, NgTemplateOutlet], template: "<div class=\"bkg\">\n <!-- do not copy -->\n <div>\n <!-- do not copy -->\n <main class=\"page-error\">\n <section class=\"row\">\n <div class=\"col-6-large col-12 col-left\">\n <div class=\"error-content\">\n <h1>{{ 'error.' + code() + '.h1' | translate }}</h1>\n <h2>{{ 'error.' + code() + '.h2' | translate }}</h2>\n <p>{{ 'error.' + code() + '.p' | translate }}</p>\n @for (action of actions(); track action.template()) {\n @if (action.template()) {\n <ng-container *ngTemplateOutlet=\"action.template()\" />\n }\n }\n </div>\n </div>\n <div class=\"col-6-large col-12 col-right\">\n <img\n alt=\"{{ 'error.' + code() + '.h2' | translate }}\"\n [src]=\"ori\"\n class=\"ori\"\n />\n </div>\n </section>\n </main>\n </div>\n <!-- do not copy -->\n</div>\n<!-- do not copy -->\n", styles: [".page-error section.row{min-height:calc(100vh - 200px)}.page-error section.row .col-right{display:grid!important;place-items:center}.page-error section.row .col-right img.ori{height:428px}.page-error section.row .col-left{display:flex!important;align-items:center;justify-content:flex-start;text-align:left}.page-error section.row .col-left .error-content{display:block;height:auto}.page-error section.row .col-left .error-content h1{font:var(--mat-sys-display-medium)}\n"] }]
67
+ }], ctorParameters: () => [], propDecorators: { actions: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => PageErrorActionComponent), { isSignal: true }] }], code: [{ type: i0.Input, args: [{ isSignal: true, alias: "code", required: false }] }] } });
74
68
 
75
69
  /**
76
70
  * Generated bundle index. Do not edit.
@@ -1 +1 @@
1
- {"version":3,"file":"onemrvapublic-design-system-page-error.mjs","sources":["../../../../projects/onemrva/design-system/page-error/src/page-error-action.component.ts","../../../../projects/onemrva/design-system/page-error/src/page-error.component.ts","../../../../projects/onemrva/design-system/page-error/src/page-error.component.html","../../../../projects/onemrva/design-system/page-error/onemrvapublic-design-system-page-error.ts"],"sourcesContent":["import { Component, TemplateRef, ViewChild } from '@angular/core';\n\n@Component({\n selector: 'page-error-action',\n template: '<ng-template><ng-content></ng-content></ng-template>',\n standalone: true,\n})\nexport class PageErrorActionComponent {\n @ViewChild(TemplateRef) template?: TemplateRef<any>;\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n ContentChildren,\n Input,\n OnChanges,\n OnDestroy,\n QueryList,\n Renderer2,\n SimpleChanges,\n inject,\n} from '@angular/core';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { OnemRvaCDNService } from '@onemrvapublic/design-system/shared';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { PageErrorActionComponent } from './page-error-action.component';\n\n@Component({\n selector: 'page-error',\n styleUrls: ['./page-error.component.scss'],\n templateUrl: 'page-error.component.html',\n standalone: true,\n imports: [TranslateModule, NgTemplateOutlet],\n})\nexport class PageErrorComponent implements OnDestroy, AfterViewInit, OnChanges {\n defaultCode = 500;\n\n mdc: HTMLElement | null = null;\n\n @ContentChildren(PageErrorActionComponent)\n actions?: QueryList<PageErrorActionComponent>;\n\n @Input()\n code = this.defaultCode;\n\n cdn = inject(OnemRvaCDNService);\n renderer = inject(Renderer2);\n translate = inject(TranslateService);\n cd = inject(ChangeDetectorRef);\n\n ngAfterViewInit(): void {\n this.cd.detectChanges();\n this.mdc = document.querySelector('#onemrva-drawer-container');\n if (this.mdc !== null) {\n this.renderer.addClass(this.mdc, 'bkg');\n }\n }\n\n ngOnDestroy(): void {\n if (this.mdc !== null) {\n this.renderer.removeClass(this.mdc, 'bkg');\n }\n }\n\n ngOnChanges(changes: SimpleChanges): void {\n this.updateTexts();\n }\n\n get ori() {\n return this.cdn.getOri(\n this.translate.instant('error.' + this.code + '.ori'),\n );\n }\n /**\n *\n * @private\n */\n private updateTexts() {\n const suppoertedCodes = [500, 404, 403, 401, 400, 503, 502, 408, 429];\n this.code = suppoertedCodes.includes(this.code)\n ? this.code\n : this.defaultCode;\n }\n}\n","<div class=\"bkg\">\n <!-- do not copy -->\n <div>\n <!-- do not copy -->\n <main class=\"page-error\">\n <section class=\"row\">\n <div class=\"col-6-large col-12 col-left\">\n <div class=\"error-content\">\n <h1>{{ 'error.' + code + '.h1' | translate }}</h1>\n <h2>{{ 'error.' + code + '.h2' | translate }}</h2>\n <p>{{ 'error.' + code + '.p' | translate }}</p>\n @for (action of actions?.toArray(); track action.template) {\n @if (action.template) {\n <ng-container\n *ngTemplateOutlet=\"action.template\"\n ></ng-container>\n }\n }\n </div>\n </div>\n <div class=\"col-6-large col-12 col-right\">\n <img\n alt=\"{{ 'error.' + code + '.h2' | translate }}\"\n [src]=\"ori\"\n class=\"ori\"\n />\n </div>\n </section>\n </main>\n </div>\n <!-- do not copy -->\n</div>\n<!-- do not copy -->\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"onemrvapublic-design-system-page-error.mjs","sources":["../../../../projects/onemrva/design-system/page-error/src/page-error-action.component.ts","../../../../projects/onemrva/design-system/page-error/src/page-error.component.ts","../../../../projects/onemrva/design-system/page-error/src/page-error.component.html","../../../../projects/onemrva/design-system/page-error/onemrvapublic-design-system-page-error.ts"],"sourcesContent":["import { Component, TemplateRef, viewChild } from '@angular/core';\n\n@Component({\n selector: 'page-error-action',\n template: '<ng-template><ng-content /></ng-template>',\n standalone: true,\n})\nexport class PageErrorActionComponent {\n readonly template = viewChild(TemplateRef);\n}\n","import {\n AfterViewInit,\n ChangeDetectorRef,\n Component,\n OnDestroy,\n Renderer2,\n computed,\n effect,\n inject,\n input,\n contentChildren,\n} from '@angular/core';\nimport { TranslateModule, TranslateService } from '@ngx-translate/core';\nimport { NgTemplateOutlet } from '@angular/common';\nimport { OnemRvaCDNService } from '@onemrvapublic/design-system/shared';\nimport { PageErrorActionComponent } from './page-error-action.component';\n\n@Component({\n selector: 'page-error',\n styleUrls: ['./page-error.component.scss'],\n templateUrl: 'page-error.component.html',\n standalone: true,\n imports: [TranslateModule, NgTemplateOutlet],\n})\nexport class PageErrorComponent implements AfterViewInit, OnDestroy {\n private readonly defaultCode = 500;\n private readonly supportedCodes = new Set([\n 500, 404, 403, 401, 400, 503, 502, 408, 429,\n ]);\n\n mdc: HTMLElement | null = null;\n\n readonly actions = contentChildren(PageErrorActionComponent);\n\n readonly code = input<number>(this.defaultCode);\n\n readonly safeCode = computed(() => {\n const c = this.code();\n return this.supportedCodes.has(c) ? c : this.defaultCode;\n });\n\n private cdn = inject(OnemRvaCDNService);\n private renderer = inject(Renderer2);\n private translate = inject(TranslateService);\n private cd = inject(ChangeDetectorRef);\n\n // optional: react to language changes (so ori updates)\n constructor() {\n effect(() => {\n // track both: safeCode + current language from ngx-translate\n // `instant` won’t trigger by itself when language changes, so use onLangChange if needed\n this.safeCode();\n });\n }\n\n ngAfterViewInit(): void {\n this.cd.detectChanges();\n this.mdc = document.querySelector('#onemrva-drawer-container');\n if (this.mdc) this.renderer.addClass(this.mdc, 'bkg');\n }\n\n ngOnDestroy(): void {\n if (this.mdc) this.renderer.removeClass(this.mdc, 'bkg');\n }\n\n get ori() {\n return this.cdn.getOri(\n this.translate.instant(`error.${this.safeCode()}.ori`),\n );\n }\n}\n","<div class=\"bkg\">\n <!-- do not copy -->\n <div>\n <!-- do not copy -->\n <main class=\"page-error\">\n <section class=\"row\">\n <div class=\"col-6-large col-12 col-left\">\n <div class=\"error-content\">\n <h1>{{ 'error.' + code() + '.h1' | translate }}</h1>\n <h2>{{ 'error.' + code() + '.h2' | translate }}</h2>\n <p>{{ 'error.' + code() + '.p' | translate }}</p>\n @for (action of actions(); track action.template()) {\n @if (action.template()) {\n <ng-container *ngTemplateOutlet=\"action.template()\" />\n }\n }\n </div>\n </div>\n <div class=\"col-6-large col-12 col-right\">\n <img\n alt=\"{{ 'error.' + code() + '.h2' | translate }}\"\n [src]=\"ori\"\n class=\"ori\"\n />\n </div>\n </section>\n </main>\n </div>\n <!-- do not copy -->\n</div>\n<!-- do not copy -->\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
@@ -1,41 +1,41 @@
1
1
  import * as i0 from '@angular/core';
2
- import { TemplateRef, ViewChild, Component, inject, ChangeDetectorRef, ContentChild, ContentChildren, NgModule } from '@angular/core';
2
+ import { viewChild, TemplateRef, Component, inject, ChangeDetectorRef, contentChildren, contentChild, NgModule } from '@angular/core';
3
3
  import { Subject, of, timer } from 'rxjs';
4
4
  import { startWith, switchMap, map } from 'rxjs/operators';
5
- import { NgStyle, NgClass, AsyncPipe, NgTemplateOutlet } from '@angular/common';
5
+ import { AsyncPipe, NgTemplateOutlet } from '@angular/common';
6
6
  import { TranslatePipe } from '@ngx-translate/core';
7
7
 
8
8
  class PageNotFoundActionComponent {
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageNotFoundActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: PageNotFoundActionComponent, isStandalone: true, selector: "page-not-found-action", viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: '<ng-template><ng-content></ng-content></ng-template>', isInline: true }); }
9
+ constructor() {
10
+ this.template = viewChild(TemplateRef, ...(ngDevMode ? [{ debugName: "template" }] : []));
11
+ }
12
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageNotFoundActionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.1", type: PageNotFoundActionComponent, isStandalone: true, selector: "page-not-found-action", viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], ngImport: i0, template: '<ng-template><ng-content /></ng-template>', isInline: true }); }
11
14
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageNotFoundActionComponent, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageNotFoundActionComponent, decorators: [{
13
16
  type: Component,
14
17
  args: [{
15
18
  selector: 'page-not-found-action',
16
- template: '<ng-template><ng-content></ng-content></ng-template>',
19
+ template: '<ng-template><ng-content /></ng-template>',
17
20
  standalone: true,
18
21
  }]
19
- }], propDecorators: { template: [{
20
- type: ViewChild,
21
- args: [TemplateRef]
22
- }] } });
22
+ }], propDecorators: { template: [{ type: i0.ViewChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
23
23
 
24
24
  class PageNotFoundExtraComponent {
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageNotFoundExtraComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: PageNotFoundExtraComponent, isStandalone: true, selector: "page-not-found-extra", viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true }], ngImport: i0, template: '<ng-template><ng-content></ng-content></ng-template>', isInline: true }); }
25
+ constructor() {
26
+ this.template = viewChild(TemplateRef, ...(ngDevMode ? [{ debugName: "template" }] : []));
27
+ }
28
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageNotFoundExtraComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
29
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.1.1", type: PageNotFoundExtraComponent, isStandalone: true, selector: "page-not-found-extra", viewQueries: [{ propertyName: "template", first: true, predicate: TemplateRef, descendants: true, isSignal: true }], ngImport: i0, template: '<ng-template><ng-content /></ng-template>', isInline: true }); }
27
30
  }
28
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageNotFoundExtraComponent, decorators: [{
31
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageNotFoundExtraComponent, decorators: [{
29
32
  type: Component,
30
33
  args: [{
31
34
  selector: 'page-not-found-extra',
32
- template: '<ng-template><ng-content></ng-content></ng-template>',
35
+ template: '<ng-template><ng-content /></ng-template>',
33
36
  standalone: true,
34
37
  }]
35
- }], propDecorators: { template: [{
36
- type: ViewChild,
37
- args: [TemplateRef]
38
- }] } });
38
+ }], propDecorators: { template: [{ type: i0.ViewChild, args: [i0.forwardRef(() => TemplateRef), { isSignal: true }] }] } });
39
39
 
40
40
  class PageNotFoundInvaderComponent {
41
41
  constructor() {
@@ -82,16 +82,16 @@ class PageNotFoundInvaderComponent {
82
82
  this.score++;
83
83
  this.score$.next(this.score);
84
84
  }
85
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageNotFoundInvaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
86
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: PageNotFoundInvaderComponent, isStandalone: true, selector: "page-not-found-invader", ngImport: i0, template: `
85
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageNotFoundInvaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
86
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "21.1.1", type: PageNotFoundInvaderComponent, isStandalone: true, selector: "page-not-found-invader", ngImport: i0, template: `
87
87
  <img
88
88
  role="button"
89
89
  tabindex="1"
90
90
  src="https://cdn.services.rvaonem.fgov.be/assets/404/saucer.svg"
91
91
  class="invader"
92
92
  alt="invader"
93
- [ngClass]="{ 'game-over': gameOver }"
94
- [ngStyle]="{
93
+ [class.game-over]="gameOver"
94
+ [style]="{
95
95
  width: (size$ | async) + 'px',
96
96
  height: (size$ | async) + 'px',
97
97
  left: left + 'px',
@@ -101,9 +101,9 @@ class PageNotFoundInvaderComponent {
101
101
  />
102
102
  <div class="score">Score: {{ score }}</div>
103
103
  <!--div class="laser"></div-->
104
- `, isInline: true, styles: [".invader{max-height:20px;max-width:20px;position:absolute;border-radius:50%;z-index:100}.invader.game-over{padding:10px;border:2px solid red}.invader:hover{cursor:crosshair}\n"], dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "pipe", type: AsyncPipe, name: "async" }] }); }
104
+ `, isInline: true, styles: [".invader{max-height:20px;max-width:20px;position:absolute;border-radius:50%;z-index:100}.invader.game-over{padding:10px;border:2px solid red}.invader:hover{cursor:crosshair}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }] }); }
105
105
  }
106
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageNotFoundInvaderComponent, decorators: [{
106
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageNotFoundInvaderComponent, decorators: [{
107
107
  type: Component,
108
108
  args: [{ selector: 'page-not-found-invader', template: `
109
109
  <img
@@ -112,8 +112,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
112
112
  src="https://cdn.services.rvaonem.fgov.be/assets/404/saucer.svg"
113
113
  class="invader"
114
114
  alt="invader"
115
- [ngClass]="{ 'game-over': gameOver }"
116
- [ngStyle]="{
115
+ [class.game-over]="gameOver"
116
+ [style]="{
117
117
  width: (size$ | async) + 'px',
118
118
  height: (size$ | async) + 'px',
119
119
  left: left + 'px',
@@ -123,7 +123,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
123
123
  />
124
124
  <div class="score">Score: {{ score }}</div>
125
125
  <!--div class="laser"></div-->
126
- `, standalone: true, imports: [AsyncPipe, NgStyle, NgClass], styles: [".invader{max-height:20px;max-width:20px;position:absolute;border-radius:50%;z-index:100}.invader.game-over{padding:10px;border:2px solid red}.invader:hover{cursor:crosshair}\n"] }]
126
+ `, standalone: true, imports: [AsyncPipe], styles: [".invader{max-height:20px;max-width:20px;position:absolute;border-radius:50%;z-index:100}.invader.game-over{padding:10px;border:2px solid red}.invader:hover{cursor:crosshair}\n"] }]
127
127
  }] });
128
128
 
129
129
  const konamiPattern = [
@@ -140,6 +140,8 @@ const konamiPattern = [
140
140
  ];
141
141
  class PageNotFoundComponent {
142
142
  constructor() {
143
+ this.actions = contentChildren(PageNotFoundActionComponent, ...(ngDevMode ? [{ debugName: "actions" }] : []));
144
+ this.extra = contentChild(PageNotFoundExtraComponent, ...(ngDevMode ? [{ debugName: "extra" }] : []));
143
145
  this.sequence = ['', '', '', '', '', '', '', '', '', ''];
144
146
  this.konamiMatch = false;
145
147
  this.cd = inject(ChangeDetectorRef);
@@ -159,32 +161,26 @@ class PageNotFoundComponent {
159
161
  this.konamiMatch = true;
160
162
  }
161
163
  }
162
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageNotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
163
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: PageNotFoundComponent, isStandalone: true, selector: "page-not-found", queries: [{ propertyName: "extra", first: true, predicate: PageNotFoundExtraComponent, descendants: true }, { propertyName: "actions", predicate: PageNotFoundActionComponent }], ngImport: i0, template: "<div class=\"page-not-found\">\n <!--img src=\"https://cdn.services.rvaonem.fgov.be/img/404/Arri\u00E8re-plan.svg\" class=\"ap\" /-->\n <div class=\"not-found-section\">\n <div class=\"heading mat-headline-1\">{{ '404.oops' | translate }}</div>\n <h1>{{ '404.title' | translate }}</h1>\n <p>{{ '404.body' | translate }}</p>\n <h2>{{ '404.actions' | translate }}</h2>\n <div class=\"actions\">\n @for (action of actions?.toArray(); track action.template) {\n @if (action.template) {\n <ng-container *ngTemplateOutlet=\"action.template\"></ng-container>\n }\n }\n </div>\n @if (extra?.template; as tpl) {\n <ng-container *ngTemplateOutlet=\"tpl\"></ng-container>\n }\n </div>\n <div class=\"not-found-section section-flying-saucer\">\n <div class=\"not-found-section flying-saucer-container\">\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/saucer.svg\"\n class=\"soucoupe\"\n alt=\"{{ '404.flying.saucer' | translate }}\"\n />\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/lightbeam.svg\"\n class=\"halo\"\n alt=\"{{ '404.tractor.beam' | translate }}\"\n />\n <div class=\"page-container\">\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/document.svg\"\n class=\"page\"\n alt=\"{{ '404.scared.page' | translate }}\"\n />\n </div>\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/shadow.svg\"\n class=\"ombre\"\n alt=\"{{ '404.shadow' | translate }}\"\n />\n </div>\n </div>\n @if (konamiMatch) {\n <page-not-found-invader></page-not-found-invader>\n }\n</div>\n", styles: [".page-not-found{display:flex;flex-flow:row wrap;position:relative;background-image:url(https://cdn.services.rvaonem.fgov.be/img/404/background.svg);background-size:auto 160vh;background-position:40vw -30vh;min-height:100vh;background-repeat:no-repeat}.page-not-found .ap{position:absolute;top:0;right:0}.page-not-found .not-found-section{flex:1 1 300px;padding:48px 146px}.page-not-found .not-found-section .oops{font-size:7vw;line-height:11vw;font-weight:700;margin-bottom:21px}.page-not-found .not-found-section .nf-title{margin-bottom:21px}.page-not-found .not-found-section .nf-body{margin-bottom:40px}.page-not-found .not-found-section .nf-actions{margin-bottom:32px;font-size:24px;line-height:36px;font-weight:700}.page-not-found .not-found-section .actions{display:flex;gap:8px;margin-bottom:40px}.page-not-found .not-found-section.section-flying-saucer{padding-top:96px}.page-not-found not-found-invader{position:absolute}.flying-saucer-container{position:relative}.flying-saucer-container .soucoupe{position:absolute;top:0;left:0;z-index:10;transform:translateY(0);animation-name:takeOff;animation-duration:10s}.flying-saucer-container .halo{position:absolute;top:143px;left:42px;height:395px;width:273px;border-radius:0 0 130px 130px;opacity:1;animation-name:retractHalo;animation-duration:10s}.flying-saucer-container .page-container{position:absolute;top:147px;left:100px;height:350px;overflow:hidden;animation-direction:normal}.flying-saucer-container .page-container .page{transform:translateY(100px);animation-name:suckPage;animation-duration:10s}.flying-saucer-container .ombre{position:absolute;top:536px;animation-name:shadowFade;animation-duration:10s;opacity:1;width:250px;left:60px}@keyframes suckPage{0%{transform:translateY(100px);opacity:1}35%{transform:translateY(100px);opacity:1}55%{opacity:0}85%{transform:translateY(-300px);opacity:0}to{transform:translateY(100px)}}@keyframes retractHalo{0%{opacity:0}25%{opacity:0}35%{opacity:1}55%{opacity:1}85%{opacity:0}99%{opacity:0}to{opacity:1}}@keyframes takeOff{0%{transform:translateY(-300px)}25%{transform:translateY(0)}70%{transform:translateY(0)}90%{transform:translateY(-300px)}96%{transform:translateY(-300px)}to{transform:translateY(0)}}@keyframes shadowFade{0%{opacity:0;width:370px;left:0}25%{opacity:1;width:250px;left:60px}70%{opacity:1;width:250px;left:60px}90%{opacity:0;width:370px;left:0}96%{opacity:0;width:370px;left:0}to{opacity:1;width:250px;left:60px}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageNotFoundInvaderComponent, selector: "page-not-found-invader" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
164
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageNotFoundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
165
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: PageNotFoundComponent, isStandalone: true, selector: "page-not-found", queries: [{ propertyName: "actions", predicate: PageNotFoundActionComponent, isSignal: true }, { propertyName: "extra", first: true, predicate: PageNotFoundExtraComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<div class=\"page-not-found\">\n <!--img src=\"https://cdn.services.rvaonem.fgov.be/img/404/Arri\u00E8re-plan.svg\" class=\"ap\" /-->\n <div class=\"not-found-section\">\n <div class=\"heading mat-headline-1\">{{ '404.oops' | translate }}</div>\n <h1>{{ '404.title' | translate }}</h1>\n <p>{{ '404.body' | translate }}</p>\n @if (actions() && actions().length > 0) {\n <h2>{{ '404.actions' | translate }}</h2>\n }\n <div class=\"actions\">\n @for (action of actions(); track action.template()) {\n @if (action.template()) {\n <ng-container *ngTemplateOutlet=\"action.template()\" />\n }\n }\n </div>\n @if (extra()?.template(); as tpl) {\n <ng-container *ngTemplateOutlet=\"tpl\" />\n }\n </div>\n <div class=\"not-found-section section-flying-saucer\">\n <div class=\"not-found-section flying-saucer-container\">\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/saucer.svg\"\n class=\"soucoupe\"\n alt=\"{{ '404.flying.saucer' | translate }}\"\n />\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/lightbeam.svg\"\n class=\"halo\"\n alt=\"{{ '404.tractor.beam' | translate }}\"\n />\n <div class=\"page-container\">\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/document.svg\"\n class=\"page\"\n alt=\"{{ '404.scared.page' | translate }}\"\n />\n </div>\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/shadow.svg\"\n class=\"ombre\"\n alt=\"{{ '404.shadow' | translate }}\"\n />\n </div>\n </div>\n @if (konamiMatch) {\n <page-not-found-invader />\n }\n</div>\n", styles: [".page-not-found{display:flex;flex-flow:row wrap;position:relative;background-image:url(https://cdn.services.rvaonem.fgov.be/img/404/background.svg);background-size:auto 160vh;background-position:40vw -30vh;min-height:100vh;background-repeat:no-repeat}.page-not-found .ap{position:absolute;top:0;right:0}.page-not-found .not-found-section{flex:1 1 300px;padding:48px 146px}.page-not-found .not-found-section .oops{font-size:7vw;line-height:11vw;font-weight:700;margin-bottom:21px}.page-not-found .not-found-section .nf-title{margin-bottom:21px}.page-not-found .not-found-section .nf-body{margin-bottom:40px}.page-not-found .not-found-section .nf-actions{margin-bottom:32px;font-size:24px;line-height:36px;font-weight:700}.page-not-found .not-found-section .actions{display:flex;gap:8px;margin-bottom:40px}.page-not-found .not-found-section.section-flying-saucer{padding-top:96px}.page-not-found not-found-invader{position:absolute}.flying-saucer-container{position:relative}.flying-saucer-container .soucoupe{position:absolute;top:0;left:0;z-index:10;transform:translateY(0);animation-name:takeOff;animation-duration:10s}.flying-saucer-container .halo{position:absolute;top:143px;left:42px;height:395px;width:273px;border-radius:0 0 130px 130px;opacity:1;animation-name:retractHalo;animation-duration:10s}.flying-saucer-container .page-container{position:absolute;top:147px;left:100px;height:350px;overflow:hidden;animation-direction:normal}.flying-saucer-container .page-container .page{transform:translateY(100px);animation-name:suckPage;animation-duration:10s}.flying-saucer-container .ombre{position:absolute;top:536px;animation-name:shadowFade;animation-duration:10s;opacity:1;width:250px;left:60px}@keyframes suckPage{0%{transform:translateY(100px);opacity:1}35%{transform:translateY(100px);opacity:1}55%{opacity:0}85%{transform:translateY(-300px);opacity:0}to{transform:translateY(100px)}}@keyframes retractHalo{0%{opacity:0}25%{opacity:0}35%{opacity:1}55%{opacity:1}85%{opacity:0}99%{opacity:0}to{opacity:1}}@keyframes takeOff{0%{transform:translateY(-300px)}25%{transform:translateY(0)}70%{transform:translateY(0)}90%{transform:translateY(-300px)}96%{transform:translateY(-300px)}to{transform:translateY(0)}}@keyframes shadowFade{0%{opacity:0;width:370px;left:0}25%{opacity:1;width:250px;left:60px}70%{opacity:1;width:250px;left:60px}90%{opacity:0;width:370px;left:0}96%{opacity:0;width:370px;left:0}to{opacity:1;width:250px;left:60px}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: PageNotFoundInvaderComponent, selector: "page-not-found-invader" }, { kind: "pipe", type: TranslatePipe, name: "translate" }] }); }
164
166
  }
165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: PageNotFoundComponent, decorators: [{
167
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: PageNotFoundComponent, decorators: [{
166
168
  type: Component,
167
- args: [{ selector: 'page-not-found', standalone: true, imports: [TranslatePipe, NgTemplateOutlet, PageNotFoundInvaderComponent], template: "<div class=\"page-not-found\">\n <!--img src=\"https://cdn.services.rvaonem.fgov.be/img/404/Arri\u00E8re-plan.svg\" class=\"ap\" /-->\n <div class=\"not-found-section\">\n <div class=\"heading mat-headline-1\">{{ '404.oops' | translate }}</div>\n <h1>{{ '404.title' | translate }}</h1>\n <p>{{ '404.body' | translate }}</p>\n <h2>{{ '404.actions' | translate }}</h2>\n <div class=\"actions\">\n @for (action of actions?.toArray(); track action.template) {\n @if (action.template) {\n <ng-container *ngTemplateOutlet=\"action.template\"></ng-container>\n }\n }\n </div>\n @if (extra?.template; as tpl) {\n <ng-container *ngTemplateOutlet=\"tpl\"></ng-container>\n }\n </div>\n <div class=\"not-found-section section-flying-saucer\">\n <div class=\"not-found-section flying-saucer-container\">\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/saucer.svg\"\n class=\"soucoupe\"\n alt=\"{{ '404.flying.saucer' | translate }}\"\n />\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/lightbeam.svg\"\n class=\"halo\"\n alt=\"{{ '404.tractor.beam' | translate }}\"\n />\n <div class=\"page-container\">\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/document.svg\"\n class=\"page\"\n alt=\"{{ '404.scared.page' | translate }}\"\n />\n </div>\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/shadow.svg\"\n class=\"ombre\"\n alt=\"{{ '404.shadow' | translate }}\"\n />\n </div>\n </div>\n @if (konamiMatch) {\n <page-not-found-invader></page-not-found-invader>\n }\n</div>\n", styles: [".page-not-found{display:flex;flex-flow:row wrap;position:relative;background-image:url(https://cdn.services.rvaonem.fgov.be/img/404/background.svg);background-size:auto 160vh;background-position:40vw -30vh;min-height:100vh;background-repeat:no-repeat}.page-not-found .ap{position:absolute;top:0;right:0}.page-not-found .not-found-section{flex:1 1 300px;padding:48px 146px}.page-not-found .not-found-section .oops{font-size:7vw;line-height:11vw;font-weight:700;margin-bottom:21px}.page-not-found .not-found-section .nf-title{margin-bottom:21px}.page-not-found .not-found-section .nf-body{margin-bottom:40px}.page-not-found .not-found-section .nf-actions{margin-bottom:32px;font-size:24px;line-height:36px;font-weight:700}.page-not-found .not-found-section .actions{display:flex;gap:8px;margin-bottom:40px}.page-not-found .not-found-section.section-flying-saucer{padding-top:96px}.page-not-found not-found-invader{position:absolute}.flying-saucer-container{position:relative}.flying-saucer-container .soucoupe{position:absolute;top:0;left:0;z-index:10;transform:translateY(0);animation-name:takeOff;animation-duration:10s}.flying-saucer-container .halo{position:absolute;top:143px;left:42px;height:395px;width:273px;border-radius:0 0 130px 130px;opacity:1;animation-name:retractHalo;animation-duration:10s}.flying-saucer-container .page-container{position:absolute;top:147px;left:100px;height:350px;overflow:hidden;animation-direction:normal}.flying-saucer-container .page-container .page{transform:translateY(100px);animation-name:suckPage;animation-duration:10s}.flying-saucer-container .ombre{position:absolute;top:536px;animation-name:shadowFade;animation-duration:10s;opacity:1;width:250px;left:60px}@keyframes suckPage{0%{transform:translateY(100px);opacity:1}35%{transform:translateY(100px);opacity:1}55%{opacity:0}85%{transform:translateY(-300px);opacity:0}to{transform:translateY(100px)}}@keyframes retractHalo{0%{opacity:0}25%{opacity:0}35%{opacity:1}55%{opacity:1}85%{opacity:0}99%{opacity:0}to{opacity:1}}@keyframes takeOff{0%{transform:translateY(-300px)}25%{transform:translateY(0)}70%{transform:translateY(0)}90%{transform:translateY(-300px)}96%{transform:translateY(-300px)}to{transform:translateY(0)}}@keyframes shadowFade{0%{opacity:0;width:370px;left:0}25%{opacity:1;width:250px;left:60px}70%{opacity:1;width:250px;left:60px}90%{opacity:0;width:370px;left:0}96%{opacity:0;width:370px;left:0}to{opacity:1;width:250px;left:60px}}\n"] }]
168
- }], propDecorators: { actions: [{
169
- type: ContentChildren,
170
- args: [PageNotFoundActionComponent]
171
- }], extra: [{
172
- type: ContentChild,
173
- args: [PageNotFoundExtraComponent]
174
- }] } });
169
+ args: [{ selector: 'page-not-found', standalone: true, imports: [TranslatePipe, NgTemplateOutlet, PageNotFoundInvaderComponent], template: "<div class=\"page-not-found\">\n <!--img src=\"https://cdn.services.rvaonem.fgov.be/img/404/Arri\u00E8re-plan.svg\" class=\"ap\" /-->\n <div class=\"not-found-section\">\n <div class=\"heading mat-headline-1\">{{ '404.oops' | translate }}</div>\n <h1>{{ '404.title' | translate }}</h1>\n <p>{{ '404.body' | translate }}</p>\n @if (actions() && actions().length > 0) {\n <h2>{{ '404.actions' | translate }}</h2>\n }\n <div class=\"actions\">\n @for (action of actions(); track action.template()) {\n @if (action.template()) {\n <ng-container *ngTemplateOutlet=\"action.template()\" />\n }\n }\n </div>\n @if (extra()?.template(); as tpl) {\n <ng-container *ngTemplateOutlet=\"tpl\" />\n }\n </div>\n <div class=\"not-found-section section-flying-saucer\">\n <div class=\"not-found-section flying-saucer-container\">\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/saucer.svg\"\n class=\"soucoupe\"\n alt=\"{{ '404.flying.saucer' | translate }}\"\n />\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/lightbeam.svg\"\n class=\"halo\"\n alt=\"{{ '404.tractor.beam' | translate }}\"\n />\n <div class=\"page-container\">\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/document.svg\"\n class=\"page\"\n alt=\"{{ '404.scared.page' | translate }}\"\n />\n </div>\n <img\n src=\"https://cdn.services.rvaonem.fgov.be/img/404/shadow.svg\"\n class=\"ombre\"\n alt=\"{{ '404.shadow' | translate }}\"\n />\n </div>\n </div>\n @if (konamiMatch) {\n <page-not-found-invader />\n }\n</div>\n", styles: [".page-not-found{display:flex;flex-flow:row wrap;position:relative;background-image:url(https://cdn.services.rvaonem.fgov.be/img/404/background.svg);background-size:auto 160vh;background-position:40vw -30vh;min-height:100vh;background-repeat:no-repeat}.page-not-found .ap{position:absolute;top:0;right:0}.page-not-found .not-found-section{flex:1 1 300px;padding:48px 146px}.page-not-found .not-found-section .oops{font-size:7vw;line-height:11vw;font-weight:700;margin-bottom:21px}.page-not-found .not-found-section .nf-title{margin-bottom:21px}.page-not-found .not-found-section .nf-body{margin-bottom:40px}.page-not-found .not-found-section .nf-actions{margin-bottom:32px;font-size:24px;line-height:36px;font-weight:700}.page-not-found .not-found-section .actions{display:flex;gap:8px;margin-bottom:40px}.page-not-found .not-found-section.section-flying-saucer{padding-top:96px}.page-not-found not-found-invader{position:absolute}.flying-saucer-container{position:relative}.flying-saucer-container .soucoupe{position:absolute;top:0;left:0;z-index:10;transform:translateY(0);animation-name:takeOff;animation-duration:10s}.flying-saucer-container .halo{position:absolute;top:143px;left:42px;height:395px;width:273px;border-radius:0 0 130px 130px;opacity:1;animation-name:retractHalo;animation-duration:10s}.flying-saucer-container .page-container{position:absolute;top:147px;left:100px;height:350px;overflow:hidden;animation-direction:normal}.flying-saucer-container .page-container .page{transform:translateY(100px);animation-name:suckPage;animation-duration:10s}.flying-saucer-container .ombre{position:absolute;top:536px;animation-name:shadowFade;animation-duration:10s;opacity:1;width:250px;left:60px}@keyframes suckPage{0%{transform:translateY(100px);opacity:1}35%{transform:translateY(100px);opacity:1}55%{opacity:0}85%{transform:translateY(-300px);opacity:0}to{transform:translateY(100px)}}@keyframes retractHalo{0%{opacity:0}25%{opacity:0}35%{opacity:1}55%{opacity:1}85%{opacity:0}99%{opacity:0}to{opacity:1}}@keyframes takeOff{0%{transform:translateY(-300px)}25%{transform:translateY(0)}70%{transform:translateY(0)}90%{transform:translateY(-300px)}96%{transform:translateY(-300px)}to{transform:translateY(0)}}@keyframes shadowFade{0%{opacity:0;width:370px;left:0}25%{opacity:1;width:250px;left:60px}70%{opacity:1;width:250px;left:60px}90%{opacity:0;width:370px;left:0}96%{opacity:0;width:370px;left:0}to{opacity:1;width:250px;left:60px}}\n"] }]
170
+ }], propDecorators: { actions: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => PageNotFoundActionComponent), { isSignal: true }] }], extra: [{ type: i0.ContentChild, args: [i0.forwardRef(() => PageNotFoundExtraComponent), { isSignal: true }] }] } });
175
171
 
176
172
  class OnemrvaPageNotFoundModule {
177
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaPageNotFoundModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
178
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaPageNotFoundModule, imports: [PageNotFoundComponent,
173
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaPageNotFoundModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
174
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaPageNotFoundModule, imports: [PageNotFoundComponent,
179
175
  PageNotFoundInvaderComponent,
180
176
  PageNotFoundActionComponent,
181
177
  PageNotFoundExtraComponent], exports: [PageNotFoundComponent,
182
178
  PageNotFoundInvaderComponent,
183
179
  PageNotFoundActionComponent,
184
180
  PageNotFoundExtraComponent] }); }
185
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaPageNotFoundModule }); }
181
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaPageNotFoundModule }); }
186
182
  }
187
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: OnemrvaPageNotFoundModule, decorators: [{
183
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: OnemrvaPageNotFoundModule, decorators: [{
188
184
  type: NgModule,
189
185
  args: [{
190
186
  declarations: [],