@bravobit/bb-foundation 0.42.0 → 0.42.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 (194) hide show
  1. package/auth/lib/auth.interceptor.d.ts +3 -6
  2. package/auth/lib/auth.service.d.ts +11 -16
  3. package/dialog/lib/dialog-confirm/dialog-confirm.component.d.ts +2 -5
  4. package/dialog/lib/dialog-container/dialog-container.component.d.ts +4 -6
  5. package/dialog/lib/dialog-overlay/dialog-overlay.component.d.ts +5 -7
  6. package/esm2022/auth/lib/auth.interceptor.mjs +36 -42
  7. package/esm2022/auth/lib/auth.module.mjs +4 -4
  8. package/esm2022/auth/lib/auth.service.mjs +25 -41
  9. package/esm2022/auth/lib/auth.session.mjs +26 -22
  10. package/esm2022/auth/lib/directives/authenticated.directive.mjs +16 -12
  11. package/esm2022/auth/lib/helpers/jwt.helper.mjs +29 -31
  12. package/esm2022/auth/lib/providers/email.provider.mjs +4 -1
  13. package/esm2022/auth/lib/providers/verify.provider.mjs +4 -1
  14. package/esm2022/collections/lib/collection.mjs +17 -7
  15. package/esm2022/collections/lib/collections.module.mjs +6 -6
  16. package/esm2022/collections/lib/components/collections-actions/collections-actions.component.mjs +7 -9
  17. package/esm2022/collections/lib/components/collections-grid/collections-grid.component.mjs +11 -11
  18. package/esm2022/collections/lib/components/collections-pager/collections-pager.component.mjs +10 -10
  19. package/esm2022/collections/lib/components/collections-table/collections-table.component.mjs +16 -16
  20. package/esm2022/collections/lib/components/collections-table-label/collections-table-label.component.mjs +9 -11
  21. package/esm2022/collections/lib/components/collections-table-sorting/collections-table-sorting.component.mjs +12 -9
  22. package/esm2022/collections/lib/components/collections-viewer/collections-viewer.component.mjs +10 -7
  23. package/esm2022/collections/lib/directives/collections-data-row.directive.mjs +6 -3
  24. package/esm2022/collections/lib/directives/collections-data.directive.mjs +6 -3
  25. package/esm2022/collections/lib/directives/collections-empty.directive.mjs +6 -3
  26. package/esm2022/collections/lib/directives/collections-error.directive.mjs +6 -3
  27. package/esm2022/collections/lib/directives/collections-initial.directive.mjs +4 -3
  28. package/esm2022/collections/lib/directives/collections-item.directive.mjs +6 -3
  29. package/esm2022/collections/lib/providers/api-collection.provider.mjs +6 -4
  30. package/esm2022/collections/lib/providers/local-collection.provider.mjs +2 -2
  31. package/esm2022/combobox/combobox/combobox-container.directive.mjs +12 -7
  32. package/esm2022/combobox/combobox/combobox.component.mjs +23 -20
  33. package/esm2022/combobox/combobox-label.directive.mjs +3 -3
  34. package/esm2022/combobox/combobox-option.directive.mjs +3 -3
  35. package/esm2022/combobox/combobox-panel/combobox-panel.component.mjs +10 -6
  36. package/esm2022/dashboard/lib/dashboard/dashboard.component.mjs +13 -13
  37. package/esm2022/dashboard/lib/dashboard-header/dashboard-header.component.mjs +5 -7
  38. package/esm2022/dashboard/lib/dashboard-menu/dashboard-menu.component.mjs +8 -10
  39. package/esm2022/dashboard/lib/dashboard-menu-item/dashboard-menu-item.component.mjs +5 -7
  40. package/esm2022/dashboard/lib/dashboard-sidebar/dashboard-sidebar.component.mjs +12 -13
  41. package/esm2022/dashboard/lib/dashboard-sidebar-group/dashboard-sidebar-group.component.mjs +13 -12
  42. package/esm2022/dashboard/lib/dashboard-sidebar-item/dashboard-sidebar-item.component.mjs +7 -5
  43. package/esm2022/dashboard/lib/dashboard.module.mjs +5 -5
  44. package/esm2022/dialog/lib/dialog-actions/dialog-actions.component.mjs +3 -3
  45. package/esm2022/dialog/lib/dialog-confirm/dialog-confirm.component.mjs +21 -20
  46. package/esm2022/dialog/lib/dialog-container/dialog-container.component.mjs +19 -24
  47. package/esm2022/dialog/lib/dialog-header/dialog-header.component.mjs +5 -7
  48. package/esm2022/dialog/lib/dialog-link/dialog-link.component.mjs +3 -3
  49. package/esm2022/dialog/lib/dialog-modal/dialog-modal.component.mjs +9 -6
  50. package/esm2022/dialog/lib/dialog-overlay/dialog-overlay.component.mjs +19 -26
  51. package/esm2022/dialog/lib/dialog.insertion.mjs +4 -3
  52. package/esm2022/dialog/lib/dialog.interfaces.mjs +4 -1
  53. package/esm2022/dialog/lib/dialog.module.mjs +6 -6
  54. package/esm2022/dialog/lib/dialog.ref.mjs +4 -6
  55. package/esm2022/dialog/lib/dialog.service.mjs +5 -3
  56. package/esm2022/dialog/lib/directives/confirm.directive.mjs +12 -14
  57. package/esm2022/elements/lib/avatar/avatar.component.mjs +75 -77
  58. package/esm2022/elements/lib/button/button.component.mjs +12 -10
  59. package/esm2022/elements/lib/checkbox/checkbox.component.mjs +21 -17
  60. package/esm2022/elements/lib/checkbox-group/checkbox-group.component.mjs +8 -10
  61. package/esm2022/elements/lib/date-picker/date-picker.component.mjs +82 -76
  62. package/esm2022/elements/lib/directives/addon.directive.mjs +5 -5
  63. package/esm2022/elements/lib/directives/extra-error-controls.directive.mjs +7 -9
  64. package/esm2022/elements/lib/directives/form-submit.directive.mjs +6 -3
  65. package/esm2022/elements/lib/directives/form-submitter.directive.mjs +5 -7
  66. package/esm2022/elements/lib/directives/image-upload.directive.mjs +14 -11
  67. package/esm2022/elements/lib/directives/input.directive.mjs +6 -4
  68. package/esm2022/elements/lib/elements.module.mjs +6 -6
  69. package/esm2022/elements/lib/file-picker/file-picker.component.mjs +52 -51
  70. package/esm2022/elements/lib/form-control/form-control.component.mjs +14 -14
  71. package/esm2022/elements/lib/form-error/form-error.component.mjs +16 -8
  72. package/esm2022/elements/lib/form-group/form-group.component.mjs +5 -7
  73. package/esm2022/elements/lib/icon/icon.component.mjs +14 -13
  74. package/esm2022/elements/lib/image-picker/image-picker.component.mjs +20 -17
  75. package/esm2022/elements/lib/multi-file-control/multi-file-control.component.mjs +28 -24
  76. package/esm2022/elements/lib/pipes/date.pipe.mjs +6 -8
  77. package/esm2022/elements/lib/pipes/file-image.pipe.mjs +6 -3
  78. package/esm2022/elements/lib/pipes/file-size.pipe.mjs +13 -15
  79. package/esm2022/elements/lib/pipes/relative-time.pipe.mjs +37 -35
  80. package/esm2022/elements/lib/radio-button/radio-button.component.mjs +8 -7
  81. package/esm2022/elements/lib/radio-group/radio-group.component.mjs +21 -20
  82. package/esm2022/elements/lib/spinner/spinner.component.mjs +7 -9
  83. package/esm2022/http/lib/classes/http.config.mjs +19 -15
  84. package/esm2022/http/lib/http.interfaces.mjs +1 -1
  85. package/esm2022/http/lib/http.module.mjs +5 -4
  86. package/esm2022/http/lib/interceptors/base-url.interceptor.mjs +12 -20
  87. package/esm2022/http/lib/interceptors/error.interceptor.mjs +9 -14
  88. package/esm2022/lib/core/services/exif.service.mjs +102 -100
  89. package/esm2022/lib/core/services/file-loader.service.mjs +15 -17
  90. package/esm2022/lib/core/services/files.service.mjs +9 -17
  91. package/esm2022/lib/core/services/image-converter.service.mjs +33 -30
  92. package/esm2022/lib/core/services/languages.service.mjs +25 -24
  93. package/esm2022/lib/core/services/network.service.mjs +8 -5
  94. package/esm2022/lib/core/services/patch.service.mjs +9 -6
  95. package/esm2022/localize/lib/dictionary/dictionary.class.mjs +7 -1
  96. package/esm2022/localize/lib/dictionary/dictionary.context.mjs +2 -4
  97. package/esm2022/localize/lib/dictionary/dictionary.data.mjs +2 -1
  98. package/esm2022/localize/lib/handlers/missing.handler.mjs +2 -4
  99. package/esm2022/localize/lib/localize.module.mjs +5 -5
  100. package/esm2022/localize/lib/localize.pipe.mjs +4 -3
  101. package/esm2022/localize/lib/localize.service.mjs +36 -62
  102. package/esm2022/localize/lib/transforms/interpolate.transform.mjs +12 -22
  103. package/esm2022/localize/lib/transforms/plural.transform.mjs +9 -18
  104. package/esm2022/localize/lib/transforms/reference.transform.mjs +7 -15
  105. package/esm2022/localize/lib/views/localize-string/localize-string.component.mjs +14 -11
  106. package/esm2022/localize/lib/views/localize-template.directive.mjs +6 -5
  107. package/esm2022/masking/lib/directives/currency-mask.directive.mjs +11 -6
  108. package/esm2022/masking/lib/directives/date-mask.directive.mjs +11 -6
  109. package/esm2022/masking/lib/directives/input-mask.directive.mjs +21 -14
  110. package/esm2022/masking/lib/masking.module.mjs +5 -5
  111. package/esm2022/masking/lib/masking.service.mjs +4 -3
  112. package/esm2022/notifications/lib/notifications-item/notifications-item.component.mjs +50 -36
  113. package/esm2022/notifications/lib/notifications-list/notifications-list.component.mjs +8 -7
  114. package/esm2022/notifications/lib/notifications.interfaces.mjs +10 -1
  115. package/esm2022/notifications/lib/notifications.module.mjs +4 -4
  116. package/esm2022/notifications/lib/notifications.service.mjs +24 -10
  117. package/esm2022/permissions/lib/directives/permission.directive.mjs +20 -14
  118. package/esm2022/permissions/lib/handlers/local.handler.mjs +3 -1
  119. package/esm2022/permissions/lib/permissions.interface.mjs +4 -1
  120. package/esm2022/permissions/lib/permissions.module.mjs +4 -4
  121. package/esm2022/permissions/lib/permissions.service.mjs +8 -7
  122. package/esm2022/recaptcha/lib/recaptcha/recaptcha.component.mjs +35 -28
  123. package/esm2022/recaptcha/lib/recaptcha-loader.service.mjs +15 -15
  124. package/esm2022/recaptcha/lib/recaptcha.module.mjs +4 -4
  125. package/esm2022/select/lib/select/select.component.mjs +52 -47
  126. package/esm2022/select/lib/select-label.directive.mjs +4 -3
  127. package/esm2022/select/lib/select-multi-label.directive.mjs +4 -3
  128. package/esm2022/select/lib/select-option-group.directive.mjs +4 -3
  129. package/esm2022/select/lib/select-option.directive.mjs +4 -3
  130. package/esm2022/select/lib/select.module.mjs +5 -5
  131. package/esm2022/storage/lib/storage.service.mjs +25 -21
  132. package/esm2022/storage/lib/strategies/cookie-storage.strategy.mjs +66 -64
  133. package/esm2022/storage/lib/strategies/memory-storage.strategy.mjs +16 -18
  134. package/esm2022/storage/lib/strategies/polyfill-storage.strategy.mjs +31 -30
  135. package/esm2022/table/lib/components/table/table.component.mjs +30 -20
  136. package/esm2022/table/lib/components/table-cell/table-cell.component.mjs +3 -3
  137. package/esm2022/table/lib/components/table-header-cell/table-header-cell.component.mjs +15 -11
  138. package/esm2022/table/lib/components/table-pager/table-pager.component.mjs +18 -16
  139. package/esm2022/table/lib/data/datasource.data.mjs +4 -6
  140. package/esm2022/table/lib/data/generic.data.mjs +38 -36
  141. package/esm2022/table/lib/table.module.mjs +6 -6
  142. package/esm2022/tooltip/lib/tooltip-container/tooltip-container.component.mjs +5 -7
  143. package/esm2022/tooltip/lib/tooltip.directive.mjs +15 -15
  144. package/esm2022/tooltip/lib/tooltip.module.mjs +4 -4
  145. package/esm2022/utils/lib/directives/autosize.directive.mjs +9 -7
  146. package/esm2022/utils/lib/directives/focus-trap.directive.mjs +24 -22
  147. package/esm2022/utils/lib/directives/focus.directive.mjs +8 -5
  148. package/esm2022/utils/lib/directives/template.directive.mjs +7 -3
  149. package/esm2022/utils/lib/utils.module.mjs +5 -5
  150. package/fesm2022/bravobit-bb-foundation-auth.mjs +134 -144
  151. package/fesm2022/bravobit-bb-foundation-auth.mjs.map +1 -1
  152. package/fesm2022/bravobit-bb-foundation-collections.mjs +123 -93
  153. package/fesm2022/bravobit-bb-foundation-collections.mjs.map +1 -1
  154. package/fesm2022/bravobit-bb-foundation-combobox.mjs +46 -34
  155. package/fesm2022/bravobit-bb-foundation-combobox.mjs.map +1 -1
  156. package/fesm2022/bravobit-bb-foundation-dashboard.mjs +60 -64
  157. package/fesm2022/bravobit-bb-foundation-dashboard.mjs.map +1 -1
  158. package/fesm2022/bravobit-bb-foundation-dialog.mjs +97 -103
  159. package/fesm2022/bravobit-bb-foundation-dialog.mjs.map +1 -1
  160. package/fesm2022/bravobit-bb-foundation-elements.mjs +468 -440
  161. package/fesm2022/bravobit-bb-foundation-elements.mjs.map +1 -1
  162. package/fesm2022/bravobit-bb-foundation-http.mjs +40 -46
  163. package/fesm2022/bravobit-bb-foundation-http.mjs.map +1 -1
  164. package/fesm2022/bravobit-bb-foundation-localize.mjs +91 -130
  165. package/fesm2022/bravobit-bb-foundation-localize.mjs.map +1 -1
  166. package/fesm2022/bravobit-bb-foundation-masking.mjs +47 -29
  167. package/fesm2022/bravobit-bb-foundation-masking.mjs.map +1 -1
  168. package/fesm2022/bravobit-bb-foundation-notifications.mjs +91 -53
  169. package/fesm2022/bravobit-bb-foundation-notifications.mjs.map +1 -1
  170. package/fesm2022/bravobit-bb-foundation-permissions.mjs +34 -22
  171. package/fesm2022/bravobit-bb-foundation-permissions.mjs.map +1 -1
  172. package/fesm2022/bravobit-bb-foundation-recaptcha.mjs +51 -44
  173. package/fesm2022/bravobit-bb-foundation-recaptcha.mjs.map +1 -1
  174. package/fesm2022/bravobit-bb-foundation-select.mjs +67 -58
  175. package/fesm2022/bravobit-bb-foundation-select.mjs.map +1 -1
  176. package/fesm2022/bravobit-bb-foundation-storage.mjs +134 -129
  177. package/fesm2022/bravobit-bb-foundation-storage.mjs.map +1 -1
  178. package/fesm2022/bravobit-bb-foundation-table.mjs +107 -91
  179. package/fesm2022/bravobit-bb-foundation-table.mjs.map +1 -1
  180. package/fesm2022/bravobit-bb-foundation-tooltip.mjs +21 -23
  181. package/fesm2022/bravobit-bb-foundation-tooltip.mjs.map +1 -1
  182. package/fesm2022/bravobit-bb-foundation-utils.mjs +48 -37
  183. package/fesm2022/bravobit-bb-foundation-utils.mjs.map +1 -1
  184. package/fesm2022/bravobit-bb-foundation.mjs +194 -191
  185. package/fesm2022/bravobit-bb-foundation.mjs.map +1 -1
  186. package/http/lib/http.interfaces.d.ts +2 -1
  187. package/http/lib/interceptors/base-url.interceptor.d.ts +2 -4
  188. package/http/lib/interceptors/error.interceptor.d.ts +1 -3
  189. package/lib/core/services/files.service.d.ts +3 -7
  190. package/localize/lib/localize.service.d.ts +10 -14
  191. package/localize/lib/transforms/interpolate.transform.d.ts +4 -5
  192. package/localize/lib/transforms/plural.transform.d.ts +5 -6
  193. package/localize/lib/transforms/reference.transform.d.ts +2 -3
  194. package/package.json +39 -39
@@ -8,22 +8,22 @@ import { NgTemplateOutlet } from '@angular/common';
8
8
  import { BehaviorSubject } from 'rxjs';
9
9
  import * as i0 from "@angular/core";
10
10
  export class BbCollectionsGrid {
11
- constructor() {
12
- // Readonly data.
13
- this.collection$ = new BehaviorSubject(null);
14
- // Inputs.
15
- this.queryPlaceholder = null;
16
- this.hideActions = false;
17
- this.hidePager = false;
18
- }
11
+ // Readonly data.
12
+ collection$ = new BehaviorSubject(null);
13
+ // Views.
14
+ itemTemplate;
15
+ // Inputs.
16
+ queryPlaceholder = null;
17
+ hideActions = false;
18
+ hidePager = false;
19
19
  set collection(collection) {
20
20
  this.collection$.next(collection);
21
21
  }
22
22
  get collection() {
23
23
  return this.collection$.getValue();
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsGrid, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
26
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbCollectionsGrid, isStandalone: true, selector: "bb-collections-grid", inputs: { queryPlaceholder: "queryPlaceholder", hideActions: ["hideActions", "hideActions", booleanAttribute], hidePager: ["hidePager", "hidePager", booleanAttribute], collection: "collection" }, host: { classAttribute: "bb-collections-grid" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: BbCollectionsItem, descendants: true, read: TemplateRef }], ngImport: i0, template: "@if (!hideActions) {\n <bb-collections-actions [collection]=\"collection\"\n [queryPlaceholder]=\"queryPlaceholder\"\n standalone>\n <ng-content ngProjectAs=\"[data-collections-action]\"\n select=\"[data-collections-action]\"></ng-content>\n <ng-content ngProjectAs=\"[data-collections-row]\"\n select=\"[data-collections-row]\"></ng-content>\n </bb-collections-actions>\n}\n\n<div [collection]=\"collection\"\n class=\"bb-collections-grid-container\"\n bb-collections-viewer>\n <ul *bbCollectionsData=\"let items = items\"\n class=\"bb-collections-grid-list\">\n @for (item of items; track $index) {\n <li class=\"bb-collections-grid-item\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: item, item: item}\"></ng-container>\n </li>\n }\n </ul>\n</div>\n\n@if (!hidePager) {\n <footer class=\"bb-collections-grid-footer\">\n <bb-collections-pager [collection]=\"collection\"></bb-collections-pager>\n </footer>\n}\n", styles: [".bb-collections-grid{display:block}.bb-collections-grid-list{gap:1.5rem;display:flex;flex-wrap:wrap}.bb-collections-grid-item{width:100%;display:flex}.bb-collections-grid-footer{margin-top:1.5rem}\n"], dependencies: [{ kind: "directive", type: BbCollectionsData, selector: "[bbCollectionsData]" }, { kind: "component", type: BbCollectionsViewer, selector: "[bb-collections-viewer]", inputs: ["collection"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: BbCollectionsActions, selector: "bb-collections-actions", inputs: ["collection", "queryPlaceholder", "standalone"] }, { kind: "component", type: BbCollectionsPager, selector: "bb-collections-pager", inputs: ["maxAmountOfButtons", "collection"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
25
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsGrid, deps: [], target: i0.ɵɵFactoryTarget.Component });
26
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbCollectionsGrid, isStandalone: true, selector: "bb-collections-grid", inputs: { queryPlaceholder: "queryPlaceholder", hideActions: ["hideActions", "hideActions", booleanAttribute], hidePager: ["hidePager", "hidePager", booleanAttribute], collection: "collection" }, host: { classAttribute: "bb-collections-grid" }, queries: [{ propertyName: "itemTemplate", first: true, predicate: BbCollectionsItem, descendants: true, read: TemplateRef }], ngImport: i0, template: "@if (!hideActions) {\n <bb-collections-actions [collection]=\"collection\"\n [queryPlaceholder]=\"queryPlaceholder\"\n standalone>\n <ng-content ngProjectAs=\"[data-collections-action]\"\n select=\"[data-collections-action]\"></ng-content>\n <ng-content ngProjectAs=\"[data-collections-row]\"\n select=\"[data-collections-row]\"></ng-content>\n </bb-collections-actions>\n}\n\n<div [collection]=\"collection\"\n class=\"bb-collections-grid-container\"\n bb-collections-viewer>\n <ul *bbCollectionsData=\"let items = items\"\n class=\"bb-collections-grid-list\">\n @for (item of items; track $index) {\n <li class=\"bb-collections-grid-item\">\n <ng-container *ngTemplateOutlet=\"itemTemplate; context: {$implicit: item, item: item}\"></ng-container>\n </li>\n }\n </ul>\n</div>\n\n@if (!hidePager) {\n <footer class=\"bb-collections-grid-footer\">\n <bb-collections-pager [collection]=\"collection\"></bb-collections-pager>\n </footer>\n}\n", styles: [".bb-collections-grid{display:block}.bb-collections-grid-list{gap:1.5rem;display:flex;flex-wrap:wrap}.bb-collections-grid-item{width:100%;display:flex}.bb-collections-grid-footer{margin-top:1.5rem}\n"], dependencies: [{ kind: "directive", type: BbCollectionsData, selector: "[bbCollectionsData]" }, { kind: "component", type: BbCollectionsViewer, selector: "[bb-collections-viewer]", inputs: ["collection"] }, { kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: BbCollectionsActions, selector: "bb-collections-actions", inputs: ["collection", "queryPlaceholder", "standalone"] }, { kind: "component", type: BbCollectionsPager, selector: "bb-collections-pager", inputs: ["maxAmountOfButtons", "collection"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
27
27
  }
28
28
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsGrid, decorators: [{
29
29
  type: Component,
@@ -49,4 +49,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
49
49
  type: Input,
50
50
  args: [{ required: true }]
51
51
  }] } });
52
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2NvbGxlY3Rpb25zL3NyYy9saWIvY29tcG9uZW50cy9jb2xsZWN0aW9ucy1ncmlkL2NvbGxlY3Rpb25zLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtZ3JpZC9jb2xsZWN0aW9ucy1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEksT0FBTyxFQUFDLGlCQUFpQixFQUEyQixNQUFNLDZDQUE2QyxDQUFDO0FBQ3hHLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7O0FBbUJyQyxNQUFNLE9BQU8saUJBQWlCO0lBakI5QjtRQW1CSSxpQkFBaUI7UUFDUixnQkFBVyxHQUFHLElBQUksZUFBZSxDQUF1QixJQUFJLENBQUMsQ0FBQztRQUt2RSxVQUFVO1FBQ0QscUJBQWdCLEdBQWtCLElBQUksQ0FBQztRQUNWLGdCQUFXLEdBQVksS0FBSyxDQUFDO1FBQzdCLGNBQVMsR0FBWSxLQUFLLENBQUM7S0FXcEU7SUFURyxJQUNJLFVBQVUsQ0FBQyxVQUF5QjtRQUNwQyxJQUFJLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxVQUFVLENBQUMsQ0FBQztJQUN0QyxDQUFDO0lBRUQsSUFBSSxVQUFVO1FBQ1YsT0FBTyxJQUFJLENBQUMsV0FBVyxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQ3ZDLENBQUM7OEdBcEJRLGlCQUFpQjtrR0FBakIsaUJBQWlCLG1KQVVQLGdCQUFnQix5Q0FDaEIsZ0JBQWdCLGtKQUxyQixpQkFBaUIsMkJBQVMsV0FBVyw2QkNqQ3ZELG1uQ0E2QkEsZ1FEVFEsaUJBQWlCLGdFQUNqQixtQkFBbUIsNEZBQ25CLGdCQUFnQixvSkFDaEIsb0JBQW9CLDZIQUNwQixrQkFBa0I7OzJGQUdiLGlCQUFpQjtrQkFqQjdCLFNBQVM7K0JBQ0kscUJBQXFCLG1CQUdkLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0IsRUFBQyxPQUFPLEVBQUUscUJBQXFCLEVBQUMsdUJBQ2pCLEtBQUssY0FDZCxJQUFJLFdBQ1A7d0JBQ0wsaUJBQWlCO3dCQUNqQixtQkFBbUI7d0JBQ25CLGdCQUFnQjt3QkFDaEIsb0JBQW9CO3dCQUNwQixrQkFBa0I7cUJBQ3JCOzhCQVFvRSxZQUFZO3NCQUFoRixZQUFZO3VCQUFDLGlCQUFpQixFQUFFLEVBQUMsSUFBSSxFQUFFLFdBQVcsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFDO2dCQUcxRCxnQkFBZ0I7c0JBQXhCLEtBQUs7Z0JBQ2dDLFdBQVc7c0JBQWhELEtBQUs7dUJBQUMsRUFBQyxTQUFTLEVBQUUsZ0JBQWdCLEVBQUM7Z0JBQ0UsU0FBUztzQkFBOUMsS0FBSzt1QkFBQyxFQUFDLFNBQVMsRUFBRSxnQkFBZ0IsRUFBQztnQkFHaEMsVUFBVTtzQkFEYixLQUFLO3VCQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Ym9vbGVhbkF0dHJpYnV0ZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc0l0ZW0sIEJiQ29sbGVjdGlvbnNJdGVtQ29udGV4dH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9jb2xsZWN0aW9ucy1pdGVtLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNBY3Rpb25zfSBmcm9tICcuLi9jb2xsZWN0aW9ucy1hY3Rpb25zL2NvbGxlY3Rpb25zLWFjdGlvbnMuY29tcG9uZW50JztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc1ZpZXdlcn0gZnJvbSAnLi4vY29sbGVjdGlvbnMtdmlld2VyL2NvbGxlY3Rpb25zLXZpZXdlci5jb21wb25lbnQnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zUGFnZXJ9IGZyb20gJy4uL2NvbGxlY3Rpb25zLXBhZ2VyL2NvbGxlY3Rpb25zLXBhZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNEYXRhfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2NvbGxlY3Rpb25zLWRhdGEuZGlyZWN0aXZlJztcbmltcG9ydCB7TmdUZW1wbGF0ZU91dGxldH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7Q29sbGVjdGlvbn0gZnJvbSAnLi4vLi4vY29sbGVjdGlvbic7XG5pbXBvcnQge0JlaGF2aW9yU3ViamVjdH0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYmItY29sbGVjdGlvbnMtZ3JpZCcsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbGxlY3Rpb25zLWdyaWQuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NvbGxlY3Rpb25zLWdyaWQuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHsnY2xhc3MnOiAnYmItY29sbGVjdGlvbnMtZ3JpZCd9LFxuICAgIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICAgIHN0YW5kYWxvbmU6IHRydWUsXG4gICAgaW1wb3J0czogW1xuICAgICAgICBCYkNvbGxlY3Rpb25zRGF0YSxcbiAgICAgICAgQmJDb2xsZWN0aW9uc1ZpZXdlcixcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgQmJDb2xsZWN0aW9uc0FjdGlvbnMsXG4gICAgICAgIEJiQ29sbGVjdGlvbnNQYWdlclxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgQmJDb2xsZWN0aW9uc0dyaWQ8VD4ge1xuXG4gICAgLy8gUmVhZG9ubHkgZGF0YS5cbiAgICByZWFkb25seSBjb2xsZWN0aW9uJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8Q29sbGVjdGlvbjxUPiB8IG51bGw+KG51bGwpO1xuXG4gICAgLy8gVmlld3MuXG4gICAgQENvbnRlbnRDaGlsZChCYkNvbGxlY3Rpb25zSXRlbSwge3JlYWQ6IFRlbXBsYXRlUmVmLCBzdGF0aWM6IGZhbHNlfSkgaXRlbVRlbXBsYXRlPzogVGVtcGxhdGVSZWY8QmJDb2xsZWN0aW9uc0l0ZW1Db250ZXh0PFQ+PjtcblxuICAgIC8vIElucHV0cy5cbiAgICBASW5wdXQoKSBxdWVyeVBsYWNlaG9sZGVyOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgICBASW5wdXQoe3RyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZX0pIGhpZGVBY3Rpb25zOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KHt0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGV9KSBoaWRlUGFnZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KVxuICAgIHNldCBjb2xsZWN0aW9uKGNvbGxlY3Rpb246IENvbGxlY3Rpb248VD4pIHtcbiAgICAgICAgdGhpcy5jb2xsZWN0aW9uJC5uZXh0KGNvbGxlY3Rpb24pO1xuICAgIH1cblxuICAgIGdldCBjb2xsZWN0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb2xsZWN0aW9uJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxufVxuIiwiQGlmICghaGlkZUFjdGlvbnMpIHtcbiAgICA8YmItY29sbGVjdGlvbnMtYWN0aW9ucyBbY29sbGVjdGlvbl09XCJjb2xsZWN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcXVlcnlQbGFjZWhvbGRlcl09XCJxdWVyeVBsYWNlaG9sZGVyXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBzdGFuZGFsb25lPlxuICAgICAgICA8bmctY29udGVudCBuZ1Byb2plY3RBcz1cIltkYXRhLWNvbGxlY3Rpb25zLWFjdGlvbl1cIlxuICAgICAgICAgICAgICAgICAgICBzZWxlY3Q9XCJbZGF0YS1jb2xsZWN0aW9ucy1hY3Rpb25dXCI+PC9uZy1jb250ZW50PlxuICAgICAgICA8bmctY29udGVudCBuZ1Byb2plY3RBcz1cIltkYXRhLWNvbGxlY3Rpb25zLXJvd11cIlxuICAgICAgICAgICAgICAgICAgICBzZWxlY3Q9XCJbZGF0YS1jb2xsZWN0aW9ucy1yb3ddXCI+PC9uZy1jb250ZW50PlxuICAgIDwvYmItY29sbGVjdGlvbnMtYWN0aW9ucz5cbn1cblxuPGRpdiBbY29sbGVjdGlvbl09XCJjb2xsZWN0aW9uXCJcbiAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1ncmlkLWNvbnRhaW5lclwiXG4gICAgIGJiLWNvbGxlY3Rpb25zLXZpZXdlcj5cbiAgICA8dWwgKmJiQ29sbGVjdGlvbnNEYXRhPVwibGV0IGl0ZW1zID0gaXRlbXNcIlxuICAgICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLWdyaWQtbGlzdFwiPlxuICAgICAgICBAZm9yIChpdGVtIG9mIGl0ZW1zOyB0cmFjayAkaW5kZXgpIHtcbiAgICAgICAgICAgIDxsaSBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLWdyaWQtaXRlbVwiPlxuICAgICAgICAgICAgICAgIDxuZy1jb250YWluZXIgKm5nVGVtcGxhdGVPdXRsZXQ9XCJpdGVtVGVtcGxhdGU7IGNvbnRleHQ6IHskaW1wbGljaXQ6IGl0ZW0sIGl0ZW06IGl0ZW19XCI+PC9uZy1jb250YWluZXI+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICB9XG4gICAgPC91bD5cbjwvZGl2PlxuXG5AaWYgKCFoaWRlUGFnZXIpIHtcbiAgICA8Zm9vdGVyIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtZ3JpZC1mb290ZXJcIj5cbiAgICAgICAgPGJiLWNvbGxlY3Rpb25zLXBhZ2VyIFtjb2xsZWN0aW9uXT1cImNvbGxlY3Rpb25cIj48L2JiLWNvbGxlY3Rpb25zLXBhZ2VyPlxuICAgIDwvZm9vdGVyPlxufVxuIl19
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtZ3JpZC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2NvbGxlY3Rpb25zL3NyYy9saWIvY29tcG9uZW50cy9jb2xsZWN0aW9ucy1ncmlkL2NvbGxlY3Rpb25zLWdyaWQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtZ3JpZC9jb2xsZWN0aW9ucy1ncmlkLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxnQkFBZ0IsRUFBRSx1QkFBdUIsRUFBRSxTQUFTLEVBQUUsWUFBWSxFQUFFLEtBQUssRUFBRSxXQUFXLEVBQUUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEksT0FBTyxFQUFDLGlCQUFpQixFQUEyQixNQUFNLDZDQUE2QyxDQUFDO0FBQ3hHLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQzlFLE9BQU8sRUFBQyxnQkFBZ0IsRUFBQyxNQUFNLGlCQUFpQixDQUFDO0FBRWpELE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSxNQUFNLENBQUM7O0FBbUJyQyxNQUFNLE9BQU8saUJBQWlCO0lBRTFCLGlCQUFpQjtJQUNSLFdBQVcsR0FBRyxJQUFJLGVBQWUsQ0FBdUIsSUFBSSxDQUFDLENBQUM7SUFFdkUsU0FBUztJQUM0RCxZQUFZLENBQTRDO0lBRTdILFVBQVU7SUFDRCxnQkFBZ0IsR0FBa0IsSUFBSSxDQUFDO0lBQ1YsV0FBVyxHQUFZLEtBQUssQ0FBQztJQUM3QixTQUFTLEdBQVksS0FBSyxDQUFDO0lBRWpFLElBQ0ksVUFBVSxDQUFDLFVBQXlCO1FBQ3BDLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBQ3RDLENBQUM7SUFFRCxJQUFJLFVBQVU7UUFDVixPQUFPLElBQUksQ0FBQyxXQUFXLENBQUMsUUFBUSxFQUFFLENBQUM7SUFDdkMsQ0FBQzt1R0FwQlEsaUJBQWlCOzJGQUFqQixpQkFBaUIsbUpBVVAsZ0JBQWdCLHlDQUNoQixnQkFBZ0Isa0pBTHJCLGlCQUFpQiwyQkFBUyxXQUFXLDZCQ2pDdkQsbW5DQTZCQSxnUURUUSxpQkFBaUIsZ0VBQ2pCLG1CQUFtQiw0RkFDbkIsZ0JBQWdCLG9KQUNoQixvQkFBb0IsNkhBQ3BCLGtCQUFrQjs7MkZBR2IsaUJBQWlCO2tCQWpCN0IsU0FBUzsrQkFDSSxxQkFBcUIsbUJBR2QsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxRQUMvQixFQUFDLE9BQU8sRUFBRSxxQkFBcUIsRUFBQyx1QkFDakIsS0FBSyxjQUNkLElBQUksV0FDUDt3QkFDTCxpQkFBaUI7d0JBQ2pCLG1CQUFtQjt3QkFDbkIsZ0JBQWdCO3dCQUNoQixvQkFBb0I7d0JBQ3BCLGtCQUFrQjtxQkFDckI7OEJBUW9FLFlBQVk7c0JBQWhGLFlBQVk7dUJBQUMsaUJBQWlCLEVBQUUsRUFBQyxJQUFJLEVBQUUsV0FBVyxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUM7Z0JBRzFELGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDZ0MsV0FBVztzQkFBaEQsS0FBSzt1QkFBQyxFQUFDLFNBQVMsRUFBRSxnQkFBZ0IsRUFBQztnQkFDRSxTQUFTO3NCQUE5QyxLQUFLO3VCQUFDLEVBQUMsU0FBUyxFQUFFLGdCQUFnQixFQUFDO2dCQUdoQyxVQUFVO3NCQURiLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtib29sZWFuQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zSXRlbSwgQmJDb2xsZWN0aW9uc0l0ZW1Db250ZXh0fSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2NvbGxlY3Rpb25zLWl0ZW0uZGlyZWN0aXZlJztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc0FjdGlvbnN9IGZyb20gJy4uL2NvbGxlY3Rpb25zLWFjdGlvbnMvY29sbGVjdGlvbnMtYWN0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zVmlld2VyfSBmcm9tICcuLi9jb2xsZWN0aW9ucy12aWV3ZXIvY29sbGVjdGlvbnMtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNQYWdlcn0gZnJvbSAnLi4vY29sbGVjdGlvbnMtcGFnZXIvY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50JztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc0RhdGF9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY29sbGVjdGlvbnMtZGF0YS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtDb2xsZWN0aW9ufSBmcm9tICcuLi8uLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdiYi1jb2xsZWN0aW9ucy1ncmlkJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29sbGVjdGlvbnMtZ3JpZC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY29sbGVjdGlvbnMtZ3JpZC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaG9zdDogeydjbGFzcyc6ICdiYi1jb2xsZWN0aW9ucy1ncmlkJ30sXG4gICAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEJiQ29sbGVjdGlvbnNEYXRhLFxuICAgICAgICBCYkNvbGxlY3Rpb25zVmlld2VyLFxuICAgICAgICBOZ1RlbXBsYXRlT3V0bGV0LFxuICAgICAgICBCYkNvbGxlY3Rpb25zQWN0aW9ucyxcbiAgICAgICAgQmJDb2xsZWN0aW9uc1BhZ2VyXG4gICAgXVxufSlcbmV4cG9ydCBjbGFzcyBCYkNvbGxlY3Rpb25zR3JpZDxUPiB7XG5cbiAgICAvLyBSZWFkb25seSBkYXRhLlxuICAgIHJlYWRvbmx5IGNvbGxlY3Rpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDb2xsZWN0aW9uPFQ+IHwgbnVsbD4obnVsbCk7XG5cbiAgICAvLyBWaWV3cy5cbiAgICBAQ29udGVudENoaWxkKEJiQ29sbGVjdGlvbnNJdGVtLCB7cmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogZmFsc2V9KSBpdGVtVGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxCYkNvbGxlY3Rpb25zSXRlbUNvbnRleHQ8VD4+O1xuXG4gICAgLy8gSW5wdXRzLlxuICAgIEBJbnB1dCgpIHF1ZXJ5UGxhY2Vob2xkZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCh7dHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlfSkgaGlkZUFjdGlvbnM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoe3RyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZX0pIGhpZGVQYWdlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pXG4gICAgc2V0IGNvbGxlY3Rpb24oY29sbGVjdGlvbjogQ29sbGVjdGlvbjxUPikge1xuICAgICAgICB0aGlzLmNvbGxlY3Rpb24kLm5leHQoY29sbGVjdGlvbik7XG4gICAgfVxuXG4gICAgZ2V0IGNvbGxlY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbGxlY3Rpb24kLmdldFZhbHVlKCk7XG4gICAgfVxuXG59XG4iLCJAaWYgKCFoaWRlQWN0aW9ucykge1xuICAgIDxiYi1jb2xsZWN0aW9ucy1hY3Rpb25zIFtjb2xsZWN0aW9uXT1cImNvbGxlY3Rpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtxdWVyeVBsYWNlaG9sZGVyXT1cInF1ZXJ5UGxhY2Vob2xkZXJcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIHN0YW5kYWxvbmU+XG4gICAgICAgIDxuZy1jb250ZW50IG5nUHJvamVjdEFzPVwiW2RhdGEtY29sbGVjdGlvbnMtYWN0aW9uXVwiXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdD1cIltkYXRhLWNvbGxlY3Rpb25zLWFjdGlvbl1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50IG5nUHJvamVjdEFzPVwiW2RhdGEtY29sbGVjdGlvbnMtcm93XVwiXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdD1cIltkYXRhLWNvbGxlY3Rpb25zLXJvd11cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9iYi1jb2xsZWN0aW9ucy1hY3Rpb25zPlxufVxuXG48ZGl2IFtjb2xsZWN0aW9uXT1cImNvbGxlY3Rpb25cIlxuICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLWdyaWQtY29udGFpbmVyXCJcbiAgICAgYmItY29sbGVjdGlvbnMtdmlld2VyPlxuICAgIDx1bCAqYmJDb2xsZWN0aW9uc0RhdGE9XCJsZXQgaXRlbXMgPSBpdGVtc1wiXG4gICAgICAgIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtZ3JpZC1saXN0XCI+XG4gICAgICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXM7IHRyYWNrICRpbmRleCkge1xuICAgICAgICAgICAgPGxpIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtZ3JpZC1pdGVtXCI+XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lciAqbmdUZW1wbGF0ZU91dGxldD1cIml0ZW1UZW1wbGF0ZTsgY29udGV4dDogeyRpbXBsaWNpdDogaXRlbSwgaXRlbTogaXRlbX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIH1cbiAgICA8L3VsPlxuPC9kaXY+XG5cbkBpZiAoIWhpZGVQYWdlcikge1xuICAgIDxmb290ZXIgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1ncmlkLWZvb3RlclwiPlxuICAgICAgICA8YmItY29sbGVjdGlvbnMtcGFnZXIgW2NvbGxlY3Rpb25dPVwiY29sbGVjdGlvblwiPjwvYmItY29sbGVjdGlvbnMtcGFnZXI+XG4gICAgPC9mb290ZXI+XG59XG4iXX0=
@@ -6,13 +6,6 @@ import { map, shareReplay } from 'rxjs/operators';
6
6
  import { AsyncPipe } from '@angular/common';
7
7
  import * as i0 from "@angular/core";
8
8
  export class BbCollectionsPager {
9
- constructor() {
10
- // State and subscriptions.
11
- this._collection = null;
12
- this._subscription = null;
13
- this._cache$ = new BehaviorSubject({});
14
- this._maxAmountOfButtons$ = new BehaviorSubject(3);
15
- }
16
9
  set maxAmountOfButtons(value) {
17
10
  this._maxAmountOfButtons$.next(Math.max(1, value));
18
11
  }
@@ -26,6 +19,13 @@ export class BbCollectionsPager {
26
19
  get collection() {
27
20
  return this._collection;
28
21
  }
22
+ // Data.
23
+ data$;
24
+ // State and subscriptions.
25
+ _collection = null;
26
+ _subscription = null;
27
+ _cache$ = new BehaviorSubject({});
28
+ _maxAmountOfButtons$ = new BehaviorSubject(3);
29
29
  ngOnInit() {
30
30
  this.setData();
31
31
  }
@@ -98,8 +98,8 @@ export class BbCollectionsPager {
98
98
  .filter(page => page > 0 && page <= totalPages)
99
99
  .map(page => ({ page, active: pageNumber === page }));
100
100
  }
101
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsPager, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
102
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbCollectionsPager, isStandalone: true, selector: "bb-collections-pager", inputs: { maxAmountOfButtons: ["maxAmountOfButtons", "maxAmountOfButtons", numberAttribute], collection: "collection" }, host: { classAttribute: "bb-collections-pager" }, ngImport: i0, template: "@if (data$ | async; as data) {\n <div [bb-localize-string]=\"'collection.showing_label' | bbLocalize\"\n class=\"bb-collections-pager-text\">\n <strong *bbLocalizeTemplate=\"'start'\">{{ data?.start }}</strong>\n <strong *bbLocalizeTemplate=\"'end'\">{{ data?.end }}</strong>\n <strong *bbLocalizeTemplate=\"'total'\">{{ data?.totalEntries }}</strong>\n </div>\n\n <div class=\"bb-collections-pager-container\">\n <ul class=\"bb-collections-pager-list\">\n <li class=\"bb-collections-pager-item\"\n title=\"Previous page\">\n <button [disabled]=\"data?.pageNumber <= 1\"\n (click)=\"setPage(data?.pageNumber - 1, data?.totalPages)\"\n class=\"bb-collections-pager-button arrow first\"\n type=\"button\">\n &#8592;\n </button>\n </li>\n @for (item of data?.pages; track item?.page) {\n <li [title]=\"'Page ' + item?.page\"\n class=\"bb-collections-pager-item\">\n <button [class.active]=\"item?.active\"\n (click)=\"setPage(item?.page, data?.totalPages)\"\n class=\"bb-collections-pager-button\"\n type=\"button\">\n {{ item?.page }}\n </button>\n </li>\n }\n <li class=\"bb-collections-pager-item\"\n title=\"Next page\">\n <button [disabled]=\"data?.pageNumber >= data?.totalPages\"\n (click)=\"setPage(data?.pageNumber + 1, data?.totalPages)\"\n class=\"bb-collections-pager-button arrow last\"\n type=\"button\">\n &#8594;\n </button>\n </li>\n </ul>\n </div>\n}\n", styles: [".bb-collections-pager{display:flex;align-items:center;font-size:.875rem;flex-direction:column-reverse}.bb-collections-pager-text{display:block;margin-top:.75rem}.bb-collections-pager-text>strong{font-weight:500}.bb-collections-pager-container{width:100%;display:flex;overflow-x:auto;align-items:center;justify-content:center}.bb-collections-pager-list{display:flex;align-items:center;border-radius:.5rem;background-color:#fff;border:1px solid hsl(213,8%,74%);box-shadow:0 .375rem .375rem -.375rem #0000001a}.bb-collections-pager-item:not(:last-child){border-right:1px solid hsl(213,8%,74%)}.bb-collections-pager-button{height:2rem;border:none;display:flex;appearance:none;min-height:2rem;min-width:2.5rem;-webkit-user-select:none;user-select:none;padding:0 .25rem;align-items:center;justify-content:center;background-color:transparent}.bb-collections-pager-button:hover,.bb-collections-pager-button:focus,.bb-collections-pager-button:active,.bb-collections-pager-button.active{font-weight:400;color:var(--bb-collections-pager-color)}.bb-collections-pager-button:hover,.bb-collections-pager-button:focus{background-color:var(--bb-collections-pager-hover-background-color)}.bb-collections-pager-button:active,.bb-collections-pager-button.active{background-color:var(--bb-collections-pager-active-background-color)}.bb-collections-pager-button:not(.arrow):focus,.bb-collections-pager-button:not(.arrow):active{box-shadow:var(--bb-collections-pager-focus-box-shadow)}.bb-collections-pager-button:not(.arrow):focus,.bb-collections-pager-button:not(.arrow):active,.bb-collections-pager-button:not(.arrow).active{outline:1px solid var(--bb-collections-pager-outline-color)}.bb-collections-pager-button.arrow{font-weight:500}.bb-collections-pager-button.arrow.first{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.bb-collections-pager-button.arrow.last{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.bb-collections-pager-button:disabled{color:#111;outline:none;opacity:.25;cursor:default;pointer-events:none;background-color:transparent}@media only screen and (min-width: 768px){.bb-collections-pager{flex-wrap:wrap;align-items:center;flex-direction:row;justify-content:space-between}.bb-collections-pager-text{margin-top:0}.bb-collections-pager-container{width:auto;overflow-x:unset}}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: BbLocalizeString, selector: "[bb-localize-string]", inputs: ["substitutions", "bb-localize-string"] }, { kind: "pipe", type: BbLocalize, name: "bbLocalize" }, { kind: "directive", type: BbLocalizeTemplate, selector: "[bbLocalizeTemplate]", inputs: ["bbLocalizeTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
101
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsPager, deps: [], target: i0.ɵɵFactoryTarget.Component });
102
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbCollectionsPager, isStandalone: true, selector: "bb-collections-pager", inputs: { maxAmountOfButtons: ["maxAmountOfButtons", "maxAmountOfButtons", numberAttribute], collection: "collection" }, host: { classAttribute: "bb-collections-pager" }, ngImport: i0, template: "@if (data$ | async; as data) {\n <div [bb-localize-string]=\"'collection.showing_label' | bbLocalize\"\n class=\"bb-collections-pager-text\">\n <strong *bbLocalizeTemplate=\"'start'\">{{ data?.start }}</strong>\n <strong *bbLocalizeTemplate=\"'end'\">{{ data?.end }}</strong>\n <strong *bbLocalizeTemplate=\"'total'\">{{ data?.totalEntries }}</strong>\n </div>\n\n <div class=\"bb-collections-pager-container\">\n <ul class=\"bb-collections-pager-list\">\n <li class=\"bb-collections-pager-item\"\n title=\"Previous page\">\n <button [disabled]=\"data?.pageNumber <= 1\"\n (click)=\"setPage(data?.pageNumber - 1, data?.totalPages)\"\n class=\"bb-collections-pager-button arrow first\"\n type=\"button\">\n &#8592;\n </button>\n </li>\n @for (item of data?.pages; track item?.page) {\n <li [title]=\"'Page ' + item?.page\"\n class=\"bb-collections-pager-item\">\n <button [class.active]=\"item?.active\"\n (click)=\"setPage(item?.page, data?.totalPages)\"\n class=\"bb-collections-pager-button\"\n type=\"button\">\n {{ item?.page }}\n </button>\n </li>\n }\n <li class=\"bb-collections-pager-item\"\n title=\"Next page\">\n <button [disabled]=\"data?.pageNumber >= data?.totalPages\"\n (click)=\"setPage(data?.pageNumber + 1, data?.totalPages)\"\n class=\"bb-collections-pager-button arrow last\"\n type=\"button\">\n &#8594;\n </button>\n </li>\n </ul>\n </div>\n}\n", styles: [".bb-collections-pager{display:flex;align-items:center;font-size:.875rem;flex-direction:column-reverse}.bb-collections-pager-text{display:block;margin-top:.75rem}.bb-collections-pager-text>strong{font-weight:500}.bb-collections-pager-container{width:100%;display:flex;overflow-x:auto;align-items:center;justify-content:center}.bb-collections-pager-list{display:flex;align-items:center;border-radius:.5rem;background-color:#fff;border:1px solid hsl(213,8%,74%);box-shadow:0 .375rem .375rem -.375rem #0000001a}.bb-collections-pager-item:not(:last-child){border-right:1px solid hsl(213,8%,74%)}.bb-collections-pager-button{height:2rem;border:none;display:flex;appearance:none;min-height:2rem;min-width:2.5rem;-webkit-user-select:none;user-select:none;padding:0 .25rem;align-items:center;justify-content:center;background-color:transparent}.bb-collections-pager-button:hover,.bb-collections-pager-button:focus,.bb-collections-pager-button:active,.bb-collections-pager-button.active{font-weight:400;color:var(--bb-collections-pager-color)}.bb-collections-pager-button:hover,.bb-collections-pager-button:focus{background-color:var(--bb-collections-pager-hover-background-color)}.bb-collections-pager-button:active,.bb-collections-pager-button.active{background-color:var(--bb-collections-pager-active-background-color)}.bb-collections-pager-button:not(.arrow):focus,.bb-collections-pager-button:not(.arrow):active{box-shadow:var(--bb-collections-pager-focus-box-shadow)}.bb-collections-pager-button:not(.arrow):focus,.bb-collections-pager-button:not(.arrow):active,.bb-collections-pager-button:not(.arrow).active{outline:1px solid var(--bb-collections-pager-outline-color)}.bb-collections-pager-button.arrow{font-weight:500}.bb-collections-pager-button.arrow.first{border-top-left-radius:.5rem;border-bottom-left-radius:.5rem}.bb-collections-pager-button.arrow.last{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.bb-collections-pager-button:disabled{color:#111;outline:none;opacity:.25;cursor:default;pointer-events:none;background-color:transparent}@media only screen and (min-width: 768px){.bb-collections-pager{flex-wrap:wrap;align-items:center;flex-direction:row;justify-content:space-between}.bb-collections-pager-text{margin-top:0}.bb-collections-pager-container{width:auto;overflow-x:unset}}\n"], dependencies: [{ kind: "pipe", type: AsyncPipe, name: "async" }, { kind: "component", type: BbLocalizeString, selector: "[bb-localize-string]", inputs: ["substitutions", "bb-localize-string"] }, { kind: "pipe", type: BbLocalize, name: "bbLocalize" }, { kind: "directive", type: BbLocalizeTemplate, selector: "[bbLocalizeTemplate]", inputs: ["bbLocalizeTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
103
103
  }
104
104
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsPager, decorators: [{
105
105
  type: Component,
@@ -111,4 +111,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
111
111
  type: Input,
112
112
  args: [{ required: true }]
113
113
  }] } });
114
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtcGFnZXIvY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtcGFnZXIvY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvSCxPQUFPLEVBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFFbEcsT0FBTyxFQUFDLGVBQWUsRUFBMkIsTUFBTSxNQUFNLENBQUM7QUFDL0QsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBYTFDLE1BQU0sT0FBTyxrQkFBa0I7SUFYL0I7UUEwQ0ksMkJBQTJCO1FBQ25CLGdCQUFXLEdBQStCLElBQUksQ0FBQztRQUMvQyxrQkFBYSxHQUF3QixJQUFJLENBQUM7UUFDMUMsWUFBTyxHQUFHLElBQUksZUFBZSxDQUFtQyxFQUFFLENBQUMsQ0FBQztRQUNwRSx5QkFBb0IsR0FBRyxJQUFJLGVBQWUsQ0FBUyxDQUFDLENBQUMsQ0FBQztLQWtHakU7SUFuSUcs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QUUsc0JBQXNCLEVBQUMsdUJBQ2xCLEtBQUssY0FDZCxJQUFJLFdBQ1AsQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixDQUFDOzhCQUtsRSxrQkFBa0I7c0JBRHJCLEtBQUs7dUJBQUMsRUFBQyxTQUFTLEVBQUUsZUFBZSxFQUFDO2dCQVUvQixVQUFVO3NCQURiLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgbnVtYmVyQXR0cmlidXRlLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCYkxvY2FsaXplLCBCYkxvY2FsaXplU3RyaW5nLCBCYkxvY2FsaXplVGVtcGxhdGV9IGZyb20gJ0BicmF2b2JpdC9iYi1mb3VuZGF0aW9uL2xvY2FsaXplJztcbmltcG9ydCB7Q29sbGVjdGlvbkRhdGF9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29sbGVjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3RNYXB9IGZyb20gJ0BicmF2b2JpdC9iYi1mb3VuZGF0aW9uL3J4anMnO1xuaW1wb3J0IHttYXAsIHNoYXJlUmVwbGF5fSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0NvbGxlY3Rpb259IGZyb20gJy4uLy4uL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYmItY29sbGVjdGlvbnMtcGFnZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jb2xsZWN0aW9ucy1wYWdlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHsnY2xhc3MnOiAnYmItY29sbGVjdGlvbnMtcGFnZXInfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtBc3luY1BpcGUsIEJiTG9jYWxpemVTdHJpbmcsIEJiTG9jYWxpemUsIEJiTG9jYWxpemVUZW1wbGF0ZV1cbn0pXG5leHBvcnQgY2xhc3MgQmJDb2xsZWN0aW9uc1BhZ2VyIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gICAgQElucHV0KHt0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZX0pXG4gICAgc2V0IG1heEFtb3VudE9mQnV0dG9ucyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX21heEFtb3VudE9mQnV0dG9ucyQubmV4dChNYXRoLm1heCgxLCB2YWx1ZSkpO1xuICAgIH1cblxuICAgIGdldCBtYXhBbW91bnRPZkJ1dHRvbnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhBbW91bnRPZkJ1dHRvbnMkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pXG4gICAgc2V0IGNvbGxlY3Rpb24oY29sbGVjdGlvbjogQ29sbGVjdGlvbjx1bmtub3duPiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5fY29sbGVjdGlvbiA9IGNvbGxlY3Rpb247XG4gICAgICAgIHRoaXMub2JzZXJ2ZUNvbGxlY3Rpb25DaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbGxlY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9uO1xuICAgIH1cblxuICAgIC8vIERhdGEuXG4gICAgZGF0YSQ6IE9ic2VydmFibGU8e1xuICAgICAgICBzdGFydD86IG51bWJlcixcbiAgICAgICAgZW5kPzogbnVtYmVyLFxuICAgICAgICB0b3RhbEVudHJpZXM/OiBudW1iZXIsXG4gICAgICAgIHRvdGFsUGFnZXM/OiBudW1iZXIsXG4gICAgICAgIHBhZ2VOdW1iZXI/OiBudW1iZXIsXG4gICAgICAgIHBhZ2VzPzogeyBwYWdlOiBudW1iZXIsIGFjdGl2ZTogYm9vbGVhbiB9W11cbiAgICB9PjtcblxuICAgIC8vIFN0YXRlIGFuZCBzdWJzY3JpcHRpb25zLlxuICAgIHByaXZhdGUgX2NvbGxlY3Rpb246IENvbGxlY3Rpb248dW5rbm93bj4gfCBudWxsID0gbnVsbDtcbiAgICBwcml2YXRlIF9zdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICAgIHByaXZhdGUgX2NhY2hlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UGFydGlhbDxDb2xsZWN0aW9uRGF0YTx1bmtub3duPj4+KHt9KTtcbiAgICBwcml2YXRlIF9tYXhBbW91bnRPZkJ1dHRvbnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDMpO1xuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuc2V0RGF0YSgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgc2V0UGFnZShwYWdlTnVtYmVyOiBudW1iZXIsIHRvdGFsUGFnZXM6IG51bWJlcikge1xuICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG5ldyB2YWx1ZS5cbiAgICAgICAgY29uc3QgbmV3VmFsdWUgPSBNYXRoLm1pbihcbiAgICAgICAgICAgIHRvdGFsUGFnZXMsXG4gICAgICAgICAgICBNYXRoLm1heCgxLCBwYWdlTnVtYmVyKVxuICAgICAgICApO1xuXG4gICAgICAgIC8vIFZhbGlkYXRlIHRoZSB2YWx1ZSBpcyBhY3R1YWxseSBkaWZmZXJlbnQuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMuX2NvbGxlY3Rpb24/LnBhZ2VOdW1iZXJDb250cm9sPy52YWx1ZTtcbiAgICAgICAgaWYgKGN1cnJlbnRWYWx1ZSA9PT0gbmV3VmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2NvbGxlY3Rpb24/LnBhZ2VOdW1iZXJDb250cm9sPy5zZXRWYWx1ZShwYWdlTnVtYmVyKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldERhdGEoKSB7XG4gICAgICAgIHRoaXMuZGF0YSQgPSBjb21iaW5lTGF0ZXN0TWFwKHtcbiAgICAgICAgICAgIGNhY2hlOiB0aGlzLl9jYWNoZSQsXG4gICAgICAgICAgICBtYXhBbW91bnRPZkJ1dHRvbnM6IHRoaXMuX21heEFtb3VudE9mQnV0dG9ucyRcbiAgICAgICAgfSkucGlwZShcbiAgICAgICAgICAgIG1hcCgoe2NhY2hlLCBtYXhBbW91bnRPZkJ1dHRvbnN9KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGFnZVNpemUgPSBjYWNoZT8ucGFnZVNpemUgPz8gMTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYWdlTnVtYmVyID0gY2FjaGU/LnBhZ2VOdW1iZXIgPz8gMTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsRW50cmllcyA9IE1hdGgubWF4KDAsIGNhY2hlPy50b3RhbEVudHJpZXMgPz8gMCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigocGFnZVNpemUgKiAocGFnZU51bWJlciAtIDEpKSArIDEsIHRvdGFsRW50cmllcykpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IE1hdGgubWF4KDAsIE1hdGgubWluKChzdGFydCAtIDEpICsgcGFnZVNpemUsIHRvdGFsRW50cmllcykpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsUGFnZXMgPSBNYXRoLm1heCgwLCBjYWNoZT8udG90YWxQYWdlcyA/PyAxKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHBhZ2VzID0gdGhpcy5maWx0ZXJBY3RpdmVQYWdlcyhwYWdlTnVtYmVyLCB0b3RhbFBhZ2VzLCBtYXhBbW91bnRPZkJ1dHRvbnMpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtzdGFydCwgZW5kLCB0b3RhbEVudHJpZXMsIHRvdGFsUGFnZXMsIHBhZ2VzLCBwYWdlTnVtYmVyfTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgc2hhcmVSZXBsYXkoe3JlZkNvdW50OiB0cnVlLCBidWZmZXJTaXplOiAxfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9ic2VydmVDb2xsZWN0aW9uQ2hhbmdlcygpIHtcbiAgICAgICAgaWYgKHRoaXMuX3N1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLl9jb2xsZWN0aW9uKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSB0aGlzLl9jb2xsZWN0aW9uLnJhdyQuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZSQubmV4dChkYXRhKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVQYWdlcyhwYWdlTnVtYmVyOiBudW1iZXIsIHRvdGFsUGFnZXM6IG51bWJlciwgbWF4QW1vdW50T2ZCdXR0b25zOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgbWluID0gMTtcbiAgICAgICAgY29uc3QgbWF4ID0gdG90YWxQYWdlcztcbiAgICAgICAgY29uc3QgYW1vdW50ID0gTWF0aC5tYXgoMSwgbWF4QW1vdW50T2ZCdXR0b25zKTtcblxuICAgICAgICBjb25zdCBzdGFydCA9IE1hdGgubWF4KDAsIHBhZ2VOdW1iZXIgLSBNYXRoLmZsb29yKGFtb3VudCAvIDIpKTtcbiAgICAgICAgY29uc3QgZGF0YSA9IEFycmF5KGFtb3VudClcbiAgICAgICAgICAgIC5maWxsKDApXG4gICAgICAgICAgICAubWFwKChfLCBpbmRleCkgPT4gc3RhcnQgKyBpbmRleCk7XG5cbiAgICAgICAgLy8gVmFsaWRhdGUgaWYgdGhlIG1pbmltdW0gdmFsdWUgbGVzcyB0aGFuXG4gICAgICAgIC8vIHRoZSBmaXJzdCB2YWx1ZS5cbiAgICAgICAgaWYgKGRhdGFbMF0gPCBtaW4pIHtcbiAgICAgICAgICAgIHJldHVybiBkYXRhLm1hcChpdGVtID0+IGl0ZW0gKyAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgZGlmZmVyZW5jZSB3aXRoIHRoZSBtYXhcbiAgICAgICAgLy8gaWYgdGhpcyB2YWx1ZSBpcyBoaWdoZXIgdGhhbiAwIHdlIHNob3VsZCBtaW51cyBpdC5cbiAgICAgICAgY29uc3QgbGFzdFZhbHVlSW5BcnJheSA9IGRhdGFbZGF0YS5sZW5ndGggLSAxXTtcbiAgICAgICAgY29uc3QgZGlmZmVyZW5jZVdpdGhNYXggPSBsYXN0VmFsdWVJbkFycmF5IC0gbWF4O1xuICAgICAgICBpZiAoZGlmZmVyZW5jZVdpdGhNYXggPiAwKSB7XG4gICAgICAgICAgICByZXR1cm4gZGF0YS5tYXAoaXRlbSA9PiBpdGVtIC0gZGlmZmVyZW5jZVdpdGhNYXgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSnVzdCByZXR1cm4gdGhlIGRlZmF1bHQgZGF0YS5cbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaWx0ZXJBY3RpdmVQYWdlcyhwYWdlTnVtYmVyOiBudW1iZXIsIHRvdGFsUGFnZXM6IG51bWJlciwgbWF4QW1vdW50T2ZCdXR0b25zOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlUGFnZXMocGFnZU51bWJlciwgdG90YWxQYWdlcywgbWF4QW1vdW50T2ZCdXR0b25zKVxuICAgICAgICAgICAgLmZpbHRlcihwYWdlID0+IHBhZ2UgPiAwICYmIHBhZ2UgPD0gdG90YWxQYWdlcylcbiAgICAgICAgICAgIC5tYXAocGFnZSA9PiAoe3BhZ2UsIGFjdGl2ZTogcGFnZU51bWJlciA9PT0gcGFnZX0pKTtcbiAgICB9XG5cbn1cbiIsIkBpZiAoZGF0YSQgfCBhc3luYzsgYXMgZGF0YSkge1xuICAgIDxkaXYgW2JiLWxvY2FsaXplLXN0cmluZ109XCInY29sbGVjdGlvbi5zaG93aW5nX2xhYmVsJyB8IGJiTG9jYWxpemVcIlxuICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1wYWdlci10ZXh0XCI+XG4gICAgICAgIDxzdHJvbmcgKmJiTG9jYWxpemVUZW1wbGF0ZT1cIidzdGFydCdcIj57eyBkYXRhPy5zdGFydCB9fTwvc3Ryb25nPlxuICAgICAgICA8c3Ryb25nICpiYkxvY2FsaXplVGVtcGxhdGU9XCInZW5kJ1wiPnt7IGRhdGE/LmVuZCB9fTwvc3Ryb25nPlxuICAgICAgICA8c3Ryb25nICpiYkxvY2FsaXplVGVtcGxhdGU9XCIndG90YWwnXCI+e3sgZGF0YT8udG90YWxFbnRyaWVzIH19PC9zdHJvbmc+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYmItY29sbGVjdGlvbnMtcGFnZXItY29udGFpbmVyXCI+XG4gICAgICAgIDx1bCBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXBhZ2VyLWxpc3RcIj5cbiAgICAgICAgICAgIDxsaSBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXBhZ2VyLWl0ZW1cIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwiUHJldmlvdXMgcGFnZVwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImRhdGE/LnBhZ2VOdW1iZXIgPD0gMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0UGFnZShkYXRhPy5wYWdlTnVtYmVyIC0gMSwgZGF0YT8udG90YWxQYWdlcylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1wYWdlci1idXR0b24gYXJyb3cgZmlyc3RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiPlxuICAgICAgICAgICAgICAgICAgICAmIzg1OTI7XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBkYXRhPy5wYWdlczsgdHJhY2sgaXRlbT8ucGFnZSkge1xuICAgICAgICAgICAgICAgIDxsaSBbdGl0bGVdPVwiJ1BhZ2UgJyArIGl0ZW0/LnBhZ2VcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXBhZ2VyLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBbY2xhc3MuYWN0aXZlXT1cIml0ZW0/LmFjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldFBhZ2UoaXRlbT8ucGFnZSwgZGF0YT8udG90YWxQYWdlcylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtcGFnZXItYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtPy5wYWdlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8bGkgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1wYWdlci1pdGVtXCJcbiAgICAgICAgICAgICAgICB0aXRsZT1cIk5leHQgcGFnZVwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImRhdGE/LnBhZ2VOdW1iZXIgPj0gZGF0YT8udG90YWxQYWdlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0UGFnZShkYXRhPy5wYWdlTnVtYmVyICsgMSwgZGF0YT8udG90YWxQYWdlcylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1wYWdlci1idXR0b24gYXJyb3cgbGFzdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgICAgICYjODU5NDtcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG59XG4iXX0=
114
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtcGFnZXIvY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtcGFnZXIvY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQUUsZUFBZSxFQUFxQixpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUMvSCxPQUFPLEVBQUMsVUFBVSxFQUFFLGdCQUFnQixFQUFFLGtCQUFrQixFQUFDLE1BQU0sa0NBQWtDLENBQUM7QUFFbEcsT0FBTyxFQUFDLGVBQWUsRUFBMkIsTUFBTSxNQUFNLENBQUM7QUFDL0QsT0FBTyxFQUFDLGdCQUFnQixFQUFDLE1BQU0sOEJBQThCLENBQUM7QUFDOUQsT0FBTyxFQUFDLEdBQUcsRUFBRSxXQUFXLEVBQUMsTUFBTSxnQkFBZ0IsQ0FBQztBQUVoRCxPQUFPLEVBQUMsU0FBUyxFQUFDLE1BQU0saUJBQWlCLENBQUM7O0FBYTFDLE1BQU0sT0FBTyxrQkFBa0I7SUFFM0IsSUFDSSxrQkFBa0IsQ0FBQyxLQUFhO1FBQ2hDLElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsQ0FBQztJQUN2RCxDQUFDO0lBRUQsSUFBSSxrQkFBa0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsb0JBQW9CLENBQUMsUUFBUSxF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QyxPQUFPLEVBQUUsc0JBQXNCLEVBQUMsdUJBQ2xCLEtBQUssY0FDZCxJQUFJLFdBQ1AsQ0FBQyxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsVUFBVSxFQUFFLGtCQUFrQixDQUFDOzhCQUtsRSxrQkFBa0I7c0JBRHJCLEtBQUs7dUJBQUMsRUFBQyxTQUFTLEVBQUUsZUFBZSxFQUFDO2dCQVUvQixVQUFVO3NCQURiLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBJbnB1dCwgbnVtYmVyQXR0cmlidXRlLCBPbkRlc3Ryb3ksIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCYkxvY2FsaXplLCBCYkxvY2FsaXplU3RyaW5nLCBCYkxvY2FsaXplVGVtcGxhdGV9IGZyb20gJ0BicmF2b2JpdC9iYi1mb3VuZGF0aW9uL2xvY2FsaXplJztcbmltcG9ydCB7Q29sbGVjdGlvbkRhdGF9IGZyb20gJy4uLy4uL2ludGVyZmFjZXMvY29sbGVjdGlvbi5pbnRlcmZhY2UnO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3QsIE9ic2VydmFibGUsIFN1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5pbXBvcnQge2NvbWJpbmVMYXRlc3RNYXB9IGZyb20gJ0BicmF2b2JpdC9iYi1mb3VuZGF0aW9uL3J4anMnO1xuaW1wb3J0IHttYXAsIHNoYXJlUmVwbGF5fSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge0NvbGxlY3Rpb259IGZyb20gJy4uLy4uL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHtBc3luY1BpcGV9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnYmItY29sbGVjdGlvbnMtcGFnZXInLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jb2xsZWN0aW9ucy1wYWdlci5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY29sbGVjdGlvbnMtcGFnZXIuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHsnY2xhc3MnOiAnYmItY29sbGVjdGlvbnMtcGFnZXInfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtBc3luY1BpcGUsIEJiTG9jYWxpemVTdHJpbmcsIEJiTG9jYWxpemUsIEJiTG9jYWxpemVUZW1wbGF0ZV1cbn0pXG5leHBvcnQgY2xhc3MgQmJDb2xsZWN0aW9uc1BhZ2VyIGltcGxlbWVudHMgT25Jbml0LCBPbkRlc3Ryb3kge1xuXG4gICAgQElucHV0KHt0cmFuc2Zvcm06IG51bWJlckF0dHJpYnV0ZX0pXG4gICAgc2V0IG1heEFtb3VudE9mQnV0dG9ucyh2YWx1ZTogbnVtYmVyKSB7XG4gICAgICAgIHRoaXMuX21heEFtb3VudE9mQnV0dG9ucyQubmV4dChNYXRoLm1heCgxLCB2YWx1ZSkpO1xuICAgIH1cblxuICAgIGdldCBtYXhBbW91bnRPZkJ1dHRvbnMoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9tYXhBbW91bnRPZkJ1dHRvbnMkLmdldFZhbHVlKCk7XG4gICAgfVxuXG4gICAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pXG4gICAgc2V0IGNvbGxlY3Rpb24oY29sbGVjdGlvbjogQ29sbGVjdGlvbjx1bmtub3duPiB8IG51bGwpIHtcbiAgICAgICAgdGhpcy5fY29sbGVjdGlvbiA9IGNvbGxlY3Rpb247XG4gICAgICAgIHRoaXMub2JzZXJ2ZUNvbGxlY3Rpb25DaGFuZ2VzKCk7XG4gICAgfVxuXG4gICAgZ2V0IGNvbGxlY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9jb2xsZWN0aW9uO1xuICAgIH1cblxuICAgIC8vIERhdGEuXG4gICAgZGF0YSQ6IE9ic2VydmFibGU8e1xuICAgICAgICBzdGFydD86IG51bWJlcixcbiAgICAgICAgZW5kPzogbnVtYmVyLFxuICAgICAgICB0b3RhbEVudHJpZXM/OiBudW1iZXIsXG4gICAgICAgIHRvdGFsUGFnZXM/OiBudW1iZXIsXG4gICAgICAgIHBhZ2VOdW1iZXI/OiBudW1iZXIsXG4gICAgICAgIHBhZ2VzPzogeyBwYWdlOiBudW1iZXIsIGFjdGl2ZTogYm9vbGVhbiB9W11cbiAgICB9PjtcblxuICAgIC8vIFN0YXRlIGFuZCBzdWJzY3JpcHRpb25zLlxuICAgIHByaXZhdGUgX2NvbGxlY3Rpb246IENvbGxlY3Rpb248dW5rbm93bj4gfCBudWxsID0gbnVsbDtcbiAgICBwcml2YXRlIF9zdWJzY3JpcHRpb246IFN1YnNjcmlwdGlvbiB8IG51bGwgPSBudWxsO1xuICAgIHByaXZhdGUgX2NhY2hlJCA9IG5ldyBCZWhhdmlvclN1YmplY3Q8UGFydGlhbDxDb2xsZWN0aW9uRGF0YTx1bmtub3duPj4+KHt9KTtcbiAgICBwcml2YXRlIF9tYXhBbW91bnRPZkJ1dHRvbnMkID0gbmV3IEJlaGF2aW9yU3ViamVjdDxudW1iZXI+KDMpO1xuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIHRoaXMuc2V0RGF0YSgpO1xuICAgIH1cblxuICAgIG5nT25EZXN0cm95KCkge1xuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24/LnVuc3Vic2NyaWJlKCk7XG4gICAgfVxuXG4gICAgc2V0UGFnZShwYWdlTnVtYmVyOiBudW1iZXIsIHRvdGFsUGFnZXM6IG51bWJlcikge1xuICAgICAgICAvLyBDYWxjdWxhdGUgdGhlIG5ldyB2YWx1ZS5cbiAgICAgICAgY29uc3QgbmV3VmFsdWUgPSBNYXRoLm1pbihcbiAgICAgICAgICAgIHRvdGFsUGFnZXMsXG4gICAgICAgICAgICBNYXRoLm1heCgxLCBwYWdlTnVtYmVyKVxuICAgICAgICApO1xuXG4gICAgICAgIC8vIFZhbGlkYXRlIHRoZSB2YWx1ZSBpcyBhY3R1YWxseSBkaWZmZXJlbnQuXG4gICAgICAgIGNvbnN0IGN1cnJlbnRWYWx1ZSA9IHRoaXMuX2NvbGxlY3Rpb24/LnBhZ2VOdW1iZXJDb250cm9sPy52YWx1ZTtcbiAgICAgICAgaWYgKGN1cnJlbnRWYWx1ZSA9PT0gbmV3VmFsdWUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIHRoaXMuX2NvbGxlY3Rpb24/LnBhZ2VOdW1iZXJDb250cm9sPy5zZXRWYWx1ZShwYWdlTnVtYmVyKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIHNldERhdGEoKSB7XG4gICAgICAgIHRoaXMuZGF0YSQgPSBjb21iaW5lTGF0ZXN0TWFwKHtcbiAgICAgICAgICAgIGNhY2hlOiB0aGlzLl9jYWNoZSQsXG4gICAgICAgICAgICBtYXhBbW91bnRPZkJ1dHRvbnM6IHRoaXMuX21heEFtb3VudE9mQnV0dG9ucyRcbiAgICAgICAgfSkucGlwZShcbiAgICAgICAgICAgIG1hcCgoe2NhY2hlLCBtYXhBbW91bnRPZkJ1dHRvbnN9KSA9PiB7XG4gICAgICAgICAgICAgICAgY29uc3QgcGFnZVNpemUgPSBjYWNoZT8ucGFnZVNpemUgPz8gMTtcbiAgICAgICAgICAgICAgICBjb25zdCBwYWdlTnVtYmVyID0gY2FjaGU/LnBhZ2VOdW1iZXIgPz8gMTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsRW50cmllcyA9IE1hdGgubWF4KDAsIGNhY2hlPy50b3RhbEVudHJpZXMgPz8gMCk7XG4gICAgICAgICAgICAgICAgY29uc3Qgc3RhcnQgPSBNYXRoLm1heCgwLCBNYXRoLm1pbigocGFnZVNpemUgKiAocGFnZU51bWJlciAtIDEpKSArIDEsIHRvdGFsRW50cmllcykpO1xuICAgICAgICAgICAgICAgIGNvbnN0IGVuZCA9IE1hdGgubWF4KDAsIE1hdGgubWluKChzdGFydCAtIDEpICsgcGFnZVNpemUsIHRvdGFsRW50cmllcykpO1xuICAgICAgICAgICAgICAgIGNvbnN0IHRvdGFsUGFnZXMgPSBNYXRoLm1heCgwLCBjYWNoZT8udG90YWxQYWdlcyA/PyAxKTtcblxuICAgICAgICAgICAgICAgIGNvbnN0IHBhZ2VzID0gdGhpcy5maWx0ZXJBY3RpdmVQYWdlcyhwYWdlTnVtYmVyLCB0b3RhbFBhZ2VzLCBtYXhBbW91bnRPZkJ1dHRvbnMpO1xuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHtzdGFydCwgZW5kLCB0b3RhbEVudHJpZXMsIHRvdGFsUGFnZXMsIHBhZ2VzLCBwYWdlTnVtYmVyfTtcbiAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgc2hhcmVSZXBsYXkoe3JlZkNvdW50OiB0cnVlLCBidWZmZXJTaXplOiAxfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbiAgICBwcml2YXRlIG9ic2VydmVDb2xsZWN0aW9uQ2hhbmdlcygpIHtcbiAgICAgICAgaWYgKHRoaXMuX3N1YnNjcmlwdGlvbikge1xuICAgICAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgICAgICB9XG5cbiAgICAgICAgaWYgKCF0aGlzLl9jb2xsZWN0aW9uKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLl9zdWJzY3JpcHRpb24gPSB0aGlzLl9jb2xsZWN0aW9uLnJhdyQuc3Vic2NyaWJlKGRhdGEgPT4ge1xuICAgICAgICAgICAgaWYgKGRhdGEpIHtcbiAgICAgICAgICAgICAgICB0aGlzLl9jYWNoZSQubmV4dChkYXRhKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBjYWxjdWxhdGVQYWdlcyhwYWdlTnVtYmVyOiBudW1iZXIsIHRvdGFsUGFnZXM6IG51bWJlciwgbWF4QW1vdW50T2ZCdXR0b25zOiBudW1iZXIpIHtcbiAgICAgICAgY29uc3QgbWluID0gMTtcbiAgICAgICAgY29uc3QgbWF4ID0gdG90YWxQYWdlcztcbiAgICAgICAgY29uc3QgYW1vdW50ID0gTWF0aC5tYXgoMSwgbWF4QW1vdW50T2ZCdXR0b25zKTtcblxuICAgICAgICBjb25zdCBzdGFydCA9IE1hdGgubWF4KDAsIHBhZ2VOdW1iZXIgLSBNYXRoLmZsb29yKGFtb3VudCAvIDIpKTtcbiAgICAgICAgY29uc3QgZGF0YSA9IEFycmF5KGFtb3VudClcbiAgICAgICAgICAgIC5maWxsKDApXG4gICAgICAgICAgICAubWFwKChfLCBpbmRleCkgPT4gc3RhcnQgKyBpbmRleCk7XG5cbiAgICAgICAgLy8gVmFsaWRhdGUgaWYgdGhlIG1pbmltdW0gdmFsdWUgbGVzcyB0aGFuXG4gICAgICAgIC8vIHRoZSBmaXJzdCB2YWx1ZS5cbiAgICAgICAgaWYgKGRhdGFbMF0gPCBtaW4pIHtcbiAgICAgICAgICAgIHJldHVybiBkYXRhLm1hcChpdGVtID0+IGl0ZW0gKyAxKTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIENhbGN1bGF0ZSB0aGUgZGlmZmVyZW5jZSB3aXRoIHRoZSBtYXhcbiAgICAgICAgLy8gaWYgdGhpcyB2YWx1ZSBpcyBoaWdoZXIgdGhhbiAwIHdlIHNob3VsZCBtaW51cyBpdC5cbiAgICAgICAgY29uc3QgbGFzdFZhbHVlSW5BcnJheSA9IGRhdGFbZGF0YS5sZW5ndGggLSAxXTtcbiAgICAgICAgY29uc3QgZGlmZmVyZW5jZVdpdGhNYXggPSBsYXN0VmFsdWVJbkFycmF5IC0gbWF4O1xuICAgICAgICBpZiAoZGlmZmVyZW5jZVdpdGhNYXggPiAwKSB7XG4gICAgICAgICAgICByZXR1cm4gZGF0YS5tYXAoaXRlbSA9PiBpdGVtIC0gZGlmZmVyZW5jZVdpdGhNYXgpO1xuICAgICAgICB9XG5cbiAgICAgICAgLy8gSnVzdCByZXR1cm4gdGhlIGRlZmF1bHQgZGF0YS5cbiAgICAgICAgcmV0dXJuIGRhdGE7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBmaWx0ZXJBY3RpdmVQYWdlcyhwYWdlTnVtYmVyOiBudW1iZXIsIHRvdGFsUGFnZXM6IG51bWJlciwgbWF4QW1vdW50T2ZCdXR0b25zOiBudW1iZXIpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuY2FsY3VsYXRlUGFnZXMocGFnZU51bWJlciwgdG90YWxQYWdlcywgbWF4QW1vdW50T2ZCdXR0b25zKVxuICAgICAgICAgICAgLmZpbHRlcihwYWdlID0+IHBhZ2UgPiAwICYmIHBhZ2UgPD0gdG90YWxQYWdlcylcbiAgICAgICAgICAgIC5tYXAocGFnZSA9PiAoe3BhZ2UsIGFjdGl2ZTogcGFnZU51bWJlciA9PT0gcGFnZX0pKTtcbiAgICB9XG5cbn1cbiIsIkBpZiAoZGF0YSQgfCBhc3luYzsgYXMgZGF0YSkge1xuICAgIDxkaXYgW2JiLWxvY2FsaXplLXN0cmluZ109XCInY29sbGVjdGlvbi5zaG93aW5nX2xhYmVsJyB8IGJiTG9jYWxpemVcIlxuICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1wYWdlci10ZXh0XCI+XG4gICAgICAgIDxzdHJvbmcgKmJiTG9jYWxpemVUZW1wbGF0ZT1cIidzdGFydCdcIj57eyBkYXRhPy5zdGFydCB9fTwvc3Ryb25nPlxuICAgICAgICA8c3Ryb25nICpiYkxvY2FsaXplVGVtcGxhdGU9XCInZW5kJ1wiPnt7IGRhdGE/LmVuZCB9fTwvc3Ryb25nPlxuICAgICAgICA8c3Ryb25nICpiYkxvY2FsaXplVGVtcGxhdGU9XCIndG90YWwnXCI+e3sgZGF0YT8udG90YWxFbnRyaWVzIH19PC9zdHJvbmc+XG4gICAgPC9kaXY+XG5cbiAgICA8ZGl2IGNsYXNzPVwiYmItY29sbGVjdGlvbnMtcGFnZXItY29udGFpbmVyXCI+XG4gICAgICAgIDx1bCBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXBhZ2VyLWxpc3RcIj5cbiAgICAgICAgICAgIDxsaSBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXBhZ2VyLWl0ZW1cIlxuICAgICAgICAgICAgICAgIHRpdGxlPVwiUHJldmlvdXMgcGFnZVwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImRhdGE/LnBhZ2VOdW1iZXIgPD0gMVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0UGFnZShkYXRhPy5wYWdlTnVtYmVyIC0gMSwgZGF0YT8udG90YWxQYWdlcylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1wYWdlci1idXR0b24gYXJyb3cgZmlyc3RcIlxuICAgICAgICAgICAgICAgICAgICAgICAgdHlwZT1cImJ1dHRvblwiPlxuICAgICAgICAgICAgICAgICAgICAmIzg1OTI7XG4gICAgICAgICAgICAgICAgPC9idXR0b24+XG4gICAgICAgICAgICA8L2xpPlxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBkYXRhPy5wYWdlczsgdHJhY2sgaXRlbT8ucGFnZSkge1xuICAgICAgICAgICAgICAgIDxsaSBbdGl0bGVdPVwiJ1BhZ2UgJyArIGl0ZW0/LnBhZ2VcIlxuICAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXBhZ2VyLWl0ZW1cIj5cbiAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBbY2xhc3MuYWN0aXZlXT1cIml0ZW0/LmFjdGl2ZVwiXG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgKGNsaWNrKT1cInNldFBhZ2UoaXRlbT8ucGFnZSwgZGF0YT8udG90YWxQYWdlcylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtcGFnZXItYnV0dG9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgICAgICAgICB7eyBpdGVtPy5wYWdlIH19XG4gICAgICAgICAgICAgICAgICAgIDwvYnV0dG9uPlxuICAgICAgICAgICAgICAgIDwvbGk+XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICA8bGkgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1wYWdlci1pdGVtXCJcbiAgICAgICAgICAgICAgICB0aXRsZT1cIk5leHQgcGFnZVwiPlxuICAgICAgICAgICAgICAgIDxidXR0b24gW2Rpc2FibGVkXT1cImRhdGE/LnBhZ2VOdW1iZXIgPj0gZGF0YT8udG90YWxQYWdlc1wiXG4gICAgICAgICAgICAgICAgICAgICAgICAoY2xpY2spPVwic2V0UGFnZShkYXRhPy5wYWdlTnVtYmVyICsgMSwgZGF0YT8udG90YWxQYWdlcylcIlxuICAgICAgICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy1wYWdlci1idXR0b24gYXJyb3cgbGFzdFwiXG4gICAgICAgICAgICAgICAgICAgICAgICB0eXBlPVwiYnV0dG9uXCI+XG4gICAgICAgICAgICAgICAgICAgICYjODU5NDtcbiAgICAgICAgICAgICAgICA8L2J1dHRvbj5cbiAgICAgICAgICAgIDwvbGk+XG4gICAgICAgIDwvdWw+XG4gICAgPC9kaXY+XG59XG4iXX0=
@@ -14,27 +14,27 @@ import { BbTemplate } from '@bravobit/bb-foundation/utils';
14
14
  import { BehaviorSubject } from 'rxjs';
15
15
  import * as i0 from "@angular/core";
16
16
  export class BbCollectionsTable {
17
- constructor() {
18
- // Readonly data.
19
- this.collection$ = new BehaviorSubject(null);
20
- // Inputs.
21
- this.queryPlaceholder = null;
22
- this.emptyContent = null;
23
- this.noResultsContent = null;
24
- this.errorContent = null;
25
- this.trackByProperty = 'id';
26
- this.includeVerticalLines = false;
27
- this.hideActions = false;
28
- this.hidePager = false;
29
- }
17
+ // Readonly data.
18
+ collection$ = new BehaviorSubject(null);
19
+ // Views.
20
+ dataRowTemplate;
21
+ // Inputs.
22
+ queryPlaceholder = null;
23
+ emptyContent = null;
24
+ noResultsContent = null;
25
+ errorContent = null;
26
+ trackByProperty = 'id';
27
+ includeVerticalLines = false;
28
+ hideActions = false;
29
+ hidePager = false;
30
30
  set collection(collection) {
31
31
  this.collection$.next(collection);
32
32
  }
33
33
  get collection() {
34
34
  return this.collection$.getValue();
35
35
  }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTable, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
37
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbCollectionsTable, isStandalone: true, selector: "bb-collections-table", inputs: { queryPlaceholder: "queryPlaceholder", emptyContent: "emptyContent", noResultsContent: "noResultsContent", errorContent: "errorContent", trackByProperty: "trackByProperty", includeVerticalLines: ["includeVerticalLines", "includeVerticalLines", booleanAttribute], hideActions: ["hideActions", "hideActions", booleanAttribute], hidePager: ["hidePager", "hidePager", booleanAttribute], collection: "collection" }, host: { properties: { "class.include-vertical-lines": "includeVerticalLines" }, classAttribute: "bb-collections-table" }, queries: [{ propertyName: "dataRowTemplate", first: true, predicate: BbCollectionsDataRow, descendants: true, read: TemplateRef }], ngImport: i0, template: "@if (!hideActions) {\n <bb-collections-actions [collection]=\"collection\"\n [queryPlaceholder]=\"queryPlaceholder\">\n <ng-content ngProjectAs=\"[data-collections-action]\"\n select=\"[data-collections-action]\"></ng-content>\n <ng-content ngProjectAs=\"[data-collections-row]\"\n select=\"[data-collections-row]\"></ng-content>\n </bb-collections-actions>\n}\n\n<div [collection]=\"collection\"\n [class.loading]=\"collection?.loading$ | async\"\n class=\"bb-collections-table-container\"\n bb-collections-viewer>\n <table *bbCollectionsData=\"let items = items; let loading = loading\">\n <ng-content select=\"thead\"></ng-content>\n <tbody>\n @for (item of items; track (trackByProperty === null ? $index : item[trackByProperty])) {\n <ng-container\n *ngTemplateOutlet=\"dataRowTemplate; context: {$implicit: item, item: item}\"></ng-container>\n }\n </tbody>\n <ng-content select=\"tfoot\"></ng-content>\n </table>\n <div *bbCollectionsEmpty=\"let query = query\"\n class=\"bb-collections-table-info\">\n <div class=\"bb-collections-table-image empty\"></div>\n @if (query?.length > 0) {\n <ng-template [bbTemplate]=\"noResultsContent\">\n <p [bb-localize-string]=\"$any(noResultsContent) ?? ('collection.no_results_label' | bbLocalize)\"\n class=\"bb-collections-table-info-text\">\n <strong *bbLocalizeTemplate=\"'query'\">{{ query ?? '...' }}</strong>\n </p>\n </ng-template>\n } @else {\n <ng-template [bbTemplate]=\"emptyContent\">\n <p class=\"bb-collections-table-info-text\">\n {{ $any(emptyContent) ?? ('collection.empty_label' | bbLocalize) }}\n </p>\n </ng-template>\n }\n </div>\n <div *bbCollectionsError=\"let error = error\"\n class=\"bb-collections-table-info\">\n <div class=\"bb-collections-table-image error\"></div>\n <ng-template [bbTemplate]=\"errorContent\">\n <p class=\"bb-collections-table-info-text\">\n {{ $any(errorContent) ?? ('collection.error_label' | bbLocalize) }}\n </p>\n </ng-template>\n </div>\n <div *bbCollectionsInitial\n class=\"bb-collections-table-info\">\n <bb-spinner class=\"block\"></bb-spinner>\n </div>\n</div>\n\n@if (!hidePager) {\n <footer class=\"bb-collections-table-footer\">\n <bb-collections-pager [collection]=\"collection\"></bb-collections-pager>\n </footer>\n}\n", styles: ["@charset \"UTF-8\";.bb-collections-table{color:#111;display:block;position:relative;font-size:.875rem;border-radius:.5rem;background-color:#fff;box-shadow:0 .375rem .375rem -.375rem #0000001a}.bb-collections-table>*:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.bb-collections-table>*:last-child{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.bb-collections-table.include-vertical-lines td:not(:last-child),.bb-collections-table.include-vertical-lines th:not(:last-child){border-right:1px solid hsl(213,8%,90%)}.bb-collections-table-footer{padding:.75rem 1rem;background-color:#fbf9f9;border-top:1px solid hsl(213,8%,90%)}.bb-collections-table-container{overflow-x:auto;position:relative}.bb-collections-table-container.loading>table>tbody,.bb-collections-table-container.loading>.bb-collections-table-info{animation:collectionsBlink 1s linear infinite}.bb-collections-table-container.loading:after{top:0;left:0;right:0;z-index:1;opacity:0;content:\"\";height:.25rem;position:absolute;will-change:left,right;background-color:#1565c1;animation:collectionsFadeIn .12s cubic-bezier(.65,.815,.735,.395) .4s forwards,collectionsIndeterminate 2.1s cubic-bezier(.65,.815,.735,.395) .4s infinite}.bb-collections-table-container>table{width:100%}.bb-collections-table-container>table th,.bb-collections-table-container>table td{padding:1rem;text-align:left;font-weight:400;font-size:.875rem}.bb-collections-table-container>table th.fit,.bb-collections-table-container>table td.fit{width:1%;white-space:nowrap}.bb-collections-table-container>table th.left,.bb-collections-table-container>table td.left{text-align:left}.bb-collections-table-container>table th.right,.bb-collections-table-container>table td.right{text-align:right}.bb-collections-table-container>table>thead{background-color:#fbf9f9;border-bottom:1px solid hsl(213,8%,90%)}.bb-collections-table-container>table>thead>tr>th{padding:1rem;color:#525252}.bb-collections-table-container>table>tbody>tr>td{color:#111}.bb-collections-table-container>table>tbody>tr:not(:last-child){border-bottom:1px solid hsl(213,8%,90%)}.bb-collections-table-info{padding:3rem 1.5rem}.bb-collections-table-info-text{color:#525252;margin:0 auto;display:block;line-height:2;max-width:30rem;text-align:center;font-size:.875rem}.bb-collections-table-info-text>strong{font-weight:500}.bb-collections-table-info-text>strong:before{content:\"\\201c\"}.bb-collections-table-info-text>strong:after{content:\"\\201d\"}.bb-collections-table-image{width:100%;height:auto;display:flex;max-width:7.5rem;margin:0 auto 1.5rem;background-size:contain;background-repeat:no-repeat;background-position:center center}.bb-collections-table-image.empty{aspect-ratio:154/132;mask-image:linear-gradient(to bottom,black 25%,transparent 100%);background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 154 132\"%3E%3Cg fill=\"none\" fill-rule=\"evenodd\"%3E%3Crect width=\"154\" height=\"40\" fill=\"%23FFF\" fill-rule=\"nonzero\" rx=\"8\"/%3E%3Crect width=\"24\" height=\"24\" x=\"8\" y=\"8\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"4\"/%3E%3Crect width=\"60\" height=\"6\" x=\"40\" y=\"11\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"106\" height=\"6\" x=\"40\" y=\"23\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"153\" height=\"39\" x=\".5\" y=\".5\" stroke=\"%23E5E7EB\" rx=\"7.5\"/%3E%3Cg transform=\"translate(0 46)\"%3E%3Crect width=\"154\" height=\"40\" fill=\"%23FFF\" fill-rule=\"nonzero\" rx=\"8\"/%3E%3Crect width=\"24\" height=\"24\" x=\"8\" y=\"8\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"4\"/%3E%3Crect width=\"60\" height=\"6\" x=\"40\" y=\"11\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"106\" height=\"6\" x=\"40\" y=\"23\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"153\" height=\"39\" x=\".5\" y=\".5\" stroke=\"%23E5E7EB\" rx=\"7.5\"/%3E%3C/g%3E%3Cg transform=\"translate(0 92)\"%3E%3Crect width=\"154\" height=\"40\" fill=\"%23FFF\" fill-rule=\"nonzero\" rx=\"8\"/%3E%3Crect width=\"24\" height=\"24\" x=\"8\" y=\"8\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"4\"/%3E%3Crect width=\"60\" height=\"6\" x=\"40\" y=\"11\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"106\" height=\"6\" x=\"40\" y=\"23\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"153\" height=\"39\" x=\".5\" y=\".5\" stroke=\"%23E5E7EB\" rx=\"7.5\"/%3E%3C/g%3E%3C/g%3E%3C/svg%3E')}.bb-collections-table-image.error{max-width:4rem;aspect-ratio:1;background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 132 132\"%3E%3Cpath fill=\"%23C23934\" d=\"M65.958253 98.6024096c.8892771 0 1.6486747-.3008433 2.2781928-.9025301.6295181-.6016867.9442771-1.3471687.9442771-2.2364458 0-.8892771-.3008434-1.6486747-.9025301-2.2781927-.6016868-.6295181-1.3471687-.9442771-2.2364458-.9442771-.8892771 0-1.6486747.3008433-2.2781928.9025301-.6295181.6016867-.9442771 1.3471687-.9442771 2.2364458 0 .8892771.3008434 1.6486747.9025301 2.2781927.6016868.6295181 1.3471687.9442771 2.2364458.9442771Zm-1.9462048-21.4698795h3.9759036V29.4216867h-3.9759036v47.7108434ZM66.0894578 132c-9.0716867 0-17.6205421-1.715602-25.6465662-5.146807-8.0260241-3.431205-15.0547591-8.159217-21.0862049-14.184036-6.032771-6.02482-10.76674694-13.0416269-14.20192766-21.0504221C1.71825301 83.6086145 0 75.0504819 0 65.9443373 0 56.8368675 1.71560241 48.303253 5.14680723 40.343494c3.43120482-7.9597591 8.15921687-14.9553615 14.18403617-20.9868073 6.0248193-6.032771 13.0416265-10.76674694 21.0504217-14.20192766C48.3913855 1.71825301 56.9495181 0 66.0556627 0 75.1631325 0 83.696747 1.71560241 91.656506 5.14680723c7.9597591 3.43120482 14.955361 8.15921687 20.986807 14.18403617 6.032771 6.0248193 10.766747 13.0263855 14.201928 21.0046988C130.281747 48.3138554 132 56.8388554 132 65.9105422c0 9.0716867-1.715602 17.6205421-5.146807 25.6465662-3.431205 8.0260241-8.159217 15.0547586-14.184036 21.0862046-6.02482 6.032771-13.0263859 10.766747-21.0046992 14.201928C83.6861446 130.281747 75.1611446 132 66.0894578 132ZM66 128.024096c17.2289157 0 31.873494-6.03012 43.933735-18.090361C121.993976 97.873494 128.024096 83.2289157 128.024096 66c0-17.2289157-6.03012-31.873494-18.090361-43.9337349C97.873494 10.0060241 83.2289157 3.97590361 66 3.97590361c-17.2289157 0-31.873494 6.03012049-43.9337349 18.09036149C10.0060241 34.126506 3.97590361 48.7710843 3.97590361 66c0 17.2289157 6.03012049 31.873494 18.09036149 43.933735C34.126506 121.993976 48.7710843 128.024096 66 128.024096Z\"/%3E%3C/svg%3E')}@keyframes collectionsFadeIn{0%{opacity:0}to{opacity:1}}@keyframes collectionsIndeterminate{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@keyframes collectionsBlink{25%{opacity:.6}50%{opacity:.4}75%{opacity:.6}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: BbCollectionsViewer, selector: "[bb-collections-viewer]", inputs: ["collection"] }, { kind: "directive", type: BbCollectionsData, selector: "[bbCollectionsData]" }, { kind: "directive", type: BbCollectionsEmpty, selector: "[bbCollectionsEmpty]" }, { kind: "directive", type: BbCollectionsError, selector: "[bbCollectionsError]" }, { kind: "directive", type: BbCollectionsInitial, selector: "[bbCollectionsInitial]" }, { kind: "component", type: BbCollectionsActions, selector: "bb-collections-actions", inputs: ["collection", "queryPlaceholder", "standalone"] }, { kind: "component", type: BbCollectionsPager, selector: "bb-collections-pager", inputs: ["maxAmountOfButtons", "collection"] }, { kind: "component", type: BbLocalizeString, selector: "[bb-localize-string]", inputs: ["substitutions", "bb-localize-string"] }, { kind: "directive", type: BbTemplate, selector: "[bbTemplate]", inputs: ["bbTemplate"] }, { kind: "pipe", type: BbLocalize, name: "bbLocalize" }, { kind: "directive", type: BbLocalizeTemplate, selector: "[bbLocalizeTemplate]", inputs: ["bbLocalizeTemplate"] }, { kind: "component", type: BbSpinner, selector: "bb-spinner", inputs: ["color", "alt", "disabled"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
36
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTable, deps: [], target: i0.ɵɵFactoryTarget.Component });
37
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbCollectionsTable, isStandalone: true, selector: "bb-collections-table", inputs: { queryPlaceholder: "queryPlaceholder", emptyContent: "emptyContent", noResultsContent: "noResultsContent", errorContent: "errorContent", trackByProperty: "trackByProperty", includeVerticalLines: ["includeVerticalLines", "includeVerticalLines", booleanAttribute], hideActions: ["hideActions", "hideActions", booleanAttribute], hidePager: ["hidePager", "hidePager", booleanAttribute], collection: "collection" }, host: { properties: { "class.include-vertical-lines": "includeVerticalLines" }, classAttribute: "bb-collections-table" }, queries: [{ propertyName: "dataRowTemplate", first: true, predicate: BbCollectionsDataRow, descendants: true, read: TemplateRef }], ngImport: i0, template: "@if (!hideActions) {\n <bb-collections-actions [collection]=\"collection\"\n [queryPlaceholder]=\"queryPlaceholder\">\n <ng-content ngProjectAs=\"[data-collections-action]\"\n select=\"[data-collections-action]\"></ng-content>\n <ng-content ngProjectAs=\"[data-collections-row]\"\n select=\"[data-collections-row]\"></ng-content>\n </bb-collections-actions>\n}\n\n<div [collection]=\"collection\"\n [class.loading]=\"collection?.loading$ | async\"\n class=\"bb-collections-table-container\"\n bb-collections-viewer>\n <table *bbCollectionsData=\"let items = items; let loading = loading\">\n <ng-content select=\"thead\"></ng-content>\n <tbody>\n @for (item of items; track (trackByProperty === null ? $index : item[trackByProperty])) {\n <ng-container\n *ngTemplateOutlet=\"dataRowTemplate; context: {$implicit: item, item: item}\"></ng-container>\n }\n </tbody>\n <ng-content select=\"tfoot\"></ng-content>\n </table>\n <div *bbCollectionsEmpty=\"let query = query\"\n class=\"bb-collections-table-info\">\n <div class=\"bb-collections-table-image empty\"></div>\n @if (query?.length > 0) {\n <ng-template [bbTemplate]=\"noResultsContent\">\n <p [bb-localize-string]=\"$any(noResultsContent) ?? ('collection.no_results_label' | bbLocalize)\"\n class=\"bb-collections-table-info-text\">\n <strong *bbLocalizeTemplate=\"'query'\">{{ query ?? '...' }}</strong>\n </p>\n </ng-template>\n } @else {\n <ng-template [bbTemplate]=\"emptyContent\">\n <p class=\"bb-collections-table-info-text\">\n {{ $any(emptyContent) ?? ('collection.empty_label' | bbLocalize) }}\n </p>\n </ng-template>\n }\n </div>\n <div *bbCollectionsError=\"let error = error\"\n class=\"bb-collections-table-info\">\n <div class=\"bb-collections-table-image error\"></div>\n <ng-template [bbTemplate]=\"errorContent\">\n <p class=\"bb-collections-table-info-text\">\n {{ $any(errorContent) ?? ('collection.error_label' | bbLocalize) }}\n </p>\n </ng-template>\n </div>\n <div *bbCollectionsInitial\n class=\"bb-collections-table-info\">\n <bb-spinner class=\"block\"></bb-spinner>\n </div>\n</div>\n\n@if (!hidePager) {\n <footer class=\"bb-collections-table-footer\">\n <bb-collections-pager [collection]=\"collection\"></bb-collections-pager>\n </footer>\n}\n", styles: ["@charset \"UTF-8\";.bb-collections-table{color:#111;display:block;position:relative;font-size:.875rem;border-radius:.5rem;background-color:#fff;box-shadow:0 .375rem .375rem -.375rem #0000001a}.bb-collections-table>*:first-child{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.bb-collections-table>*:last-child{border-bottom-left-radius:.5rem;border-bottom-right-radius:.5rem}.bb-collections-table.include-vertical-lines td:not(:last-child),.bb-collections-table.include-vertical-lines th:not(:last-child){border-right:1px solid hsl(213,8%,90%)}.bb-collections-table-footer{padding:.75rem 1rem;background-color:#fbf9f9;border-top:1px solid hsl(213,8%,90%)}.bb-collections-table-container{overflow-x:auto;position:relative}.bb-collections-table-container.loading>table>tbody,.bb-collections-table-container.loading>.bb-collections-table-info{animation:collectionsBlink 1s linear infinite}.bb-collections-table-container.loading:after{top:0;left:0;right:0;z-index:1;opacity:0;content:\"\";height:.25rem;position:absolute;will-change:left,right;background-color:#1565c1;animation:collectionsFadeIn .12s cubic-bezier(.65,.815,.735,.395) .4s forwards,collectionsIndeterminate 2.1s cubic-bezier(.65,.815,.735,.395) .4s infinite}.bb-collections-table-container>table{width:100%}.bb-collections-table-container>table th,.bb-collections-table-container>table td{padding:1rem;text-align:left;font-weight:400;font-size:.875rem}.bb-collections-table-container>table th.fit,.bb-collections-table-container>table td.fit{width:1%;white-space:nowrap}.bb-collections-table-container>table th.left,.bb-collections-table-container>table td.left{text-align:left}.bb-collections-table-container>table th.right,.bb-collections-table-container>table td.right{text-align:right}.bb-collections-table-container>table>thead{background-color:#fbf9f9;border-bottom:1px solid hsl(213,8%,90%)}.bb-collections-table-container>table>thead>tr>th{padding:1rem;color:#525252}.bb-collections-table-container>table>tbody>tr>td{color:#111}.bb-collections-table-container>table>tbody>tr:not(:last-child){border-bottom:1px solid hsl(213,8%,90%)}.bb-collections-table-info{padding:3rem 1.5rem}.bb-collections-table-info-text{color:#525252;margin:0 auto;display:block;line-height:2;max-width:30rem;text-align:center;font-size:.875rem}.bb-collections-table-info-text>strong{font-weight:500}.bb-collections-table-info-text>strong:before{content:\"\\201c\"}.bb-collections-table-info-text>strong:after{content:\"\\201d\"}.bb-collections-table-image{width:100%;height:auto;display:flex;max-width:7.5rem;margin:0 auto 1.5rem;background-size:contain;background-repeat:no-repeat;background-position:center center}.bb-collections-table-image.empty{aspect-ratio:154/132;mask-image:linear-gradient(to bottom,black 25%,transparent 100%);background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 154 132\"%3E%3Cg fill=\"none\" fill-rule=\"evenodd\"%3E%3Crect width=\"154\" height=\"40\" fill=\"%23FFF\" fill-rule=\"nonzero\" rx=\"8\"/%3E%3Crect width=\"24\" height=\"24\" x=\"8\" y=\"8\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"4\"/%3E%3Crect width=\"60\" height=\"6\" x=\"40\" y=\"11\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"106\" height=\"6\" x=\"40\" y=\"23\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"153\" height=\"39\" x=\".5\" y=\".5\" stroke=\"%23E5E7EB\" rx=\"7.5\"/%3E%3Cg transform=\"translate(0 46)\"%3E%3Crect width=\"154\" height=\"40\" fill=\"%23FFF\" fill-rule=\"nonzero\" rx=\"8\"/%3E%3Crect width=\"24\" height=\"24\" x=\"8\" y=\"8\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"4\"/%3E%3Crect width=\"60\" height=\"6\" x=\"40\" y=\"11\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"106\" height=\"6\" x=\"40\" y=\"23\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"153\" height=\"39\" x=\".5\" y=\".5\" stroke=\"%23E5E7EB\" rx=\"7.5\"/%3E%3C/g%3E%3Cg transform=\"translate(0 92)\"%3E%3Crect width=\"154\" height=\"40\" fill=\"%23FFF\" fill-rule=\"nonzero\" rx=\"8\"/%3E%3Crect width=\"24\" height=\"24\" x=\"8\" y=\"8\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"4\"/%3E%3Crect width=\"60\" height=\"6\" x=\"40\" y=\"11\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"106\" height=\"6\" x=\"40\" y=\"23\" fill=\"%23E5E7EB\" fill-rule=\"nonzero\" rx=\"3\"/%3E%3Crect width=\"153\" height=\"39\" x=\".5\" y=\".5\" stroke=\"%23E5E7EB\" rx=\"7.5\"/%3E%3C/g%3E%3C/g%3E%3C/svg%3E')}.bb-collections-table-image.error{max-width:4rem;aspect-ratio:1;background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 132 132\"%3E%3Cpath fill=\"%23C23934\" d=\"M65.958253 98.6024096c.8892771 0 1.6486747-.3008433 2.2781928-.9025301.6295181-.6016867.9442771-1.3471687.9442771-2.2364458 0-.8892771-.3008434-1.6486747-.9025301-2.2781927-.6016868-.6295181-1.3471687-.9442771-2.2364458-.9442771-.8892771 0-1.6486747.3008433-2.2781928.9025301-.6295181.6016867-.9442771 1.3471687-.9442771 2.2364458 0 .8892771.3008434 1.6486747.9025301 2.2781927.6016868.6295181 1.3471687.9442771 2.2364458.9442771Zm-1.9462048-21.4698795h3.9759036V29.4216867h-3.9759036v47.7108434ZM66.0894578 132c-9.0716867 0-17.6205421-1.715602-25.6465662-5.146807-8.0260241-3.431205-15.0547591-8.159217-21.0862049-14.184036-6.032771-6.02482-10.76674694-13.0416269-14.20192766-21.0504221C1.71825301 83.6086145 0 75.0504819 0 65.9443373 0 56.8368675 1.71560241 48.303253 5.14680723 40.343494c3.43120482-7.9597591 8.15921687-14.9553615 14.18403617-20.9868073 6.0248193-6.032771 13.0416265-10.76674694 21.0504217-14.20192766C48.3913855 1.71825301 56.9495181 0 66.0556627 0 75.1631325 0 83.696747 1.71560241 91.656506 5.14680723c7.9597591 3.43120482 14.955361 8.15921687 20.986807 14.18403617 6.032771 6.0248193 10.766747 13.0263855 14.201928 21.0046988C130.281747 48.3138554 132 56.8388554 132 65.9105422c0 9.0716867-1.715602 17.6205421-5.146807 25.6465662-3.431205 8.0260241-8.159217 15.0547586-14.184036 21.0862046-6.02482 6.032771-13.0263859 10.766747-21.0046992 14.201928C83.6861446 130.281747 75.1611446 132 66.0894578 132ZM66 128.024096c17.2289157 0 31.873494-6.03012 43.933735-18.090361C121.993976 97.873494 128.024096 83.2289157 128.024096 66c0-17.2289157-6.03012-31.873494-18.090361-43.9337349C97.873494 10.0060241 83.2289157 3.97590361 66 3.97590361c-17.2289157 0-31.873494 6.03012049-43.9337349 18.09036149C10.0060241 34.126506 3.97590361 48.7710843 3.97590361 66c0 17.2289157 6.03012049 31.873494 18.09036149 43.933735C34.126506 121.993976 48.7710843 128.024096 66 128.024096Z\"/%3E%3C/svg%3E')}@keyframes collectionsFadeIn{0%{opacity:0}to{opacity:1}}@keyframes collectionsIndeterminate{0%{left:-35%;right:100%}60%{left:100%;right:-90%}to{left:100%;right:-90%}}@keyframes collectionsBlink{25%{opacity:.6}50%{opacity:.4}75%{opacity:.6}}\n"], dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: BbCollectionsViewer, selector: "[bb-collections-viewer]", inputs: ["collection"] }, { kind: "directive", type: BbCollectionsData, selector: "[bbCollectionsData]" }, { kind: "directive", type: BbCollectionsEmpty, selector: "[bbCollectionsEmpty]" }, { kind: "directive", type: BbCollectionsError, selector: "[bbCollectionsError]" }, { kind: "directive", type: BbCollectionsInitial, selector: "[bbCollectionsInitial]" }, { kind: "component", type: BbCollectionsActions, selector: "bb-collections-actions", inputs: ["collection", "queryPlaceholder", "standalone"] }, { kind: "component", type: BbCollectionsPager, selector: "bb-collections-pager", inputs: ["maxAmountOfButtons", "collection"] }, { kind: "component", type: BbLocalizeString, selector: "[bb-localize-string]", inputs: ["substitutions", "bb-localize-string"] }, { kind: "directive", type: BbTemplate, selector: "[bbTemplate]", inputs: ["bbTemplate"] }, { kind: "pipe", type: BbLocalize, name: "bbLocalize" }, { kind: "directive", type: BbLocalizeTemplate, selector: "[bbLocalizeTemplate]", inputs: ["bbLocalizeTemplate"] }, { kind: "component", type: BbSpinner, selector: "bb-spinner", inputs: ["color", "alt", "disabled"] }, { kind: "pipe", type: AsyncPipe, name: "async" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
38
38
  }
39
39
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTable, decorators: [{
40
40
  type: Component,
@@ -83,4 +83,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
83
83
  type: Input,
84
84
  args: [{ required: true }]
85
85
  }] } });
86
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUvY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUvY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4SSxPQUFPLEVBQUMsb0JBQW9CLEVBQThCLE1BQU0saURBQWlELENBQUM7QUFDbEgsT0FBTyxFQUFDLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQzlFLE9B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ZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgQ29udGVudENoaWxkLCBJbnB1dCwgVGVtcGxhdGVSZWYsIFZpZXdFbmNhcHN1bGF0aW9ufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc0RhdGFSb3csIEJiQ29sbGVjdGlvbnNEYXRhUm93Q29udGV4dH0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9jb2xsZWN0aW9ucy1kYXRhLXJvdy5kaXJlY3RpdmUnO1xuaW1wb3J0IHtCYkxvY2FsaXplLCBCYkxvY2FsaXplU3RyaW5nLCBCYkxvY2FsaXplVGVtcGxhdGV9IGZyb20gJ0BicmF2b2JpdC9iYi1mb3VuZGF0aW9uL2xvY2FsaXplJztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc0FjdGlvbnN9IGZyb20gJy4uL2NvbGxlY3Rpb25zLWFjdGlvbnMvY29sbGVjdGlvbnMtYWN0aW9ucy5jb21wb25lbnQnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zVmlld2VyfSBmcm9tICcuLi9jb2xsZWN0aW9ucy12aWV3ZXIvY29sbGVjdGlvbnMtdmlld2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNJbml0aWFsfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2NvbGxlY3Rpb25zLWluaXRpYWwuZGlyZWN0aXZlJztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc1BhZ2VyfSBmcm9tICcuLi9jb2xsZWN0aW9ucy1wYWdlci9jb2xsZWN0aW9ucy1wYWdlci5jb21wb25lbnQnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zRW1wdHl9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY29sbGVjdGlvbnMtZW1wdHkuZGlyZWN0aXZlJztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc0Vycm9yfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2NvbGxlY3Rpb25zLWVycm9yLmRpcmVjdGl2ZSc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNEYXRhfSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2NvbGxlY3Rpb25zLWRhdGEuZGlyZWN0aXZlJztcbmltcG9ydCB7QXN5bmNQaXBlLCBOZ1RlbXBsYXRlT3V0bGV0fSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtCYlNwaW5uZXJ9IGZyb20gJ0BicmF2b2JpdC9iYi1mb3VuZGF0aW9uL2VsZW1lbnRzJztcbmltcG9ydCB7QmJUZW1wbGF0ZX0gZnJvbSAnQGJyYXZvYml0L2JiLWZvdW5kYXRpb24vdXRpbHMnO1xuaW1wb3J0IHtDb2xsZWN0aW9ufSBmcm9tICcuLi8uLi9jb2xsZWN0aW9uJztcbmltcG9ydCB7QmVoYXZpb3JTdWJqZWN0fSBmcm9tICdyeGpzJztcblxuQENvbXBvbmVudCh7XG4gICAgc2VsZWN0b3I6ICdiYi1jb2xsZWN0aW9ucy10YWJsZScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbGxlY3Rpb25zLXRhYmxlLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2xsZWN0aW9ucy10YWJsZS5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaG9zdDoge1xuICAgICAgICAnY2xhc3MnOiAnYmItY29sbGVjdGlvbnMtdGFibGUnLFxuICAgICAgICAnW2NsYXNzLmluY2x1ZGUtdmVydGljYWwtbGluZXNdJzogJ2luY2x1ZGVWZXJ0aWNhbExpbmVzJ1xuICAgIH0sXG4gICAgcHJlc2VydmVXaGl0ZXNwYWNlczogZmFsc2UsXG4gICAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIE5nVGVtcGxhdGVPdXRsZXQsXG4gICAgICAgIEJiQ29sbGVjdGlvbnNWaWV3ZXIsXG4gICAgICAgIEJiQ29sbGVjdGlvbnNEYXRhLFxuICAgICAgICBCYkNvbGxlY3Rpb25zRW1wdHksXG4gICAgICAgIEJiQ29sbGVjdGlvbnNFcnJvcixcbiAgICAgICAgQmJDb2xsZWN0aW9uc0luaXRpYWwsXG4gICAgICAgIEJiQ29sbGVjdGlvbnNBY3Rpb25zLFxuICAgICAgICBCYkNvbGxlY3Rpb25zUGFnZXIsXG4gICAgICAgIEJiTG9jYWxpemVTdHJpbmcsXG4gICAgICAgIEJiVGVtcGxhdGUsXG4gICAgICAgIEJiTG9jYWxpemUsXG4gICAgICAgIEJiTG9jYWxpemVUZW1wbGF0ZSxcbiAgICAgICAgQmJTcGlubmVyLFxuICAgICAgICBBc3luY1BpcGVcbiAgICBdXG59KVxuZXhwb3J0IGNsYXNzIEJiQ29sbGVjdGlvbnNUYWJsZTxUPiB7XG5cbiAgICAvLyBSZWFkb25seSBkYXRhLlxuICAgIHJlYWRvbmx5IGNvbGxlY3Rpb24kID0gbmV3IEJlaGF2aW9yU3ViamVjdDxDb2xsZWN0aW9uPFQ+IHwgbnVsbD4obnVsbCk7XG5cbiAgICAvLyBWaWV3cy5cbiAgICBAQ29udGVudENoaWxkKEJiQ29sbGVjdGlvbnNEYXRhUm93LCB7cmVhZDogVGVtcGxhdGVSZWYsIHN0YXRpYzogZmFsc2V9KSBkYXRhUm93VGVtcGxhdGU/OiBUZW1wbGF0ZVJlZjxCYkNvbGxlY3Rpb25zRGF0YVJvd0NvbnRleHQ8VD4+O1xuXG4gICAgLy8gSW5wdXRzLlxuICAgIEBJbnB1dCgpIHF1ZXJ5UGxhY2Vob2xkZXI6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCgpIGVtcHR5Q29udGVudDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCgpIG5vUmVzdWx0c0NvbnRlbnQ6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgICBASW5wdXQoKSBlcnJvckNvbnRlbnQ6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgICBASW5wdXQoKSB0cmFja0J5UHJvcGVydHk6IHN0cmluZyB8IG51bGwgPSAnaWQnO1xuICAgIEBJbnB1dCh7dHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlfSkgaW5jbHVkZVZlcnRpY2FsTGluZXM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoe3RyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZX0pIGhpZGVBY3Rpb25zOiBib29sZWFuID0gZmFsc2U7XG4gICAgQElucHV0KHt0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGV9KSBoaWRlUGFnZXI6IGJvb2xlYW4gPSBmYWxzZTtcblxuICAgIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KVxuICAgIHNldCBjb2xsZWN0aW9uKGNvbGxlY3Rpb246IENvbGxlY3Rpb248VD4pIHtcbiAgICAgICAgdGhpcy5jb2xsZWN0aW9uJC5uZXh0KGNvbGxlY3Rpb24pO1xuICAgIH1cblxuICAgIGdldCBjb2xsZWN0aW9uKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5jb2xsZWN0aW9uJC5nZXRWYWx1ZSgpO1xuICAgIH1cblxufVxuIiwiQGlmICghaGlkZUFjdGlvbnMpIHtcbiAgICA8YmItY29sbGVjdGlvbnMtYWN0aW9ucyBbY29sbGVjdGlvbl09XCJjb2xsZWN0aW9uXCJcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBbcXVlcnlQbGFjZWhvbGRlcl09XCJxdWVyeVBsYWNlaG9sZGVyXCI+XG4gICAgICAgIDxuZy1jb250ZW50IG5nUHJvamVjdEFzPVwiW2RhdGEtY29sbGVjdGlvbnMtYWN0aW9uXVwiXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdD1cIltkYXRhLWNvbGxlY3Rpb25zLWFjdGlvbl1cIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDxuZy1jb250ZW50IG5nUHJvamVjdEFzPVwiW2RhdGEtY29sbGVjdGlvbnMtcm93XVwiXG4gICAgICAgICAgICAgICAgICAgIHNlbGVjdD1cIltkYXRhLWNvbGxlY3Rpb25zLXJvd11cIj48L25nLWNvbnRlbnQ+XG4gICAgPC9iYi1jb2xsZWN0aW9ucy1hY3Rpb25zPlxufVxuXG48ZGl2IFtjb2xsZWN0aW9uXT1cImNvbGxlY3Rpb25cIlxuICAgICBbY2xhc3MubG9hZGluZ109XCJjb2xsZWN0aW9uPy5sb2FkaW5nJCB8IGFzeW5jXCJcbiAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1jb250YWluZXJcIlxuICAgICBiYi1jb2xsZWN0aW9ucy12aWV3ZXI+XG4gICAgPHRhYmxlICpiYkNvbGxlY3Rpb25zRGF0YT1cImxldCBpdGVtcyA9IGl0ZW1zOyBsZXQgbG9hZGluZyA9IGxvYWRpbmdcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidGhlYWRcIj48L25nLWNvbnRlbnQ+XG4gICAgICAgIDx0Ym9keT5cbiAgICAgICAgICAgIEBmb3IgKGl0ZW0gb2YgaXRlbXM7IHRyYWNrICh0cmFja0J5UHJvcGVydHkgPT09IG51bGwgPyAkaW5kZXggOiBpdGVtW3RyYWNrQnlQcm9wZXJ0eV0pKSB7XG4gICAgICAgICAgICAgICAgPG5nLWNvbnRhaW5lclxuICAgICAgICAgICAgICAgICAgICAqbmdUZW1wbGF0ZU91dGxldD1cImRhdGFSb3dUZW1wbGF0ZTsgY29udGV4dDogeyRpbXBsaWNpdDogaXRlbSwgaXRlbTogaXRlbX1cIj48L25nLWNvbnRhaW5lcj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgPC90Ym9keT5cbiAgICAgICAgPG5nLWNvbnRlbnQgc2VsZWN0PVwidGZvb3RcIj48L25nLWNvbnRlbnQ+XG4gICAgPC90YWJsZT5cbiAgICA8ZGl2ICpiYkNvbGxlY3Rpb25zRW1wdHk9XCJsZXQgcXVlcnkgPSBxdWVyeVwiXG4gICAgICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWluZm9cIj5cbiAgICAgICAgPGRpdiBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWltYWdlIGVtcHR5XCI+PC9kaXY+XG4gICAgICAgIEBpZiAocXVlcnk/Lmxlbmd0aCA+IDApIHtcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbYmJUZW1wbGF0ZV09XCJub1Jlc3VsdHNDb250ZW50XCI+XG4gICAgICAgICAgICAgICAgPHAgW2JiLWxvY2FsaXplLXN0cmluZ109XCIkYW55KG5vUmVzdWx0c0NvbnRlbnQpID8/ICgnY29sbGVjdGlvbi5ub19yZXN1bHRzX2xhYmVsJyB8IGJiTG9jYWxpemUpXCJcbiAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWluZm8tdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICA8c3Ryb25nICpiYkxvY2FsaXplVGVtcGxhdGU9XCIncXVlcnknXCI+e3sgcXVlcnkgPz8gJy4uLicgfX08L3N0cm9uZz5cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIDxuZy10ZW1wbGF0ZSBbYmJUZW1wbGF0ZV09XCJlbXB0eUNvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8cCBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWluZm8tdGV4dFwiPlxuICAgICAgICAgICAgICAgICAgICB7eyAkYW55KGVtcHR5Q29udGVudCkgPz8gKCdjb2xsZWN0aW9uLmVtcHR5X2xhYmVsJyB8IGJiTG9jYWxpemUpIH19XG4gICAgICAgICAgICAgICAgPC9wPlxuICAgICAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICAgICAgfVxuICAgIDwvZGl2PlxuICAgIDxkaXYgKmJiQ29sbGVjdGlvbnNFcnJvcj1cImxldCBlcnJvciA9IGVycm9yXCJcbiAgICAgICAgIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtaW5mb1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtaW1hZ2UgZXJyb3JcIj48L2Rpdj5cbiAgICAgICAgPG5nLXRlbXBsYXRlIFtiYlRlbXBsYXRlXT1cImVycm9yQ29udGVudFwiPlxuICAgICAgICAgICAgPHAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1pbmZvLXRleHRcIj5cbiAgICAgICAgICAgICAgICB7eyAkYW55KGVycm9yQ29udGVudCkgPz8gKCdjb2xsZWN0aW9uLmVycm9yX2xhYmVsJyB8IGJiTG9jYWxpemUpIH19XG4gICAgICAgICAgICA8L3A+XG4gICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqYmJDb2xsZWN0aW9uc0luaXRpYWxcbiAgICAgICAgIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtaW5mb1wiPlxuICAgICAgICA8YmItc3Bpbm5lciBjbGFzcz1cImJsb2NrXCI+PC9iYi1zcGlubmVyPlxuICAgIDwvZGl2PlxuPC9kaXY+XG5cbkBpZiAoIWhpZGVQYWdlcikge1xuICAgIDxmb290ZXIgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1mb290ZXJcIj5cbiAgICAgICAgPGJiLWNvbGxlY3Rpb25zLXBhZ2VyIFtjb2xsZWN0aW9uXT1cImNvbGxlY3Rpb25cIj48L2JiLWNvbGxlY3Rpb25zLXBhZ2VyPlxuICAgIDwvZm9vdGVyPlxufVxuIl19
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUvY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUvY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGdCQUFnQixFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxZQUFZLEVBQUUsS0FBSyxFQUFFLFdBQVcsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN4SSxPQUFPLEVBQUMsb0JBQW9CLEVBQThCLE1BQU0saURBQWlELENBQUM7QUFDbEgsT0FBTyxFQUFDLFVBQVUsRUFBRSxnQkFBZ0IsRUFBRSxrQkFBa0IsRUFBQyxNQUFNLGtDQUFrQyxDQUFDO0FBQ2xHLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLHNEQUFzRCxDQUFDO0FBQzFGLE9BQU8sRUFBQyxtQkFBbUIsRUFBQyxNQUFNLG9EQUFvRCxDQUFDO0FBQ3ZGLE9BQU8sRUFBQyxvQkFBb0IsRUFBQyxNQUFNLGdEQUFnRCxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLGtEQUFrRCxDQUFDO0FBQ3BGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLDhDQUE4QyxDQUFDO0FBQ2hGLE9BQU8sRUFBQyxpQkFBaUIsRUFBQyxNQUFNLDZDQUE2QyxDQUFDO0FBQzlFLE9B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ZWFuQXR0cmlidXRlLCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgQ29tcG9uZW50LCBDb250ZW50Q2hpbGQsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zRGF0YVJvdywgQmJDb2xsZWN0aW9uc0RhdGFSb3dDb250ZXh0fSBmcm9tICcuLi8uLi9kaXJlY3RpdmVzL2NvbGxlY3Rpb25zLWRhdGEtcm93LmRpcmVjdGl2ZSc7XG5pbXBvcnQge0JiTG9jYWxpemUsIEJiTG9jYWxpemVTdHJpbmcsIEJiTG9jYWxpemVUZW1wbGF0ZX0gZnJvbSAnQGJyYXZvYml0L2JiLWZvdW5kYXRpb24vbG9jYWxpemUnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zQWN0aW9uc30gZnJvbSAnLi4vY29sbGVjdGlvbnMtYWN0aW9ucy9jb2xsZWN0aW9ucy1hY3Rpb25zLmNvbXBvbmVudCc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNWaWV3ZXJ9IGZyb20gJy4uL2NvbGxlY3Rpb25zLXZpZXdlci9jb2xsZWN0aW9ucy12aWV3ZXIuY29tcG9uZW50JztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc0luaXRpYWx9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY29sbGVjdGlvbnMtaW5pdGlhbC5kaXJlY3RpdmUnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zUGFnZXJ9IGZyb20gJy4uL2NvbGxlY3Rpb25zLXBhZ2VyL2NvbGxlY3Rpb25zLXBhZ2VyLmNvbXBvbmVudCc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNFbXB0eX0gZnJvbSAnLi4vLi4vZGlyZWN0aXZlcy9jb2xsZWN0aW9ucy1lbXB0eS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtCYkNvbGxlY3Rpb25zRXJyb3J9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY29sbGVjdGlvbnMtZXJyb3IuZGlyZWN0aXZlJztcbmltcG9ydCB7QmJDb2xsZWN0aW9uc0RhdGF9IGZyb20gJy4uLy4uL2RpcmVjdGl2ZXMvY29sbGVjdGlvbnMtZGF0YS5kaXJlY3RpdmUnO1xuaW1wb3J0IHtBc3luY1BpcGUsIE5nVGVtcGxhdGVPdXRsZXR9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge0JiU3Bpbm5lcn0gZnJvbSAnQGJyYXZvYml0L2JiLWZvdW5kYXRpb24vZWxlbWVudHMnO1xuaW1wb3J0IHtCYlRlbXBsYXRlfSBmcm9tICdAYnJhdm9iaXQvYmItZm91bmRhdGlvbi91dGlscyc7XG5pbXBvcnQge0NvbGxlY3Rpb259IGZyb20gJy4uLy4uL2NvbGxlY3Rpb24nO1xuaW1wb3J0IHtCZWhhdmlvclN1YmplY3R9IGZyb20gJ3J4anMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ2JiLWNvbGxlY3Rpb25zLXRhYmxlJyxcbiAgICB0ZW1wbGF0ZVVybDogJy4vY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50Lmh0bWwnLFxuICAgIHN0eWxlVXJsczogWycuL2NvbGxlY3Rpb25zLXRhYmxlLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7XG4gICAgICAgICdjbGFzcyc6ICdiYi1jb2xsZWN0aW9ucy10YWJsZScsXG4gICAgICAgICdbY2xhc3MuaW5jbHVkZS12ZXJ0aWNhbC1saW5lc10nOiAnaW5jbHVkZVZlcnRpY2FsTGluZXMnXG4gICAgfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgTmdUZW1wbGF0ZU91dGxldCxcbiAgICAgICAgQmJDb2xsZWN0aW9uc1ZpZXdlcixcbiAgICAgICAgQmJDb2xsZWN0aW9uc0RhdGEsXG4gICAgICAgIEJiQ29sbGVjdGlvbnNFbXB0eSxcbiAgICAgICAgQmJDb2xsZWN0aW9uc0Vycm9yLFxuICAgICAgICBCYkNvbGxlY3Rpb25zSW5pdGlhbCxcbiAgICAgICAgQmJDb2xsZWN0aW9uc0FjdGlvbnMsXG4gICAgICAgIEJiQ29sbGVjdGlvbnNQYWdlcixcbiAgICAgICAgQmJMb2NhbGl6ZVN0cmluZyxcbiAgICAgICAgQmJUZW1wbGF0ZSxcbiAgICAgICAgQmJMb2NhbGl6ZSxcbiAgICAgICAgQmJMb2NhbGl6ZVRlbXBsYXRlLFxuICAgICAgICBCYlNwaW5uZXIsXG4gICAgICAgIEFzeW5jUGlwZVxuICAgIF1cbn0pXG5leHBvcnQgY2xhc3MgQmJDb2xsZWN0aW9uc1RhYmxlPFQ+IHtcblxuICAgIC8vIFJlYWRvbmx5IGRhdGEuXG4gICAgcmVhZG9ubHkgY29sbGVjdGlvbiQgPSBuZXcgQmVoYXZpb3JTdWJqZWN0PENvbGxlY3Rpb248VD4gfCBudWxsPihudWxsKTtcblxuICAgIC8vIFZpZXdzLlxuICAgIEBDb250ZW50Q2hpbGQoQmJDb2xsZWN0aW9uc0RhdGFSb3csIHtyZWFkOiBUZW1wbGF0ZVJlZiwgc3RhdGljOiBmYWxzZX0pIGRhdGFSb3dUZW1wbGF0ZT86IFRlbXBsYXRlUmVmPEJiQ29sbGVjdGlvbnNEYXRhUm93Q29udGV4dDxUPj47XG5cbiAgICAvLyBJbnB1dHMuXG4gICAgQElucHV0KCkgcXVlcnlQbGFjZWhvbGRlcjogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gICAgQElucHV0KCkgZW1wdHlDb250ZW50OiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCA9IG51bGw7XG4gICAgQElucHV0KCkgbm9SZXN1bHRzQ29udGVudDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCgpIGVycm9yQ29udGVudDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCgpIHRyYWNrQnlQcm9wZXJ0eTogc3RyaW5nIHwgbnVsbCA9ICdpZCc7XG4gICAgQElucHV0KHt0cmFuc2Zvcm06IGJvb2xlYW5BdHRyaWJ1dGV9KSBpbmNsdWRlVmVydGljYWxMaW5lczogYm9vbGVhbiA9IGZhbHNlO1xuICAgIEBJbnB1dCh7dHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlfSkgaGlkZUFjdGlvbnM6IGJvb2xlYW4gPSBmYWxzZTtcbiAgICBASW5wdXQoe3RyYW5zZm9ybTogYm9vbGVhbkF0dHJpYnV0ZX0pIGhpZGVQYWdlcjogYm9vbGVhbiA9IGZhbHNlO1xuXG4gICAgQElucHV0KHtyZXF1aXJlZDogdHJ1ZX0pXG4gICAgc2V0IGNvbGxlY3Rpb24oY29sbGVjdGlvbjogQ29sbGVjdGlvbjxUPikge1xuICAgICAgICB0aGlzLmNvbGxlY3Rpb24kLm5leHQoY29sbGVjdGlvbik7XG4gICAgfVxuXG4gICAgZ2V0IGNvbGxlY3Rpb24oKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmNvbGxlY3Rpb24kLmdldFZhbHVlKCk7XG4gICAgfVxuXG59XG4iLCJAaWYgKCFoaWRlQWN0aW9ucykge1xuICAgIDxiYi1jb2xsZWN0aW9ucy1hY3Rpb25zIFtjb2xsZWN0aW9uXT1cImNvbGxlY3Rpb25cIlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIFtxdWVyeVBsYWNlaG9sZGVyXT1cInF1ZXJ5UGxhY2Vob2xkZXJcIj5cbiAgICAgICAgPG5nLWNvbnRlbnQgbmdQcm9qZWN0QXM9XCJbZGF0YS1jb2xsZWN0aW9ucy1hY3Rpb25dXCJcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0PVwiW2RhdGEtY29sbGVjdGlvbnMtYWN0aW9uXVwiPjwvbmctY29udGVudD5cbiAgICAgICAgPG5nLWNvbnRlbnQgbmdQcm9qZWN0QXM9XCJbZGF0YS1jb2xsZWN0aW9ucy1yb3ddXCJcbiAgICAgICAgICAgICAgICAgICAgc2VsZWN0PVwiW2RhdGEtY29sbGVjdGlvbnMtcm93XVwiPjwvbmctY29udGVudD5cbiAgICA8L2JiLWNvbGxlY3Rpb25zLWFjdGlvbnM+XG59XG5cbjxkaXYgW2NvbGxlY3Rpb25dPVwiY29sbGVjdGlvblwiXG4gICAgIFtjbGFzcy5sb2FkaW5nXT1cImNvbGxlY3Rpb24/LmxvYWRpbmckIHwgYXN5bmNcIlxuICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWNvbnRhaW5lclwiXG4gICAgIGJiLWNvbGxlY3Rpb25zLXZpZXdlcj5cbiAgICA8dGFibGUgKmJiQ29sbGVjdGlvbnNEYXRhPVwibGV0IGl0ZW1zID0gaXRlbXM7IGxldCBsb2FkaW5nID0gbG9hZGluZ1wiPlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0aGVhZFwiPjwvbmctY29udGVudD5cbiAgICAgICAgPHRib2R5PlxuICAgICAgICAgICAgQGZvciAoaXRlbSBvZiBpdGVtczsgdHJhY2sgKHRyYWNrQnlQcm9wZXJ0eSA9PT0gbnVsbCA/ICRpbmRleCA6IGl0ZW1bdHJhY2tCeVByb3BlcnR5XSkpIHtcbiAgICAgICAgICAgICAgICA8bmctY29udGFpbmVyXG4gICAgICAgICAgICAgICAgICAgICpuZ1RlbXBsYXRlT3V0bGV0PVwiZGF0YVJvd1RlbXBsYXRlOyBjb250ZXh0OiB7JGltcGxpY2l0OiBpdGVtLCBpdGVtOiBpdGVtfVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgICAgICAgfVxuICAgICAgICA8L3Rib2R5PlxuICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJ0Zm9vdFwiPjwvbmctY29udGVudD5cbiAgICA8L3RhYmxlPlxuICAgIDxkaXYgKmJiQ29sbGVjdGlvbnNFbXB0eT1cImxldCBxdWVyeSA9IHF1ZXJ5XCJcbiAgICAgICAgIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtaW5mb1wiPlxuICAgICAgICA8ZGl2IGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtaW1hZ2UgZW1wdHlcIj48L2Rpdj5cbiAgICAgICAgQGlmIChxdWVyeT8ubGVuZ3RoID4gMCkge1xuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtiYlRlbXBsYXRlXT1cIm5vUmVzdWx0c0NvbnRlbnRcIj5cbiAgICAgICAgICAgICAgICA8cCBbYmItbG9jYWxpemUtc3RyaW5nXT1cIiRhbnkobm9SZXN1bHRzQ29udGVudCkgPz8gKCdjb2xsZWN0aW9uLm5vX3Jlc3VsdHNfbGFiZWwnIHwgYmJMb2NhbGl6ZSlcIlxuICAgICAgICAgICAgICAgICAgIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtaW5mby10ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIDxzdHJvbmcgKmJiTG9jYWxpemVUZW1wbGF0ZT1cIidxdWVyeSdcIj57eyBxdWVyeSA/PyAnLi4uJyB9fTwvc3Ryb25nPlxuICAgICAgICAgICAgICAgIDwvcD5cbiAgICAgICAgICAgIDwvbmctdGVtcGxhdGU+XG4gICAgICAgIH0gQGVsc2Uge1xuICAgICAgICAgICAgPG5nLXRlbXBsYXRlIFtiYlRlbXBsYXRlXT1cImVtcHR5Q29udGVudFwiPlxuICAgICAgICAgICAgICAgIDxwIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtaW5mby10ZXh0XCI+XG4gICAgICAgICAgICAgICAgICAgIHt7ICRhbnkoZW1wdHlDb250ZW50KSA/PyAoJ2NvbGxlY3Rpb24uZW1wdHlfbGFiZWwnIHwgYmJMb2NhbGl6ZSkgfX1cbiAgICAgICAgICAgICAgICA8L3A+XG4gICAgICAgICAgICA8L25nLXRlbXBsYXRlPlxuICAgICAgICB9XG4gICAgPC9kaXY+XG4gICAgPGRpdiAqYmJDb2xsZWN0aW9uc0Vycm9yPVwibGV0IGVycm9yID0gZXJyb3JcIlxuICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1pbmZvXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1pbWFnZSBlcnJvclwiPjwvZGl2PlxuICAgICAgICA8bmctdGVtcGxhdGUgW2JiVGVtcGxhdGVdPVwiZXJyb3JDb250ZW50XCI+XG4gICAgICAgICAgICA8cCBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWluZm8tdGV4dFwiPlxuICAgICAgICAgICAgICAgIHt7ICRhbnkoZXJyb3JDb250ZW50KSA/PyAoJ2NvbGxlY3Rpb24uZXJyb3JfbGFiZWwnIHwgYmJMb2NhbGl6ZSkgfX1cbiAgICAgICAgICAgIDwvcD5cbiAgICAgICAgPC9uZy10ZW1wbGF0ZT5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2ICpiYkNvbGxlY3Rpb25zSW5pdGlhbFxuICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1pbmZvXCI+XG4gICAgICAgIDxiYi1zcGlubmVyIGNsYXNzPVwiYmxvY2tcIj48L2JiLXNwaW5uZXI+XG4gICAgPC9kaXY+XG48L2Rpdj5cblxuQGlmICghaGlkZVBhZ2VyKSB7XG4gICAgPGZvb3RlciBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWZvb3RlclwiPlxuICAgICAgICA8YmItY29sbGVjdGlvbnMtcGFnZXIgW2NvbGxlY3Rpb25dPVwiY29sbGVjdGlvblwiPjwvYmItY29sbGVjdGlvbnMtcGFnZXI+XG4gICAgPC9mb290ZXI+XG59XG4iXX0=
@@ -2,16 +2,14 @@ import { ChangeDetectionStrategy, Component, Input, ViewEncapsulation } from '@a
2
2
  import { BbAvatar } from '@bravobit/bb-foundation/elements';
3
3
  import * as i0 from "@angular/core";
4
4
  export class BbCollectionsTableLabel {
5
- constructor() {
6
- // Inputs.
7
- this.titleLabel = null;
8
- this.descriptionLabel = null;
9
- this.imageUrl = null;
10
- this.alt = null;
11
- this.type = 'image';
12
- }
13
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTableLabel, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbCollectionsTableLabel, isStandalone: true, selector: "[bb-collections-table-label]", inputs: { titleLabel: "titleLabel", descriptionLabel: "descriptionLabel", imageUrl: "imageUrl", alt: "alt", type: "type" }, host: { classAttribute: "bb-collections-table-label" }, ngImport: i0, template: "@switch (type) {\n @case ('avatar') {\n <bb-avatar [title]=\"alt ?? '...'\"\n [src]=\"imageUrl\"\n [size]=\"2\"\n class=\"bb-collections-table-label-avatar\">\n </bb-avatar>\n }\n @case ('content') {\n <ng-content></ng-content>\n }\n @default {\n @if (imageUrl; as src) {\n <div [style.background-image]=\"'url(' + src + ')'\"\n class=\"bb-collections-table-label-image\"></div>\n }\n }\n}\n\n<div class=\"bb-collections-table-label-content\">\n <span class=\"bb-collections-table-label-title\">{{ titleLabel }}</span>\n @if (descriptionLabel) {\n <small class=\"bb-collections-table-label-description\">{{ descriptionLabel }}</small>\n }\n</div>\n", styles: [".bb-collections-table-label{align-items:center;display:inline-flex}a.bb-collections-table-label{text-decoration:none}a.bb-collections-table-label>.bb-collections-table-label-content>.bb-collections-table-label-title,a.bb-collections-table-label:visited>.bb-collections-table-label-content>.bb-collections-table-label-title{text-underline-offset:.25rem;text-decoration-thickness:1px;text-decoration:dotted underline;color:var(--bb-collections-table-label-color)}a.bb-collections-table-label>.bb-collections-table-label-content>.bb-collections-table-label-description,a.bb-collections-table-label:visited>.bb-collections-table-label-content>.bb-collections-table-label-description{color:#758795}a.bb-collections-table-label:hover>.bb-collections-table-label-content>.bb-collections-table-label-title,a.bb-collections-table-label:focus>.bb-collections-table-label-content>.bb-collections-table-label-title{text-decoration-style:solid}.bb-collections-table-label-image,.bb-collections-table-label-avatar{width:2rem;height:2rem;min-width:2rem;min-height:2rem;margin-right:.5rem}.bb-collections-table-label-image{background-size:contain;background-repeat:no-repeat;background-position:center center}.bb-collections-table-label-content{display:block}.bb-collections-table-label-title{display:block;color:#111;font-size:.875rem}.bb-collections-table-label-description{display:block;line-height:1.5;margin-top:.25rem;font-size:.8125rem;color:#758795}\n"], dependencies: [{ kind: "component", type: BbAvatar, selector: "bb-avatar", inputs: ["size", "src", "title", "tintColor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
5
+ // Inputs.
6
+ titleLabel = null;
7
+ descriptionLabel = null;
8
+ imageUrl = null;
9
+ alt = null;
10
+ type = 'image';
11
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTableLabel, deps: [], target: i0.ɵɵFactoryTarget.Component });
12
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "18.1.0", type: BbCollectionsTableLabel, isStandalone: true, selector: "[bb-collections-table-label]", inputs: { titleLabel: "titleLabel", descriptionLabel: "descriptionLabel", imageUrl: "imageUrl", alt: "alt", type: "type" }, host: { classAttribute: "bb-collections-table-label" }, ngImport: i0, template: "@switch (type) {\n @case ('avatar') {\n <bb-avatar [title]=\"alt ?? '...'\"\n [src]=\"imageUrl\"\n [size]=\"2\"\n class=\"bb-collections-table-label-avatar\">\n </bb-avatar>\n }\n @case ('content') {\n <ng-content></ng-content>\n }\n @default {\n @if (imageUrl; as src) {\n <div [style.background-image]=\"'url(' + src + ')'\"\n class=\"bb-collections-table-label-image\"></div>\n }\n }\n}\n\n<div class=\"bb-collections-table-label-content\">\n <span class=\"bb-collections-table-label-title\">{{ titleLabel }}</span>\n @if (descriptionLabel) {\n <small class=\"bb-collections-table-label-description\">{{ descriptionLabel }}</small>\n }\n</div>\n", styles: [".bb-collections-table-label{align-items:center;display:inline-flex}a.bb-collections-table-label{text-decoration:none}a.bb-collections-table-label>.bb-collections-table-label-content>.bb-collections-table-label-title,a.bb-collections-table-label:visited>.bb-collections-table-label-content>.bb-collections-table-label-title{text-underline-offset:.25rem;text-decoration-thickness:1px;text-decoration:dotted underline;color:var(--bb-collections-table-label-color)}a.bb-collections-table-label>.bb-collections-table-label-content>.bb-collections-table-label-description,a.bb-collections-table-label:visited>.bb-collections-table-label-content>.bb-collections-table-label-description{color:#758795}a.bb-collections-table-label:hover>.bb-collections-table-label-content>.bb-collections-table-label-title,a.bb-collections-table-label:focus>.bb-collections-table-label-content>.bb-collections-table-label-title{text-decoration-style:solid}.bb-collections-table-label-image,.bb-collections-table-label-avatar{width:2rem;height:2rem;min-width:2rem;min-height:2rem;margin-right:.5rem}.bb-collections-table-label-image{background-size:contain;background-repeat:no-repeat;background-position:center center}.bb-collections-table-label-content{display:block}.bb-collections-table-label-title{display:block;color:#111;font-size:.875rem}.bb-collections-table-label-description{display:block;line-height:1.5;margin-top:.25rem;font-size:.8125rem;color:#758795}\n"], dependencies: [{ kind: "component", type: BbAvatar, selector: "bb-avatar", inputs: ["size", "src", "title", "tintColor"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
15
13
  }
16
14
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTableLabel, decorators: [{
17
15
  type: Component,
@@ -30,4 +28,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
30
28
  }], type: [{
31
29
  type: Input
32
30
  }] } });
33
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtdGFibGUtbGFiZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUtbGFiZWwvY29sbGVjdGlvbnMtdGFibGUtbGFiZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUtbGFiZWwvY29sbGVjdGlvbnMtdGFibGUtbGFiZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDOztBQWUxRCxNQUFNLE9BQU8sdUJBQXVCO0lBYnBDO1FBZUksVUFBVTtRQUNlLGVBQVUsR0FBcUMsSUFBSSxDQUFDO1FBQ3BFLHFCQUFnQixHQUFxQyxJQUFJLENBQUM7UUFDMUQsYUFBUSxHQUFrQixJQUFJLENBQUM7UUFDL0IsUUFBRyxHQUFrQixJQUFJLENBQUM7UUFDMUIsU0FBSSxHQUFtQyxPQUFPLENBQUM7S0FFM0Q7OEdBVFksdUJBQXVCO2tHQUF2Qix1QkFBdUIsNFFDaEJwQyxneUJBeUJBLDY5Q0RiUSxRQUFROzsyRkFJSCx1QkFBdUI7a0JBYm5DLFNBQVM7K0JBQ0ksOEJBQThCLG1CQUd2Qix1QkFBdUIsQ0FBQyxNQUFNLGlCQUNoQyxpQkFBaUIsQ0FBQyxJQUFJLFFBQy9CLEVBQUMsT0FBTyxFQUFFLDRCQUE0QixFQUFDLHVCQUN4QixLQUFLLFdBQ2pCO3dCQUNMLFFBQVE7cUJBQ1gsY0FDVyxJQUFJOzhCQUtTLFVBQVU7c0JBQWxDLEtBQUs7dUJBQUMsRUFBQyxRQUFRLEVBQUUsSUFBSSxFQUFDO2dCQUNkLGdCQUFnQjtzQkFBeEIsS0FBSztnQkFDRyxRQUFRO3NCQUFoQixLQUFLO2dCQUNHLEdBQUc7c0JBQVgsS0FBSztnQkFDRyxJQUFJO3NCQUFaLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge0NoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIElucHV0LCBUZW1wbGF0ZVJlZiwgVmlld0VuY2Fwc3VsYXRpb259IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHtCYkF2YXRhcn0gZnJvbSAnQGJyYXZvYml0L2JiLWZvdW5kYXRpb24vZWxlbWVudHMnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ1tiYi1jb2xsZWN0aW9ucy10YWJsZS1sYWJlbF0nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jb2xsZWN0aW9ucy10YWJsZS1sYWJlbC5jb21wb25lbnQuaHRtbCcsXG4gICAgc3R5bGVVcmxzOiBbJy4vY29sbGVjdGlvbnMtdGFibGUtbGFiZWwuY29tcG9uZW50LnNjc3MnXSxcbiAgICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICAgIGhvc3Q6IHsnY2xhc3MnOiAnYmItY29sbGVjdGlvbnMtdGFibGUtbGFiZWwnfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBpbXBvcnRzOiBbXG4gICAgICAgIEJiQXZhdGFyXG4gICAgXSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJiQ29sbGVjdGlvbnNUYWJsZUxhYmVsIHtcblxuICAgIC8vIElucHV0cy5cbiAgICBASW5wdXQoe3JlcXVpcmVkOiB0cnVlfSkgdGl0bGVMYWJlbDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCgpIGRlc2NyaXB0aW9uTGFiZWw6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT4gfCBudWxsID0gbnVsbDtcbiAgICBASW5wdXQoKSBpbWFnZVVybDogc3RyaW5nIHwgbnVsbCA9IG51bGw7XG4gICAgQElucHV0KCkgYWx0OiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgICBASW5wdXQoKSB0eXBlOiAnaW1hZ2UnIHwgJ2F2YXRhcicgfCAnY29udGVudCcgPSAnaW1hZ2UnO1xuXG59XG4iLCJAc3dpdGNoICh0eXBlKSB7XG4gICAgQGNhc2UgKCdhdmF0YXInKSB7XG4gICAgICAgIDxiYi1hdmF0YXIgW3RpdGxlXT1cImFsdCA/PyAnLi4uJ1wiXG4gICAgICAgICAgICAgICAgICAgW3NyY109XCJpbWFnZVVybFwiXG4gICAgICAgICAgICAgICAgICAgW3NpemVdPVwiMlwiXG4gICAgICAgICAgICAgICAgICAgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1sYWJlbC1hdmF0YXJcIj5cbiAgICAgICAgPC9iYi1hdmF0YXI+XG4gICAgfVxuICAgIEBjYXNlICgnY29udGVudCcpIHtcbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIH1cbiAgICBAZGVmYXVsdCB7XG4gICAgICAgIEBpZiAoaW1hZ2VVcmw7IGFzIHNyYykge1xuICAgICAgICAgICAgPGRpdiBbc3R5bGUuYmFja2dyb3VuZC1pbWFnZV09XCIndXJsKCcgKyBzcmMgKyAnKSdcIlxuICAgICAgICAgICAgICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWxhYmVsLWltYWdlXCI+PC9kaXY+XG4gICAgICAgIH1cbiAgICB9XG59XG5cbjxkaXYgY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1sYWJlbC1jb250ZW50XCI+XG4gICAgPHNwYW4gY2xhc3M9XCJiYi1jb2xsZWN0aW9ucy10YWJsZS1sYWJlbC10aXRsZVwiPnt7IHRpdGxlTGFiZWwgfX08L3NwYW4+XG4gICAgQGlmIChkZXNjcmlwdGlvbkxhYmVsKSB7XG4gICAgICAgIDxzbWFsbCBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWxhYmVsLWRlc2NyaXB0aW9uXCI+e3sgZGVzY3JpcHRpb25MYWJlbCB9fTwvc21hbGw+XG4gICAgfVxuPC9kaXY+XG4iXX0=
31
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtdGFibGUtbGFiZWwuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUtbGFiZWwvY29sbGVjdGlvbnMtdGFibGUtbGFiZWwuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUtbGFiZWwvY29sbGVjdGlvbnMtdGFibGUtbGFiZWwuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWUsaUJBQWlCLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDeEcsT0FBTyxFQUFDLFFBQVEsRUFBQyxNQUFNLGtDQUFrQyxDQUFDOztBQWUxRCxNQUFNLE9BQU8sdUJBQXVCO0lBRWhDLFVBQVU7SUFDZSxVQUFVLEdBQXFDLElBQUksQ0FBQztJQUNwRSxnQkFBZ0IsR0FBcUMsSUFBSSxDQUFDO0lBQzFELFFBQVEsR0FBa0IsSUFBSSxDQUFDO0lBQy9CLEdBQUcsR0FBa0IsSUFBSSxDQUFDO0lBQzFCLElBQUksR0FBbUMsT0FBTyxDQUFDO3VHQVAvQyx1QkFBdUI7MkZBQXZCLHVCQUF1Qiw0UUNoQnBDLGd5QkF5QkEsNjlDRGJRLFFBQVE7OzJGQUlILHVCQUF1QjtrQkFibkMsU0FBUzsrQkFDSSw4QkFBOEIsbUJBR3ZCLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksUUFDL0IsRUFBQyxPQUFPLEVBQUUsNEJBQTRCLEVBQUMsdUJBQ3hCLEtBQUssV0FDakI7d0JBQ0wsUUFBUTtxQkFDWCxjQUNXLElBQUk7OEJBS1MsVUFBVTtzQkFBbEMsS0FBSzt1QkFBQyxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUM7Z0JBQ2QsZ0JBQWdCO3NCQUF4QixLQUFLO2dCQUNHLFFBQVE7c0JBQWhCLEtBQUs7Z0JBQ0csR0FBRztzQkFBWCxLQUFLO2dCQUNHLElBQUk7c0JBQVosS0FBSyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Q2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENvbXBvbmVudCwgSW5wdXQsIFRlbXBsYXRlUmVmLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JiQXZhdGFyfSBmcm9tICdAYnJhdm9iaXQvYmItZm91bmRhdGlvbi9lbGVtZW50cyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAnW2JiLWNvbGxlY3Rpb25zLXRhYmxlLWxhYmVsXScsXG4gICAgdGVtcGxhdGVVcmw6ICcuL2NvbGxlY3Rpb25zLXRhYmxlLWxhYmVsLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2xsZWN0aW9ucy10YWJsZS1sYWJlbC5jb21wb25lbnQuc2NzcyddLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICAgIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gICAgaG9zdDogeydjbGFzcyc6ICdiYi1jb2xsZWN0aW9ucy10YWJsZS1sYWJlbCd9LFxuICAgIHByZXNlcnZlV2hpdGVzcGFjZXM6IGZhbHNlLFxuICAgIGltcG9ydHM6IFtcbiAgICAgICAgQmJBdmF0YXJcbiAgICBdLFxuICAgIHN0YW5kYWxvbmU6IHRydWVcbn0pXG5leHBvcnQgY2xhc3MgQmJDb2xsZWN0aW9uc1RhYmxlTGFiZWwge1xuXG4gICAgLy8gSW5wdXRzLlxuICAgIEBJbnB1dCh7cmVxdWlyZWQ6IHRydWV9KSB0aXRsZUxhYmVsOiBzdHJpbmcgfCBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCA9IG51bGw7XG4gICAgQElucHV0KCkgZGVzY3JpcHRpb25MYWJlbDogc3RyaW5nIHwgVGVtcGxhdGVSZWY8YW55PiB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCgpIGltYWdlVXJsOiBzdHJpbmcgfCBudWxsID0gbnVsbDtcbiAgICBASW5wdXQoKSBhbHQ6IHN0cmluZyB8IG51bGwgPSBudWxsO1xuICAgIEBJbnB1dCgpIHR5cGU6ICdpbWFnZScgfCAnYXZhdGFyJyB8ICdjb250ZW50JyA9ICdpbWFnZSc7XG5cbn1cbiIsIkBzd2l0Y2ggKHR5cGUpIHtcbiAgICBAY2FzZSAoJ2F2YXRhcicpIHtcbiAgICAgICAgPGJiLWF2YXRhciBbdGl0bGVdPVwiYWx0ID8/ICcuLi4nXCJcbiAgICAgICAgICAgICAgICAgICBbc3JjXT1cImltYWdlVXJsXCJcbiAgICAgICAgICAgICAgICAgICBbc2l6ZV09XCIyXCJcbiAgICAgICAgICAgICAgICAgICBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWxhYmVsLWF2YXRhclwiPlxuICAgICAgICA8L2JiLWF2YXRhcj5cbiAgICB9XG4gICAgQGNhc2UgKCdjb250ZW50Jykge1xuICAgICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgfVxuICAgIEBkZWZhdWx0IHtcbiAgICAgICAgQGlmIChpbWFnZVVybDsgYXMgc3JjKSB7XG4gICAgICAgICAgICA8ZGl2IFtzdHlsZS5iYWNrZ3JvdW5kLWltYWdlXT1cIid1cmwoJyArIHNyYyArICcpJ1wiXG4gICAgICAgICAgICAgICAgIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtbGFiZWwtaW1hZ2VcIj48L2Rpdj5cbiAgICAgICAgfVxuICAgIH1cbn1cblxuPGRpdiBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWxhYmVsLWNvbnRlbnRcIj5cbiAgICA8c3BhbiBjbGFzcz1cImJiLWNvbGxlY3Rpb25zLXRhYmxlLWxhYmVsLXRpdGxlXCI+e3sgdGl0bGVMYWJlbCB9fTwvc3Bhbj5cbiAgICBAaWYgKGRlc2NyaXB0aW9uTGFiZWwpIHtcbiAgICAgICAgPHNtYWxsIGNsYXNzPVwiYmItY29sbGVjdGlvbnMtdGFibGUtbGFiZWwtZGVzY3JpcHRpb25cIj57eyBkZXNjcmlwdGlvbkxhYmVsIH19PC9zbWFsbD5cbiAgICB9XG48L2Rpdj5cbiJdfQ==
@@ -5,16 +5,19 @@ import { Subscription } from 'rxjs';
5
5
  import * as i0 from "@angular/core";
6
6
  import * as i1 from "../collections-table/collections-table.component";
7
7
  export class BbCollectionsTableSorting {
8
+ _name;
9
+ _changeDetectorRef;
10
+ _parent;
11
+ // Readonly data.
12
+ orderedOptions = [null, 'asc', 'desc'];
13
+ // State.
14
+ direction = null;
15
+ // Subscription.
16
+ _subscription = new Subscription();
8
17
  constructor(_name, _changeDetectorRef, _parent) {
9
18
  this._name = _name;
10
19
  this._changeDetectorRef = _changeDetectorRef;
11
20
  this._parent = _parent;
12
- // Readonly data.
13
- this.orderedOptions = [null, 'asc', 'desc'];
14
- // State.
15
- this.direction = null;
16
- // Subscription.
17
- this._subscription = new Subscription();
18
21
  }
19
22
  ngOnInit() {
20
23
  const direction$ = this._parent.collection$.pipe(switchMap(collection => getControlValue(collection.sortControl)), map(value => Array.isArray(value) ? value : [value]), map(value => value?.find(item => item?.name === this._name)), map(sorting => sorting?.direction ?? null), distinctUntilChanged());
@@ -40,8 +43,8 @@ export class BbCollectionsTableSorting {
40
43
  const newIndex = (index + 1) % this.orderedOptions?.length;
41
44
  return this.orderedOptions?.[newIndex] ?? null;
42
45
  }
43
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTableSorting, deps: [{ token: 'bb-collections-table-sorting', attribute: true }, { token: i0.ChangeDetectorRef }, { token: i1.BbCollectionsTable, optional: true }], target: i0.ɵɵFactoryTarget.Component }); }
44
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BbCollectionsTableSorting, isStandalone: true, selector: "th[bb-collections-table-sorting]", host: { listeners: { "click": "onClick()" }, properties: { "class.asc": "direction === 'asc'", "class.desc": "direction === 'desc'" }, classAttribute: "bb-collections-table-sorting" }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".bb-collections-table-sorting{cursor:pointer;-webkit-user-select:none;user-select:none;background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 9 15\" width=\"9\" height=\"15\"%3E%3Cpath fill=\"%23dcdcdc\" d=\"M4.5 0L0 7h9z\"%3E%3C/path%3E%3Cpath fill=\"%23dcdcdc\" d=\"M4.5 15L9 8H0z\"%3E%3C/path%3E%3C/svg%3E');background-repeat:no-repeat;padding-right:2.5rem!important;background-size:.5625rem .9375rem;background-position:center right 1rem;transition:background-color .12s cubic-bezier(0,0,.2,1)}.bb-collections-table-sorting:hover,.bb-collections-table-sorting:focus{background-color:#f4f0f0}.bb-collections-table-sorting:active{background-color:#f0ebeb}.bb-collections-table-sorting.asc{background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 9 15\" width=\"9\" height=\"15\"%3E%3Cpath fill=\"black\" d=\"M4.5 0L0 7h9z\"%3E%3C/path%3E%3Cpath fill=\"%23dcdcdc\" d=\"M4.5 15L9 8H0z\"%3E%3C/path%3E%3C/svg%3E')}.bb-collections-table-sorting.desc{background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 9 15\" width=\"9\" height=\"15\"%3E%3Cpath fill=\"%23dcdcdc\" d=\"M4.5 0L0 7h9z\"%3E%3C/path%3E%3Cpath fill=\"black\" d=\"M4.5 15L9 8H0z\"%3E%3C/path%3E%3C/svg%3E')}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
46
+ static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTableSorting, deps: [{ token: 'bb-collections-table-sorting', attribute: true }, { token: i0.ChangeDetectorRef }, { token: i1.BbCollectionsTable, optional: true }], target: i0.ɵɵFactoryTarget.Component });
47
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.1.0", type: BbCollectionsTableSorting, isStandalone: true, selector: "th[bb-collections-table-sorting]", host: { listeners: { "click": "onClick()" }, properties: { "class.asc": "direction === 'asc'", "class.desc": "direction === 'desc'" }, classAttribute: "bb-collections-table-sorting" }, ngImport: i0, template: "<ng-content></ng-content>\n", styles: [".bb-collections-table-sorting{cursor:pointer;-webkit-user-select:none;user-select:none;background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 9 15\" width=\"9\" height=\"15\"%3E%3Cpath fill=\"%23dcdcdc\" d=\"M4.5 0L0 7h9z\"%3E%3C/path%3E%3Cpath fill=\"%23dcdcdc\" d=\"M4.5 15L9 8H0z\"%3E%3C/path%3E%3C/svg%3E');background-repeat:no-repeat;padding-right:2.5rem!important;background-size:.5625rem .9375rem;background-position:center right 1rem;transition:background-color .12s cubic-bezier(0,0,.2,1)}.bb-collections-table-sorting:hover,.bb-collections-table-sorting:focus{background-color:#f4f0f0}.bb-collections-table-sorting:active{background-color:#f0ebeb}.bb-collections-table-sorting.asc{background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 9 15\" width=\"9\" height=\"15\"%3E%3Cpath fill=\"black\" d=\"M4.5 0L0 7h9z\"%3E%3C/path%3E%3Cpath fill=\"%23dcdcdc\" d=\"M4.5 15L9 8H0z\"%3E%3C/path%3E%3C/svg%3E')}.bb-collections-table-sorting.desc{background-image:url('data:image/svg+xml,%3Csvg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 9 15\" width=\"9\" height=\"15\"%3E%3Cpath fill=\"%23dcdcdc\" d=\"M4.5 0L0 7h9z\"%3E%3C/path%3E%3Cpath fill=\"black\" d=\"M4.5 15L9 8H0z\"%3E%3C/path%3E%3C/svg%3E')}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
45
48
  }
46
49
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImport: i0, type: BbCollectionsTableSorting, decorators: [{
47
50
  type: Component,
@@ -59,4 +62,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.1.0", ngImpor
59
62
  type: HostListener,
60
63
  args: ['click']
61
64
  }] } });
62
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtdGFibGUtc29ydGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2NvbGxlY3Rpb25zL3NyYy9saWIvY29tcG9uZW50cy9jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nL2NvbGxlY3Rpb25zLXRhYmxlLXNvcnRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUtc29ydGluZy9jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQXFCLFFBQVEsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU3SixPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7QUFnQmxDLE1BQU0sT0FBTyx5QkFBeUI7SUFXbEMsWUFBK0QsS0FBYSxFQUN4RCxrQkFBcUMsRUFDekIsT0FBcUM7UUFGTixVQUFLLEdBQUwsS0FBSyxDQUFRO1FBQ3hELHVCQUFrQixHQUFsQixrQkFBa0IsQ0FBbUI7UUFDekIsWUFBTyxHQUFQLE9BQU8sQ0FBOEI7UUFYckUsaUJBQWlCO1FBQ1IsbUJBQWMsR0FBMEIsQ0FBQyxJQUFJLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXZFLFNBQVM7UUFDVCxjQUFTLEdBQTBCLElBQUksQ0FB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ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNUYWJsZX0gZnJvbSAnLi4vY29sbGVjdGlvbnMtdGFibGUvY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge2dldENvbnRyb2xWYWx1ZX0gZnJvbSAnQGJyYXZvYml0L2JiLWZvdW5kYXRpb24vcnhqcyc7XG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhbYmItY29sbGVjdGlvbnMtdGFibGUtc29ydGluZ10nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7XG4gICAgICAgICdjbGFzcyc6ICdiYi1jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nJyxcbiAgICAgICAgJ1tjbGFzcy5hc2NdJzogJ2RpcmVjdGlvbiA9PT0gXFwnYXNjXFwnJyxcbiAgICAgICAgJ1tjbGFzcy5kZXNjXSc6ICdkaXJlY3Rpb24gPT09IFxcJ2Rlc2NcXCcnXG4gICAgfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJiQ29sbGVjdGlvbnNUYWJsZVNvcnRpbmcgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICAvLyBSZWFkb25seSBkYXRhLlxuICAgIHJlYWRvbmx5IG9yZGVyZWRPcHRpb25zOiBbbnVsbCwgJ2FzYycsICdkZXNjJ10gPSBbbnVsbCwgJ2FzYycsICdkZXNjJ107XG5cbiAgICAvLyBTdGF0ZS5cbiAgICBkaXJlY3Rpb246ICdhc2MnIHwgJ2Rlc2MnIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvLyBTdWJzY3JpcHRpb24uXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgY29uc3RydWN0b3IoQEF0dHJpYnV0ZSgnYmItY29sbGVjdGlvbnMtdGFibGUtc29ydGluZycpIHByaXZhdGUgX25hbWU6IHN0cmluZyxcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfcGFyZW50PzogQmJDb2xsZWN0aW9uc1RhYmxlPHVua25vd24+KSB7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiQgPSB0aGlzLl9wYXJlbnQuY29sbGVjdGlvbiQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChjb2xsZWN0aW9uID0+IGdldENvbnRyb2xWYWx1ZShjb2xsZWN0aW9uLnNvcnRDb250cm9sKSksXG4gICAgICAgICAgICBtYXAodmFsdWUgPT4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV0pLFxuICAgICAgICAgICAgbWFwKHZhbHVlID0+IHZhbHVlPy5maW5kKGl0ZW0gPT4gaXRlbT8ubmFtZSA9PT0gdGhpcy5fbmFtZSkpLFxuICAgICAgICAgICAgbWFwKHNvcnRpbmcgPT4gc29ydGluZz8uZGlyZWN0aW9uID8/IG51bGwpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgICApO1xuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb24gPSBkaXJlY3Rpb24kLnN1YnNjcmliZShkaXJlY3Rpb24gPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXJlY3Rpb24gPSBkaXJlY3Rpb247XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbi5hZGQoc3Vic2NyaXB0aW9uKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBvbkNsaWNrKCkge1xuICAgICAgICBpZiAoIXRoaXMuX25hbWUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5leHREaXJlY3Rpb24gPSB0aGlzLmdldE5leHRPcHRpb24odGhpcy5kaXJlY3Rpb24pO1xuICAgICAgICBjb25zdCBjb250cm9sVmFsdWUgPSBuZXh0RGlyZWN0aW9uID09PSBudWxsID8gbnVsbCA6IHtuYW1lOiB0aGlzLl9uYW1lLCBkaXJlY3Rpb246IG5leHREaXJlY3Rpb259O1xuICAgICAgICB0aGlzLl9wYXJlbnQ/LmNvbGxlY3Rpb24/LnNvcnRDb250cm9sPy5zZXRWYWx1ZShjb250cm9sVmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TmV4dE9wdGlvbihkaXJlY3Rpb246IHN0cmluZykge1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMub3JkZXJlZE9wdGlvbnMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbSA9PT0gZGlyZWN0aW9uKTtcbiAgICAgICAgY29uc3QgbmV3SW5kZXggPSAoaW5kZXggKyAxKSAlIHRoaXMub3JkZXJlZE9wdGlvbnM/Lmxlbmd0aDtcbiAgICAgICAgcmV0dXJuIHRoaXMub3JkZXJlZE9wdGlvbnM/LltuZXdJbmRleF0gPz8gbnVsbDtcbiAgICB9XG5cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==
65
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29sbGVjdGlvbnMtdGFibGUtc29ydGluZy5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2NvbGxlY3Rpb25zL3NyYy9saWIvY29tcG9uZW50cy9jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nL2NvbGxlY3Rpb25zLXRhYmxlLXNvcnRpbmcuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9jb2xsZWN0aW9ucy9zcmMvbGliL2NvbXBvbmVudHMvY29sbGVjdGlvbnMtdGFibGUtc29ydGluZy9jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxTQUFTLEVBQUUsdUJBQXVCLEVBQXFCLFNBQVMsRUFBRSxZQUFZLEVBQXFCLFFBQVEsRUFBRSxpQkFBaUIsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUU3SixPQUFPLEVBQUMsb0JBQW9CLEVBQUUsR0FBRyxFQUFFLFNBQVMsRUFBQyxNQUFNLGdCQUFnQixDQUFDO0FBQ3BFLE9BQU8sRUFBQyxlQUFlLEVBQUMsTUFBTSw4QkFBOEIsQ0FBQztBQUM3RCxPQUFPLEVBQUMsWUFBWSxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7QUFnQmxDLE1BQU0sT0FBTyx5QkFBeUI7SUFXNkI7SUFDM0M7SUFDWTtJQVhoQyxpQkFBaUI7SUFDUixjQUFjLEdBQTBCLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUV2RSxTQUFTO0lBQ1QsU0FBUyxHQUEwQixJQUFJLENBQUM7SUFFeEMsZ0JBQWdCO0lBQ1IsYUFBYSxHQUFHLElBQUksWUFBWSxFQUFFLENBQUM7SUFFM0MsWUFBK0QsS0FBYSxFQUN4RCxrQkFBcUMsRUFDekIsT0FBcUM7UUFGTixVQUFLLEdBQUwsS0FB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YnV0ZSwgQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3ksIENoYW5nZURldGVjdG9yUmVmLCBDb21wb25lbnQsIEhvc3RMaXN0ZW5lciwgT25EZXN0cm95LCBPbkluaXQsIE9wdGlvbmFsLCBWaWV3RW5jYXBzdWxhdGlvbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0JiQ29sbGVjdGlvbnNUYWJsZX0gZnJvbSAnLi4vY29sbGVjdGlvbnMtdGFibGUvY29sbGVjdGlvbnMtdGFibGUuY29tcG9uZW50JztcbmltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc3dpdGNoTWFwfSBmcm9tICdyeGpzL29wZXJhdG9ycyc7XG5pbXBvcnQge2dldENvbnRyb2xWYWx1ZX0gZnJvbSAnQGJyYXZvYml0L2JiLWZvdW5kYXRpb24vcnhqcyc7XG5pbXBvcnQge1N1YnNjcmlwdGlvbn0gZnJvbSAncnhqcyc7XG5cbkBDb21wb25lbnQoe1xuICAgIHNlbGVjdG9yOiAndGhbYmItY29sbGVjdGlvbnMtdGFibGUtc29ydGluZ10nLFxuICAgIHRlbXBsYXRlVXJsOiAnLi9jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nLmNvbXBvbmVudC5odG1sJyxcbiAgICBzdHlsZVVybHM6IFsnLi9jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nLmNvbXBvbmVudC5zY3NzJ10sXG4gICAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gICAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgICBob3N0OiB7XG4gICAgICAgICdjbGFzcyc6ICdiYi1jb2xsZWN0aW9ucy10YWJsZS1zb3J0aW5nJyxcbiAgICAgICAgJ1tjbGFzcy5hc2NdJzogJ2RpcmVjdGlvbiA9PT0gXFwnYXNjXFwnJyxcbiAgICAgICAgJ1tjbGFzcy5kZXNjXSc6ICdkaXJlY3Rpb24gPT09IFxcJ2Rlc2NcXCcnXG4gICAgfSxcbiAgICBwcmVzZXJ2ZVdoaXRlc3BhY2VzOiBmYWxzZSxcbiAgICBzdGFuZGFsb25lOiB0cnVlXG59KVxuZXhwb3J0IGNsYXNzIEJiQ29sbGVjdGlvbnNUYWJsZVNvcnRpbmcgaW1wbGVtZW50cyBPbkluaXQsIE9uRGVzdHJveSB7XG5cbiAgICAvLyBSZWFkb25seSBkYXRhLlxuICAgIHJlYWRvbmx5IG9yZGVyZWRPcHRpb25zOiBbbnVsbCwgJ2FzYycsICdkZXNjJ10gPSBbbnVsbCwgJ2FzYycsICdkZXNjJ107XG5cbiAgICAvLyBTdGF0ZS5cbiAgICBkaXJlY3Rpb246ICdhc2MnIHwgJ2Rlc2MnIHwgbnVsbCA9IG51bGw7XG5cbiAgICAvLyBTdWJzY3JpcHRpb24uXG4gICAgcHJpdmF0ZSBfc3Vic2NyaXB0aW9uID0gbmV3IFN1YnNjcmlwdGlvbigpO1xuXG4gICAgY29uc3RydWN0b3IoQEF0dHJpYnV0ZSgnYmItY29sbGVjdGlvbnMtdGFibGUtc29ydGluZycpIHByaXZhdGUgX25hbWU6IHN0cmluZyxcbiAgICAgICAgICAgICAgICBwcml2YXRlIF9jaGFuZ2VEZXRlY3RvclJlZjogQ2hhbmdlRGV0ZWN0b3JSZWYsXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgcHJpdmF0ZSBfcGFyZW50PzogQmJDb2xsZWN0aW9uc1RhYmxlPHVua25vd24+KSB7XG4gICAgfVxuXG4gICAgbmdPbkluaXQoKSB7XG4gICAgICAgIGNvbnN0IGRpcmVjdGlvbiQgPSB0aGlzLl9wYXJlbnQuY29sbGVjdGlvbiQucGlwZShcbiAgICAgICAgICAgIHN3aXRjaE1hcChjb2xsZWN0aW9uID0+IGdldENvbnRyb2xWYWx1ZShjb2xsZWN0aW9uLnNvcnRDb250cm9sKSksXG4gICAgICAgICAgICBtYXAodmFsdWUgPT4gQXJyYXkuaXNBcnJheSh2YWx1ZSkgPyB2YWx1ZSA6IFt2YWx1ZV0pLFxuICAgICAgICAgICAgbWFwKHZhbHVlID0+IHZhbHVlPy5maW5kKGl0ZW0gPT4gaXRlbT8ubmFtZSA9PT0gdGhpcy5fbmFtZSkpLFxuICAgICAgICAgICAgbWFwKHNvcnRpbmcgPT4gc29ydGluZz8uZGlyZWN0aW9uID8/IG51bGwpLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKVxuICAgICAgICApO1xuICAgICAgICBjb25zdCBzdWJzY3JpcHRpb24gPSBkaXJlY3Rpb24kLnN1YnNjcmliZShkaXJlY3Rpb24gPT4ge1xuICAgICAgICAgICAgdGhpcy5kaXJlY3Rpb24gPSBkaXJlY3Rpb247XG4gICAgICAgICAgICB0aGlzLl9jaGFuZ2VEZXRlY3RvclJlZi5tYXJrRm9yQ2hlY2soKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHRoaXMuX3N1YnNjcmlwdGlvbi5hZGQoc3Vic2NyaXB0aW9uKTtcbiAgICB9XG5cbiAgICBuZ09uRGVzdHJveSgpIHtcbiAgICAgICAgdGhpcy5fc3Vic2NyaXB0aW9uPy51bnN1YnNjcmliZSgpO1xuICAgIH1cblxuICAgIEBIb3N0TGlzdGVuZXIoJ2NsaWNrJylcbiAgICBvbkNsaWNrKCkge1xuICAgICAgICBpZiAoIXRoaXMuX25hbWUpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IG5leHREaXJlY3Rpb24gPSB0aGlzLmdldE5leHRPcHRpb24odGhpcy5kaXJlY3Rpb24pO1xuICAgICAgICBjb25zdCBjb250cm9sVmFsdWUgPSBuZXh0RGlyZWN0aW9uID09PSBudWxsID8gbnVsbCA6IHtuYW1lOiB0aGlzLl9uYW1lLCBkaXJlY3Rpb246IG5leHREaXJlY3Rpb259O1xuICAgICAgICB0aGlzLl9wYXJlbnQ/LmNvbGxlY3Rpb24/LnNvcnRDb250cm9sPy5zZXRWYWx1ZShjb250cm9sVmFsdWUpO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0TmV4dE9wdGlvbihkaXJlY3Rpb246IHN0cmluZykge1xuICAgICAgICBjb25zdCBpbmRleCA9IHRoaXMub3JkZXJlZE9wdGlvbnMuZmluZEluZGV4KGl0ZW0gPT4gaXRlbSA9PT0gZGlyZWN0aW9uKTtcbiAgICAgICAgY29uc3QgbmV3SW5kZXggPSAoaW5kZXggKyAxKSAlIHRoaXMub3JkZXJlZE9wdGlvbnM/Lmxlbmd0aDtcbiAgICAgICAgcmV0dXJuIHRoaXMub3JkZXJlZE9wdGlvbnM/LltuZXdJbmRleF0gPz8gbnVsbDtcbiAgICB9XG5cbn1cbiIsIjxuZy1jb250ZW50PjwvbmctY29udGVudD5cbiJdfQ==