@spartan-ng/brain 0.0.1-alpha.422 → 0.0.1-alpha.423

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 (231) hide show
  1. package/fesm2022/spartan-ng-brain-accordion.mjs +16 -16
  2. package/fesm2022/spartan-ng-brain-alert-dialog.mjs +22 -22
  3. package/fesm2022/spartan-ng-brain-avatar.mjs +16 -16
  4. package/fesm2022/spartan-ng-brain-calendar.mjs +31 -31
  5. package/fesm2022/spartan-ng-brain-checkbox.mjs +7 -8
  6. package/fesm2022/spartan-ng-brain-checkbox.mjs.map +1 -1
  7. package/fesm2022/spartan-ng-brain-collapsible.mjs +13 -13
  8. package/fesm2022/spartan-ng-brain-command.mjs +22 -22
  9. package/fesm2022/spartan-ng-brain-dialog.mjs +28 -28
  10. package/fesm2022/spartan-ng-brain-form-field.mjs +3 -3
  11. package/fesm2022/spartan-ng-brain-form-field.mjs.map +1 -1
  12. package/fesm2022/spartan-ng-brain-forms.mjs +6 -6
  13. package/fesm2022/spartan-ng-brain-hover-card.mjs +16 -16
  14. package/fesm2022/spartan-ng-brain-label.mjs +7 -7
  15. package/fesm2022/spartan-ng-brain-menu.mjs +40 -40
  16. package/fesm2022/spartan-ng-brain-popover.mjs +16 -16
  17. package/fesm2022/spartan-ng-brain-progress.mjs +10 -10
  18. package/fesm2022/spartan-ng-brain-radio-group.mjs +10 -10
  19. package/fesm2022/spartan-ng-brain-select.mjs +37 -38
  20. package/fesm2022/spartan-ng-brain-select.mjs.map +1 -1
  21. package/fesm2022/spartan-ng-brain-separator.mjs +7 -7
  22. package/fesm2022/spartan-ng-brain-sheet.mjs +25 -25
  23. package/fesm2022/spartan-ng-brain-slider.mjs +22 -20
  24. package/fesm2022/spartan-ng-brain-slider.mjs.map +1 -1
  25. package/fesm2022/spartan-ng-brain-switch.mjs +10 -12
  26. package/fesm2022/spartan-ng-brain-switch.mjs.map +1 -1
  27. package/fesm2022/spartan-ng-brain-table.mjs +22 -24
  28. package/fesm2022/spartan-ng-brain-table.mjs.map +1 -1
  29. package/fesm2022/spartan-ng-brain-tabs.mjs +19 -19
  30. package/fesm2022/spartan-ng-brain-tabs.mjs.map +1 -1
  31. package/fesm2022/spartan-ng-brain-toggle.mjs +14 -14
  32. package/fesm2022/spartan-ng-brain-tooltip.mjs +16 -17
  33. package/fesm2022/spartan-ng-brain-tooltip.mjs.map +1 -1
  34. package/form-field/lib/brn-form-field-control.d.ts +1 -1
  35. package/package.json +5 -63
  36. package/slider/lib/brn-slider-track.directive.d.ts +1 -0
  37. package/tabs/lib/brn-tabs-paginated-list.directive.d.ts +1 -1
  38. package/esm2022/accordion/index.mjs +0 -31
  39. package/esm2022/accordion/lib/brn-accordion-content.component.mjs +0 -50
  40. package/esm2022/accordion/lib/brn-accordion.directive.mjs +0 -185
  41. package/esm2022/accordion/spartan-ng-brain-accordion.mjs +0 -5
  42. package/esm2022/alert-dialog/index.mjs +0 -45
  43. package/esm2022/alert-dialog/lib/brn-alert-dialog-content.directive.mjs +0 -17
  44. package/esm2022/alert-dialog/lib/brn-alert-dialog-description.directive.mjs +0 -18
  45. package/esm2022/alert-dialog/lib/brn-alert-dialog-overlay.component.mjs +0 -20
  46. package/esm2022/alert-dialog/lib/brn-alert-dialog-title.directive.mjs +0 -18
  47. package/esm2022/alert-dialog/lib/brn-alert-dialog-trigger.directive.mjs +0 -34
  48. package/esm2022/alert-dialog/lib/brn-alert-dialog.component.mjs +0 -41
  49. package/esm2022/alert-dialog/spartan-ng-brain-alert-dialog.mjs +0 -5
  50. package/esm2022/avatar/index.mjs +0 -23
  51. package/esm2022/avatar/lib/brn-avatar.component.mjs +0 -31
  52. package/esm2022/avatar/lib/fallback/brn-avatar-fallback.directive.mjs +0 -21
  53. package/esm2022/avatar/lib/fallback/index.mjs +0 -2
  54. package/esm2022/avatar/lib/image/brn-avatar-image.directive.mjs +0 -29
  55. package/esm2022/avatar/lib/image/index.mjs +0 -2
  56. package/esm2022/avatar/lib/util/hex-color-for.mjs +0 -22
  57. package/esm2022/avatar/lib/util/index.mjs +0 -4
  58. package/esm2022/avatar/lib/util/initials.pipe.mjs +0 -27
  59. package/esm2022/avatar/lib/util/is-bright.mjs +0 -12
  60. package/esm2022/avatar/spartan-ng-brain-avatar.mjs +0 -5
  61. package/esm2022/calendar/index.mjs +0 -62
  62. package/esm2022/calendar/lib/brn-calendar-cell-button.directive.mjs +0 -160
  63. package/esm2022/calendar/lib/brn-calendar-cell.directive.mjs +0 -17
  64. package/esm2022/calendar/lib/brn-calendar-grid.directive.mjs +0 -21
  65. package/esm2022/calendar/lib/brn-calendar-header.directive.mjs +0 -22
  66. package/esm2022/calendar/lib/brn-calendar-next-button.directive.mjs +0 -42
  67. package/esm2022/calendar/lib/brn-calendar-previous-button.directive.mjs +0 -42
  68. package/esm2022/calendar/lib/brn-calendar-week.directive.mjs +0 -67
  69. package/esm2022/calendar/lib/brn-calendar-weekday.directive.mjs +0 -48
  70. package/esm2022/calendar/lib/brn-calendar.directive.mjs +0 -154
  71. package/esm2022/calendar/lib/brn-calendar.token.mjs +0 -12
  72. package/esm2022/calendar/lib/i18n/calendar-i18n.mjs +0 -33
  73. package/esm2022/calendar/spartan-ng-brain-calendar.mjs +0 -5
  74. package/esm2022/checkbox/index.mjs +0 -18
  75. package/esm2022/checkbox/lib/brn-checkbox.component.mjs +0 -248
  76. package/esm2022/checkbox/spartan-ng-brain-checkbox.mjs +0 -5
  77. package/esm2022/collapsible/index.mjs +0 -30
  78. package/esm2022/collapsible/lib/brn-collapsible-content.component.mjs +0 -62
  79. package/esm2022/collapsible/lib/brn-collapsible-trigger.directive.mjs +0 -35
  80. package/esm2022/collapsible/lib/brn-collapsible.component.mjs +0 -33
  81. package/esm2022/collapsible/spartan-ng-brain-collapsible.mjs +0 -5
  82. package/esm2022/command/index.mjs +0 -48
  83. package/esm2022/command/lib/brn-command-empty.directive.mjs +0 -30
  84. package/esm2022/command/lib/brn-command-group.directive.mjs +0 -29
  85. package/esm2022/command/lib/brn-command-item.directive.mjs +0 -92
  86. package/esm2022/command/lib/brn-command-item.token.mjs +0 -6
  87. package/esm2022/command/lib/brn-command-list.directive.mjs +0 -21
  88. package/esm2022/command/lib/brn-command-search-input.directive.mjs +0 -81
  89. package/esm2022/command/lib/brn-command-search-input.token.mjs +0 -6
  90. package/esm2022/command/lib/brn-command.directive.mjs +0 -81
  91. package/esm2022/command/lib/brn-command.token.mjs +0 -9
  92. package/esm2022/command/spartan-ng-brain-command.mjs +0 -5
  93. package/esm2022/core/helpers/create-injection-token.mjs +0 -15
  94. package/esm2022/core/helpers/custom-element-class-settable.mjs +0 -3
  95. package/esm2022/core/helpers/dev-mode.mjs +0 -6
  96. package/esm2022/core/helpers/exposes-side.mjs +0 -3
  97. package/esm2022/core/helpers/exposes-state.mjs +0 -3
  98. package/esm2022/core/helpers/hlm.mjs +0 -6
  99. package/esm2022/core/helpers/table-classes-settable.mjs +0 -3
  100. package/esm2022/core/helpers/zone-free.mjs +0 -15
  101. package/esm2022/core/index.mjs +0 -8
  102. package/esm2022/core/spartan-ng-brain-core.mjs +0 -5
  103. package/esm2022/date-time/index.mjs +0 -3
  104. package/esm2022/date-time/lib/date-adapter.mjs +0 -16
  105. package/esm2022/date-time/lib/native-date-adapter.mjs +0 -155
  106. package/esm2022/date-time/spartan-ng-brain-date-time.mjs +0 -5
  107. package/esm2022/date-time-luxon/index.mjs +0 -2
  108. package/esm2022/date-time-luxon/lib/date-adapter.mjs +0 -85
  109. package/esm2022/date-time-luxon/spartan-ng-brain-date-time-luxon.mjs +0 -5
  110. package/esm2022/dialog/index.mjs +0 -56
  111. package/esm2022/dialog/lib/brn-dialog-close.directive.mjs +0 -24
  112. package/esm2022/dialog/lib/brn-dialog-content.directive.mjs +0 -41
  113. package/esm2022/dialog/lib/brn-dialog-description.directive.mjs +0 -25
  114. package/esm2022/dialog/lib/brn-dialog-options.mjs +0 -19
  115. package/esm2022/dialog/lib/brn-dialog-overlay.component.mjs +0 -33
  116. package/esm2022/dialog/lib/brn-dialog-ref.mjs +0 -54
  117. package/esm2022/dialog/lib/brn-dialog-state.mjs +0 -2
  118. package/esm2022/dialog/lib/brn-dialog-title.directive.mjs +0 -25
  119. package/esm2022/dialog/lib/brn-dialog-token.mjs +0 -25
  120. package/esm2022/dialog/lib/brn-dialog-trigger.directive.mjs +0 -47
  121. package/esm2022/dialog/lib/brn-dialog-utils.mjs +0 -12
  122. package/esm2022/dialog/lib/brn-dialog.component.mjs +0 -179
  123. package/esm2022/dialog/lib/brn-dialog.service.mjs +0 -128
  124. package/esm2022/dialog/spartan-ng-brain-dialog.mjs +0 -5
  125. package/esm2022/form-field/index.mjs +0 -2
  126. package/esm2022/form-field/lib/brn-form-field-control.mjs +0 -14
  127. package/esm2022/form-field/spartan-ng-brain-form-field.mjs +0 -5
  128. package/esm2022/forms/index.mjs +0 -4
  129. package/esm2022/forms/lib/control-value-accessor.mjs +0 -2
  130. package/esm2022/forms/lib/error-options.mjs +0 -26
  131. package/esm2022/forms/lib/error-state-tracker.mjs +0 -29
  132. package/esm2022/forms/spartan-ng-brain-forms.mjs +0 -5
  133. package/esm2022/hover-card/index.mjs +0 -29
  134. package/esm2022/hover-card/lib/brn-hover-card-content.service.mjs +0 -197
  135. package/esm2022/hover-card/lib/brn-hover-card.component.mjs +0 -28
  136. package/esm2022/hover-card/lib/createHoverObservable.mjs +0 -20
  137. package/esm2022/hover-card/spartan-ng-brain-hover-card.mjs +0 -5
  138. package/esm2022/index.mjs +0 -3
  139. package/esm2022/label/index.mjs +0 -17
  140. package/esm2022/label/lib/brn-label.directive.mjs +0 -49
  141. package/esm2022/label/spartan-ng-brain-label.mjs +0 -5
  142. package/esm2022/menu/index.mjs +0 -100
  143. package/esm2022/menu/lib/brn-context-menu-trigger.directive.mjs +0 -40
  144. package/esm2022/menu/lib/brn-menu-align.mjs +0 -15
  145. package/esm2022/menu/lib/brn-menu-bar.directive.mjs +0 -17
  146. package/esm2022/menu/lib/brn-menu-group.directive.mjs +0 -17
  147. package/esm2022/menu/lib/brn-menu-item-checkbox.directive.mjs +0 -30
  148. package/esm2022/menu/lib/brn-menu-item-radio.directive.mjs +0 -30
  149. package/esm2022/menu/lib/brn-menu-item.directive.mjs +0 -27
  150. package/esm2022/menu/lib/brn-menu-trigger.directive.mjs +0 -42
  151. package/esm2022/menu/lib/brn-menu.directive.mjs +0 -56
  152. package/esm2022/menu/spartan-ng-brain-menu.mjs +0 -5
  153. package/esm2022/popover/index.mjs +0 -35
  154. package/esm2022/popover/lib/brn-popover-close.directive.mjs +0 -15
  155. package/esm2022/popover/lib/brn-popover-content.directive.mjs +0 -17
  156. package/esm2022/popover/lib/brn-popover-trigger.directive.mjs +0 -43
  157. package/esm2022/popover/lib/brn-popover.component.mjs +0 -81
  158. package/esm2022/popover/spartan-ng-brain-popover.mjs +0 -5
  159. package/esm2022/progress/index.mjs +0 -21
  160. package/esm2022/progress/lib/brn-progress-indicator.component.mjs +0 -22
  161. package/esm2022/progress/lib/brn-progress.component.mjs +0 -61
  162. package/esm2022/progress/lib/brn-progress.token.mjs +0 -9
  163. package/esm2022/progress/spartan-ng-brain-progress.mjs +0 -5
  164. package/esm2022/radio-group/index.mjs +0 -20
  165. package/esm2022/radio-group/lib/brn-radio-group.directive.mjs +0 -90
  166. package/esm2022/radio-group/lib/brn-radio-group.token.mjs +0 -9
  167. package/esm2022/radio-group/lib/brn-radio.component.mjs +0 -191
  168. package/esm2022/radio-group/spartan-ng-brain-radio-group.mjs +0 -5
  169. package/esm2022/select/index.mjs +0 -66
  170. package/esm2022/select/lib/brn-select-content.component.mjs +0 -224
  171. package/esm2022/select/lib/brn-select-content.token.mjs +0 -9
  172. package/esm2022/select/lib/brn-select-group.directive.mjs +0 -19
  173. package/esm2022/select/lib/brn-select-label.directive.mjs +0 -23
  174. package/esm2022/select/lib/brn-select-option.directive.mjs +0 -69
  175. package/esm2022/select/lib/brn-select-placeholder.directive.mjs +0 -16
  176. package/esm2022/select/lib/brn-select-trigger.directive.mjs +0 -67
  177. package/esm2022/select/lib/brn-select-value.component.mjs +0 -68
  178. package/esm2022/select/lib/brn-select-value.directive.mjs +0 -16
  179. package/esm2022/select/lib/brn-select.component.mjs +0 -272
  180. package/esm2022/select/lib/brn-select.token.mjs +0 -9
  181. package/esm2022/select/spartan-ng-brain-select.mjs +0 -5
  182. package/esm2022/separator/index.mjs +0 -17
  183. package/esm2022/separator/lib/brn-separator.component.mjs +0 -24
  184. package/esm2022/separator/spartan-ng-brain-separator.mjs +0 -5
  185. package/esm2022/sheet/index.mjs +0 -50
  186. package/esm2022/sheet/lib/brn-sheet-close.directive.mjs +0 -15
  187. package/esm2022/sheet/lib/brn-sheet-content.directive.mjs +0 -25
  188. package/esm2022/sheet/lib/brn-sheet-description.directive.mjs +0 -18
  189. package/esm2022/sheet/lib/brn-sheet-overlay.component.mjs +0 -20
  190. package/esm2022/sheet/lib/brn-sheet-title.directive.mjs +0 -18
  191. package/esm2022/sheet/lib/brn-sheet-trigger.directive.mjs +0 -25
  192. package/esm2022/sheet/lib/brn-sheet.component.mjs +0 -57
  193. package/esm2022/sheet/spartan-ng-brain-sheet.mjs +0 -5
  194. package/esm2022/slider/index.mjs +0 -13
  195. package/esm2022/slider/lib/brn-slider-thumb.directive.mjs +0 -41
  196. package/esm2022/slider/lib/brn-slider-tick-mark.directive.mjs +0 -37
  197. package/esm2022/slider/lib/brn-slider-track-active-fill.directive.mjs +0 -29
  198. package/esm2022/slider/lib/brn-slider-track.directive.mjs +0 -297
  199. package/esm2022/slider/spartan-ng-brain-slider.mjs +0 -5
  200. package/esm2022/spartan-ng-brain.mjs +0 -5
  201. package/esm2022/switch/index.mjs +0 -20
  202. package/esm2022/switch/lib/brn-switch-thumb.component.mjs +0 -16
  203. package/esm2022/switch/lib/brn-switch.component.mjs +0 -236
  204. package/esm2022/switch/spartan-ng-brain-switch.mjs +0 -5
  205. package/esm2022/table/index.mjs +0 -47
  206. package/esm2022/table/lib/brn-cell-def.directive.mjs +0 -22
  207. package/esm2022/table/lib/brn-column-def.component.mjs +0 -82
  208. package/esm2022/table/lib/brn-column-manager.mjs +0 -61
  209. package/esm2022/table/lib/brn-footer-def.directive.mjs +0 -22
  210. package/esm2022/table/lib/brn-header-def.directive.mjs +0 -22
  211. package/esm2022/table/lib/brn-paginator.directive.mjs +0 -111
  212. package/esm2022/table/lib/brn-table.component.mjs +0 -169
  213. package/esm2022/table/spartan-ng-brain-table.mjs +0 -5
  214. package/esm2022/tabs/index.mjs +0 -32
  215. package/esm2022/tabs/lib/brn-tabs-list.directive.mjs +0 -66
  216. package/esm2022/tabs/lib/brn-tabs-paginated-list.directive.mjs +0 -525
  217. package/esm2022/tabs/lib/brn-tabs-trigger.directive.mjs +0 -136
  218. package/esm2022/tabs/spartan-ng-brain-tabs.mjs +0 -5
  219. package/esm2022/toggle/index.mjs +0 -31
  220. package/esm2022/toggle/lib/brn-toggle-group.component.mjs +0 -159
  221. package/esm2022/toggle/lib/brn-toggle-group.token.mjs +0 -9
  222. package/esm2022/toggle/lib/brn-toggle.directive.mjs +0 -65
  223. package/esm2022/toggle/spartan-ng-brain-toggle.mjs +0 -5
  224. package/esm2022/tooltip/index.mjs +0 -36
  225. package/esm2022/tooltip/lib/brn-tooltip-content.component.mjs +0 -221
  226. package/esm2022/tooltip/lib/brn-tooltip-content.directive.mjs +0 -22
  227. package/esm2022/tooltip/lib/brn-tooltip-trigger.directive.mjs +0 -629
  228. package/esm2022/tooltip/lib/brn-tooltip.directive.mjs +0 -15
  229. package/esm2022/tooltip/lib/brn-tooltip.token.mjs +0 -18
  230. package/esm2022/tooltip/lib/computed-previous.mjs +0 -46
  231. package/esm2022/tooltip/spartan-ng-brain-tooltip.mjs +0 -5
@@ -1,16 +0,0 @@
1
- import { Component } from '@angular/core';
2
- import * as i0 from "@angular/core";
3
- export class BrnSwitchThumbComponent {
4
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSwitchThumbComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
5
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.2.5", type: BrnSwitchThumbComponent, isStandalone: true, selector: "brn-switch-thumb", ngImport: i0, template: '', isInline: true });
6
- }
7
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSwitchThumbComponent, decorators: [{
8
- type: Component,
9
- args: [{
10
- selector: 'brn-switch-thumb',
11
- standalone: true,
12
- imports: [],
13
- template: '',
14
- }]
15
- }] });
16
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLXN3aXRjaC10aHVtYi5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3N3aXRjaC9zcmMvbGliL2Jybi1zd2l0Y2gtdGh1bWIuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBUTFDLE1BQU0sT0FBTyx1QkFBdUI7MEhBQXZCLHVCQUF1Qjs4R0FBdkIsdUJBQXVCLDRFQUZ6QixFQUFFOzsyRkFFQSx1QkFBdUI7a0JBTm5DLFNBQVM7bUJBQUM7b0JBQ1YsUUFBUSxFQUFFLGtCQUFrQjtvQkFDNUIsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLE9BQU8sRUFBRSxFQUFFO29CQUNYLFFBQVEsRUFBRSxFQUFFO2lCQUNaIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2Jybi1zd2l0Y2gtdGh1bWInLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbXSxcblx0dGVtcGxhdGU6ICcnLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5Td2l0Y2hUaHVtYkNvbXBvbmVudCB7fVxuIl19
@@ -1,236 +0,0 @@
1
- import { FocusMonitor } from '@angular/cdk/a11y';
2
- import { NgStyle, isPlatformBrowser } from '@angular/common';
3
- import { ChangeDetectionStrategy, ChangeDetectorRef, Component, DestroyRef, ElementRef, HostListener, PLATFORM_ID, Renderer2, ViewEncapsulation, booleanAttribute, computed, effect, forwardRef, inject, input, model, output, signal, viewChild, } from '@angular/core';
4
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
- import { NG_VALUE_ACCESSOR } from '@angular/forms';
6
- import * as i0 from "@angular/core";
7
- export const BRN_SWITCH_VALUE_ACCESSOR = {
8
- provide: NG_VALUE_ACCESSOR,
9
- useExisting: forwardRef(() => BrnSwitchComponent),
10
- multi: true,
11
- };
12
- const CONTAINER_POST_FIX = '-switch';
13
- export class BrnSwitchComponent {
14
- _destroyRef = inject(DestroyRef);
15
- _renderer = inject(Renderer2);
16
- _isBrowser = isPlatformBrowser(inject(PLATFORM_ID));
17
- _elementRef = inject(ElementRef);
18
- _focusMonitor = inject(FocusMonitor);
19
- _cdr = inject(ChangeDetectorRef);
20
- focusVisible = signal(false);
21
- focused = signal(false);
22
- checked = model(false);
23
- /** Used to set the id on the underlying input element. */
24
- id = input(null);
25
- /** Used to set the name attribute on the underlying input element. */
26
- name = input(null);
27
- /** Used to set the aria-label attribute on the underlying input element. */
28
- ariaLabel = input(null, { alias: 'aria-label' });
29
- /** Used to set the aria-labelledby attribute on the underlying input element. */
30
- ariaLabelledby = input(null, { alias: 'aria-labelledby' });
31
- /** Used to set the aria-describedby attribute on the underlying input element. */
32
- ariaDescribedby = input(null, { alias: 'aria-describedby' });
33
- required = input(false, { transform: booleanAttribute });
34
- disabled = input(false, {
35
- transform: booleanAttribute,
36
- });
37
- // eslint-disable-next-line @typescript-eslint/no-empty-function
38
- _onChange = () => { };
39
- // eslint-disable-next-line @typescript-eslint/no-empty-function
40
- _onTouched = () => { };
41
- checkbox = viewChild.required('checkBox');
42
- changed = output();
43
- touched = output();
44
- state = computed(() => {
45
- const name = this.name();
46
- const id = this.id();
47
- return {
48
- disabled: signal(this.disabled()),
49
- name: name ? name + CONTAINER_POST_FIX : null,
50
- id: id ? id + CONTAINER_POST_FIX : null,
51
- };
52
- });
53
- constructor() {
54
- effect(() => {
55
- /** search for the label and set the disabled state */
56
- let parent = this._renderer.parentNode(this._elementRef.nativeElement);
57
- if (!parent)
58
- return;
59
- // if parent is a HLM-SWITCH, then we need to go up one more level to get the label
60
- if (parent?.tagName === 'HLM-SWITCH') {
61
- parent = this._renderer.parentNode(parent);
62
- }
63
- if (!parent)
64
- return;
65
- // check if parent is a label and assume it is for this checkbox
66
- if (parent?.tagName === 'LABEL') {
67
- this._renderer.setAttribute(parent, 'data-disabled', this.state().disabled() ? 'true' : 'false');
68
- return;
69
- }
70
- if (!this._isBrowser)
71
- return;
72
- const label = parent?.querySelector(`label[for="${this.forChild(this.state().id)}"]`);
73
- if (!label)
74
- return;
75
- this._renderer.setAttribute(label, 'data-disabled', this.state().disabled() ? 'true' : 'false');
76
- });
77
- }
78
- toggle(event) {
79
- if (this.state().disabled())
80
- return;
81
- event.preventDefault();
82
- this.checked.update((checked) => !checked);
83
- this._onChange(this.checked());
84
- this.changed.emit(this.checked());
85
- }
86
- ngAfterContentInit() {
87
- this._focusMonitor
88
- .monitor(this._elementRef, true)
89
- .pipe(takeUntilDestroyed(this._destroyRef))
90
- .subscribe((focusOrigin) => {
91
- if (focusOrigin)
92
- this.focused.set(true);
93
- if (focusOrigin === 'keyboard' || focusOrigin === 'program') {
94
- this.focusVisible.set(true);
95
- this._cdr.markForCheck();
96
- }
97
- if (!focusOrigin) {
98
- // When a focused element becomes disabled, the browser *immediately* fires a blur event.
99
- // Angular does not expect events to be raised during change detection, so any state
100
- // change (such as a form control's ng-touched) will cause a changed-after-checked error.
101
- // See https://github.com/angular/angular/issues/17793. To work around this, we defer
102
- // telling the form control it has been touched until the next tick.
103
- Promise.resolve().then(() => {
104
- this.focusVisible.set(false);
105
- this.focused.set(false);
106
- this._onTouched();
107
- this.touched.emit();
108
- this._cdr.markForCheck();
109
- });
110
- }
111
- });
112
- if (!this.checkbox())
113
- return;
114
- this.checkbox().nativeElement.value = this.checked() ? 'on' : 'off';
115
- this.checkbox().nativeElement.dispatchEvent(new Event('change'));
116
- }
117
- ngOnDestroy() {
118
- this._focusMonitor.stopMonitoring(this._elementRef);
119
- }
120
- forChild(parentValue) {
121
- return parentValue ? parentValue.replace(CONTAINER_POST_FIX, '') : null;
122
- }
123
- writeValue(value) {
124
- this.checked.set(Boolean(value));
125
- }
126
- registerOnChange(fn) {
127
- this._onChange = fn;
128
- }
129
- registerOnTouched(fn) {
130
- this._onTouched = fn;
131
- }
132
- /** Implemented as a part of ControlValueAccessor. */
133
- setDisabledState(isDisabled) {
134
- this.state().disabled.set(isDisabled);
135
- this._cdr.markForCheck();
136
- }
137
- /**
138
- * If the space key is pressed, prevent the default action to stop the page from scrolling.
139
- */
140
- preventScrolling(event) {
141
- event.preventDefault();
142
- }
143
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSwitchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
144
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "18.2.5", type: BrnSwitchComponent, isStandalone: true, selector: "brn-switch", inputs: { checked: { classPropertyName: "checked", publicName: "checked", isSignal: true, isRequired: false, transformFunction: null }, id: { classPropertyName: "id", publicName: "id", isSignal: true, isRequired: false, transformFunction: null }, name: { classPropertyName: "name", publicName: "name", isSignal: true, isRequired: false, transformFunction: null }, ariaLabel: { classPropertyName: "ariaLabel", publicName: "aria-label", isSignal: true, isRequired: false, transformFunction: null }, ariaLabelledby: { classPropertyName: "ariaLabelledby", publicName: "aria-labelledby", isSignal: true, isRequired: false, transformFunction: null }, ariaDescribedby: { classPropertyName: "ariaDescribedby", publicName: "aria-describedby", isSignal: true, isRequired: false, transformFunction: null }, required: { classPropertyName: "required", publicName: "required", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { checked: "checkedChange", changed: "changed", touched: "touched" }, host: { attributes: { "tabindex": "0" }, listeners: { "click": "toggle($event)", "keyup.enter": "toggle($event)", "keyup.space": "toggle($event)", "keydown.space": "preventScrolling($event)" }, properties: { "attr.data-state": "checked() ? \"checked\" : \"unchecked\"", "attr.data-focus-visible": "focusVisible()", "attr.data-focus": "focused()", "attr.data-disabled": "state().disabled()", "attr.aria-labelledby": "null", "attr.aria-label": "null", "attr.aria-describedby": "null", "attr.id": "state().id", "attr.name": "state().name" } }, providers: [BRN_SWITCH_VALUE_ACCESSOR], viewQueries: [{ propertyName: "checkbox", first: true, predicate: ["checkBox"], descendants: true, isSignal: true }], ngImport: i0, template: `
145
- <input
146
- #checkBox
147
- tabindex="-1"
148
- type="checkbox"
149
- role="switch"
150
- [id]="forChild(state().id) ?? ''"
151
- [name]="forChild(state().name) ?? ''"
152
- [value]="checked() ? 'on' : 'off'"
153
- [ngStyle]="{
154
- position: 'absolute',
155
- width: '1px',
156
- height: '1px',
157
- padding: '0',
158
- margin: -'1px',
159
- overflow: 'hidden',
160
- clip: 'rect(0, 0, 0, 0)',
161
- whiteSpace: 'nowrap',
162
- borderWidth: '0',
163
- }"
164
- [checked]="checked()"
165
- [attr.aria-label]="ariaLabel()"
166
- [attr.aria-labelledby]="ariaLabelledby()"
167
- [attr.aria-describedby]="ariaDescribedby()"
168
- [attr.aria-required]="required() || null"
169
- />
170
- <ng-content select="brn-switch-thumb" />
171
- `, isInline: true, dependencies: [{ kind: "directive", type: NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
172
- }
173
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnSwitchComponent, decorators: [{
174
- type: Component,
175
- args: [{
176
- selector: 'brn-switch',
177
- standalone: true,
178
- imports: [NgStyle],
179
- template: `
180
- <input
181
- #checkBox
182
- tabindex="-1"
183
- type="checkbox"
184
- role="switch"
185
- [id]="forChild(state().id) ?? ''"
186
- [name]="forChild(state().name) ?? ''"
187
- [value]="checked() ? 'on' : 'off'"
188
- [ngStyle]="{
189
- position: 'absolute',
190
- width: '1px',
191
- height: '1px',
192
- padding: '0',
193
- margin: -'1px',
194
- overflow: 'hidden',
195
- clip: 'rect(0, 0, 0, 0)',
196
- whiteSpace: 'nowrap',
197
- borderWidth: '0',
198
- }"
199
- [checked]="checked()"
200
- [attr.aria-label]="ariaLabel()"
201
- [attr.aria-labelledby]="ariaLabelledby()"
202
- [attr.aria-describedby]="ariaDescribedby()"
203
- [attr.aria-required]="required() || null"
204
- />
205
- <ng-content select="brn-switch-thumb" />
206
- `,
207
- host: {
208
- tabindex: '0',
209
- '[attr.data-state]': 'checked() ? "checked" : "unchecked"',
210
- '[attr.data-focus-visible]': 'focusVisible()',
211
- '[attr.data-focus]': 'focused()',
212
- '[attr.data-disabled]': 'state().disabled()',
213
- '[attr.aria-labelledby]': 'null',
214
- '[attr.aria-label]': 'null',
215
- '[attr.aria-describedby]': 'null',
216
- '[attr.id]': 'state().id',
217
- '[attr.name]': 'state().name',
218
- },
219
- providers: [BRN_SWITCH_VALUE_ACCESSOR],
220
- changeDetection: ChangeDetectionStrategy.OnPush,
221
- encapsulation: ViewEncapsulation.None,
222
- }]
223
- }], ctorParameters: () => [], propDecorators: { toggle: [{
224
- type: HostListener,
225
- args: ['click', ['$event']]
226
- }, {
227
- type: HostListener,
228
- args: ['keyup.enter', ['$event']]
229
- }, {
230
- type: HostListener,
231
- args: ['keyup.space', ['$event']]
232
- }], preventScrolling: [{
233
- type: HostListener,
234
- args: ['keydown.space', ['$event']]
235
- }] } });
236
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLXN3aXRjaC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3N3aXRjaC9zcmMvbGliL2Jybi1zd2l0Y2guY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUVqRCxPQUFPLEVBQUUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDN0QsT0FBTyxFQUVOLHVCQUF1QixFQUN2QixpQkFBaUIsRUFDakIsU0FBUyxFQUNULFVBQVUsRUFDVixVQUFVLEVBQ1YsWUFBWSxFQUVaLFdBQVcsRUFDWCxTQUFTLEVBQ1QsaUJBQWlCLEVBQ2pCLGdCQUFnQixFQUNoQixRQUFRLEVBQ1IsTUFBTSxFQUNOLFVBQVUsRUFDVixNQUFNLEVBQ04sS0FBSyxFQUNMLEtBQUssRUFDTCxNQUFNLEVBQ04sTUFBTSxFQUNOLFNBQVMsR0FDVCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNoRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxnQkFBZ0IsQ0FBQzs7QUFHbkQsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUc7SUFDeEMsT0FBTyxFQUFFLGlCQUFpQjtJQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGtCQUFrQixDQUFDO0lBQ2pELEtBQUssRUFBRSxJQUFJO0NBQ1gsQ0FBQztBQUVGLE1BQU0sa0JBQWtCLEdBQUcsU0FBUyxDQUFDO0FBa0RyQyxNQUFNLE9BQU8sa0JBQWtCO0lBQ2IsV0FBVyxHQUFHLE1BQU0sQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUNqQyxTQUFTLEdBQUcsTUFBTSxDQUFDLFNBQVMsQ0FBQyxDQUFDO0lBQzlCLFVBQVUsR0FBRyxpQkFBaUIsQ0FBQyxNQUFNLENB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b0JBQ1YsUUFBUSxFQUFFLFlBQVk7b0JBQ3RCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxPQUFPLENBQUM7b0JBQ2xCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0VBMkJUO29CQUNELElBQUksRUFBRTt3QkFDTCxRQUFRLEVBQUUsR0FBRzt3QkFDYixtQkFBbUIsRUFBRSxxQ0FBcUM7d0JBQzFELDJCQUEyQixFQUFFLGdCQUFnQjt3QkFDN0MsbUJBQW1CLEVBQUUsV0FBVzt3QkFDaEMsc0JBQXNCLEVBQUUsb0JBQW9CO3dCQUM1Qyx3QkFBd0IsRUFBRSxNQUFNO3dCQUNoQyxtQkFBbUIsRUFBRSxNQUFNO3dCQUMzQix5QkFBeUIsRUFBRSxNQUFNO3dCQUNqQyxXQUFXLEVBQUUsWUFBWTt3QkFDekIsYUFBYSxFQUFFLGNBQWM7cUJBQzdCO29CQUNELFNBQVMsRUFBRSxDQUFDLHlCQUF5QixDQUFDO29CQUN0QyxlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtvQkFDL0MsYUFBYSxFQUFFLGlCQUFpQixDQUFDLElBQUk7aUJBQ3JDO3dEQW1GVSxNQUFNO3NCQUhmLFlBQVk7dUJBQUMsT0FBTyxFQUFFLENBQUMsUUFBUSxDQUFDOztzQkFDaEMsWUFBWTt1QkFBQyxhQUFhLEVBQUUsQ0FBQyxRQUFRLENBQUM7O3NCQUN0QyxZQUFZO3VCQUFDLGFBQWEsRUFBRSxDQUFDLFFBQVEsQ0FBQztnQkF1RTdCLGdCQUFnQjtzQkFEekIsWUFBWTt1QkFBQyxlQUFlLEVBQUUsQ0FBQyxRQUFRLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBGb2N1c01vbml0b3IgfSBmcm9tICdAYW5ndWxhci9jZGsvYTExeSc7XG5pbXBvcnQgeyBCb29sZWFuSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jZGsvY29lcmNpb24nO1xuaW1wb3J0IHsgTmdTdHlsZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcblx0dHlwZSBBZnRlckNvbnRlbnRJbml0LFxuXHRDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcblx0Q2hhbmdlRGV0ZWN0b3JSZWYsXG5cdENvbXBvbmVudCxcblx0RGVzdHJveVJlZixcblx0RWxlbWVudFJlZixcblx0SG9zdExpc3RlbmVyLFxuXHR0eXBlIE9uRGVzdHJveSxcblx0UExBVEZPUk1fSUQsXG5cdFJlbmRlcmVyMixcblx0Vmlld0VuY2Fwc3VsYXRpb24sXG5cdGJvb2xlYW5BdHRyaWJ1dGUsXG5cdGNvbXB1dGVkLFxuXHRlZmZlY3QsXG5cdGZvcndhcmRSZWYsXG5cdGluamVjdCxcblx0aW5wdXQsXG5cdG1vZGVsLFxuXHRvdXRwdXQsXG5cdHNpZ25hbCxcblx0dmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IHRha2VVbnRpbERlc3Ryb3llZCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUvcnhqcy1pbnRlcm9wJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQ2hhbmdlRm4sIFRvdWNoRm4gfSBmcm9tICdAc3BhcnRhbi1uZy9icmFpbi9mb3Jtcyc7XG5cbmV4cG9ydCBjb25zdCBCUk5fU1dJVENIX1ZBTFVFX0FDQ0VTU09SID0ge1xuXHRwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcblx0dXNlRXhpc3Rpbmc6IGZvcndhcmRSZWYoKCkgPT4gQnJuU3dpdGNoQ29tcG9uZW50KSxcblx0bXVsdGk6IHRydWUsXG59O1xuXG5jb25zdCBDT05UQUlORVJfUE9TVF9GSVggPSAnLXN3aXRjaCc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2Jybi1zd2l0Y2gnLFxuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRpbXBvcnRzOiBbTmdTdHlsZV0sXG5cdHRlbXBsYXRlOiBgXG5cdFx0PGlucHV0XG5cdFx0XHQjY2hlY2tCb3hcblx0XHRcdHRhYmluZGV4PVwiLTFcIlxuXHRcdFx0dHlwZT1cImNoZWNrYm94XCJcblx0XHRcdHJvbGU9XCJzd2l0Y2hcIlxuXHRcdFx0W2lkXT1cImZvckNoaWxkKHN0YXRlKCkuaWQpID8/ICcnXCJcblx0XHRcdFtuYW1lXT1cImZvckNoaWxkKHN0YXRlKCkubmFtZSkgPz8gJydcIlxuXHRcdFx0W3ZhbHVlXT1cImNoZWNrZWQoKSA/ICdvbicgOiAnb2ZmJ1wiXG5cdFx0XHRbbmdTdHlsZV09XCJ7XG5cdFx0XHRcdHBvc2l0aW9uOiAnYWJzb2x1dGUnLFxuXHRcdFx0XHR3aWR0aDogJzFweCcsXG5cdFx0XHRcdGhlaWdodDogJzFweCcsXG5cdFx0XHRcdHBhZGRpbmc6ICcwJyxcblx0XHRcdFx0bWFyZ2luOiAtJzFweCcsXG5cdFx0XHRcdG92ZXJmbG93OiAnaGlkZGVuJyxcblx0XHRcdFx0Y2xpcDogJ3JlY3QoMCwgMCwgMCwgMCknLFxuXHRcdFx0XHR3aGl0ZVNwYWNlOiAnbm93cmFwJyxcblx0XHRcdFx0Ym9yZGVyV2lkdGg6ICcwJyxcblx0XHRcdH1cIlxuXHRcdFx0W2NoZWNrZWRdPVwiY2hlY2tlZCgpXCJcblx0XHRcdFthdHRyLmFyaWEtbGFiZWxdPVwiYXJpYUxhYmVsKClcIlxuXHRcdFx0W2F0dHIuYXJpYS1sYWJlbGxlZGJ5XT1cImFyaWFMYWJlbGxlZGJ5KClcIlxuXHRcdFx0W2F0dHIuYXJpYS1kZXNjcmliZWRieV09XCJhcmlhRGVzY3JpYmVkYnkoKVwiXG5cdFx0XHRbYXR0ci5hcmlhLXJlcXVpcmVkXT1cInJlcXVpcmVkKCkgfHwgbnVsbFwiXG5cdFx0Lz5cblx0XHQ8bmctY29udGVudCBzZWxlY3Q9XCJicm4tc3dpdGNoLXRodW1iXCIgLz5cblx0YCxcblx0aG9zdDoge1xuXHRcdHRhYmluZGV4OiAnMCcsXG5cdFx0J1thdHRyLmRhdGEtc3RhdGVdJzogJ2NoZWNrZWQoKSA/IFwiY2hlY2tlZFwiIDogXCJ1bmNoZWNrZWRcIicsXG5cdFx0J1thdHRyLmRhdGEtZm9jdXMtdmlzaWJsZV0nOiAnZm9jdXNWaXNpYmxlKCknLFxuXHRcdCdbYXR0ci5kYXRhLWZvY3VzXSc6ICdmb2N1c2VkKCknLFxuXHRcdCdbYXR0ci5kYXRhLWRpc2FibGVkXSc6ICdzdGF0ZSgpLmRpc2FibGVkKCknLFxuXHRcdCdbYXR0ci5hcmlhLWxhYmVsbGVkYnldJzogJ251bGwnLFxuXHRcdCdbYXR0ci5hcmlhLWxhYmVsXSc6ICdudWxsJyxcblx0XHQnW2F0dHIuYXJpYS1kZXNjcmliZWRieV0nOiAnbnVsbCcsXG5cdFx0J1thdHRyLmlkXSc6ICdzdGF0ZSgpLmlkJyxcblx0XHQnW2F0dHIubmFtZV0nOiAnc3RhdGUoKS5uYW1lJyxcblx0fSxcblx0cHJvdmlkZXJzOiBbQlJOX1NXSVRDSF9WQUxVRV9BQ0NFU1NPUl0sXG5cdGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuXHRlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5Td2l0Y2hDb21wb25lbnQgaW1wbGVtZW50cyBBZnRlckNvbnRlbnRJbml0LCBPbkRlc3Ryb3kge1xuXHRwcml2YXRlIHJlYWRvbmx5IF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9yZW5kZXJlciA9IGluamVjdChSZW5kZXJlcjIpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9pc0Jyb3dzZXIgPSBpc1BsYXRmb3JtQnJvd3NlcihpbmplY3QoUExBVEZPUk1fSUQpKTtcblx0cHJpdmF0ZSByZWFkb25seSBfZWxlbWVudFJlZiA9IGluamVjdDxFbGVtZW50UmVmPEhUTUxFbGVtZW50Pj4oRWxlbWVudFJlZik7XG5cdHByaXZhdGUgcmVhZG9ubHkgX2ZvY3VzTW9uaXRvciA9IGluamVjdChGb2N1c01vbml0b3IpO1xuXHRwcml2YXRlIHJlYWRvbmx5IF9jZHIgPSBpbmplY3QoQ2hhbmdlRGV0ZWN0b3JSZWYpO1xuXG5cdHByb3RlY3RlZCByZWFkb25seSBmb2N1c1Zpc2libGUgPSBzaWduYWwoZmFsc2UpO1xuXHRwcm90ZWN0ZWQgcmVhZG9ubHkgZm9jdXNlZCA9IHNpZ25hbChmYWxzZSk7XG5cblx0cHVibGljIHJlYWRvbmx5IGNoZWNrZWQgPSBtb2RlbDxib29sZWFuPihmYWxzZSk7XG5cblx0LyoqIFVzZWQgdG8gc2V0IHRoZSBpZCBvbiB0aGUgdW5kZXJseWluZyBpbnB1dCBlbGVtZW50LiAqL1xuXG5cdHB1YmxpYyByZWFkb25seSBpZCA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwpO1xuXG5cdC8qKiBVc2VkIHRvIHNldCB0aGUgbmFtZSBhdHRyaWJ1dGUgb24gdGhlIHVuZGVybHlpbmcgaW5wdXQgZWxlbWVudC4gKi9cblx0cHVibGljIHJlYWRvbmx5IG5hbWUgPSBpbnB1dDxzdHJpbmcgfCBudWxsPihudWxsKTtcblxuXHQvKiogVXNlZCB0byBzZXQgdGhlIGFyaWEtbGFiZWwgYXR0cmlidXRlIG9uIHRoZSB1bmRlcmx5aW5nIGlucHV0IGVsZW1lbnQuICovXG5cdHB1YmxpYyByZWFkb25seSBhcmlhTGFiZWwgPSBpbnB1dDxzdHJpbmcgfCBudWxsPihudWxsLCB7IGFsaWFzOiAnYXJpYS1sYWJlbCcgfSk7XG5cblx0LyoqIFVzZWQgdG8gc2V0IHRoZSBhcmlhLWxhYmVsbGVkYnkgYXR0cmlidXRlIG9uIHRoZSB1bmRlcmx5aW5nIGlucHV0IGVsZW1lbnQuICovXG5cdHB1YmxpYyByZWFkb25seSBhcmlhTGFiZWxsZWRieSA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwsIHsgYWxpYXM6ICdhcmlhLWxhYmVsbGVkYnknIH0pO1xuXG5cdC8qKiBVc2VkIHRvIHNldCB0aGUgYXJpYS1kZXNjcmliZWRieSBhdHRyaWJ1dGUgb24gdGhlIHVuZGVybHlpbmcgaW5wdXQgZWxlbWVudC4gKi9cblx0cHVibGljIHJlYWRvbmx5IGFyaWFEZXNjcmliZWRieSA9IGlucHV0PHN0cmluZyB8IG51bGw+KG51bGwsIHsgYWxpYXM6ICdhcmlhLWRlc2NyaWJlZGJ5JyB9KTtcblxuXHRwdWJsaWMgcmVhZG9ubHkgcmVxdWlyZWQgPSBpbnB1dChmYWxzZSwgeyB0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGUgfSk7XG5cblx0cHVibGljIHJlYWRvbmx5IGRpc2FibGVkID0gaW5wdXQ8Ym9vbGVhbiwgQm9vbGVhbklucHV0PihmYWxzZSwge1xuXHRcdHRyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZSxcblx0fSk7XG5cblx0Ly8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1lbXB0eS1mdW5jdGlvblxuXHRwcm90ZWN0ZWQgX29uQ2hhbmdlOiBDaGFuZ2VGbjxib29sZWFuPiA9ICgpID0+IHt9O1xuXHQvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgQHR5cGVzY3JpcHQtZXNsaW50L25vLWVtcHR5LWZ1bmN0aW9uXG5cdHByaXZhdGUgX29uVG91Y2hlZDogVG91Y2hGbiA9ICgpID0+IHt9O1xuXG5cdHB1YmxpYyByZWFkb25seSBjaGVja2JveCA9IHZpZXdDaGlsZC5yZXF1aXJlZDxFbGVtZW50UmVmPEhUTUxJbnB1dEVsZW1lbnQ+PignY2hlY2tCb3gnKTtcblxuXHRwdWJsaWMgcmVhZG9ubHkgY2hhbmdlZCA9IG91dHB1dDxib29sZWFuPigpO1xuXG5cdHB1YmxpYyByZWFkb25seSB0b3VjaGVkID0gb3V0cHV0PHZvaWQ+KCk7XG5cblx0cHJvdGVjdGVkIHJlYWRvbmx5IHN0YXRlID0gY29tcHV0ZWQoKCkgPT4ge1xuXHRcdGNvbnN0IG5hbWUgPSB0aGlzLm5hbWUoKTtcblx0XHRjb25zdCBpZCA9IHRoaXMuaWQoKTtcblx0XHRyZXR1cm4ge1xuXHRcdFx0ZGlzYWJsZWQ6IHNpZ25hbCh0aGlzLmRpc2FibGVkKCkpLFxuXHRcdFx0bmFtZTogbmFtZSA/IG5hbWUgKyBDT05UQUlORVJfUE9TVF9GSVggOiBudWxsLFxuXHRcdFx0aWQ6IGlkID8gaWQgKyBDT05UQUlORVJfUE9TVF9GSVggOiBudWxsLFxuXHRcdH07XG5cdH0pO1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGVmZmVjdCgoKSA9PiB7XG5cdFx0XHQvKiogc2VhcmNoIGZvciB0aGUgbGFiZWwgYW5kIHNldCB0aGUgZGlzYWJsZWQgc3RhdGUgKi9cblx0XHRcdGxldCBwYXJlbnQgPSB0aGlzLl9yZW5kZXJlci5wYXJlbnROb2RlKHRoaXMuX2VsZW1lbnRSZWYubmF0aXZlRWxlbWVudCk7XG5cdFx0XHRpZiAoIXBhcmVudCkgcmV0dXJuO1xuXHRcdFx0Ly8gaWYgcGFyZW50IGlzIGEgSExNLVNXSVRDSCwgdGhlbiB3ZSBuZWVkIHRvIGdvIHVwIG9uZSBtb3JlIGxldmVsIHRvIGdldCB0aGUgbGFiZWxcblx0XHRcdGlmIChwYXJlbnQ/LnRhZ05hbWUgPT09ICdITE0tU1dJVENIJykge1xuXHRcdFx0XHRwYXJlbnQgPSB0aGlzLl9yZW5kZXJlci5wYXJlbnROb2RlKHBhcmVudCk7XG5cdFx0XHR9XG5cdFx0XHRpZiAoIXBhcmVudCkgcmV0dXJuO1xuXHRcdFx0Ly8gY2hlY2sgaWYgcGFyZW50IGlzIGEgbGFiZWwgYW5kIGFzc3VtZSBpdCBpcyBmb3IgdGhpcyBjaGVja2JveFxuXHRcdFx0aWYgKHBhcmVudD8udGFnTmFtZSA9PT0gJ0xBQkVMJykge1xuXHRcdFx0XHR0aGlzLl9yZW5kZXJlci5zZXRBdHRyaWJ1dGUocGFyZW50LCAnZGF0YS1kaXNhYmxlZCcsIHRoaXMuc3RhdGUoKS5kaXNhYmxlZCgpID8gJ3RydWUnIDogJ2ZhbHNlJyk7XG5cdFx0XHRcdHJldHVybjtcblx0XHRcdH1cblx0XHRcdGlmICghdGhpcy5faXNCcm93c2VyKSByZXR1cm47XG5cblx0XHRcdGNvbnN0IGxhYmVsID0gcGFyZW50Py5xdWVyeVNlbGVjdG9yKGBsYWJlbFtmb3I9XCIke3RoaXMuZm9yQ2hpbGQodGhpcy5zdGF0ZSgpLmlkKX1cIl1gKTtcblx0XHRcdGlmICghbGFiZWwpIHJldHVybjtcblx0XHRcdHRoaXMuX3JlbmRlcmVyLnNldEF0dHJpYnV0ZShsYWJlbCwgJ2RhdGEtZGlzYWJsZWQnLCB0aGlzLnN0YXRlKCkuZGlzYWJsZWQoKSA/ICd0cnVlJyA6ICdmYWxzZScpO1xuXHRcdH0pO1xuXHR9XG5cblx0QEhvc3RMaXN0ZW5lcignY2xpY2snLCBbJyRldmVudCddKVxuXHRASG9zdExpc3RlbmVyKCdrZXl1cC5lbnRlcicsIFsnJGV2ZW50J10pXG5cdEBIb3N0TGlzdGVuZXIoJ2tleXVwLnNwYWNlJywgWyckZXZlbnQnXSlcblx0cHJvdGVjdGVkIHRvZ2dsZShldmVudDogRXZlbnQpOiB2b2lkIHtcblx0XHRpZiAodGhpcy5zdGF0ZSgpLmRpc2FibGVkKCkpIHJldHVybjtcblx0XHRldmVudC5wcmV2ZW50RGVmYXVsdCgpO1xuXG5cdFx0dGhpcy5jaGVja2VkLnVwZGF0ZSgoY2hlY2tlZCkgPT4gIWNoZWNrZWQpO1xuXHRcdHRoaXMuX29uQ2hhbmdlKHRoaXMuY2hlY2tlZCgpKTtcblx0XHR0aGlzLmNoYW5nZWQuZW1pdCh0aGlzLmNoZWNrZWQoKSk7XG5cdH1cblxuXHRuZ0FmdGVyQ29udGVudEluaXQoKSB7XG5cdFx0dGhpcy5fZm9jdXNNb25pdG9yXG5cdFx0XHQubW9uaXRvcih0aGlzLl9lbGVtZW50UmVmLCB0cnVlKVxuXHRcdFx0LnBpcGUodGFrZVVudGlsRGVzdHJveWVkKHRoaXMuX2Rlc3Ryb3lSZWYpKVxuXHRcdFx0LnN1YnNjcmliZSgoZm9jdXNPcmlnaW4pID0+IHtcblx0XHRcdFx0aWYgKGZvY3VzT3JpZ2luKSB0aGlzLmZvY3VzZWQuc2V0KHRydWUpO1xuXHRcdFx0XHRpZiAoZm9jdXNPcmlnaW4gPT09ICdrZXlib2FyZCcgfHwgZm9jdXNPcmlnaW4gPT09ICdwcm9ncmFtJykge1xuXHRcdFx0XHRcdHRoaXMuZm9jdXNWaXNpYmxlLnNldCh0cnVlKTtcblx0XHRcdFx0XHR0aGlzLl9jZHIubWFya0ZvckNoZWNrKCk7XG5cdFx0XHRcdH1cblx0XHRcdFx0aWYgKCFmb2N1c09yaWdpbikge1xuXHRcdFx0XHRcdC8vIFdoZW4gYSBmb2N1c2VkIGVsZW1lbnQgYmVjb21lcyBkaXNhYmxlZCwgdGhlIGJyb3dzZXIgKmltbWVkaWF0ZWx5KiBmaXJlcyBhIGJsdXIgZXZlbnQuXG5cdFx0XHRcdFx0Ly8gQW5ndWxhciBkb2VzIG5vdCBleHBlY3QgZXZlbnRzIHRvIGJlIHJhaXNlZCBkdXJpbmcgY2hhbmdlIGRldGVjdGlvbiwgc28gYW55IHN0YXRlXG5cdFx0XHRcdFx0Ly8gY2hhbmdlIChzdWNoIGFzIGEgZm9ybSBjb250cm9sJ3MgbmctdG91Y2hlZCkgd2lsbCBjYXVzZSBhIGNoYW5nZWQtYWZ0ZXItY2hlY2tlZCBlcnJvci5cblx0XHRcdFx0XHQvLyBTZWUgaHR0cHM6Ly9naXRodWIuY29tL2FuZ3VsYXIvYW5ndWxhci9pc3N1ZXMvMTc3OTMuIFRvIHdvcmsgYXJvdW5kIHRoaXMsIHdlIGRlZmVyXG5cdFx0XHRcdFx0Ly8gdGVsbGluZyB0aGUgZm9ybSBjb250cm9sIGl0IGhhcyBiZWVuIHRvdWNoZWQgdW50aWwgdGhlIG5leHQgdGljay5cblx0XHRcdFx0XHRQcm9taXNlLnJlc29sdmUoKS50aGVuKCgpID0+IHtcblx0XHRcdFx0XHRcdHRoaXMuZm9jdXNWaXNpYmxlLnNldChmYWxzZSk7XG5cdFx0XHRcdFx0XHR0aGlzLmZvY3VzZWQuc2V0KGZhbHNlKTtcblx0XHRcdFx0XHRcdHRoaXMuX29uVG91Y2hlZCgpO1xuXHRcdFx0XHRcdFx0dGhpcy50b3VjaGVkLmVtaXQoKTtcblx0XHRcdFx0XHRcdHRoaXMuX2Nkci5tYXJrRm9yQ2hlY2soKTtcblx0XHRcdFx0XHR9KTtcblx0XHRcdFx0fVxuXHRcdFx0fSk7XG5cblx0XHRpZiAoIXRoaXMuY2hlY2tib3goKSkgcmV0dXJuO1xuXHRcdHRoaXMuY2hlY2tib3goKS5uYXRpdmVFbGVtZW50LnZhbHVlID0gdGhpcy5jaGVja2VkKCkgPyAnb24nIDogJ29mZic7XG5cdFx0dGhpcy5jaGVja2JveCgpLm5hdGl2ZUVsZW1lbnQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoJ2NoYW5nZScpKTtcblx0fVxuXG5cdG5nT25EZXN0cm95KCkge1xuXHRcdHRoaXMuX2ZvY3VzTW9uaXRvci5zdG9wTW9uaXRvcmluZyh0aGlzLl9lbGVtZW50UmVmKTtcblx0fVxuXG5cdHByb3RlY3RlZCBmb3JDaGlsZChwYXJlbnRWYWx1ZTogc3RyaW5nIHwgbnVsbCB8IHVuZGVmaW5lZCk6IHN0cmluZyB8IG51bGwge1xuXHRcdHJldHVybiBwYXJlbnRWYWx1ZSA/IHBhcmVudFZhbHVlLnJlcGxhY2UoQ09OVEFJTkVSX1BPU1RfRklYLCAnJykgOiBudWxsO1xuXHR9XG5cblx0d3JpdGVWYWx1ZSh2YWx1ZTogYm9vbGVhbik6IHZvaWQge1xuXHRcdHRoaXMuY2hlY2tlZC5zZXQoQm9vbGVhbih2YWx1ZSkpO1xuXHR9XG5cblx0cmVnaXN0ZXJPbkNoYW5nZShmbjogQ2hhbmdlRm48Ym9vbGVhbj4pOiB2b2lkIHtcblx0XHR0aGlzLl9vbkNoYW5nZSA9IGZuO1xuXHR9XG5cblx0cmVnaXN0ZXJPblRvdWNoZWQoZm46IFRvdWNoRm4pOiB2b2lkIHtcblx0XHR0aGlzLl9vblRvdWNoZWQgPSBmbjtcblx0fVxuXG5cdC8qKiBJbXBsZW1lbnRlZCBhcyBhIHBhcnQgb2YgQ29udHJvbFZhbHVlQWNjZXNzb3IuICovXG5cdHNldERpc2FibGVkU3RhdGUoaXNEaXNhYmxlZDogYm9vbGVhbik6IHZvaWQge1xuXHRcdHRoaXMuc3RhdGUoKS5kaXNhYmxlZC5zZXQoaXNEaXNhYmxlZCk7XG5cdFx0dGhpcy5fY2RyLm1hcmtGb3JDaGVjaygpO1xuXHR9XG5cblx0LyoqXG5cdCAqIElmIHRoZSBzcGFjZSBrZXkgaXMgcHJlc3NlZCwgcHJldmVudCB0aGUgZGVmYXVsdCBhY3Rpb24gdG8gc3RvcCB0aGUgcGFnZSBmcm9tIHNjcm9sbGluZy5cblx0ICovXG5cdEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uc3BhY2UnLCBbJyRldmVudCddKVxuXHRwcm90ZWN0ZWQgcHJldmVudFNjcm9sbGluZyhldmVudDogS2V5Ym9hcmRFdmVudCk6IHZvaWQge1xuXHRcdGV2ZW50LnByZXZlbnREZWZhdWx0KCk7XG5cdH1cbn1cbiJdfQ==
@@ -1,5 +0,0 @@
1
- /**
2
- * Generated bundle index. Do not edit.
3
- */
4
- export * from './index';
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic3BhcnRhbi1uZy1icmFpbi1zd2l0Y2guanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3N3aXRjaC9zcmMvc3BhcnRhbi1uZy1icmFpbi1zd2l0Y2gudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLFNBQVMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9pbmRleCc7XG4iXX0=
@@ -1,47 +0,0 @@
1
- import { NgModule } from '@angular/core';
2
- import { BrnCellDefDirective } from './lib/brn-cell-def.directive';
3
- import { BrnColumnDefComponent } from './lib/brn-column-def.component';
4
- import { BrnFooterDefDirective } from './lib/brn-footer-def.directive';
5
- import { BrnHeaderDefDirective } from './lib/brn-header-def.directive';
6
- import { BrnPaginatorDirective } from './lib/brn-paginator.directive';
7
- import { BrnTableComponent } from './lib/brn-table.component';
8
- import * as i0 from "@angular/core";
9
- export { BrnCellDefDirective } from './lib/brn-cell-def.directive';
10
- export { BrnColumnDefComponent } from './lib/brn-column-def.component';
11
- export { BrnColumnManager, useBrnColumnManager } from './lib/brn-column-manager';
12
- export { BrnFooterDefDirective } from './lib/brn-footer-def.directive';
13
- export { BrnHeaderDefDirective } from './lib/brn-header-def.directive';
14
- export { BrnPaginatorDirective } from './lib/brn-paginator.directive';
15
- export { BrnTableComponent } from './lib/brn-table.component';
16
- export const BrnTableImports = [
17
- BrnCellDefDirective,
18
- BrnColumnDefComponent,
19
- BrnFooterDefDirective,
20
- BrnHeaderDefDirective,
21
- BrnTableComponent,
22
- BrnPaginatorDirective,
23
- ];
24
- export class BrnTableModule {
25
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnTableModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
26
- /** @nocollapse */ static ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.2.5", ngImport: i0, type: BrnTableModule, imports: [BrnCellDefDirective,
27
- BrnColumnDefComponent,
28
- BrnFooterDefDirective,
29
- BrnHeaderDefDirective,
30
- BrnTableComponent,
31
- BrnPaginatorDirective], exports: [BrnCellDefDirective,
32
- BrnColumnDefComponent,
33
- BrnFooterDefDirective,
34
- BrnHeaderDefDirective,
35
- BrnTableComponent,
36
- BrnPaginatorDirective] });
37
- /** @nocollapse */ static ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnTableModule, imports: [BrnColumnDefComponent,
38
- BrnTableComponent] });
39
- }
40
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnTableModule, decorators: [{
41
- type: NgModule,
42
- args: [{
43
- imports: [...BrnTableImports],
44
- exports: [...BrnTableImports],
45
- }]
46
- }] });
47
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9saWJzL2JyYWluL3RhYmxlL3NyYy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsUUFBUSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBQ25FLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLGdDQUFnQyxDQUFDO0FBQ3ZFLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ3RFLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDOztBQUU5RCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQztBQUNqRixPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxnQ0FBZ0MsQ0FBQztBQUN2RSxPQUFPLEVBQUUscUJBQXFCLEVBQW9DLE1BQU0sK0JBQStCLENBQUM7QUFDeEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFOUQsTUFBTSxDQUFDLE1BQU0sZUFBZSxHQUFHO0lBQzlCLG1CQUFtQjtJQUNuQixxQkFBcUI7SUFDckIscUJBQXFCO0lBQ3JCLHFCQUFxQjtJQUNyQixpQkFBaUI7SUFDakIscUJBQXFCO0NBQ1osQ0FBQztBQU1YLE1BQU0sT0FBTyxjQUFjOzBIQUFkLGNBQWM7MkhBQWQsY0FBYyxZQVoxQixtQkFBbUI7WUFDbkIscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsaUJBQWlCO1lBQ2pCLHFCQUFxQixhQUxyQixtQkFBbUI7WUFDbkIscUJBQXFCO1lBQ3JCLHFCQUFxQjtZQUNyQixxQkFBcUI7WUFDckIsaUJBQWlCO1lBQ2pCLHFCQUFxQjsySEFPVCxjQUFjLFlBWDFCLHFCQUFxQjtZQUdyQixpQkFBaUI7OzJGQVFMLGNBQWM7a0JBSjFCLFFBQVE7bUJBQUM7b0JBQ1QsT0FBTyxFQUFFLENBQUMsR0FBRyxlQUFlLENBQUM7b0JBQzdCLE9BQU8sRUFBRSxDQUFDLEdBQUcsZUFBZSxDQUFDO2lCQUM3QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBCcm5DZWxsRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLWNlbGwtZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5Db2x1bW5EZWZDb21wb25lbnQgfSBmcm9tICcuL2xpYi9icm4tY29sdW1uLWRlZi5jb21wb25lbnQnO1xuaW1wb3J0IHsgQnJuRm9vdGVyRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLWZvb3Rlci1kZWYuZGlyZWN0aXZlJztcbmltcG9ydCB7IEJybkhlYWRlckRlZkRpcmVjdGl2ZSB9IGZyb20gJy4vbGliL2Jybi1oZWFkZXItZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5QYWdpbmF0b3JEaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9icm4tcGFnaW5hdG9yLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5UYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vbGliL2Jybi10YWJsZS5jb21wb25lbnQnO1xuXG5leHBvcnQgeyBCcm5DZWxsRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLWNlbGwtZGVmLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBCcm5Db2x1bW5EZWZDb21wb25lbnQgfSBmcm9tICcuL2xpYi9icm4tY29sdW1uLWRlZi5jb21wb25lbnQnO1xuZXhwb3J0IHsgQnJuQ29sdW1uTWFuYWdlciwgdXNlQnJuQ29sdW1uTWFuYWdlciB9IGZyb20gJy4vbGliL2Jybi1jb2x1bW4tbWFuYWdlcic7XG5leHBvcnQgeyBCcm5Gb290ZXJEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2xpYi9icm4tZm9vdGVyLWRlZi5kaXJlY3RpdmUnO1xuZXhwb3J0IHsgQnJuSGVhZGVyRGVmRGlyZWN0aXZlIH0gZnJvbSAnLi9saWIvYnJuLWhlYWRlci1kZWYuZGlyZWN0aXZlJztcbmV4cG9ydCB7IEJyblBhZ2luYXRvckRpcmVjdGl2ZSwgUGFnaW5hdG9yQ29udGV4dCwgUGFnaW5hdG9yU3RhdGUgfSBmcm9tICcuL2xpYi9icm4tcGFnaW5hdG9yLmRpcmVjdGl2ZSc7XG5leHBvcnQgeyBCcm5UYWJsZUNvbXBvbmVudCB9IGZyb20gJy4vbGliL2Jybi10YWJsZS5jb21wb25lbnQnO1xuXG5leHBvcnQgY29uc3QgQnJuVGFibGVJbXBvcnRzID0gW1xuXHRCcm5DZWxsRGVmRGlyZWN0aXZlLFxuXHRCcm5Db2x1bW5EZWZDb21wb25lbnQsXG5cdEJybkZvb3RlckRlZkRpcmVjdGl2ZSxcblx0QnJuSGVhZGVyRGVmRGlyZWN0aXZlLFxuXHRCcm5UYWJsZUNvbXBvbmVudCxcblx0QnJuUGFnaW5hdG9yRGlyZWN0aXZlLFxuXSBhcyBjb25zdDtcblxuQE5nTW9kdWxlKHtcblx0aW1wb3J0czogWy4uLkJyblRhYmxlSW1wb3J0c10sXG5cdGV4cG9ydHM6IFsuLi5Ccm5UYWJsZUltcG9ydHNdLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5UYWJsZU1vZHVsZSB7fVxuIl19
@@ -1,22 +0,0 @@
1
- import { CdkCellDef } from '@angular/cdk/table';
2
- import { Directive, TemplateRef, inject } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- export class BrnCellDefDirective extends CdkCellDef {
5
- template;
6
- constructor() {
7
- const template = inject(TemplateRef);
8
- super(template);
9
- this.template = template;
10
- }
11
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnCellDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
12
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnCellDefDirective, isStandalone: true, selector: "[brnCellDef]", exportAs: ["brnCellDef"], usesInheritance: true, ngImport: i0 });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnCellDefDirective, decorators: [{
15
- type: Directive,
16
- args: [{
17
- standalone: true,
18
- selector: '[brnCellDef]',
19
- exportAs: 'brnCellDef',
20
- }]
21
- }], ctorParameters: () => [] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWNlbGwtZGVmLmRpcmVjdGl2ZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvYnJhaW4vdGFibGUvc3JjL2xpYi9icm4tY2VsbC1kZWYuZGlyZWN0aXZlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNoRCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTy9ELE1BQU0sT0FBTyxtQkFBb0IsU0FBUSxVQUFVO0lBQ2xDLFFBQVEsQ0FBdUI7SUFFL0M7UUFDQyxNQUFNLFFBQVEsR0FBRyxNQUFNLENBQXVCLFdBQVcsQ0FBQyxDQUFDO1FBRTNELEtBQUssQ0FBQyxRQUFRLENBQUMsQ0FBQztRQUNoQixJQUFJLENBQUMsUUFBUSxHQUFHLFFBQVEsQ0FBQztJQUMxQixDQUFDOzBIQVJXLG1CQUFtQjs4R0FBbkIsbUJBQW1COzsyRkFBbkIsbUJBQW1CO2tCQUwvQixTQUFTO21CQUFDO29CQUNWLFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsY0FBYztvQkFDeEIsUUFBUSxFQUFFLFlBQVk7aUJBQ3RCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2RrQ2VsbERlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay90YWJsZSc7XG5pbXBvcnQgeyBEaXJlY3RpdmUsIFRlbXBsYXRlUmVmLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG5cdHN0YW5kYWxvbmU6IHRydWUsXG5cdHNlbGVjdG9yOiAnW2JybkNlbGxEZWZdJyxcblx0ZXhwb3J0QXM6ICdicm5DZWxsRGVmJyxcbn0pXG5leHBvcnQgY2xhc3MgQnJuQ2VsbERlZkRpcmVjdGl2ZSBleHRlbmRzIENka0NlbGxEZWYge1xuXHRwdWJsaWMgb3ZlcnJpZGUgdGVtcGxhdGU6IFRlbXBsYXRlUmVmPHVua25vd24+O1xuXG5cdGNvbnN0cnVjdG9yKCkge1xuXHRcdGNvbnN0IHRlbXBsYXRlID0gaW5qZWN0PFRlbXBsYXRlUmVmPHVua25vd24+PihUZW1wbGF0ZVJlZik7XG5cblx0XHRzdXBlcih0ZW1wbGF0ZSk7XG5cdFx0dGhpcy50ZW1wbGF0ZSA9IHRlbXBsYXRlO1xuXHR9XG59XG4iXX0=
@@ -1,82 +0,0 @@
1
- import { CdkColumnDef, CdkTableModule, } from '@angular/cdk/table';
2
- import { ChangeDetectionStrategy, Component, ContentChild, Input, ViewChild, ViewEncapsulation, input, } from '@angular/core';
3
- import { BrnCellDefDirective } from './brn-cell-def.directive';
4
- import { BrnFooterDefDirective } from './brn-footer-def.directive';
5
- import { BrnHeaderDefDirective } from './brn-header-def.directive';
6
- import * as i0 from "@angular/core";
7
- import * as i1 from "@angular/cdk/table";
8
- export class BrnColumnDefComponent {
9
- get columnDef() {
10
- return this._columnDef;
11
- }
12
- get cell() {
13
- return this._columnDef.cell;
14
- }
15
- _name = '';
16
- get name() {
17
- return this._name;
18
- }
19
- set name(value) {
20
- this._name = value;
21
- if (!this._columnDef)
22
- return;
23
- this._columnDef.name = value;
24
- }
25
- class = input('');
26
- _columnDef;
27
- _cellDef;
28
- _footerCellDef;
29
- _headerCellDef;
30
- ngAfterContentChecked() {
31
- this._columnDef.name = this.name;
32
- if (this._cellDef) {
33
- this._columnDef.cell = this._cellDef;
34
- }
35
- if (this._headerCellDef) {
36
- this._columnDef.headerCell = this._headerCellDef;
37
- }
38
- if (this._footerCellDef) {
39
- this._columnDef.footerCell = this._footerCellDef;
40
- }
41
- }
42
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnColumnDefComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
43
- /** @nocollapse */ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "18.2.5", type: BrnColumnDefComponent, isStandalone: true, selector: "brn-column-def", inputs: { name: { classPropertyName: "name", publicName: "name", isSignal: false, isRequired: false, transformFunction: null }, class: { classPropertyName: "class", publicName: "class", isSignal: true, isRequired: false, transformFunction: null } }, queries: [{ propertyName: "_cellDef", first: true, predicate: BrnCellDefDirective, descendants: true, static: true }, { propertyName: "_footerCellDef", first: true, predicate: BrnFooterDefDirective, descendants: true, static: true }, { propertyName: "_headerCellDef", first: true, predicate: BrnHeaderDefDirective, descendants: true, static: true }], viewQueries: [{ propertyName: "_columnDef", first: true, predicate: CdkColumnDef, descendants: true, static: true }], ngImport: i0, template: `
44
- <ng-container [cdkColumnDef]="name">
45
- <ng-content select="[brnHeaderDef]" />
46
- <ng-content select="[brnCellDef]" />
47
- <ng-content select="[brnFooterDef]" />
48
- </ng-container>
49
- `, isInline: true, dependencies: [{ kind: "ngmodule", type: CdkTableModule }, { kind: "directive", type: i1.CdkColumnDef, selector: "[cdkColumnDef]", inputs: ["cdkColumnDef", "sticky", "stickyEnd"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
50
- }
51
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnColumnDefComponent, decorators: [{
52
- type: Component,
53
- args: [{
54
- selector: 'brn-column-def',
55
- standalone: true,
56
- imports: [CdkTableModule],
57
- template: `
58
- <ng-container [cdkColumnDef]="name">
59
- <ng-content select="[brnHeaderDef]" />
60
- <ng-content select="[brnCellDef]" />
61
- <ng-content select="[brnFooterDef]" />
62
- </ng-container>
63
- `,
64
- changeDetection: ChangeDetectionStrategy.OnPush,
65
- encapsulation: ViewEncapsulation.None,
66
- }]
67
- }], propDecorators: { name: [{
68
- type: Input
69
- }], _columnDef: [{
70
- type: ViewChild,
71
- args: [CdkColumnDef, { static: true }]
72
- }], _cellDef: [{
73
- type: ContentChild,
74
- args: [BrnCellDefDirective, { static: true }]
75
- }], _footerCellDef: [{
76
- type: ContentChild,
77
- args: [BrnFooterDefDirective, { static: true }]
78
- }], _headerCellDef: [{
79
- type: ContentChild,
80
- args: [BrnHeaderDefDirective, { static: true }]
81
- }] } });
82
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWNvbHVtbi1kZWYuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi90YWJsZS9zcmMvbGliL2Jybi1jb2x1bW4tZGVmLmNvbXBvbmVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBRU4sWUFBWSxFQUdaLGNBQWMsR0FDZCxNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFFTix1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFlBQVksRUFDWixLQUFLLEVBQ0wsU0FBUyxFQUNULGlCQUFpQixFQUNqQixLQUFLLEdBQ0wsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkUsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7OztBQWdCbkUsTUFBTSxPQUFPLHFCQUFxQjtJQUNqQyxJQUFXLFNBQVM7UUFDbkIsT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDO0lBQ3hCLENBQUM7SUFFRCxJQUFXLElBQUk7UUFDZCxPQUFPLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxDQUFDO0lBQzdCLENBQUM7SUFFTyxLQUFLLEdBQUcsRUFBRSxDQUFDO0lBQ25CLElBQ1csSUFBSTtRQUNkLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQztJQUNuQixDQUFDO0lBRUQsSUFBVyxJQUFJLENBQUMsS0FBYTtRQUM1QixJQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztRQUNuQixJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVU7WUFBRSxPQUFPO1FBQzdCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUM5QixDQUFDO0lBRWUsS0FBSyxHQUFHLEtBQUssQ0FBQyxFQUFFLENBQUMsQ0FBQztJQUdqQixVQUFVLENBQWdCO0lBRzFCLFFBQVEsQ0FBYztJQUV0QixjQUFjLENBQW9CO0lBRWxDLGNBQWMsQ0FBb0I7SUFFNUMscUJBQXFCO1FBQzNCLElBQUksQ0FBQyxVQUFVLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQyxJQUFJLENBQUM7UUFDakMsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDbkIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDLFFBQVEsQ0FBQztRQUN0QyxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUNsRCxDQUFDO1FBQ0QsSUFBSSxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDekIsSUFBSSxDQUFDLFVBQVUsQ0FBQyxVQUFVLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztRQUNsRCxDQUFDO0lBQ0YsQ0FBQzswSEE1Q1cscUJBQXFCOzhHQUFyQixxQkFBcUIsMFdBMEJuQixtQkFBbUIsK0ZBRW5CLHFCQUFxQiwrRkFFckIscUJBQXFCLDBHQVB4QixZQUFZLDhEQWpDYjs7Ozs7O0VBTVQsMkRBUFMsY0FBYzs7MkZBV1oscUJBQXFCO2tCQWRqQyxTQUFTO21CQUFDO29CQUNWLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFVBQVUsRUFBRSxJQUFJO29CQUNoQixPQUFPLEVBQUUsQ0FBQyxjQUFjLENBQUM7b0JBQ3pCLFFBQVEsRUFBRTs7Ozs7O0VBTVQ7b0JBQ0QsZUFBZSxFQUFFLHVCQUF1QixDQUFDLE1BQU07b0JBQy9DLGFBQWEsRUFBRSxpQkFBaUIsQ0FBQyxJQUFJO2lCQUNyQzs4QkFZVyxJQUFJO3NCQURkLEtBQUs7Z0JBY1csVUFBVTtzQkFEMUIsU0FBUzt1QkFBQyxZQUFZLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFO2dCQUl4QixRQUFRO3NCQUR4QixZQUFZO3VCQUFDLG1CQUFtQixFQUFFLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRTtnQkFHbEMsY0FBYztzQkFEOUIsWUFBWTt1QkFBQyxxQkFBcUIsRUFBRSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUU7Z0JBR3BDLGNBQWM7c0JBRDlCLFlBQVk7dUJBQUMscUJBQXFCLEVBQUUsRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0dHlwZSBDZGtDZWxsRGVmLFxuXHRDZGtDb2x1bW5EZWYsXG5cdHR5cGUgQ2RrRm9vdGVyQ2VsbERlZixcblx0dHlwZSBDZGtIZWFkZXJDZWxsRGVmLFxuXHRDZGtUYWJsZU1vZHVsZSxcbn0gZnJvbSAnQGFuZ3VsYXIvY2RrL3RhYmxlJztcbmltcG9ydCB7XG5cdHR5cGUgQWZ0ZXJDb250ZW50Q2hlY2tlZCxcblx0Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksXG5cdENvbXBvbmVudCxcblx0Q29udGVudENoaWxkLFxuXHRJbnB1dCxcblx0Vmlld0NoaWxkLFxuXHRWaWV3RW5jYXBzdWxhdGlvbixcblx0aW5wdXQsXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnJuQ2VsbERlZkRpcmVjdGl2ZSB9IGZyb20gJy4vYnJuLWNlbGwtZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5Gb290ZXJEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2Jybi1mb290ZXItZGVmLmRpcmVjdGl2ZSc7XG5pbXBvcnQgeyBCcm5IZWFkZXJEZWZEaXJlY3RpdmUgfSBmcm9tICcuL2Jybi1oZWFkZXItZGVmLmRpcmVjdGl2ZSc7XG5cbkBDb21wb25lbnQoe1xuXHRzZWxlY3RvcjogJ2Jybi1jb2x1bW4tZGVmJyxcblx0c3RhbmRhbG9uZTogdHJ1ZSxcblx0aW1wb3J0czogW0Nka1RhYmxlTW9kdWxlXSxcblx0dGVtcGxhdGU6IGBcblx0XHQ8bmctY29udGFpbmVyIFtjZGtDb2x1bW5EZWZdPVwibmFtZVwiPlxuXHRcdFx0PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2JybkhlYWRlckRlZl1cIiAvPlxuXHRcdFx0PG5nLWNvbnRlbnQgc2VsZWN0PVwiW2JybkNlbGxEZWZdXCIgLz5cblx0XHRcdDxuZy1jb250ZW50IHNlbGVjdD1cIlticm5Gb290ZXJEZWZdXCIgLz5cblx0XHQ8L25nLWNvbnRhaW5lcj5cblx0YCxcblx0Y2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG5cdGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG59KVxuZXhwb3J0IGNsYXNzIEJybkNvbHVtbkRlZkNvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyQ29udGVudENoZWNrZWQge1xuXHRwdWJsaWMgZ2V0IGNvbHVtbkRlZigpIHtcblx0XHRyZXR1cm4gdGhpcy5fY29sdW1uRGVmO1xuXHR9XG5cblx0cHVibGljIGdldCBjZWxsKCkge1xuXHRcdHJldHVybiB0aGlzLl9jb2x1bW5EZWYuY2VsbDtcblx0fVxuXG5cdHByaXZhdGUgX25hbWUgPSAnJztcblx0QElucHV0KClcblx0cHVibGljIGdldCBuYW1lKCk6IHN0cmluZyB7XG5cdFx0cmV0dXJuIHRoaXMuX25hbWU7XG5cdH1cblxuXHRwdWJsaWMgc2V0IG5hbWUodmFsdWU6IHN0cmluZykge1xuXHRcdHRoaXMuX25hbWUgPSB2YWx1ZTtcblx0XHRpZiAoIXRoaXMuX2NvbHVtbkRlZikgcmV0dXJuO1xuXHRcdHRoaXMuX2NvbHVtbkRlZi5uYW1lID0gdmFsdWU7XG5cdH1cblxuXHRwdWJsaWMgcmVhZG9ubHkgY2xhc3MgPSBpbnB1dCgnJyk7XG5cblx0QFZpZXdDaGlsZChDZGtDb2x1bW5EZWYsIHsgc3RhdGljOiB0cnVlIH0pXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbHVtbkRlZiE6IENka0NvbHVtbkRlZjtcblxuXHRAQ29udGVudENoaWxkKEJybkNlbGxEZWZEaXJlY3RpdmUsIHsgc3RhdGljOiB0cnVlIH0pXG5cdHByaXZhdGUgcmVhZG9ubHkgX2NlbGxEZWY/OiBDZGtDZWxsRGVmO1xuXHRAQ29udGVudENoaWxkKEJybkZvb3RlckRlZkRpcmVjdGl2ZSwgeyBzdGF0aWM6IHRydWUgfSlcblx0cHJpdmF0ZSByZWFkb25seSBfZm9vdGVyQ2VsbERlZj86IENka0Zvb3RlckNlbGxEZWY7XG5cdEBDb250ZW50Q2hpbGQoQnJuSGVhZGVyRGVmRGlyZWN0aXZlLCB7IHN0YXRpYzogdHJ1ZSB9KVxuXHRwcml2YXRlIHJlYWRvbmx5IF9oZWFkZXJDZWxsRGVmPzogQ2RrSGVhZGVyQ2VsbERlZjtcblxuXHRwdWJsaWMgbmdBZnRlckNvbnRlbnRDaGVja2VkKCk6IHZvaWQge1xuXHRcdHRoaXMuX2NvbHVtbkRlZi5uYW1lID0gdGhpcy5uYW1lO1xuXHRcdGlmICh0aGlzLl9jZWxsRGVmKSB7XG5cdFx0XHR0aGlzLl9jb2x1bW5EZWYuY2VsbCA9IHRoaXMuX2NlbGxEZWY7XG5cdFx0fVxuXHRcdGlmICh0aGlzLl9oZWFkZXJDZWxsRGVmKSB7XG5cdFx0XHR0aGlzLl9jb2x1bW5EZWYuaGVhZGVyQ2VsbCA9IHRoaXMuX2hlYWRlckNlbGxEZWY7XG5cdFx0fVxuXHRcdGlmICh0aGlzLl9mb290ZXJDZWxsRGVmKSB7XG5cdFx0XHR0aGlzLl9jb2x1bW5EZWYuZm9vdGVyQ2VsbCA9IHRoaXMuX2Zvb3RlckNlbGxEZWY7XG5cdFx0fVxuXHR9XG59XG4iXX0=
@@ -1,61 +0,0 @@
1
- import { computed, signal } from '@angular/core';
2
- export class BrnColumnManager {
3
- _initialColumnVisibility;
4
- _columnVisibility;
5
- allColumns;
6
- columnVisibility;
7
- displayedColumns = computed(() => {
8
- return Object.entries(this._columnVisibility())
9
- .filter(([, value]) => (typeof value === 'boolean' ? value : value.visible))
10
- .map(([key]) => key);
11
- });
12
- constructor(initialColumnVisibility) {
13
- this._initialColumnVisibility = initialColumnVisibility;
14
- this._columnVisibility = signal(this._initialColumnVisibility);
15
- this._columnVisibility.set(this._initialColumnVisibility);
16
- this.columnVisibility = this._columnVisibility.asReadonly();
17
- this.allColumns = this.createAllColumns(this._initialColumnVisibility);
18
- }
19
- isColumnVisible = (columnName) => {
20
- const visibilityMap = this.columnVisibility();
21
- const columnEntry = visibilityMap[columnName];
22
- return typeof columnEntry === 'boolean' ? columnEntry : columnEntry.visible;
23
- };
24
- isColumnDisabled = (columnName) => this.isColumnVisible(columnName) && this.displayedColumns().length === 1;
25
- toggleVisibility(columnName) {
26
- const visibilityMap = this._columnVisibility();
27
- const columnEntry = visibilityMap[columnName];
28
- const newVisibilityState = typeof columnEntry === 'boolean' ? !columnEntry : { visible: !columnEntry.visible };
29
- this._columnVisibility.set({ ...visibilityMap, [columnName]: newVisibilityState });
30
- }
31
- setVisible(columnName) {
32
- const visibilityMap = this._columnVisibility();
33
- const columnEntry = visibilityMap[columnName];
34
- const newVisibilityState = typeof columnEntry === 'boolean' ? true : { visible: true };
35
- this._columnVisibility.set({ ...visibilityMap, [columnName]: newVisibilityState });
36
- }
37
- setInvisible(columnName) {
38
- const visibilityMap = this._columnVisibility();
39
- const columnEntry = visibilityMap[columnName];
40
- const newVisibilityState = typeof columnEntry === 'boolean' ? false : { visible: false };
41
- this._columnVisibility.set({ ...visibilityMap, [columnName]: newVisibilityState });
42
- }
43
- createAllColumns(initialColumnVisibility) {
44
- const keys = Object.keys(initialColumnVisibility);
45
- if (this.isBooleanConfig(initialColumnVisibility)) {
46
- return keys;
47
- }
48
- return keys.map((key) => {
49
- const values = initialColumnVisibility[key];
50
- return {
51
- name: key,
52
- ...values,
53
- };
54
- });
55
- }
56
- isBooleanConfig(config) {
57
- return typeof Object.values(config)[0] === 'boolean';
58
- }
59
- }
60
- export const useBrnColumnManager = (initialColumnVisibility) => new BrnColumnManager(initialColumnVisibility);
61
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWNvbHVtbi1tYW5hZ2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi90YWJsZS9zcmMvbGliL2Jybi1jb2x1bW4tbWFuYWdlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWUsUUFBUSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQVc5RCxNQUFNLE9BQU8sZ0JBQWdCO0lBQ1gsd0JBQXdCLENBQUk7SUFDNUIsaUJBQWlCLENBQUM7SUFFbkIsVUFBVSxDQUE0QjtJQUN0QyxnQkFBZ0IsQ0FBQztJQUNqQixnQkFBZ0IsR0FBd0IsUUFBUSxDQUFDLEdBQUcsRUFBRTtRQUNyRSxPQUFPLE1BQU0sQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGlCQUFpQixFQUFFLENBQUM7YUFDN0MsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEtBQUssQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLE9BQU8sS0FBSyxLQUFLLFNBQVMsQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsT0FBTyxDQUFDLENBQUM7YUFDM0UsR0FBRyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsRUFBRSxFQUFFLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDdkIsQ0FBQyxDQUFDLENBQUM7SUFFSCxZQUFZLHVCQUEwQjtRQUNyQyxJQUFJLENBQUMsd0JBQXdCLEdBQUcsdUJBQXVCLENBQUM7UUFDeEQsSUFBSSxDQUFDLGlCQUFpQixHQUFHLE1BQU0sQ0FBQyxJQUFJLENBQUMsd0JBQXdCLENBQUMsQ0FBQztRQUMvRCxJQUFJLENBQUMsaUJBQWlCLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyx3QkFBd0IsQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLENBQUMsaUJBQWlCLENBQUMsVUFBVSxFQUFFLENBQUM7UUFDNUQsSUFBSSxDQUFDLFVB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Q2pDLENBQUM7SUFFTyxlQUFlLENBQUMsTUFBVztRQUNsQyxPQUFPLE9BQU8sTUFBTSxDQUFDLE1BQU0sQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLENBQUMsS0FBSyxTQUFTLENBQUM7SUFDdEQsQ0FBQztDQUNEO0FBRUQsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBQUcsQ0FBZ0MsdUJBQTBCLEVBQUUsRUFBRSxDQUNoRyxJQUFJLGdCQUFnQixDQUFDLHVCQUF1QixDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyB0eXBlIFNpZ25hbCwgY29tcHV0ZWQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG50eXBlIEJybkNvbHVtblZpc2liaWxpdHkgPSBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiB8IFJlY29yZDxzdHJpbmcsIHsgdmlzaWJsZTogYm9vbGVhbiB9PjtcblxuLy8gcHJldHRpZXItaWdub3JlXG50eXBlIEFsbENvbHVtbnNQcm9wZXJ0eVR5cGU8VD4gPSBUIGV4dGVuZHMgUmVjb3JkPHN0cmluZywgYm9vbGVhbj5cblx0PyAoa2V5b2YgVClbXVxuXHQ6IFQgZXh0ZW5kcyBSZWNvcmQ8c3RyaW5nLCBpbmZlciBSPlxuXHRcdD8gKFIgZXh0ZW5kcyB7IHZpc2libGU6IGJvb2xlYW4gfSA/IHsgbmFtZToga2V5b2YgVCB9ICYgUiA6IG5ldmVyKVtdXG5cdFx0OiBuZXZlcjtcblxuZXhwb3J0IGNsYXNzIEJybkNvbHVtbk1hbmFnZXI8VCBleHRlbmRzIEJybkNvbHVtblZpc2liaWxpdHk+IHtcblx0cHJpdmF0ZSByZWFkb25seSBfaW5pdGlhbENvbHVtblZpc2liaWxpdHk6IFQ7XG5cdHByaXZhdGUgcmVhZG9ubHkgX2NvbHVtblZpc2liaWxpdHk7XG5cblx0cHVibGljIHJlYWRvbmx5IGFsbENvbHVtbnM6IEFsbENvbHVtbnNQcm9wZXJ0eVR5cGU8VD47XG5cdHB1YmxpYyByZWFkb25seSBjb2x1bW5WaXNpYmlsaXR5O1xuXHRwdWJsaWMgcmVhZG9ubHkgZGlzcGxheWVkQ29sdW1uczogU2lnbmFsPChrZXlvZiBUKVtdPiA9IGNvbXB1dGVkKCgpID0+IHtcblx0XHRyZXR1cm4gT2JqZWN0LmVudHJpZXModGhpcy5fY29sdW1uVmlzaWJpbGl0eSgpKVxuXHRcdFx0LmZpbHRlcigoWywgdmFsdWVdKSA9PiAodHlwZW9mIHZhbHVlID09PSAnYm9vbGVhbicgPyB2YWx1ZSA6IHZhbHVlLnZpc2libGUpKVxuXHRcdFx0Lm1hcCgoW2tleV0pID0+IGtleSk7XG5cdH0pO1xuXG5cdGNvbnN0cnVjdG9yKGluaXRpYWxDb2x1bW5WaXNpYmlsaXR5OiBUKSB7XG5cdFx0dGhpcy5faW5pdGlhbENvbHVtblZpc2liaWxpdHkgPSBpbml0aWFsQ29sdW1uVmlzaWJpbGl0eTtcblx0XHR0aGlzLl9jb2x1bW5WaXNpYmlsaXR5ID0gc2lnbmFsKHRoaXMuX2luaXRpYWxDb2x1bW5WaXNpYmlsaXR5KTtcblx0XHR0aGlzLl9jb2x1bW5WaXNpYmlsaXR5LnNldCh0aGlzLl9pbml0aWFsQ29sdW1uVmlzaWJpbGl0eSk7XG5cdFx0dGhpcy5jb2x1bW5WaXNpYmlsaXR5ID0gdGhpcy5fY29sdW1uVmlzaWJpbGl0eS5hc1JlYWRvbmx5KCk7XG5cdFx0dGhpcy5hbGxDb2x1bW5zID0gdGhpcy5jcmVhdGVBbGxDb2x1bW5zKHRoaXMuX2luaXRpYWxDb2x1bW5WaXNpYmlsaXR5KTtcblx0fVxuXG5cdHB1YmxpYyByZWFkb25seSBpc0NvbHVtblZpc2libGUgPSAoY29sdW1uTmFtZTogc3RyaW5nKSA9PiB7XG5cdFx0Y29uc3QgdmlzaWJpbGl0eU1hcCA9IHRoaXMuY29sdW1uVmlzaWJpbGl0eSgpO1xuXHRcdGNvbnN0IGNvbHVtbkVudHJ5ID0gdmlzaWJpbGl0eU1hcFtjb2x1bW5OYW1lXTtcblx0XHRyZXR1cm4gdHlwZW9mIGNvbHVtbkVudHJ5ID09PSAnYm9vbGVhbicgPyBjb2x1bW5FbnRyeSA6IGNvbHVtbkVudHJ5LnZpc2libGU7XG5cdH07XG5cdHB1YmxpYyByZWFkb25seSBpc0NvbHVtbkRpc2FibGVkID0gKGNvbHVtbk5hbWU6IHN0cmluZykgPT5cblx0XHR0aGlzLmlzQ29sdW1uVmlzaWJsZShjb2x1bW5OYW1lKSAmJiB0aGlzLmRpc3BsYXllZENvbHVtbnMoKS5sZW5ndGggPT09IDE7XG5cblx0cHVibGljIHRvZ2dsZVZpc2liaWxpdHkoY29sdW1uTmFtZToga2V5b2YgVCkge1xuXHRcdGNvbnN0IHZpc2liaWxpdHlNYXAgPSB0aGlzLl9jb2x1bW5WaXNpYmlsaXR5KCk7XG5cdFx0Y29uc3QgY29sdW1uRW50cnkgPSB2aXNpYmlsaXR5TWFwW2NvbHVtbk5hbWVdO1xuXHRcdGNvbnN0IG5ld1Zpc2liaWxpdHlTdGF0ZSA9IHR5cGVvZiBjb2x1bW5FbnRyeSA9PT0gJ2Jvb2xlYW4nID8gIWNvbHVtbkVudHJ5IDogeyB2aXNpYmxlOiAhY29sdW1uRW50cnkudmlzaWJsZSB9O1xuXHRcdHRoaXMuX2NvbHVtblZpc2liaWxpdHkuc2V0KHsgLi4udmlzaWJpbGl0eU1hcCwgW2NvbHVtbk5hbWVdOiBuZXdWaXNpYmlsaXR5U3RhdGUgfSk7XG5cdH1cblx0cHVibGljIHNldFZpc2libGUoY29sdW1uTmFtZToga2V5b2YgVCkge1xuXHRcdGNvbnN0IHZpc2liaWxpdHlNYXAgPSB0aGlzLl9jb2x1bW5WaXNpYmlsaXR5KCk7XG5cdFx0Y29uc3QgY29sdW1uRW50cnkgPSB2aXNpYmlsaXR5TWFwW2NvbHVtbk5hbWVdO1xuXHRcdGNvbnN0IG5ld1Zpc2liaWxpdHlTdGF0ZSA9IHR5cGVvZiBjb2x1bW5FbnRyeSA9PT0gJ2Jvb2xlYW4nID8gdHJ1ZSA6IHsgdmlzaWJsZTogdHJ1ZSB9O1xuXHRcdHRoaXMuX2NvbHVtblZpc2liaWxpdHkuc2V0KHsgLi4udmlzaWJpbGl0eU1hcCwgW2NvbHVtbk5hbWVdOiBuZXdWaXNpYmlsaXR5U3RhdGUgfSk7XG5cdH1cblx0cHVibGljIHNldEludmlzaWJsZShjb2x1bW5OYW1lOiBrZXlvZiBUKSB7XG5cdFx0Y29uc3QgdmlzaWJpbGl0eU1hcCA9IHRoaXMuX2NvbHVtblZpc2liaWxpdHkoKTtcblx0XHRjb25zdCBjb2x1bW5FbnRyeSA9IHZpc2liaWxpdHlNYXBbY29sdW1uTmFtZV07XG5cdFx0Y29uc3QgbmV3VmlzaWJpbGl0eVN0YXRlID0gdHlwZW9mIGNvbHVtbkVudHJ5ID09PSAnYm9vbGVhbicgPyBmYWxzZSA6IHsgdmlzaWJsZTogZmFsc2UgfTtcblx0XHR0aGlzLl9jb2x1bW5WaXNpYmlsaXR5LnNldCh7IC4uLnZpc2liaWxpdHlNYXAsIFtjb2x1bW5OYW1lXTogbmV3VmlzaWJpbGl0eVN0YXRlIH0pO1xuXHR9XG5cblx0cHJpdmF0ZSBjcmVhdGVBbGxDb2x1bW5zKGluaXRpYWxDb2x1bW5WaXNpYmlsaXR5OiBUKTogQWxsQ29sdW1uc1Byb3BlcnR5VHlwZTxUPiB7XG5cdFx0Y29uc3Qga2V5cyA9IE9iamVjdC5rZXlzKGluaXRpYWxDb2x1bW5WaXNpYmlsaXR5KSBhcyAoa2V5b2YgVClbXTtcblx0XHRpZiAodGhpcy5pc0Jvb2xlYW5Db25maWcoaW5pdGlhbENvbHVtblZpc2liaWxpdHkpKSB7XG5cdFx0XHRyZXR1cm4ga2V5cyBhcyB1bmtub3duIGFzIEFsbENvbHVtbnNQcm9wZXJ0eVR5cGU8VD47XG5cdFx0fVxuXHRcdHJldHVybiBrZXlzLm1hcCgoa2V5KSA9PiB7XG5cdFx0XHRjb25zdCB2YWx1ZXMgPSBpbml0aWFsQ29sdW1uVmlzaWJpbGl0eVtrZXldIGFzIHsgdmlzaWJsZTogYm9vbGVhbiB9O1xuXHRcdFx0cmV0dXJuIHtcblx0XHRcdFx0bmFtZToga2V5LFxuXHRcdFx0XHQuLi52YWx1ZXMsXG5cdFx0XHR9O1xuXHRcdH0pIGFzIEFsbENvbHVtbnNQcm9wZXJ0eVR5cGU8VD47XG5cdH1cblxuXHRwcml2YXRlIGlzQm9vbGVhbkNvbmZpZyhjb25maWc6IGFueSk6IGNvbmZpZyBpcyBSZWNvcmQ8c3RyaW5nLCBib29sZWFuPiB7XG5cdFx0cmV0dXJuIHR5cGVvZiBPYmplY3QudmFsdWVzKGNvbmZpZylbMF0gPT09ICdib29sZWFuJztcblx0fVxufVxuXG5leHBvcnQgY29uc3QgdXNlQnJuQ29sdW1uTWFuYWdlciA9IDxUIGV4dGVuZHMgQnJuQ29sdW1uVmlzaWJpbGl0eT4oaW5pdGlhbENvbHVtblZpc2liaWxpdHk6IFQpID0+XG5cdG5ldyBCcm5Db2x1bW5NYW5hZ2VyKGluaXRpYWxDb2x1bW5WaXNpYmlsaXR5KTtcbiJdfQ==
@@ -1,22 +0,0 @@
1
- import { CdkFooterCellDef } from '@angular/cdk/table';
2
- import { Directive, TemplateRef, inject } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- export class BrnFooterDefDirective extends CdkFooterCellDef {
5
- template;
6
- constructor() {
7
- const template = inject(TemplateRef);
8
- super(template);
9
- this.template = template;
10
- }
11
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnFooterDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
12
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnFooterDefDirective, isStandalone: true, selector: "[brnFooterDef]", exportAs: ["brnFooterDef"], usesInheritance: true, ngImport: i0 });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnFooterDefDirective, decorators: [{
15
- type: Directive,
16
- args: [{
17
- standalone: true,
18
- selector: '[brnFooterDef]',
19
- exportAs: 'brnFooterDef',
20
- }]
21
- }], ctorParameters: () => [] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWZvb3Rlci1kZWYuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi90YWJsZS9zcmMvbGliL2Jybi1mb290ZXItZGVmLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTy9ELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxnQkFBZ0I7SUFDMUMsUUFBUSxDQUF1QjtJQUUvQztRQUNDLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBdUIsV0FBVyxDQUFDLENBQUM7UUFFM0QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzFCLENBQUM7MEhBUlcscUJBQXFCOzhHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxjQUFjO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0Zvb3RlckNlbGxEZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRzZWxlY3RvcjogJ1ticm5Gb290ZXJEZWZdJyxcblx0ZXhwb3J0QXM6ICdicm5Gb290ZXJEZWYnLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5Gb290ZXJEZWZEaXJlY3RpdmUgZXh0ZW5kcyBDZGtGb290ZXJDZWxsRGVmIHtcblx0cHVibGljIG92ZXJyaWRlIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRjb25zdCB0ZW1wbGF0ZSA9IGluamVjdDxUZW1wbGF0ZVJlZjx1bmtub3duPj4oVGVtcGxhdGVSZWYpO1xuXG5cdFx0c3VwZXIodGVtcGxhdGUpO1xuXHRcdHRoaXMudGVtcGxhdGUgPSB0ZW1wbGF0ZTtcblx0fVxufVxuIl19
@@ -1,22 +0,0 @@
1
- import { CdkHeaderCellDef } from '@angular/cdk/table';
2
- import { Directive, TemplateRef, inject } from '@angular/core';
3
- import * as i0 from "@angular/core";
4
- export class BrnHeaderDefDirective extends CdkHeaderCellDef {
5
- template;
6
- constructor() {
7
- const template = inject(TemplateRef);
8
- super(template);
9
- this.template = template;
10
- }
11
- /** @nocollapse */ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHeaderDefDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive });
12
- /** @nocollapse */ static ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.2.5", type: BrnHeaderDefDirective, isStandalone: true, selector: "[brnHeaderDef]", exportAs: ["brnHeaderDef"], usesInheritance: true, ngImport: i0 });
13
- }
14
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.2.5", ngImport: i0, type: BrnHeaderDefDirective, decorators: [{
15
- type: Directive,
16
- args: [{
17
- standalone: true,
18
- selector: '[brnHeaderDef]',
19
- exportAs: 'brnHeaderDef',
20
- }]
21
- }], ctorParameters: () => [] });
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnJuLWhlYWRlci1kZWYuZGlyZWN0aXZlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9icmFpbi90YWJsZS9zcmMvbGliL2Jybi1oZWFkZXItZGVmLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN0RCxPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTy9ELE1BQU0sT0FBTyxxQkFBc0IsU0FBUSxnQkFBZ0I7SUFDMUMsUUFBUSxDQUF1QjtJQUUvQztRQUNDLE1BQU0sUUFBUSxHQUFHLE1BQU0sQ0FBdUIsV0FBVyxDQUFDLENBQUM7UUFFM0QsS0FBSyxDQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2hCLElBQUksQ0FBQyxRQUFRLEdBQUcsUUFBUSxDQUFDO0lBQzFCLENBQUM7MEhBUlcscUJBQXFCOzhHQUFyQixxQkFBcUI7OzJGQUFyQixxQkFBcUI7a0JBTGpDLFNBQVM7bUJBQUM7b0JBQ1YsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFBRSxnQkFBZ0I7b0JBQzFCLFFBQVEsRUFBRSxjQUFjO2lCQUN4QiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENka0hlYWRlckNlbGxEZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvdGFibGUnO1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBUZW1wbGF0ZVJlZiwgaW5qZWN0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuXHRzdGFuZGFsb25lOiB0cnVlLFxuXHRzZWxlY3RvcjogJ1ticm5IZWFkZXJEZWZdJyxcblx0ZXhwb3J0QXM6ICdicm5IZWFkZXJEZWYnLFxufSlcbmV4cG9ydCBjbGFzcyBCcm5IZWFkZXJEZWZEaXJlY3RpdmUgZXh0ZW5kcyBDZGtIZWFkZXJDZWxsRGVmIHtcblx0cHVibGljIG92ZXJyaWRlIHRlbXBsYXRlOiBUZW1wbGF0ZVJlZjx1bmtub3duPjtcblxuXHRjb25zdHJ1Y3RvcigpIHtcblx0XHRjb25zdCB0ZW1wbGF0ZSA9IGluamVjdDxUZW1wbGF0ZVJlZjx1bmtub3duPj4oVGVtcGxhdGVSZWYpO1xuXG5cdFx0c3VwZXIodGVtcGxhdGUpO1xuXHRcdHRoaXMudGVtcGxhdGUgPSB0ZW1wbGF0ZTtcblx0fVxufVxuIl19