@bravobit/bb-foundation 0.32.0 → 0.33.0

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 (161) hide show
  1. package/elements/lib/date-picker/date-picker.component.d.ts +3 -2
  2. package/elements/lib/directives/image-upload.directive.d.ts +28 -0
  3. package/elements/lib/elements.module.d.ts +21 -20
  4. package/elements/public_api.d.ts +1 -0
  5. package/esm2022/auth/lib/auth.interceptor.mjs +3 -3
  6. package/esm2022/auth/lib/auth.module.mjs +4 -4
  7. package/esm2022/auth/lib/auth.service.mjs +3 -3
  8. package/esm2022/auth/lib/directives/authenticated.directive.mjs +3 -3
  9. package/esm2022/auth/lib/guards/anonymous.guard.mjs +3 -3
  10. package/esm2022/auth/lib/guards/authenticated.guard.mjs +3 -3
  11. package/esm2022/collections/lib/collections.module.mjs +4 -4
  12. package/esm2022/collections/lib/components/collections-pager/collections-pager.component.mjs +3 -3
  13. package/esm2022/collections/lib/components/collections-viewer/collections-viewer.component.mjs +3 -3
  14. package/esm2022/collections/lib/components/collections.directive.mjs +12 -12
  15. package/esm2022/combobox/combobox/combobox-container.directive.mjs +3 -3
  16. package/esm2022/combobox/combobox/combobox.component.mjs +3 -3
  17. package/esm2022/combobox/combobox-label.directive.mjs +3 -3
  18. package/esm2022/combobox/combobox-option.directive.mjs +3 -3
  19. package/esm2022/combobox/combobox-panel/combobox-panel.component.mjs +3 -3
  20. package/esm2022/controls/lib/checkbox/checkbox/checkbox.component.mjs +3 -3
  21. package/esm2022/controls/lib/checkbox/checkbox-group/checkbox-group.component.mjs +3 -3
  22. package/esm2022/controls/lib/checkbox/checkbox.module.mjs +4 -4
  23. package/esm2022/controls/lib/control-error/control-error/control-error.component.mjs +3 -3
  24. package/esm2022/controls/lib/control-error/control-error-submit.directive.mjs +3 -3
  25. package/esm2022/controls/lib/control-error/control-error.module.mjs +4 -4
  26. package/esm2022/controls/lib/controls.module.mjs +4 -4
  27. package/esm2022/controls/lib/form-control/form-control/form-control.component.mjs +3 -3
  28. package/esm2022/controls/lib/form-control/form-control-addon/form-control-addon.component.mjs +3 -3
  29. package/esm2022/controls/lib/form-control/form-control-input.directive.mjs +3 -3
  30. package/esm2022/controls/lib/form-control/form-control.module.mjs +4 -4
  31. package/esm2022/controls/lib/radio/radio-button/radio-button.component.mjs +3 -3
  32. package/esm2022/controls/lib/radio/radio-group/radio-group.component.mjs +3 -3
  33. package/esm2022/controls/lib/radio/radio.module.mjs +4 -4
  34. package/esm2022/controls/lib/toggle/toggle/toggle.component.mjs +3 -3
  35. package/esm2022/controls/lib/toggle/toggle-group/toggle-group.component.mjs +3 -3
  36. package/esm2022/controls/lib/toggle/toggle.module.mjs +4 -4
  37. package/esm2022/dashboard/lib/dashboard/dashboard.component.mjs +3 -3
  38. package/esm2022/dashboard/lib/dashboard-header/dashboard-header.component.mjs +3 -3
  39. package/esm2022/dashboard/lib/dashboard-menu/dashboard-menu.component.mjs +3 -3
  40. package/esm2022/dashboard/lib/dashboard-menu-item/dashboard-menu-item.component.mjs +3 -3
  41. package/esm2022/dashboard/lib/dashboard-sidebar/dashboard-sidebar.component.mjs +3 -3
  42. package/esm2022/dashboard/lib/dashboard-sidebar-group/dashboard-sidebar-group.component.mjs +3 -3
  43. package/esm2022/dashboard/lib/dashboard-sidebar-item/dashboard-sidebar-item.component.mjs +3 -3
  44. package/esm2022/dashboard/lib/dashboard.module.mjs +4 -4
  45. package/esm2022/dialog/lib/dialog-actions/dialog-actions.component.mjs +3 -3
  46. package/esm2022/dialog/lib/dialog-confirm/dialog-confirm.component.mjs +3 -3
  47. package/esm2022/dialog/lib/dialog-container/dialog-container.component.mjs +3 -3
  48. package/esm2022/dialog/lib/dialog-header/dialog-header.component.mjs +3 -3
  49. package/esm2022/dialog/lib/dialog-link/dialog-link.component.mjs +3 -3
  50. package/esm2022/dialog/lib/dialog-modal/dialog-modal.component.mjs +3 -3
  51. package/esm2022/dialog/lib/dialog-overlay/dialog-overlay.component.mjs +3 -3
  52. package/esm2022/dialog/lib/dialog.insertion.mjs +3 -3
  53. package/esm2022/dialog/lib/dialog.module.mjs +4 -4
  54. package/esm2022/dialog/lib/dialog.service.mjs +3 -3
  55. package/esm2022/elements/lib/avatar/avatar.component.mjs +3 -3
  56. package/esm2022/elements/lib/button/button.component.mjs +6 -6
  57. package/esm2022/elements/lib/checkbox/checkbox.component.mjs +3 -3
  58. package/esm2022/elements/lib/date-picker/date-picker.component.mjs +9 -12
  59. package/esm2022/elements/lib/directives/addon.directive.mjs +6 -6
  60. package/esm2022/elements/lib/directives/form-submit.directive.mjs +3 -3
  61. package/esm2022/elements/lib/directives/form-submitter.directive.mjs +3 -3
  62. package/esm2022/elements/lib/directives/image-upload.directive.mjs +139 -0
  63. package/esm2022/elements/lib/directives/input.directive.mjs +6 -6
  64. package/esm2022/elements/lib/dropdown/dropdown.component.mjs +6 -6
  65. package/esm2022/elements/lib/elements.module.mjs +9 -5
  66. package/esm2022/elements/lib/file-picker/file-picker.component.mjs +3 -3
  67. package/esm2022/elements/lib/form-control/form-control.component.mjs +3 -3
  68. package/esm2022/elements/lib/form-error/form-error.component.mjs +3 -3
  69. package/esm2022/elements/lib/form-group/form-group.component.mjs +3 -3
  70. package/esm2022/elements/lib/icon/icon.component.mjs +3 -3
  71. package/esm2022/elements/lib/image-picker/image-picker.component.mjs +3 -3
  72. package/esm2022/elements/lib/pipes/file-image.pipe.mjs +3 -3
  73. package/esm2022/elements/lib/pipes/file-size.pipe.mjs +3 -3
  74. package/esm2022/elements/lib/pipes/relative-time.pipe.mjs +3 -3
  75. package/esm2022/elements/lib/spinner/spinner.component.mjs +3 -3
  76. package/esm2022/elements/lib/tag/tag.component.mjs +3 -3
  77. package/esm2022/elements/public_api.mjs +2 -1
  78. package/esm2022/http/lib/http.module.mjs +4 -4
  79. package/esm2022/http/lib/interceptors/base-url.interceptor.mjs +3 -3
  80. package/esm2022/http/lib/interceptors/error.interceptor.mjs +3 -3
  81. package/esm2022/lib/core/functions/array.utils.mjs +7 -0
  82. package/esm2022/lib/core/miscellaneous/regex.mjs +41 -2
  83. package/esm2022/lib/core/services/exif.service.mjs +3 -3
  84. package/esm2022/lib/core/services/file-loader.service.mjs +3 -3
  85. package/esm2022/lib/core/services/files.service.mjs +86 -0
  86. package/esm2022/lib/core/services/image-converter.service.mjs +3 -3
  87. package/esm2022/lib/core/services/languages.service.mjs +3 -3
  88. package/esm2022/lib/core/services/network.service.mjs +5 -5
  89. package/esm2022/lib/core/services/patch.service.mjs +3 -3
  90. package/esm2022/localize/lib/localize.module.mjs +4 -4
  91. package/esm2022/localize/lib/localize.pipe.mjs +3 -3
  92. package/esm2022/localize/lib/localize.service.mjs +3 -3
  93. package/esm2022/localize/lib/views/localize-string/localize-string.component.mjs +3 -3
  94. package/esm2022/localize/lib/views/localize-template.directive.mjs +3 -3
  95. package/esm2022/masking/lib/directives/currency-mask.directive.mjs +3 -3
  96. package/esm2022/masking/lib/directives/date-mask.directive.mjs +3 -3
  97. package/esm2022/masking/lib/directives/input-mask.directive.mjs +3 -3
  98. package/esm2022/masking/lib/masking.module.mjs +4 -4
  99. package/esm2022/masking/lib/masking.service.mjs +3 -3
  100. package/esm2022/notifications/lib/notifications-item/notifications-item.component.mjs +3 -3
  101. package/esm2022/notifications/lib/notifications-list/notifications-list.component.mjs +3 -3
  102. package/esm2022/notifications/lib/notifications.module.mjs +4 -4
  103. package/esm2022/notifications/lib/notifications.service.mjs +3 -3
  104. package/esm2022/permissions/lib/directives/permission.directive.mjs +3 -3
  105. package/esm2022/permissions/lib/guards/permission.guard.mjs +3 -3
  106. package/esm2022/permissions/lib/permissions.module.mjs +4 -4
  107. package/esm2022/permissions/lib/permissions.service.mjs +3 -3
  108. package/esm2022/public_api.mjs +3 -2
  109. package/esm2022/recaptcha/lib/recaptcha/recaptcha.component.mjs +3 -3
  110. package/esm2022/recaptcha/lib/recaptcha-loader.service.mjs +3 -3
  111. package/esm2022/recaptcha/lib/recaptcha.module.mjs +4 -4
  112. package/esm2022/rxjs/lib/observables/get-route-param.observable.mjs +5 -0
  113. package/esm2022/rxjs/public_api.mjs +2 -1
  114. package/esm2022/storage/lib/storage.service.mjs +3 -3
  115. package/esm2022/table/lib/components/table/table.component.mjs +9 -9
  116. package/esm2022/table/lib/components/table-cell/table-cell.component.mjs +3 -3
  117. package/esm2022/table/lib/components/table-header-cell/table-header-cell.component.mjs +3 -3
  118. package/esm2022/table/lib/components/table-pager/table-pager.component.mjs +3 -3
  119. package/esm2022/table/lib/table.module.mjs +4 -4
  120. package/esm2022/theming/lib/theming.directive.mjs +3 -3
  121. package/esm2022/theming/lib/theming.module.mjs +4 -4
  122. package/esm2022/tooltip/lib/tooltip-container/tooltip-container.component.mjs +3 -3
  123. package/esm2022/tooltip/lib/tooltip.directive.mjs +3 -3
  124. package/esm2022/tooltip/lib/tooltip.module.mjs +4 -4
  125. package/esm2022/utils/lib/directives/autosize.directive.mjs +3 -3
  126. package/esm2022/utils/lib/directives/focus-trap.directive.mjs +3 -3
  127. package/esm2022/utils/lib/directives/focus.directive.mjs +3 -3
  128. package/esm2022/utils/lib/directives/template.directive.mjs +3 -3
  129. package/esm2022/utils/lib/utils.module.mjs +4 -4
  130. package/fesm2022/bravobit-bb-foundation-auth.mjs +19 -19
  131. package/fesm2022/bravobit-bb-foundation-collections.mjs +22 -22
  132. package/fesm2022/bravobit-bb-foundation-combobox.mjs +15 -15
  133. package/fesm2022/bravobit-bb-foundation-controls.mjs +57 -57
  134. package/fesm2022/bravobit-bb-foundation-dashboard.mjs +25 -25
  135. package/fesm2022/bravobit-bb-foundation-dialog.mjs +31 -31
  136. package/fesm2022/bravobit-bb-foundation-elements.mjs +223 -88
  137. package/fesm2022/bravobit-bb-foundation-elements.mjs.map +1 -1
  138. package/fesm2022/bravobit-bb-foundation-http.mjs +10 -10
  139. package/fesm2022/bravobit-bb-foundation-localize.mjs +16 -16
  140. package/fesm2022/bravobit-bb-foundation-masking.mjs +16 -16
  141. package/fesm2022/bravobit-bb-foundation-notifications.mjs +13 -13
  142. package/fesm2022/bravobit-bb-foundation-permissions.mjs +13 -13
  143. package/fesm2022/bravobit-bb-foundation-recaptcha.mjs +10 -10
  144. package/fesm2022/bravobit-bb-foundation-rxjs.mjs +5 -1
  145. package/fesm2022/bravobit-bb-foundation-rxjs.mjs.map +1 -1
  146. package/fesm2022/bravobit-bb-foundation-storage.mjs +3 -3
  147. package/fesm2022/bravobit-bb-foundation-table.mjs +22 -22
  148. package/fesm2022/bravobit-bb-foundation-theming.mjs +7 -7
  149. package/fesm2022/bravobit-bb-foundation-tooltip.mjs +10 -10
  150. package/fesm2022/bravobit-bb-foundation-utils.mjs +16 -16
  151. package/fesm2022/bravobit-bb-foundation.mjs +161 -100
  152. package/fesm2022/bravobit-bb-foundation.mjs.map +1 -1
  153. package/lib/core/functions/array.utils.d.ts +1 -0
  154. package/lib/core/miscellaneous/regex.d.ts +1 -0
  155. package/lib/core/services/files.service.d.ts +19 -0
  156. package/package.json +21 -21
  157. package/public_api.d.ts +2 -1
  158. package/rxjs/lib/observables/get-route-param.observable.d.ts +3 -0
  159. package/rxjs/public_api.d.ts +1 -0
  160. package/esm2022/lib/core/services/clipboard.service.mjs +0 -70
  161. package/lib/core/services/clipboard.service.d.ts +0 -18
@@ -11,10 +11,10 @@ export class BbSpinner extends BbSpinnerMixinBase {
11
11
  this.color = '#303f9f';
12
12
  this.alt = 'Loading...';
13
13
  }
14
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbSpinner, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
15
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BbSpinner, selector: "bb-spinner", inputs: { color: "color", alt: "alt", disabled: "disabled" }, host: { classAttribute: "bb-spinner" }, usesInheritance: true, ngImport: i0, template: "<!--\n The spinner element.\n\n This element contains a circle with a 25% bar that spins\n indefinitely. The border color can be set via the \"color\"\n property.\n-->\n<div class=\"bb-spinner-container\">\n <div [style.border-left-color]=\"color\"\n [class.disabled]=\"disabled\"\n class=\"bb-spinner-loader\"\n aria-live=\"assertive\"\n role=\"alert\">\n {{ alt }}\n </div>\n <ng-content select=\"img\"></ng-content>\n</div>\n\n<!--\n The content of the spinner.\n\n This element contains the content of the spinner. The user\n can set the content inside the tag.\n-->\n<span class=\"bb-spinner-content\">\n <ng-content></ng-content>\n</span>\n", styles: [".bb-spinner{color:#565656;padding:20px 0;text-align:center;align-items:center;display:inline-flex;flex-direction:column;justify-content:center}.bb-spinner.block{display:flex}.bb-spinner.inverse .bb-spinner-loader{border-color:#ffffff26}.bb-spinner.inverse .bb-spinner-content{color:#ffffff80}.bb-spinner.small .bb-spinner-loader,.bb-spinner.small .bb-spinner-loader:after{width:20px;height:20px;min-width:20px;min-height:20px}.bb-spinner.small .bb-spinner-loader{border-width:2px}.bb-spinner.small .bb-spinner-content{font-size:12px}.bb-spinner.medium .bb-spinner-loader,.bb-spinner.medium .bb-spinner-loader:after{width:60px;height:60px;min-width:60px;min-height:60px}.bb-spinner.medium .bb-spinner-loader{border-width:4px}.bb-spinner.medium .bb-spinner-content{font-size:16px}.bb-spinner.large .bb-spinner-loader,.bb-spinner.large .bb-spinner-loader:after{width:100px;height:100px;min-width:100px;min-height:100px}.bb-spinner.large .bb-spinner-loader{border-width:6px}.bb-spinner.large .bb-spinner-content{font-size:20px}.bb-spinner.horizontal{text-align:left;flex-direction:row}.bb-spinner.horizontal .bb-spinner-content:not(:empty){margin-left:10px;margin-top:0}.bb-spinner.vertical{text-align:center;flex-direction:column}.bb-spinner.vertical .bb-spinner-content:not(:empty){margin-left:0;margin-top:10px}.bb-spinner-container{display:flex;position:relative}.bb-spinner-container>img{top:20%;left:20%;width:60%;height:60%;position:absolute}.bb-spinner-loader{margin:0;padding:0;overflow:hidden;text-indent:100%;color:transparent;position:relative;display:inline-block;vertical-align:middle;border:4px solid #f2f4f6;animation:1s linear infinite spin}.bb-spinner-loader,.bb-spinner-loader:after{width:60px;height:60px;min-width:60px;min-height:60px;border-radius:50%}.bb-spinner-loader.disabled{cursor:default;-webkit-user-select:none;user-select:none;pointer-events:none;animation-play-state:paused}.bb-spinner-content:not(:empty){font-size:16px;margin-top:10px;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
14
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbSpinner, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
15
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BbSpinner, selector: "bb-spinner", inputs: { color: "color", alt: "alt", disabled: "disabled" }, host: { classAttribute: "bb-spinner" }, usesInheritance: true, ngImport: i0, template: "<!--\n The spinner element.\n\n This element contains a circle with a 25% bar that spins\n indefinitely. The border color can be set via the \"color\"\n property.\n-->\n<div class=\"bb-spinner-container\">\n <div [style.border-left-color]=\"color\"\n [class.disabled]=\"disabled\"\n class=\"bb-spinner-loader\"\n aria-live=\"assertive\"\n role=\"alert\">\n {{ alt }}\n </div>\n <ng-content select=\"img\"></ng-content>\n</div>\n\n<!--\n The content of the spinner.\n\n This element contains the content of the spinner. The user\n can set the content inside the tag.\n-->\n<span class=\"bb-spinner-content\">\n <ng-content></ng-content>\n</span>\n", styles: [".bb-spinner{color:#565656;padding:20px 0;text-align:center;align-items:center;display:inline-flex;flex-direction:column;justify-content:center}.bb-spinner.block{display:flex}.bb-spinner.inverse .bb-spinner-loader{border-color:#ffffff26}.bb-spinner.inverse .bb-spinner-content{color:#ffffff80}.bb-spinner.small .bb-spinner-loader,.bb-spinner.small .bb-spinner-loader:after{width:20px;height:20px;min-width:20px;min-height:20px}.bb-spinner.small .bb-spinner-loader{border-width:2px}.bb-spinner.small .bb-spinner-content{font-size:12px}.bb-spinner.medium .bb-spinner-loader,.bb-spinner.medium .bb-spinner-loader:after{width:60px;height:60px;min-width:60px;min-height:60px}.bb-spinner.medium .bb-spinner-loader{border-width:4px}.bb-spinner.medium .bb-spinner-content{font-size:16px}.bb-spinner.large .bb-spinner-loader,.bb-spinner.large .bb-spinner-loader:after{width:100px;height:100px;min-width:100px;min-height:100px}.bb-spinner.large .bb-spinner-loader{border-width:6px}.bb-spinner.large .bb-spinner-content{font-size:20px}.bb-spinner.horizontal{text-align:left;flex-direction:row}.bb-spinner.horizontal .bb-spinner-content:not(:empty){margin-left:10px;margin-top:0}.bb-spinner.vertical{text-align:center;flex-direction:column}.bb-spinner.vertical .bb-spinner-content:not(:empty){margin-left:0;margin-top:10px}.bb-spinner-container{display:flex;position:relative}.bb-spinner-container>img{top:20%;left:20%;width:60%;height:60%;position:absolute}.bb-spinner-loader{margin:0;padding:0;overflow:hidden;text-indent:100%;color:transparent;position:relative;display:inline-block;vertical-align:middle;border:4px solid #f2f4f6;animation:1s linear infinite spin}.bb-spinner-loader,.bb-spinner-loader:after{width:60px;height:60px;min-width:60px;min-height:60px;border-radius:50%}.bb-spinner-loader.disabled{cursor:default;-webkit-user-select:none;user-select:none;pointer-events:none;animation-play-state:paused}.bb-spinner-content:not(:empty){font-size:16px;margin-top:10px;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
16
16
  }
17
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbSpinner, decorators: [{
17
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbSpinner, decorators: [{
18
18
  type: Component,
19
19
  args: [{ selector: 'bb-spinner', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, host: { 'class': 'bb-spinner' }, inputs: ['color', 'alt', 'disabled'], preserveWhitespaces: false, template: "<!--\n The spinner element.\n\n This element contains a circle with a 25% bar that spins\n indefinitely. The border color can be set via the \"color\"\n property.\n-->\n<div class=\"bb-spinner-container\">\n <div [style.border-left-color]=\"color\"\n [class.disabled]=\"disabled\"\n class=\"bb-spinner-loader\"\n aria-live=\"assertive\"\n role=\"alert\">\n {{ alt }}\n </div>\n <ng-content select=\"img\"></ng-content>\n</div>\n\n<!--\n The content of the spinner.\n\n This element contains the content of the spinner. The user\n can set the content inside the tag.\n-->\n<span class=\"bb-spinner-content\">\n <ng-content></ng-content>\n</span>\n", styles: [".bb-spinner{color:#565656;padding:20px 0;text-align:center;align-items:center;display:inline-flex;flex-direction:column;justify-content:center}.bb-spinner.block{display:flex}.bb-spinner.inverse .bb-spinner-loader{border-color:#ffffff26}.bb-spinner.inverse .bb-spinner-content{color:#ffffff80}.bb-spinner.small .bb-spinner-loader,.bb-spinner.small .bb-spinner-loader:after{width:20px;height:20px;min-width:20px;min-height:20px}.bb-spinner.small .bb-spinner-loader{border-width:2px}.bb-spinner.small .bb-spinner-content{font-size:12px}.bb-spinner.medium .bb-spinner-loader,.bb-spinner.medium .bb-spinner-loader:after{width:60px;height:60px;min-width:60px;min-height:60px}.bb-spinner.medium .bb-spinner-loader{border-width:4px}.bb-spinner.medium .bb-spinner-content{font-size:16px}.bb-spinner.large .bb-spinner-loader,.bb-spinner.large .bb-spinner-loader:after{width:100px;height:100px;min-width:100px;min-height:100px}.bb-spinner.large .bb-spinner-loader{border-width:6px}.bb-spinner.large .bb-spinner-content{font-size:20px}.bb-spinner.horizontal{text-align:left;flex-direction:row}.bb-spinner.horizontal .bb-spinner-content:not(:empty){margin-left:10px;margin-top:0}.bb-spinner.vertical{text-align:center;flex-direction:column}.bb-spinner.vertical .bb-spinner-content:not(:empty){margin-left:0;margin-top:10px}.bb-spinner-container{display:flex;position:relative}.bb-spinner-container>img{top:20%;left:20%;width:60%;height:60%;position:absolute}.bb-spinner-loader{margin:0;padding:0;overflow:hidden;text-indent:100%;color:transparent;position:relative;display:inline-block;vertical-align:middle;border:4px solid #f2f4f6;animation:1s linear infinite spin}.bb-spinner-loader,.bb-spinner-loader:after{width:60px;height:60px;min-width:60px;min-height:60px;border-radius:50%}.bb-spinner-loader.disabled{cursor:default;-webkit-user-select:none;user-select:none;pointer-events:none;animation-play-state:paused}.bb-spinner-content:not(:empty){font-size:16px;margin-top:10px;font-weight:500}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}\n"] }]
20
20
  }], propDecorators: { color: [{
@@ -6,10 +6,10 @@ export class BbTag {
6
6
  // Outputs.
7
7
  this.onClose = new EventEmitter();
8
8
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbTag, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BbTag, selector: "bb-tag", outputs: { onClose: "onClose" }, host: { classAttribute: "bb-tag" }, ngImport: i0, template: "<ng-content></ng-content>\n\n<button *ngIf=\"onClose?.observed\"\n (click)=\"onClose.emit()\"\n type=\"button\">\n Close\n</button>", styles: [".bb-tag{cursor:default;padding:0 7px;font-size:12px;list-style:none;line-height:20px;border-radius:4px;white-space:nowrap;display:inline-block;color:#000000a6;border:1px solid #d9d9d9;background-color:#fafafa;font-variant:tabular-nums;font-feature-settings:\"tnum\"}.bb-tag:not(:last-child){margin-right:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbTag, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BbTag, selector: "bb-tag", outputs: { onClose: "onClose" }, host: { classAttribute: "bb-tag" }, ngImport: i0, template: "<ng-content></ng-content>\n\n<button *ngIf=\"onClose?.observed\"\n (click)=\"onClose.emit()\"\n type=\"button\">\n Close\n</button>", styles: [".bb-tag{cursor:default;padding:0 7px;font-size:12px;list-style:none;line-height:20px;border-radius:4px;white-space:nowrap;display:inline-block;color:#000000a6;border:1px solid #d9d9d9;background-color:#fafafa;font-variant:tabular-nums;font-feature-settings:\"tnum\"}.bb-tag:not(:last-child){margin-right:8px}\n"], dependencies: [{ kind: "directive", type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbTag, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbTag, decorators: [{
13
13
  type: Component,
14
14
  args: [{ selector: 'bb-tag', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, preserveWhitespaces: false, host: { 'class': 'bb-tag' }, template: "<ng-content></ng-content>\n\n<button *ngIf=\"onClose?.observed\"\n (click)=\"onClose.emit()\"\n type=\"button\">\n Close\n</button>", styles: [".bb-tag{cursor:default;padding:0 7px;font-size:12px;list-style:none;line-height:20px;border-radius:4px;white-space:nowrap;display:inline-block;color:#000000a6;border:1px solid #d9d9d9;background-color:#fafafa;font-variant:tabular-nums;font-feature-settings:\"tnum\"}.bb-tag:not(:last-child){margin-right:8px}\n"] }]
15
15
  }], propDecorators: { onClose: [{
@@ -3,6 +3,7 @@ export * from './lib/directives/form-submit.directive';
3
3
  export * from './lib/directives/form-submitter.directive';
4
4
  export * from './lib/directives/input.directive';
5
5
  export * from './lib/directives/addon.directive';
6
+ export * from './lib/directives/image-upload.directive';
6
7
  export * from './lib/pipes/file-size.pipe';
7
8
  export * from './lib/pipes/file-image.pipe';
8
9
  export * from './lib/pipes/relative-time.pipe';
@@ -20,4 +21,4 @@ export * from './lib/image-picker/image-picker.component';
20
21
  export * from './lib/date-picker/date-picker.component';
21
22
  export * from './lib/dropdown/dropdown.component';
22
23
  export * from './lib/elements.interfaces';
23
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZWxlbWVudHMvc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMsNEJBQTRCLENBQUM7QUFDM0MsY0FBYyw2QkFBNkIsQ0FBQztBQUM1QyxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsaUNBQWlDLENBQUM7QUFDaEQsY0FBYywrQkFBK0IsQ0FBQztBQUM5QyxjQUFjLDJCQUEyQixDQUFDO0FBQzFDLGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyx1Q0FBdUMsQ0FBQztBQUN0RCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsbUNBQW1DLENBQUM7QUFDbEQsY0FBYyx5QkFBeUIsQ0FBQztBQUN4QyxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHlDQUF5QyxDQUFDO0FBQ3hELGNBQWMsbUNBQW1DLENBQUM7QUFFbEQsY0FBYywyQkFBMkIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vbGliL2VsZW1lbnRzLm1vZHVsZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2Zvcm0tc3VibWl0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2Zvcm0tc3VibWl0dGVyLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2lucHV0LmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kaXJlY3RpdmVzL2FkZG9uLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9maWxlLXNpemUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9maWxlLWltYWdlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvcmVsYXRpdmUtdGltZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaWNvbi9pY29uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtLWNvbnRyb2wvZm9ybS1jb250cm9sLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtLWdyb3VwL2Zvcm0tZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm0tZXJyb3IvZm9ybS1lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhZy90YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F2YXRhci9hdmF0YXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbGUtcGlja2VyL2ZpbGUtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1waWNrZXIvaW1hZ2UtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZWxlbWVudHMuaW50ZXJmYWNlcyc7XG4iXX0=
24
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vZWxlbWVudHMvc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyx1QkFBdUIsQ0FBQztBQUN0QyxjQUFjLHdDQUF3QyxDQUFDO0FBQ3ZELGNBQWMsMkNBQTJDLENBQUM7QUFDMUQsY0FBYyxrQ0FBa0MsQ0FBQztBQUNqRCxjQUFjLGtDQUFrQyxDQUFDO0FBQ2pELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDZCQUE2QixDQUFDO0FBQzVDLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyxpQ0FBaUMsQ0FBQztBQUNoRCxjQUFjLCtCQUErQixDQUFDO0FBQzlDLGNBQWMsMkJBQTJCLENBQUM7QUFDMUMsY0FBYywyQ0FBMkMsQ0FBQztBQUMxRCxjQUFjLHVDQUF1QyxDQUFDO0FBQ3RELGNBQWMsdUNBQXVDLENBQUM7QUFDdEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUNsRCxjQUFjLHlCQUF5QixDQUFDO0FBQ3hDLGNBQWMsK0JBQStCLENBQUM7QUFDOUMsY0FBYyx5Q0FBeUMsQ0FBQztBQUN4RCxjQUFjLDJDQUEyQyxDQUFDO0FBQzFELGNBQWMseUNBQXlDLENBQUM7QUFDeEQsY0FBYyxtQ0FBbUMsQ0FBQztBQUVsRCxjQUFjLDJCQUEyQixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0ICogZnJvbSAnLi9saWIvZWxlbWVudHMubW9kdWxlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZm9ybS1zdWJtaXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvZm9ybS1zdWJtaXR0ZXIuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvaW5wdXQuZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvYWRkb24uZGlyZWN0aXZlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2RpcmVjdGl2ZXMvaW1hZ2UtdXBsb2FkLmRpcmVjdGl2ZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9maWxlLXNpemUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy9maWxlLWltYWdlLnBpcGUnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvcGlwZXMvcmVsYXRpdmUtdGltZS5waXBlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3NwaW5uZXIvc3Bpbm5lci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvYnV0dG9uL2J1dHRvbi5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvaWNvbi9pY29uLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtLWNvbnRyb2wvZm9ybS1jb250cm9sLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9mb3JtLWdyb3VwL2Zvcm0tZ3JvdXAuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2Zvcm0tZXJyb3IvZm9ybS1lcnJvci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvY2hlY2tib3gvY2hlY2tib3guY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL3RhZy90YWcuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2F2YXRhci9hdmF0YXIuY29tcG9uZW50JztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2ZpbGUtcGlja2VyL2ZpbGUtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9pbWFnZS1waWNrZXIvaW1hZ2UtcGlja2VyLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9kYXRlLXBpY2tlci9kYXRlLXBpY2tlci5jb21wb25lbnQnO1xuZXhwb3J0ICogZnJvbSAnLi9saWIvZHJvcGRvd24vZHJvcGRvd24uY29tcG9uZW50JztcblxuZXhwb3J0ICogZnJvbSAnLi9saWIvZWxlbWVudHMuaW50ZXJmYWNlcyc7XG4iXX0=
@@ -22,11 +22,11 @@ export class HttpModule {
22
22
  ]
23
23
  };
24
24
  }
25
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: HttpModule, deps: [{ token: HttpModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
26
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: HttpModule, imports: [HttpClientModule] }); }
27
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: HttpModule, imports: [HttpClientModule] }); }
25
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: HttpModule, deps: [{ token: HttpModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
26
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: HttpModule, imports: [HttpClientModule] }); }
27
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: HttpModule, imports: [HttpClientModule] }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: HttpModule, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: HttpModule, decorators: [{
30
30
  type: NgModule,
31
31
  args: [{
32
32
  imports: [HttpClientModule]
@@ -52,10 +52,10 @@ export class BaseUrlInterceptor {
52
52
  }
53
53
  return null;
54
54
  }
55
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BaseUrlInterceptor, deps: [{ token: i1.HttpConfig }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
56
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BaseUrlInterceptor }); }
55
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BaseUrlInterceptor, deps: [{ token: i1.HttpConfig }, { token: PLATFORM_ID }], target: i0.ɵɵFactoryTarget.Injectable }); }
56
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BaseUrlInterceptor }); }
57
57
  }
58
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BaseUrlInterceptor, decorators: [{
58
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BaseUrlInterceptor, decorators: [{
59
59
  type: Injectable
60
60
  }], ctorParameters: () => [{ type: i1.HttpConfig }, { type: Object, decorators: [{
61
61
  type: Inject,
@@ -23,10 +23,10 @@ export class ErrorInterceptor {
23
23
  return throwError(() => error);
24
24
  }));
25
25
  }
26
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ErrorInterceptor, deps: [{ token: i1.HttpConfig }], target: i0.ɵɵFactoryTarget.Injectable }); }
27
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ErrorInterceptor }); }
26
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ErrorInterceptor, deps: [{ token: i1.HttpConfig }], target: i0.ɵɵFactoryTarget.Injectable }); }
27
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ErrorInterceptor }); }
28
28
  }
29
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ErrorInterceptor, decorators: [{
29
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ErrorInterceptor, decorators: [{
30
30
  type: Injectable
31
31
  }], ctorParameters: () => [{ type: i1.HttpConfig }] });
32
32
  //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXJyb3IuaW50ZXJjZXB0b3IuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL2h0dHAvc3JjL2xpYi9pbnRlcmNlcHRvcnMvZXJyb3IuaW50ZXJjZXB0b3IudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLGlCQUFpQixFQUE0QyxNQUFNLHNCQUFzQixDQUFDO0FBRWxHLE9BQU8sRUFBQyxTQUFTLEVBQUMsTUFBTSx1QkFBdUIsQ0FBQztBQUNoRCxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDMUMsT0FBTyxFQUFDLFVBQVUsRUFBQyxNQUFNLGVBQWUsQ0FBQztBQUN6QyxPQUFPLEVBQUMsVUFBVSxFQUFDLE1BQU0sTUFBTSxDQUFDOzs7QUFHaEMsTUFBTSxPQUFPLGdCQUFnQjtJQUt6QixZQUFvQixPQUFtQjtRQUFuQixZQUFPLEdBQVAsT0FBTyxDQUFZO1FBSHZDLFNBQVM7UUFDUSxjQUFTLEdBQUcsSUFBSSxDQUFDLE9BQU8sRUFBRSxtQkFBbUIsSUFBSSxLQUFLLENBQUM7SUFHeEUsQ0FBQztJQUVELFNBQVMsQ0FBQyxPQUE2QixFQUFFLElBQWlCO1FBQ3RELE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQzVCLFVBQVUsQ0FBQyxLQUFLLENBQUMsRUFBRTtZQUNmLDRDQUE0QztZQUM1QyxxREFBcUQ7WUFDckQsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLElBQUksS0FBSyxZQUFZLGlCQUFpQixFQUFFLENBQUM7Z0JBQ3hELE1BQU0sTUFBTSxHQUFHLElBQUksU0FBUyxDQUFDLEtBQUssQ0FBQyxDQUFDO2dCQUNwQyxPQUFPLFVBQVUsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUNwQyxDQUFDO1lBRUQscURBQXFEO1lBQ3JELE9BQU8sVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBQ25DLENBQUMsQ0FBQyxDQUNMLENBQUM7SUFDTixDQUFDOzhHQXRCUSxnQkFBZ0I7a0hBQWhCLGdCQUFnQjs7MkZBQWhCLGdCQUFnQjtrQkFENUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7SHR0cEVycm9yUmVzcG9uc2UsIEh0dHBIYW5kbGVyLCBIdHRwSW50ZXJjZXB0b3IsIEh0dHBSZXF1ZXN0fSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQge0h0dHBDb25maWd9IGZyb20gJy4uL2NsYXNzZXMvaHR0cC5jb25maWcnO1xuaW1wb3J0IHtIdHRwRXJyb3J9IGZyb20gJy4uL2NsYXNzZXMvaHR0cC5lcnJvcic7XG5pbXBvcnQge2NhdGNoRXJyb3J9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge3Rocm93RXJyb3J9IGZyb20gJ3J4anMnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgRXJyb3JJbnRlcmNlcHRvciBpbXBsZW1lbnRzIEh0dHBJbnRlcmNlcHRvciB7XG5cbiAgICAvLyBTdGF0ZS5cbiAgICBwcml2YXRlIHJlYWRvbmx5IF9kaXNhYmxlZCA9IHRoaXMuX2NvbmZpZz8uZGlzYWJsZUVycm9yUGFyc2luZyA/PyBmYWxzZTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX2NvbmZpZzogSHR0cENvbmZpZykge1xuICAgIH1cblxuICAgIGludGVyY2VwdChyZXF1ZXN0OiBIdHRwUmVxdWVzdDx1bmtub3duPiwgbmV4dDogSHR0cEhhbmRsZXIpIHtcbiAgICAgICAgcmV0dXJuIG5leHQuaGFuZGxlKHJlcXVlc3QpLnBpcGUoXG4gICAgICAgICAgICBjYXRjaEVycm9yKGVycm9yID0+IHtcbiAgICAgICAgICAgICAgICAvLyBJZiB3ZSBoYXZlIGEgbWF0Y2hpbmcgaHR0cCBlcnJvciByZXNwb25zZVxuICAgICAgICAgICAgICAgIC8vIHJlLW1hcCBpdCB3aXRoIG91ciBjdXN0b20gY2xhc3MgKGlmIG5vdCBkaXNhYmxlZCkuXG4gICAgICAgICAgICAgICAgaWYgKCF0aGlzLl9kaXNhYmxlZCAmJiBlcnJvciBpbnN0YW5jZW9mIEh0dHBFcnJvclJlc3BvbnNlKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHBhcnNlZCA9IG5ldyBIdHRwRXJyb3IoZXJyb3IpO1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gdGhyb3dFcnJvcigoKSA9PiBwYXJzZWQpO1xuICAgICAgICAgICAgICAgIH1cblxuICAgICAgICAgICAgICAgIC8vIFdlIGRpZCBub3QgbWF0Y2ggYW55dGhpbmcsIGp1c3QgcmUtdHJvdyB0aGUgZXJyb3IuXG4gICAgICAgICAgICAgICAgcmV0dXJuIHRocm93RXJyb3IoKCkgPT4gZXJyb3IpO1xuICAgICAgICAgICAgfSlcbiAgICAgICAgKTtcbiAgICB9XG5cbn1cbiJdfQ==
@@ -0,0 +1,7 @@
1
+ export function arrayToMap(items, value) {
2
+ return items.reduce((previous, current) => {
3
+ const key = current?.[value];
4
+ return { ...previous, [key]: current };
5
+ }, {});
6
+ }
7
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXJyYXkudXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL3NyYy9saWIvY29yZS9mdW5jdGlvbnMvYXJyYXkudXRpbHMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsTUFBTSxVQUFVLFVBQVUsQ0FBSSxLQUFVLEVBQUUsS0FBYztJQUNwRCxPQUFPLEtBQUssQ0FBQyxNQUFNLENBQUMsQ0FBQyxRQUFRLEVBQUUsT0FBTyxFQUFFLEVBQUU7UUFDdEMsTUFBTSxHQUFHLEdBQUcsT0FBTyxFQUFFLENBQUMsS0FBSyxDQUFXLENBQUM7UUFDdkMsT0FBTyxFQUFDLEdBQUcsUUFBUSxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsT0FBTyxFQUFDLENBQUM7SUFDekMsQ0FBQyxFQUFxQixFQUFFLENBQUMsQ0FBQztBQUM5QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGZ1bmN0aW9uIGFycmF5VG9NYXA8VD4oaXRlbXM6IFRbXSwgdmFsdWU6IGtleW9mIFQpIHtcbiAgICByZXR1cm4gaXRlbXMucmVkdWNlKChwcmV2aW91cywgY3VycmVudCkgPT4ge1xuICAgICAgICBjb25zdCBrZXkgPSBjdXJyZW50Py5bdmFsdWVdIGFzIHN0cmluZztcbiAgICAgICAgcmV0dXJuIHsuLi5wcmV2aW91cywgW2tleV06IGN1cnJlbnR9O1xuICAgIH0sIDxSZWNvcmQ8c3RyaW5nLCBUPj57fSk7XG59XG4iXX0=
@@ -1,5 +1,44 @@
1
1
  export const BbRegex = {
2
2
  email: /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/,
3
- fullNumber: /^\d*[1-9]\d*$/
3
+ fullNumber: /^\d*[1-9]\d*$/,
4
+ url: new RegExp('^' +
5
+ // protocol identifier (optional)
6
+ // short syntax // still required
7
+ '(?:(?:(?:https?|ftp):)?\\/\\/)' +
8
+ // user:pass BasicAuth (optional)
9
+ '(?:\\S+(?::\\S*)?@)?' +
10
+ '(?:' +
11
+ // IP address exclusion
12
+ // private & local networks
13
+ '(?!(?:10|127)(?:\\.\\d{1,3}){3})' +
14
+ '(?!(?:169\\.254|192\\.168)(?:\\.\\d{1,3}){2})' +
15
+ '(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})' +
16
+ // IP address dotted notation octets
17
+ // excludes loopback network 0.0.0.0
18
+ // excludes reserved space >= 224.0.0.0
19
+ // excludes network & broadcast addresses
20
+ // (first & last IP address of each class)
21
+ '(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])' +
22
+ '(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}' +
23
+ '(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))' +
24
+ '|' +
25
+ // host & domain names, may end with dot
26
+ // can be replaced by a shortest alternative
27
+ // (?![-_])(?:[-\\w\\u00a1-\\uffff]{0,63}[^-_]\\.)+
28
+ '(?:' +
29
+ '(?:' +
30
+ '[a-z0-9\\u00a1-\\uffff]' +
31
+ '[a-z0-9\\u00a1-\\uffff_-]{0,62}' +
32
+ ')?' +
33
+ '[a-z0-9\\u00a1-\\uffff]\\.' +
34
+ ')+' +
35
+ // TLD identifier name, may end with dot
36
+ '(?:[a-z\\u00a1-\\uffff]{2,}\\.?)' +
37
+ ')' +
38
+ // port number (optional)
39
+ '(?::\\d{2,5})?' +
40
+ // resource path (optional)
41
+ '(?:[/?#]\\S*)?' +
42
+ '$', 'i')
4
43
  };
5
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL3NyYy9saWIvY29yZS9taXNjZWxsYW5lb3VzL3JlZ2V4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRztJQUNuQixLQUFLLEVBQUUsd0pBQXdKO0lBQy9KLFVBQVUsRUFBRSxlQUFlO0NBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY29uc3QgQmJSZWdleCA9IHtcbiAgICBlbWFpbDogL14oKFtePD4oKVxcW1xcXVxcXFwuLDs6XFxzQFwiXSsoXFwuW148PigpXFxbXFxdXFxcXC4sOzpcXHNAXCJdKykqKXwoXCIuK1wiKSlAKChcXFtbMC05XXsxLDN9XFwuWzAtOV17MSwzfVxcLlswLTldezEsM31cXC5bMC05XXsxLDN9XSl8KChbYS16QS1aXFwtMC05XStcXC4pK1thLXpBLVpdezIsfSkpJC8sXG4gICAgZnVsbE51bWJlcjogL15cXGQqWzEtOV1cXGQqJC9cbn07XG4iXX0=
44
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVnZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9iYi1mb3VuZGF0aW9uL3NyYy9saWIvY29yZS9taXNjZWxsYW5lb3VzL3JlZ2V4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE1BQU0sQ0FBQyxNQUFNLE9BQU8sR0FBRztJQUNuQixLQUFLLEVBQUUsd0pBQXdKO0lBQy9KLFVBQVUsRUFBRSxlQUFlO0lBQzNCLEdBQUcsRUFBRSxJQUFJLE1BQU0sQ0FDWCxHQUFHO1FBQ0gsaUNBQWlDO1FBQ2pDLGlDQUFpQztRQUNqQyxnQ0FBZ0M7UUFDaEMsaUNBQWlDO1FBQ2pDLHNCQUFzQjtRQUN0QixLQUFLO1FBQ0wsdUJBQXVCO1FBQ3ZCLDJCQUEyQjtRQUMzQixrQ0FBa0M7UUFDbEMsK0NBQStDO1FBQy9DLG9EQUFvRDtRQUNwRCxvQ0FBb0M7UUFDcEMsb0NBQW9DO1FBQ3BDLHVDQUF1QztRQUN2Qyx5Q0FBeUM7UUFDekMsMENBQTBDO1FBQzFDLHdDQUF3QztRQUN4Qyw0Q0FBNEM7UUFDNUMsZ0RBQWdEO1FBQ2hELEdBQUc7UUFDSCx3Q0FBd0M7UUFDeEMsNENBQTRDO1FBQzVDLG1EQUFtRDtRQUNuRCxLQUFLO1FBQ0wsS0FBSztRQUNMLHlCQUF5QjtRQUN6QixpQ0FBaUM7UUFDakMsSUFBSTtRQUNKLDRCQUE0QjtRQUM1QixJQUFJO1FBQ0osd0NBQXdDO1FBQ3hDLGtDQUFrQztRQUNsQyxHQUFHO1FBQ0gseUJBQXlCO1FBQ3pCLGdCQUFnQjtRQUNoQiwyQkFBMkI7UUFDM0IsZ0JBQWdCO1FBQ2hCLEdBQUcsRUFBRSxHQUFHLENBQ1g7Q0FDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IGNvbnN0IEJiUmVnZXggPSB7XG4gICAgZW1haWw6IC9eKChbXjw+KClcXFtcXF1cXFxcLiw7Olxcc0BcIl0rKFxcLltePD4oKVxcW1xcXVxcXFwuLDs6XFxzQFwiXSspKil8KFwiLitcIikpQCgoXFxbWzAtOV17MSwzfVxcLlswLTldezEsM31cXC5bMC05XXsxLDN9XFwuWzAtOV17MSwzfV0pfCgoW2EtekEtWlxcLTAtOV0rXFwuKStbYS16QS1aXXsyLH0pKSQvLFxuICAgIGZ1bGxOdW1iZXI6IC9eXFxkKlsxLTldXFxkKiQvLFxuICAgIHVybDogbmV3IFJlZ0V4cChcbiAgICAgICAgJ14nICtcbiAgICAgICAgLy8gcHJvdG9jb2wgaWRlbnRpZmllciAob3B0aW9uYWwpXG4gICAgICAgIC8vIHNob3J0IHN5bnRheCAvLyBzdGlsbCByZXF1aXJlZFxuICAgICAgICAnKD86KD86KD86aHR0cHM/fGZ0cCk6KT9cXFxcL1xcXFwvKScgK1xuICAgICAgICAvLyB1c2VyOnBhc3MgQmFzaWNBdXRoIChvcHRpb25hbClcbiAgICAgICAgJyg/OlxcXFxTKyg/OjpcXFxcUyopP0ApPycgK1xuICAgICAgICAnKD86JyArXG4gICAgICAgIC8vIElQIGFkZHJlc3MgZXhjbHVzaW9uXG4gICAgICAgIC8vIHByaXZhdGUgJiBsb2NhbCBuZXR3b3Jrc1xuICAgICAgICAnKD8hKD86MTB8MTI3KSg/OlxcXFwuXFxcXGR7MSwzfSl7M30pJyArXG4gICAgICAgICcoPyEoPzoxNjlcXFxcLjI1NHwxOTJcXFxcLjE2OCkoPzpcXFxcLlxcXFxkezEsM30pezJ9KScgK1xuICAgICAgICAnKD8hMTcyXFxcXC4oPzoxWzYtOV18MlxcXFxkfDNbMC0xXSkoPzpcXFxcLlxcXFxkezEsM30pezJ9KScgK1xuICAgICAgICAvLyBJUCBhZGRyZXNzIGRvdHRlZCBub3RhdGlvbiBvY3RldHNcbiAgICAgICAgLy8gZXhjbHVkZXMgbG9vcGJhY2sgbmV0d29yayAwLjAuMC4wXG4gICAgICAgIC8vIGV4Y2x1ZGVzIHJlc2VydmVkIHNwYWNlID49IDIyNC4wLjAuMFxuICAgICAgICAvLyBleGNsdWRlcyBuZXR3b3JrICYgYnJvYWRjYXN0IGFkZHJlc3Nlc1xuICAgICAgICAvLyAoZmlyc3QgJiBsYXN0IElQIGFkZHJlc3Mgb2YgZWFjaCBjbGFzcylcbiAgICAgICAgJyg/OlsxLTldXFxcXGQ/fDFcXFxcZFxcXFxkfDJbMDFdXFxcXGR8MjJbMC0zXSknICtcbiAgICAgICAgJyg/OlxcXFwuKD86MT9cXFxcZHsxLDJ9fDJbMC00XVxcXFxkfDI1WzAtNV0pKXsyfScgK1xuICAgICAgICAnKD86XFxcXC4oPzpbMS05XVxcXFxkP3wxXFxcXGRcXFxcZHwyWzAtNF1cXFxcZHwyNVswLTRdKSknICtcbiAgICAgICAgJ3wnICtcbiAgICAgICAgLy8gaG9zdCAmIGRvbWFpbiBuYW1lcywgbWF5IGVuZCB3aXRoIGRvdFxuICAgICAgICAvLyBjYW4gYmUgcmVwbGFjZWQgYnkgYSBzaG9ydGVzdCBhbHRlcm5hdGl2ZVxuICAgICAgICAvLyAoPyFbLV9dKSg/OlstXFxcXHdcXFxcdTAwYTEtXFxcXHVmZmZmXXswLDYzfVteLV9dXFxcXC4pK1xuICAgICAgICAnKD86JyArXG4gICAgICAgICcoPzonICtcbiAgICAgICAgJ1thLXowLTlcXFxcdTAwYTEtXFxcXHVmZmZmXScgK1xuICAgICAgICAnW2EtejAtOVxcXFx1MDBhMS1cXFxcdWZmZmZfLV17MCw2Mn0nICtcbiAgICAgICAgJyk/JyArXG4gICAgICAgICdbYS16MC05XFxcXHUwMGExLVxcXFx1ZmZmZl1cXFxcLicgK1xuICAgICAgICAnKSsnICtcbiAgICAgICAgLy8gVExEIGlkZW50aWZpZXIgbmFtZSwgbWF5IGVuZCB3aXRoIGRvdFxuICAgICAgICAnKD86W2EtelxcXFx1MDBhMS1cXFxcdWZmZmZdezIsfVxcXFwuPyknICtcbiAgICAgICAgJyknICtcbiAgICAgICAgLy8gcG9ydCBudW1iZXIgKG9wdGlvbmFsKVxuICAgICAgICAnKD86OlxcXFxkezIsNX0pPycgK1xuICAgICAgICAvLyByZXNvdXJjZSBwYXRoIChvcHRpb25hbClcbiAgICAgICAgJyg/OlsvPyNdXFxcXFMqKT8nICtcbiAgICAgICAgJyQnLCAnaSdcbiAgICApXG59O1xuIl19
@@ -151,10 +151,10 @@ export class Exif {
151
151
  image.onload = () => resolve(image);
152
152
  });
153
153
  }
154
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Exif, deps: [{ token: i1.Platform }, { token: i2.FileLoader }], target: i0.ɵɵFactoryTarget.Injectable }); }
155
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Exif, providedIn: 'root' }); }
154
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Exif, deps: [{ token: i1.Platform }, { token: i2.FileLoader }], target: i0.ɵɵFactoryTarget.Injectable }); }
155
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Exif, providedIn: 'root' }); }
156
156
  }
157
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Exif, decorators: [{
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Exif, decorators: [{
158
158
  type: Injectable,
159
159
  args: [{
160
160
  providedIn: 'root'
@@ -75,10 +75,10 @@ export class FileLoader {
75
75
  const blobFile = new Blob([blob], { type: blob?.type });
76
76
  return this.blobToFile(blobFile, name);
77
77
  }
78
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: FileLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
79
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: FileLoader, providedIn: 'root' }); }
78
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: FileLoader, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
79
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: FileLoader, providedIn: 'root' }); }
80
80
  }
81
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: FileLoader, decorators: [{
81
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: FileLoader, decorators: [{
82
82
  type: Injectable,
83
83
  args: [{
84
84
  providedIn: 'root'
@@ -0,0 +1,86 @@
1
+ import { Inject, Injectable, Optional } from '@angular/core';
2
+ import { WINDOW } from '../tokens/window.token';
3
+ import * as i0 from "@angular/core";
4
+ import * as i1 from "@angular/cdk/platform";
5
+ export class Files {
6
+ constructor(_platform, _rendererFactory, _window) {
7
+ this._platform = _platform;
8
+ this._rendererFactory = _rendererFactory;
9
+ this._window = _window;
10
+ this._renderer = this._rendererFactory.createRenderer(null, null);
11
+ }
12
+ download(blobOrFile, name) {
13
+ if (!this._platform.isBrowser) {
14
+ return;
15
+ }
16
+ const anchor = this.createAnchorElement(blobOrFile, name);
17
+ this.revokeUrlAndPressAnchor(anchor);
18
+ }
19
+ fromDataUri(dataUri, name) {
20
+ if (!dataUri) {
21
+ return null;
22
+ }
23
+ try {
24
+ const byteString = this._window.atob(dataUri.split(',')[1]);
25
+ // Separate out the mime component.
26
+ const mimeString = dataUri
27
+ .split(',')[0]
28
+ .split(':')[1]
29
+ .split(';')[0];
30
+ // Write the bytes of the string to an ArrayBuffer.
31
+ const arrayBuffer = new ArrayBuffer(byteString.length);
32
+ const uint8Array = new Uint8Array(arrayBuffer);
33
+ for (let index = 0; index < byteString.length; index++) {
34
+ uint8Array[index] = byteString.charCodeAt(index);
35
+ }
36
+ const dataView = new DataView(arrayBuffer);
37
+ const blob = new Blob([dataView.buffer], { type: mimeString });
38
+ return this.create(blob, name);
39
+ }
40
+ catch {
41
+ return null;
42
+ }
43
+ }
44
+ create(blob, name) {
45
+ if (!navigator['msSaveBlob']) {
46
+ return new File([blob], name, { lastModified: Date.now(), type: blob?.type });
47
+ }
48
+ const anyBlob = new Blob([blob], { type: blob?.type });
49
+ anyBlob.lastModifiedDate = new Date();
50
+ anyBlob.name = name;
51
+ return anyBlob;
52
+ }
53
+ createAnchorElement(blobOrFile, name) {
54
+ const anchor = this._renderer.createElement('a');
55
+ this._renderer.setProperty(anchor, 'download', name ?? blobOrFile?.['name']);
56
+ this._renderer.setProperty(anchor, 'rel', 'noopener');
57
+ this._renderer.setProperty(anchor, 'href', URL.createObjectURL(blobOrFile));
58
+ return anchor;
59
+ }
60
+ revokeUrlAndPressAnchor(anchor) {
61
+ setTimeout(() => URL.revokeObjectURL(anchor?.href), 40_000);
62
+ setTimeout(() => this.pressAnchor(anchor), 0);
63
+ }
64
+ pressAnchor(anchor) {
65
+ try {
66
+ anchor.dispatchEvent(new MouseEvent('click'));
67
+ }
68
+ catch {
69
+ anchor.click();
70
+ }
71
+ }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Files, deps: [{ token: i1.Platform }, { token: i0.RendererFactory2 }, { token: WINDOW, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
73
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Files, providedIn: 'root' }); }
74
+ }
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Files, decorators: [{
76
+ type: Injectable,
77
+ args: [{
78
+ providedIn: 'root'
79
+ }]
80
+ }], ctorParameters: () => [{ type: i1.Platform }, { type: i0.RendererFactory2 }, { type: Window, decorators: [{
81
+ type: Optional
82
+ }, {
83
+ type: Inject,
84
+ args: [WINDOW]
85
+ }] }] });
86
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZmlsZXMuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2JiLWZvdW5kYXRpb24vc3JjL2xpYi9jb3JlL3NlcnZpY2VzL2ZpbGVzLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFtQixNQUFNLGVBQWUsQ0FBQztBQUU3RSxPQUFPLEVBQUMsTUFBTSxFQUFDLE1BQU0sd0JBQXdCLENBQUM7OztBQUs5QyxNQUFNLE9BQU8sS0FBSztJQUlkLFlBQW9CLFNBQW1CLEVBQ25CLGdCQUFrQyxFQUNOLE9BQWU7UUFGM0MsY0FBUyxHQUFULFNBQVMsQ0FBVTtRQUNuQixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWtCO1FBQ04sWUFBTyxHQUFQLE9BQU8sQ0FBUTtRQUo5QyxjQUFTLEdBQUcsSUFBSSxDQUFDLGdCQUFnQixDQUFDLGNBQWMsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7SUFLOUUsQ0FBQztJQUlELFFBQVEsQ0FBQyxVQUF1QixFQUFFLElBQWE7UUFDM0MsSUFBSSxDQUFDLElBQUksQ0FBQyxTQUFTLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDNUIsT0FBTztRQUNYLENBQUM7UUFFRCxNQUFNLE1BQU0sR0FBRyxJQUFJLENBQUMsbUJBQW1CLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQzFELElBQUksQ0FBQyx1QkFBdUIsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUN6QyxDQUFDO0lBRUQsV0FBVyxDQUFDLE9BQWUsRUFBRSxJQUFZO1FBQ3JDLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztZQUNYLE9BQU8sSUFBSSxDQUFDO1FBQ2hCLENBQUM7UUFFRCxJQUFJLENBQUM7WUFDRCxNQUFNLFVBQVUsR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFNUQsbUNBQW1DO1lBQ25DLE1BQU0sVUFBVSxHQUFHLE9BQU87aUJBQ3JCLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUM7aUJBQ2IsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztpQkFDYixLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFFbkIsbURBQW1EO1lBQ25ELE1BQU0sV0FBVyxHQUFHLElBQUksV0FBVyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQztZQUN2RCxNQUFNLFVBQVUsR0FBRyxJQUFJLFVBQVUsQ0FBQyxXQUFXLENBQUMsQ0FBQztZQUMvQyxLQUFLLElBQUksS0FBSyxHQUFHLENBQUMsRUFBRSxLQUFLLEdBQUcsVUFBVSxDQUFDLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO2dCQUNyRCxVQUFVLENBQUMsS0FBSyxDQUFDLEdBQUcsVUFBVSxDQUFDLFVBQVUsQ0FBQyxLQUFLLENBQUMsQ0FBQztZQUNyRCxDQUFDO1lBRUQsTUFBTSxRQUFRLEdBQUcsSUFBSSxRQUFRLENBQUMsV0FBVyxDQUFDLENBQUM7WUFDM0MsTUFBTSxJQUFJLEdBQUcsSUFBSSxJQUFJLENBQUMsQ0FBQyxRQUFRLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBQyxJQUFJLEVBQUUsVUFBVSxFQUFDLENBQUMsQ0FBQztZQUM3RCxPQUFPLElBQUksQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDO1FBQ25DLENBQUM7UUFBQyxNQUFNLENBQUM7WUFDTCxPQUFPLElBQUksQ0FBQztRQUNoQixDQUFDO0lBQ0wsQ0FBQztJQUVELE1BQU0sQ0FBQyxJQUFVLEVBQUUsSUFBWTtRQUMzQixJQUFJLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FBQyxFQUFFLENBQUM7WUFDM0IsT0FBTyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLElBQUksRUFBRSxFQUFDLFlBQVksRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQ2hGLENBQUM7UUFFRCxNQUFNLE9BQU8sR0FBUSxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEVBQUMsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUMsQ0FBQyxDQUFDO1FBQzFELE9BQU8sQ0FBQyxnQkFBZ0IsR0FBRyxJQUFJLElBQUksRUFBRSxDQUFDO1FBQ3RDLE9BQU8sQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFDO1FBQ3BCLE9BQU8sT0FBZSxDQUFDO0lBQzNCLENBQUM7SUFFTyxtQkFBbUIsQ0FBQyxVQUF1QixFQUFFLElBQWE7UUFDOUQsTUFBTSxNQUFNLEdBQUcsSUFBSSxDQUFDLFNBQVMsQ0FBQyxhQUFhLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDakQsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsTUFBTSxFQUFFLFVBQVUsRUFBRSxJQUFJLElBQUksVUFBVSxFQUFFLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUM3RSxJQUFJLENBQUMsU0FBUyxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsS0FBSyxFQUFFLFVBQVUsQ0FBQyxDQUFDO1FBQ3RELElBQUksQ0FBQyxTQUFTLENBQUMsV0FBVyxDQUFDLE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxDQUFDLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDO1FBQzVFLE9BQU8sTUFBTSxDQUFDO0lBQ2xCLENBQUM7SUFFTyx1QkFBdUIsQ0FBQyxNQUF5QjtRQUNyRCxVQUFVLENBQUMsR0FBRyxFQUFFLENBQUMsR0FBRyxDQUFDLGVBQWUsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUM7UUFDNUQsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLElBQUksQ0FBQyxXQUFXLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUVPLFdBQVcsQ0FBQyxNQUF5QjtRQUN6QyxJQUFJLENBQUM7WUFDRCxNQUFNLENBQUMsYUFBYSxDQUFDLElBQUksVUFBVSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUM7UUFDbEQsQ0FBQztRQUFDLE1BQU0sQ0FBQztZQUNMLE1BQU0sQ0FBQyxLQUFLLEVBQUUsQ0FBQztRQUNuQixDQUFDO0lBQ0wsQ0FBQzs4R0EvRVEsS0FBSywwRUFNa0IsTUFBTTtrSEFON0IsS0FBSyxjQUZGLE1BQU07OzJGQUVULEtBQUs7a0JBSGpCLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFPZ0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxNQUFNIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsLCBSZW5kZXJlckZhY3RvcnkyfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7UGxhdGZvcm19IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnLi4vdG9rZW5zL3dpbmRvdy50b2tlbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgRmlsZXMge1xuXG4gICAgcHJpdmF0ZSByZWFkb25seSBfcmVuZGVyZXIgPSB0aGlzLl9yZW5kZXJlckZhY3RvcnkuY3JlYXRlUmVuZGVyZXIobnVsbCwgbnVsbCk7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIF9wbGF0Zm9ybTogUGxhdGZvcm0sXG4gICAgICAgICAgICAgICAgcHJpdmF0ZSBfcmVuZGVyZXJGYWN0b3J5OiBSZW5kZXJlckZhY3RvcnkyLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIF93aW5kb3c6IFdpbmRvdykge1xuICAgIH1cblxuICAgIGRvd25sb2FkKGZpbGU6IEZpbGUsIG5hbWU/OiBzdHJpbmcpOiB2b2lkO1xuICAgIGRvd25sb2FkKGJsb2I6IEJsb2IsIG5hbWU6IHN0cmluZyk6IHZvaWQ7XG4gICAgZG93bmxvYWQoYmxvYk9yRmlsZTogRmlsZSB8IEJsb2IsIG5hbWU/OiBzdHJpbmcpIHtcbiAgICAgICAgaWYgKCF0aGlzLl9wbGF0Zm9ybS5pc0Jyb3dzZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGFuY2hvciA9IHRoaXMuY3JlYXRlQW5jaG9yRWxlbWVudChibG9iT3JGaWxlLCBuYW1lKTtcbiAgICAgICAgdGhpcy5yZXZva2VVcmxBbmRQcmVzc0FuY2hvcihhbmNob3IpO1xuICAgIH1cblxuICAgIGZyb21EYXRhVXJpKGRhdGFVcmk6IHN0cmluZywgbmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghZGF0YVVyaSkge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cblxuICAgICAgICB0cnkge1xuICAgICAgICAgICAgY29uc3QgYnl0ZVN0cmluZyA9IHRoaXMuX3dpbmRvdy5hdG9iKGRhdGFVcmkuc3BsaXQoJywnKVsxXSk7XG5cbiAgICAgICAgICAgIC8vIFNlcGFyYXRlIG91dCB0aGUgbWltZSBjb21wb25lbnQuXG4gICAgICAgICAgICBjb25zdCBtaW1lU3RyaW5nID0gZGF0YVVyaVxuICAgICAgICAgICAgICAgIC5zcGxpdCgnLCcpWzBdXG4gICAgICAgICAgICAgICAgLnNwbGl0KCc6JylbMV1cbiAgICAgICAgICAgICAgICAuc3BsaXQoJzsnKVswXTtcblxuICAgICAgICAgICAgLy8gV3JpdGUgdGhlIGJ5dGVzIG9mIHRoZSBzdHJpbmcgdG8gYW4gQXJyYXlCdWZmZXIuXG4gICAgICAgICAgICBjb25zdCBhcnJheUJ1ZmZlciA9IG5ldyBBcnJheUJ1ZmZlcihieXRlU3RyaW5nLmxlbmd0aCk7XG4gICAgICAgICAgICBjb25zdCB1aW50OEFycmF5ID0gbmV3IFVpbnQ4QXJyYXkoYXJyYXlCdWZmZXIpO1xuICAgICAgICAgICAgZm9yIChsZXQgaW5kZXggPSAwOyBpbmRleCA8IGJ5dGVTdHJpbmcubGVuZ3RoOyBpbmRleCsrKSB7XG4gICAgICAgICAgICAgICAgdWludDhBcnJheVtpbmRleF0gPSBieXRlU3RyaW5nLmNoYXJDb2RlQXQoaW5kZXgpO1xuICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICBjb25zdCBkYXRhVmlldyA9IG5ldyBEYXRhVmlldyhhcnJheUJ1ZmZlcik7XG4gICAgICAgICAgICBjb25zdCBibG9iID0gbmV3IEJsb2IoW2RhdGFWaWV3LmJ1ZmZlcl0sIHt0eXBlOiBtaW1lU3RyaW5nfSk7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5jcmVhdGUoYmxvYiwgbmFtZSk7XG4gICAgICAgIH0gY2F0Y2gge1xuICAgICAgICAgICAgcmV0dXJuIG51bGw7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBjcmVhdGUoYmxvYjogQmxvYiwgbmFtZTogc3RyaW5nKSB7XG4gICAgICAgIGlmICghbmF2aWdhdG9yWydtc1NhdmVCbG9iJ10pIHtcbiAgICAgICAgICAgIHJldHVybiBuZXcgRmlsZShbYmxvYl0sIG5hbWUsIHtsYXN0TW9kaWZpZWQ6IERhdGUubm93KCksIHR5cGU6IGJsb2I/LnR5cGV9KTtcbiAgICAgICAgfVxuXG4gICAgICAgIGNvbnN0IGFueUJsb2I6IGFueSA9IG5ldyBCbG9iKFtibG9iXSwge3R5cGU6IGJsb2I/LnR5cGV9KTtcbiAgICAgICAgYW55QmxvYi5sYXN0TW9kaWZpZWREYXRlID0gbmV3IERhdGUoKTtcbiAgICAgICAgYW55QmxvYi5uYW1lID0gbmFtZTtcbiAgICAgICAgcmV0dXJuIGFueUJsb2IgYXMgRmlsZTtcbiAgICB9XG5cbiAgICBwcml2YXRlIGNyZWF0ZUFuY2hvckVsZW1lbnQoYmxvYk9yRmlsZTogRmlsZSB8IEJsb2IsIG5hbWU/OiBzdHJpbmcpIHtcbiAgICAgICAgY29uc3QgYW5jaG9yID0gdGhpcy5fcmVuZGVyZXIuY3JlYXRlRWxlbWVudCgnYScpO1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRQcm9wZXJ0eShhbmNob3IsICdkb3dubG9hZCcsIG5hbWUgPz8gYmxvYk9yRmlsZT8uWyduYW1lJ10pO1xuICAgICAgICB0aGlzLl9yZW5kZXJlci5zZXRQcm9wZXJ0eShhbmNob3IsICdyZWwnLCAnbm9vcGVuZXInKTtcbiAgICAgICAgdGhpcy5fcmVuZGVyZXIuc2V0UHJvcGVydHkoYW5jaG9yLCAnaHJlZicsIFVSTC5jcmVhdGVPYmplY3RVUkwoYmxvYk9yRmlsZSkpO1xuICAgICAgICByZXR1cm4gYW5jaG9yO1xuICAgIH1cblxuICAgIHByaXZhdGUgcmV2b2tlVXJsQW5kUHJlc3NBbmNob3IoYW5jaG9yOiBIVE1MQW5jaG9yRWxlbWVudCkge1xuICAgICAgICBzZXRUaW1lb3V0KCgpID0+IFVSTC5yZXZva2VPYmplY3RVUkwoYW5jaG9yPy5ocmVmKSwgNDBfMDAwKTtcbiAgICAgICAgc2V0VGltZW91dCgoKSA9PiB0aGlzLnByZXNzQW5jaG9yKGFuY2hvciksIDApO1xuICAgIH1cblxuICAgIHByaXZhdGUgcHJlc3NBbmNob3IoYW5jaG9yOiBIVE1MQW5jaG9yRWxlbWVudCkge1xuICAgICAgICB0cnkge1xuICAgICAgICAgICAgYW5jaG9yLmRpc3BhdGNoRXZlbnQobmV3IE1vdXNlRXZlbnQoJ2NsaWNrJykpO1xuICAgICAgICB9IGNhdGNoIHtcbiAgICAgICAgICAgIGFuY2hvci5jbGljaygpO1xuICAgICAgICB9XG4gICAgfVxuXG59XG4iXX0=
@@ -111,10 +111,10 @@ export class ImageConverter {
111
111
  // If the contents is a string convert it to an HTML image element.
112
112
  return this.stringToImage(contents);
113
113
  }
114
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ImageConverter, deps: [{ token: i1.Exif }, { token: i2.Platform }, { token: i3.FileLoader }], target: i0.ɵɵFactoryTarget.Injectable }); }
115
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ImageConverter, providedIn: 'root' }); }
114
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ImageConverter, deps: [{ token: i1.Exif }, { token: i2.Platform }, { token: i3.FileLoader }], target: i0.ɵɵFactoryTarget.Injectable }); }
115
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ImageConverter, providedIn: 'root' }); }
116
116
  }
117
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: ImageConverter, decorators: [{
117
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: ImageConverter, decorators: [{
118
118
  type: Injectable,
119
119
  args: [{
120
120
  providedIn: 'root'
@@ -57,10 +57,10 @@ export class Languages {
57
57
  .filter(item => !!item)
58
58
  .sort((a, b) => b.quality - a.quality);
59
59
  }
60
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Languages, deps: [{ token: ACCEPT_LANGUAGE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
61
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Languages, providedIn: 'root' }); }
60
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Languages, deps: [{ token: ACCEPT_LANGUAGE, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
61
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Languages, providedIn: 'root' }); }
62
62
  }
63
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Languages, decorators: [{
63
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Languages, decorators: [{
64
64
  type: Injectable,
65
65
  args: [{
66
66
  providedIn: 'root'
@@ -31,12 +31,12 @@ export class Network {
31
31
  });
32
32
  // Merge all event so we get notified when
33
33
  // a user is online/offline.
34
- this._online$ = merge(now$, online$, offline$).pipe(map(value => value), distinctUntilChanged(), shareReplay({ refCount: true, bufferSize: 1 }));
34
+ this._online$ = merge(now$, online$, offline$).pipe(distinctUntilChanged(), shareReplay({ refCount: true, bufferSize: 1 }));
35
35
  }
36
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Network, deps: [{ token: i1.Platform }, { token: WINDOW, optional: true }, { token: NAVIGATOR, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
37
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Network, providedIn: 'root' }); }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Network, deps: [{ token: i1.Platform }, { token: WINDOW, optional: true }, { token: NAVIGATOR, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
37
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Network, providedIn: 'root' }); }
38
38
  }
39
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Network, decorators: [{
39
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Network, decorators: [{
40
40
  type: Injectable,
41
41
  args: [{
42
42
  providedIn: 'root'
@@ -52,4 +52,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImpor
52
52
  type: Inject,
53
53
  args: [NAVIGATOR]
54
54
  }] }] });
55
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9zcmMvbGliL2NvcmUvc2VydmljZXMvbmV0d29yay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDdEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXBELE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBSzlDLE1BQU0sT0FBTyxPQUFPO0lBS2hCLFlBQW9CLFNBQW1CLEVBQ1MsT0FBZ0IsRUFDYixVQUFzQjtRQUZyRCxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ1MsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNiLGVBQVUsR0FBVixVQUFVLENBQVk7UUFMekUsUUFBUTtRQUNBLGFBQVEsR0FBd0IsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBSzdDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxNQUFNO1FBQ0YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxtQkFBbUI7UUFDdkIsZ0NBQWdDO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVCLE9BQU87UUFDWCxDQUFDO1FBRUQsc0NBQXNDO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN4RSxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDM0UsTUFBTSxJQUFJLEdBQUcsSUFBSSxVQUFVLENBQUMsVUFBVSxDQUFDLEVBQUU7WUFDckMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3pDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztRQUVILDBDQUEwQztRQUMxQyw0QkFBNEI7UUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQy9DLEdBQUcsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDLEtBQWdCLENBQUMsRUFDOUIsb0JBQW9CLEVBQUUsRUFDdEIsV0FBVyxDQUFDLEVBQUMsUUFBUSxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsQ0FBQyxFQUFDLENBQUMsQ0FDL0MsQ0FBQztJQUNOLENBQUM7OEdBcENRLE9BQU8sMENBTWdCLE1BQU0sNkJBQ04sU0FBUztrSEFQaEMsT0FBTyxjQUZKLE1BQU07OzJGQUVULE9BQU87a0JBSG5CLFVBQVU7bUJBQUM7b0JBQ1IsVUFBVSxFQUFFLE1BQU07aUJBQ3JCOzswQkFPZ0IsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxNQUFNOzswQkFDekIsUUFBUTs7MEJBQUksTUFBTTsyQkFBQyxTQUFTIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtkaXN0aW5jdFVudGlsQ2hhbmdlZCwgbWFwLCBzaGFyZVJlcGxheX0gZnJvbSAncnhqcy9vcGVyYXRvcnMnO1xuaW1wb3J0IHtJbmplY3QsIEluamVjdGFibGUsIE9wdGlvbmFsfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7ZnJvbUV2ZW50LCBtZXJnZSwgT2JzZXJ2YWJsZSwgb2Z9IGZyb20gJ3J4anMnO1xuaW1wb3J0IHtOQVZJR0FUT1J9IGZyb20gJy4uL3Rva2Vucy9uYXZpZ2F0b3IudG9rZW4nO1xuaW1wb3J0IHtQbGF0Zm9ybX0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BsYXRmb3JtJztcbmltcG9ydCB7V0lORE9XfSBmcm9tICcuLi90b2tlbnMvd2luZG93LnRva2VuJztcblxuQEluamVjdGFibGUoe1xuICAgIHByb3ZpZGVkSW46ICdyb290J1xufSlcbmV4cG9ydCBjbGFzcyBOZXR3b3JrIHtcblxuICAgIC8vIERhdGEuXG4gICAgcHJpdmF0ZSBfb25saW5lJDogT2JzZXJ2YWJsZTxib29sZWFuPiA9IG9mKHRydWUpO1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBfcGxhdGZvcm06IFBsYXRmb3JtLFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoV0lORE9XKSBwcml2YXRlIF93aW5kb3c/OiBXaW5kb3csXG4gICAgICAgICAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChOQVZJR0FUT1IpIHByaXZhdGUgX25hdmlnYXRvcj86IE5hdmlnYXRvcikge1xuICAgICAgICB0aGlzLmdldE9ubGluZU9ic2VydmFibGUoKTtcbiAgICB9XG5cbiAgICBvbmxpbmUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLl9vbmxpbmUkO1xuICAgIH1cblxuICAgIHByaXZhdGUgZ2V0T25saW5lT2JzZXJ2YWJsZSgpIHtcbiAgICAgICAgLy8gVmFsaWRhdGUgd2UgYXJlIG9uIGEgYnJvd3Nlci5cbiAgICAgICAgaWYgKCF0aGlzLl9wbGF0Zm9ybS5pc0Jyb3dzZXIpIHtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEdldCBhbGwgdGhlIGV2ZW50cyBmcm9tIHRoZSB3aW5kb3cuXG4gICAgICAgIGNvbnN0IG9ubGluZSQgPSBmcm9tRXZlbnQodGhpcy5fd2luZG93LCAnb25saW5lJykucGlwZShtYXAoKCkgPT4gdHJ1ZSkpO1xuICAgICAgICBjb25zdCBvZmZsaW5lJCA9IGZyb21FdmVudCh0aGlzLl93aW5kb3csICdvZmZsaW5lJykucGlwZShtYXAoKCkgPT4gZmFsc2UpKTtcbiAgICAgICAgY29uc3Qgbm93JCA9IG5ldyBPYnNlcnZhYmxlKHN1YnNjcmliZXIgPT4ge1xuICAgICAgICAgICAgc3Vic2NyaWJlci5uZXh0KHRoaXMuX25hdmlnYXRvcj8ub25MaW5lKTtcbiAgICAgICAgICAgIHN1YnNjcmliZXIuY29tcGxldGUoKTtcbiAgICAgICAgfSk7XG5cbiAgICAgICAgLy8gTWVyZ2UgYWxsIGV2ZW50IHNvIHdlIGdldCBub3RpZmllZCB3aGVuXG4gICAgICAgIC8vIGEgdXNlciBpcyBvbmxpbmUvb2ZmbGluZS5cbiAgICAgICAgdGhpcy5fb25saW5lJCA9IG1lcmdlKG5vdyQsIG9ubGluZSQsIG9mZmxpbmUkKS5waXBlKFxuICAgICAgICAgICAgbWFwKHZhbHVlID0+IHZhbHVlIGFzIGJvb2xlYW4pLFxuICAgICAgICAgICAgZGlzdGluY3RVbnRpbENoYW5nZWQoKSxcbiAgICAgICAgICAgIHNoYXJlUmVwbGF5KHtyZWZDb3VudDogdHJ1ZSwgYnVmZmVyU2l6ZTogMX0pXG4gICAgICAgICk7XG4gICAgfVxuXG59XG4iXX0=
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV0d29yay5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvYmItZm91bmRhdGlvbi9zcmMvbGliL2NvcmUvc2VydmljZXMvbmV0d29yay5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBQyxvQkFBb0IsRUFBRSxHQUFHLEVBQUUsV0FBVyxFQUFDLE1BQU0sZ0JBQWdCLENBQUM7QUFDdEUsT0FBTyxFQUFDLE1BQU0sRUFBRSxVQUFVLEVBQUUsUUFBUSxFQUFDLE1BQU0sZUFBZSxDQUFDO0FBQzNELE9BQU8sRUFBQyxTQUFTLEVBQUUsS0FBSyxFQUFFLFVBQVUsRUFBRSxFQUFFLEVBQUMsTUFBTSxNQUFNLENBQUM7QUFDdEQsT0FBTyxFQUFDLFNBQVMsRUFBQyxNQUFNLDJCQUEyQixDQUFDO0FBRXBELE9BQU8sRUFBQyxNQUFNLEVBQUMsTUFBTSx3QkFBd0IsQ0FBQzs7O0FBSzlDLE1BQU0sT0FBTyxPQUFPO0lBS2hCLFlBQW9CLFNBQW1CLEVBQ1MsT0FBZ0IsRUFDYixVQUFzQjtRQUZyRCxjQUFTLEdBQVQsU0FBUyxDQUFVO1FBQ1MsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNiLGVBQVUsR0FBVixVQUFVLENBQVk7UUFMekUsUUFBUTtRQUNBLGFBQVEsR0FBd0IsRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDO1FBSzdDLElBQUksQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQy9CLENBQUM7SUFFRCxNQUFNO1FBQ0YsT0FBTyxJQUFJLENBQUMsUUFBUSxDQUFDO0lBQ3pCLENBQUM7SUFFTyxtQkFBbUI7UUFDdkIsZ0NBQWdDO1FBQ2hDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLFNBQVMsRUFBRSxDQUFDO1lBQzVCLE9BQU87UUFDWCxDQUFDO1FBRUQsc0NBQXNDO1FBQ3RDLE1BQU0sT0FBTyxHQUFHLFNBQVMsQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLFFBQVEsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQztRQUN4RSxNQUFNLFFBQVEsR0FBRyxTQUFTLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUM7UUFDM0UsTUFBTSxJQUFJLEdBQUcsSUFBSSxVQUFVLENBQVUsVUFBVSxDQUFDLEVBQUU7WUFDOUMsVUFBVSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1lBQ3pDLFVBQVUsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUMxQixDQUFDLENBQUMsQ0FBQztRQUVILDBDQUEwQztRQUMxQyw0QkFBNEI7UUFDNUIsSUFBSSxDQUFDLFFBQVEsR0FBRyxLQUFLLENBQUMsSUFBSSxFQUFFLE9BQU8sRUFBRSxRQUFRLENBQUMsQ0FBQyxJQUFJLENBQy9DLG9CQUFvQixFQUFFLEVBQ3RCLFdBQVcsQ0FBQyxFQUFDLFFBQVEsRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLENBQUMsRUFBQyxDQUFDLENBQy9DLENBQUM7SUFDTixDQUFDOzhHQW5DUSxPQUFPLDBDQU1nQixNQUFNLDZCQUNOLFNBQVM7a0hBUGhDLE9BQU8sY0FGSixNQUFNOzsyRkFFVCxPQUFPO2tCQUhuQixVQUFVO21CQUFDO29CQUNSLFVBQVUsRUFBRSxNQUFNO2lCQUNyQjs7MEJBT2dCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsTUFBTTs7MEJBQ3pCLFFBQVE7OzBCQUFJLE1BQU07MkJBQUMsU0FBUyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7ZGlzdGluY3RVbnRpbENoYW5nZWQsIG1hcCwgc2hhcmVSZXBsYXl9IGZyb20gJ3J4anMvb3BlcmF0b3JzJztcbmltcG9ydCB7SW5qZWN0LCBJbmplY3RhYmxlLCBPcHRpb25hbH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge2Zyb21FdmVudCwgbWVyZ2UsIE9ic2VydmFibGUsIG9mfSBmcm9tICdyeGpzJztcbmltcG9ydCB7TkFWSUdBVE9SfSBmcm9tICcuLi90b2tlbnMvbmF2aWdhdG9yLnRva2VuJztcbmltcG9ydCB7UGxhdGZvcm19IGZyb20gJ0Bhbmd1bGFyL2Nkay9wbGF0Zm9ybSc7XG5pbXBvcnQge1dJTkRPV30gZnJvbSAnLi4vdG9rZW5zL3dpbmRvdy50b2tlbic7XG5cbkBJbmplY3RhYmxlKHtcbiAgICBwcm92aWRlZEluOiAncm9vdCdcbn0pXG5leHBvcnQgY2xhc3MgTmV0d29yayB7XG5cbiAgICAvLyBEYXRhLlxuICAgIHByaXZhdGUgX29ubGluZSQ6IE9ic2VydmFibGU8Ym9vbGVhbj4gPSBvZih0cnVlKTtcblxuICAgIGNvbnN0cnVjdG9yKHByaXZhdGUgX3BsYXRmb3JtOiBQbGF0Zm9ybSxcbiAgICAgICAgICAgICAgICBAT3B0aW9uYWwoKSBASW5qZWN0KFdJTkRPVykgcHJpdmF0ZSBfd2luZG93PzogV2luZG93LFxuICAgICAgICAgICAgICAgIEBPcHRpb25hbCgpIEBJbmplY3QoTkFWSUdBVE9SKSBwcml2YXRlIF9uYXZpZ2F0b3I/OiBOYXZpZ2F0b3IpIHtcbiAgICAgICAgdGhpcy5nZXRPbmxpbmVPYnNlcnZhYmxlKCk7XG4gICAgfVxuXG4gICAgb25saW5lKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5fb25saW5lJDtcbiAgICB9XG5cbiAgICBwcml2YXRlIGdldE9ubGluZU9ic2VydmFibGUoKSB7XG4gICAgICAgIC8vIFZhbGlkYXRlIHdlIGFyZSBvbiBhIGJyb3dzZXIuXG4gICAgICAgIGlmICghdGhpcy5fcGxhdGZvcm0uaXNCcm93c2VyKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICAvLyBHZXQgYWxsIHRoZSBldmVudHMgZnJvbSB0aGUgd2luZG93LlxuICAgICAgICBjb25zdCBvbmxpbmUkID0gZnJvbUV2ZW50KHRoaXMuX3dpbmRvdywgJ29ubGluZScpLnBpcGUobWFwKCgpID0+IHRydWUpKTtcbiAgICAgICAgY29uc3Qgb2ZmbGluZSQgPSBmcm9tRXZlbnQodGhpcy5fd2luZG93LCAnb2ZmbGluZScpLnBpcGUobWFwKCgpID0+IGZhbHNlKSk7XG4gICAgICAgIGNvbnN0IG5vdyQgPSBuZXcgT2JzZXJ2YWJsZTxib29sZWFuPihzdWJzY3JpYmVyID0+IHtcbiAgICAgICAgICAgIHN1YnNjcmliZXIubmV4dCh0aGlzLl9uYXZpZ2F0b3I/Lm9uTGluZSk7XG4gICAgICAgICAgICBzdWJzY3JpYmVyLmNvbXBsZXRlKCk7XG4gICAgICAgIH0pO1xuXG4gICAgICAgIC8vIE1lcmdlIGFsbCBldmVudCBzbyB3ZSBnZXQgbm90aWZpZWQgd2hlblxuICAgICAgICAvLyBhIHVzZXIgaXMgb25saW5lL29mZmxpbmUuXG4gICAgICAgIHRoaXMuX29ubGluZSQgPSBtZXJnZShub3ckLCBvbmxpbmUkLCBvZmZsaW5lJCkucGlwZShcbiAgICAgICAgICAgIGRpc3RpbmN0VW50aWxDaGFuZ2VkKCksXG4gICAgICAgICAgICBzaGFyZVJlcGxheSh7cmVmQ291bnQ6IHRydWUsIGJ1ZmZlclNpemU6IDF9KVxuICAgICAgICApO1xuICAgIH1cblxufVxuIl19
@@ -41,10 +41,10 @@ export class Patch {
41
41
  // Save the subscription so we can destroy it later.
42
42
  this._subscription.add(subscription);
43
43
  }
44
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Patch, deps: [{ token: i1.Platform }, { token: WINDOW, optional: true }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
45
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Patch, providedIn: 'root' }); }
44
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Patch, deps: [{ token: i1.Platform }, { token: WINDOW, optional: true }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
45
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Patch, providedIn: 'root' }); }
46
46
  }
47
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Patch, decorators: [{
47
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Patch, decorators: [{
48
48
  type: Injectable,
49
49
  args: [{
50
50
  providedIn: 'root'
@@ -50,15 +50,15 @@ export class LocalizeModule {
50
50
  ]
51
51
  };
52
52
  }
53
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: LocalizeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
54
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: LocalizeModule, declarations: [BbLocalize,
53
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LocalizeModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
54
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: LocalizeModule, declarations: [BbLocalize,
55
55
  BbLocalizeString,
56
56
  BbLocalizeTemplate], imports: [CommonModule, UtilsModule], exports: [BbLocalize,
57
57
  BbLocalizeString,
58
58
  BbLocalizeTemplate] }); }
59
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: LocalizeModule, imports: [CommonModule, UtilsModule] }); }
59
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LocalizeModule, imports: [CommonModule, UtilsModule] }); }
60
60
  }
61
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: LocalizeModule, decorators: [{
61
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: LocalizeModule, decorators: [{
62
62
  type: NgModule,
63
63
  args: [{
64
64
  imports: [CommonModule, UtilsModule],
@@ -32,10 +32,10 @@ export class BbLocalize {
32
32
  // Return the combined params and options.
33
33
  return { ...params, ...options };
34
34
  }
35
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbLocalize, deps: [{ token: i1.Localize, optional: true }], target: i0.ɵɵFactoryTarget.Pipe }); }
36
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: BbLocalize, name: "bbLocalize" }); }
35
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbLocalize, deps: [{ token: i1.Localize, optional: true }], target: i0.ɵɵFactoryTarget.Pipe }); }
36
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: BbLocalize, name: "bbLocalize" }); }
37
37
  }
38
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbLocalize, decorators: [{
38
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbLocalize, decorators: [{
39
39
  type: Pipe,
40
40
  args: [{
41
41
  name: 'bbLocalize'
@@ -159,10 +159,10 @@ export class Localize {
159
159
  ?.map(language => language?.id);
160
160
  return await this.current.compare(languageIds);
161
161
  }
162
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Localize, deps: [{ token: i1.Storage }, { token: i2.Languages }, { token: i3.LocalizeMissingHandler }, { token: i4.LocalizeConfig, optional: true }, { token: WINDOW, optional: true }, { token: DOCUMENT, optional: true }, { token: LOCALIZE_TRANSFORM, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
163
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Localize }); }
162
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Localize, deps: [{ token: i1.Storage }, { token: i2.Languages }, { token: i3.LocalizeMissingHandler }, { token: i4.LocalizeConfig, optional: true }, { token: WINDOW, optional: true }, { token: DOCUMENT, optional: true }, { token: LOCALIZE_TRANSFORM, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
163
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Localize }); }
164
164
  }
165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: Localize, decorators: [{
165
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: Localize, decorators: [{
166
166
  type: Injectable
167
167
  }], ctorParameters: () => [{ type: i1.Storage }, { type: i2.Languages }, { type: i3.LocalizeMissingHandler }, { type: i4.LocalizeConfig, decorators: [{
168
168
  type: Optional
@@ -69,10 +69,10 @@ export class BbLocalizeString {
69
69
  end.replace(escape, '\\$&')
70
70
  ];
71
71
  }
72
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbLocalizeString, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
73
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.1", type: BbLocalizeString, selector: "[bb-localize-string]", inputs: { substitutions: "substitutions", value: ["bb-localize-string", "value"] }, host: { attributes: { "ngSkipHydration": "true" }, classAttribute: "bb-localize-string" }, queries: [{ propertyName: "items", predicate: BbLocalizeTemplate }], ngImport: i0, template: "<ng-container *ngFor=\"let component of components\">\n <ng-template [bbTemplate]=\"component\">{{ component }}</ng-template>\n</ng-container>\n", styles: [".bb-localize-string{display:inline}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.BbTemplate, selector: "[bbTemplate]", inputs: ["bbTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
72
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbLocalizeString, deps: [{ token: i0.ChangeDetectorRef }], target: i0.ɵɵFactoryTarget.Component }); }
73
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "18.0.1", type: BbLocalizeString, selector: "[bb-localize-string]", inputs: { substitutions: "substitutions", value: ["bb-localize-string", "value"] }, host: { attributes: { "ngSkipHydration": "true" }, classAttribute: "bb-localize-string" }, queries: [{ propertyName: "items", predicate: BbLocalizeTemplate }], ngImport: i0, template: "<ng-container *ngFor=\"let component of components\">\n <ng-template [bbTemplate]=\"component\">{{ component }}</ng-template>\n</ng-container>\n", styles: [".bb-localize-string{display:inline}\n"], dependencies: [{ kind: "directive", type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i2.BbTemplate, selector: "[bbTemplate]", inputs: ["bbTemplate"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }
74
74
  }
75
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbLocalizeString, decorators: [{
75
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbLocalizeString, decorators: [{
76
76
  type: Component,
77
77
  args: [{ selector: '[bb-localize-string]', changeDetection: ChangeDetectionStrategy.OnPush, host: {
78
78
  'class': 'bb-localize-string',
@@ -6,10 +6,10 @@ export class BbLocalizeTemplate {
6
6
  // Inputs.
7
7
  this.name = null;
8
8
  }
9
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbLocalizeTemplate, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
10
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: BbLocalizeTemplate, selector: "[bbLocalizeTemplate]", inputs: { name: ["bbLocalizeTemplate", "name"] }, ngImport: i0 }); }
9
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbLocalizeTemplate, deps: [{ token: i0.TemplateRef }], target: i0.ɵɵFactoryTarget.Directive }); }
10
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: BbLocalizeTemplate, selector: "[bbLocalizeTemplate]", inputs: { name: ["bbLocalizeTemplate", "name"] }, ngImport: i0 }); }
11
11
  }
12
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbLocalizeTemplate, decorators: [{
12
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbLocalizeTemplate, decorators: [{
13
13
  type: Directive,
14
14
  args: [{
15
15
  selector: '[bbLocalizeTemplate]'
@@ -15,10 +15,10 @@ export class BbCurrencyMask {
15
15
  const options = changes?.['options']?.currentValue ?? this.options ?? {};
16
16
  this._inputMask.mask = this._masking.currency(currencyCode, options);
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbCurrencyMask, deps: [{ token: i1.Masking }, { token: i2.BbInputMask, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: BbCurrencyMask, selector: "input[bbCurrencyMask]", inputs: { currencyCode: ["bbCurrencyMask", "currencyCode"], options: ["bbCurrencyMaskOptions", "options"] }, usesOnChanges: true, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbCurrencyMask, deps: [{ token: i1.Masking }, { token: i2.BbInputMask, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: BbCurrencyMask, selector: "input[bbCurrencyMask]", inputs: { currencyCode: ["bbCurrencyMask", "currencyCode"], options: ["bbCurrencyMaskOptions", "options"] }, usesOnChanges: true, ngImport: i0 }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbCurrencyMask, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbCurrencyMask, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: 'input[bbCurrencyMask]'
@@ -15,10 +15,10 @@ export class BbDateMask {
15
15
  const separator = changes?.['separator']?.currentValue ?? this.separator ?? '-';
16
16
  this._inputMask.mask = this._masking.date(format, separator);
17
17
  }
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbDateMask, deps: [{ token: i1.Masking }, { token: i2.BbInputMask, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
19
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: BbDateMask, selector: "input[bbDateMask]", inputs: { format: ["bbDateMask", "format"], separator: ["bbDateMaskSeparator", "separator"] }, usesOnChanges: true, ngImport: i0 }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbDateMask, deps: [{ token: i1.Masking }, { token: i2.BbInputMask, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
19
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: BbDateMask, selector: "input[bbDateMask]", inputs: { format: ["bbDateMask", "format"], separator: ["bbDateMaskSeparator", "separator"] }, usesOnChanges: true, ngImport: i0 }); }
20
20
  }
21
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbDateMask, decorators: [{
21
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbDateMask, decorators: [{
22
22
  type: Directive,
23
23
  args: [{
24
24
  selector: 'input[bbDateMask]'
@@ -93,10 +93,10 @@ export class BbInputMask {
93
93
  this.inputMaskPlugin?.remove();
94
94
  this.inputMaskPlugin = null;
95
95
  }
96
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbInputMask, deps: [{ token: i0.NgZone }, { token: i1.Platform }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
97
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.1", type: BbInputMask, selector: "input[bbInputMask],input[bbCurrencyMask],input[bbDateMask]", inputs: { mask: ["bbInputMask", "mask"] }, host: { listeners: { "input": "onInput($event.target.value)", "blur": "onTouched($event.target.value)" } }, ngImport: i0 }); }
96
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbInputMask, deps: [{ token: i0.NgZone }, { token: i1.Platform }, { token: i0.Renderer2 }, { token: i0.ElementRef }, { token: i2.NgControl, optional: true, self: true }], target: i0.ɵɵFactoryTarget.Directive }); }
97
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "18.0.1", type: BbInputMask, selector: "input[bbInputMask],input[bbCurrencyMask],input[bbDateMask]", inputs: { mask: ["bbInputMask", "mask"] }, host: { listeners: { "input": "onInput($event.target.value)", "blur": "onTouched($event.target.value)" } }, ngImport: i0 }); }
98
98
  }
99
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: BbInputMask, decorators: [{
99
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: BbInputMask, decorators: [{
100
100
  type: Directive,
101
101
  args: [{
102
102
  selector: 'input[bbInputMask],input[bbCurrencyMask],input[bbDateMask]'
@@ -4,15 +4,15 @@ import { BbDateMask } from './directives/date-mask.directive';
4
4
  import { NgModule } from '@angular/core';
5
5
  import * as i0 from "@angular/core";
6
6
  export class MaskingModule {
7
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MaskingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.1", ngImport: i0, type: MaskingModule, declarations: [BbInputMask,
7
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: MaskingModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
8
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "18.0.1", ngImport: i0, type: MaskingModule, declarations: [BbInputMask,
9
9
  BbCurrencyMask,
10
10
  BbDateMask], exports: [BbInputMask,
11
11
  BbCurrencyMask,
12
12
  BbDateMask] }); }
13
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MaskingModule }); }
13
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: MaskingModule }); }
14
14
  }
15
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.1", ngImport: i0, type: MaskingModule, decorators: [{
15
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.1", ngImport: i0, type: MaskingModule, decorators: [{
16
16
  type: NgModule,
17
17
  args: [{
18
18
  declarations: [