@abp/ng.theme.shared 5.0.0-beta.2 → 5.0.0-rc.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 (241) hide show
  1. package/README.md +3 -3
  2. package/bundles/abp-ng.theme.shared-extensions.umd.js +82 -81
  3. package/bundles/abp-ng.theme.shared-extensions.umd.js.map +1 -1
  4. package/bundles/abp-ng.theme.shared-testing.umd.js +8 -10
  5. package/bundles/abp-ng.theme.shared-testing.umd.js.map +1 -1
  6. package/bundles/abp-ng.theme.shared.umd.js +195 -241
  7. package/bundles/abp-ng.theme.shared.umd.js.map +1 -1
  8. package/esm2015/abp-ng.theme.shared.js +1 -1
  9. package/esm2015/extensions/abp-ng.theme.shared-extensions.js +1 -1
  10. package/esm2015/extensions/lib/adapters/date-time.adapter.js +6 -6
  11. package/esm2015/extensions/lib/adapters/date.adapter.js +4 -4
  12. package/esm2015/extensions/lib/adapters/time.adapter.js +4 -4
  13. package/esm2015/extensions/lib/components/abstract-actions/abstract-actions.component.js +4 -4
  14. package/esm2015/extensions/lib/components/date-time-picker/date-time-picker.component.js +40 -40
  15. package/esm2015/extensions/lib/components/extensible-form/extensible-form-prop.component.js +7 -7
  16. package/esm2015/extensions/lib/components/extensible-form/extensible-form.component.js +4 -4
  17. package/esm2015/extensions/lib/components/extensible-table/extensible-table.component.js +4 -4
  18. package/esm2015/extensions/lib/components/grid-actions/grid-actions.component.js +5 -5
  19. package/esm2015/extensions/lib/components/page-toolbar/page-toolbar.component.js +5 -5
  20. package/esm2015/extensions/lib/constants/extra-properties.js +1 -1
  21. package/esm2015/extensions/lib/directives/disabled.directive.js +5 -4
  22. package/esm2015/extensions/lib/directives/prop-data.directive.js +4 -4
  23. package/esm2015/extensions/lib/enums/props.enum.js +1 -1
  24. package/esm2015/extensions/lib/models/actions.js +1 -1
  25. package/esm2015/extensions/lib/models/entity-actions.js +1 -1
  26. package/esm2015/extensions/lib/models/entity-props.js +1 -1
  27. package/esm2015/extensions/lib/models/form-props.js +1 -1
  28. package/esm2015/extensions/lib/models/internal/object-extensions.js +1 -1
  29. package/esm2015/extensions/lib/models/object-extensions.js +1 -1
  30. package/esm2015/extensions/lib/models/props.js +1 -1
  31. package/esm2015/extensions/lib/models/toolbar-actions.js +3 -3
  32. package/esm2015/extensions/lib/services/extensions.service.js +4 -4
  33. package/esm2015/extensions/lib/tokens/extensions.token.js +1 -1
  34. package/esm2015/extensions/lib/ui-extensions.module.js +9 -9
  35. package/esm2015/extensions/lib/utils/actions.util.js +1 -1
  36. package/esm2015/extensions/lib/utils/enum.util.js +4 -4
  37. package/esm2015/extensions/lib/utils/factory.util.js +1 -1
  38. package/esm2015/extensions/lib/utils/form-props.util.js +1 -1
  39. package/esm2015/extensions/lib/utils/localization.util.js +4 -4
  40. package/esm2015/extensions/lib/utils/props.util.js +1 -1
  41. package/esm2015/extensions/lib/utils/state.util.js +5 -4
  42. package/esm2015/extensions/lib/utils/typeahead.util.js +9 -9
  43. package/esm2015/extensions/lib/utils/validation.util.js +3 -2
  44. package/esm2015/extensions/public-api.js +1 -1
  45. package/esm2015/lib/animations/bounce.animations.js +1 -1
  46. package/esm2015/lib/animations/collapse.animations.js +1 -1
  47. package/esm2015/lib/animations/fade.animations.js +1 -1
  48. package/esm2015/lib/animations/index.js +1 -1
  49. package/esm2015/lib/animations/modal.animations.js +1 -1
  50. package/esm2015/lib/animations/slide.animations.js +1 -1
  51. package/esm2015/lib/animations/toast.animations.js +1 -1
  52. package/esm2015/lib/components/breadcrumb/breadcrumb.component.js +4 -4
  53. package/esm2015/lib/components/breadcrumb-items/breadcrumb-items.component.js +4 -4
  54. package/esm2015/lib/components/button/button.component.js +33 -30
  55. package/esm2015/lib/components/confirmation/confirmation.component.js +4 -4
  56. package/esm2015/lib/components/http-error-wrapper/http-error-wrapper.component.js +8 -6
  57. package/esm2015/lib/components/index.js +1 -1
  58. package/esm2015/lib/components/loader-bar/loader-bar.component.js +27 -27
  59. package/esm2015/lib/components/loading/loading.component.js +32 -32
  60. package/esm2015/lib/components/modal/modal-close.directive.js +4 -4
  61. package/esm2015/lib/components/modal/modal-ref.service.js +4 -4
  62. package/esm2015/lib/components/modal/modal.component.js +14 -14
  63. package/esm2015/lib/components/toast/toast.component.js +6 -5
  64. package/esm2015/lib/components/toast-container/toast-container.component.js +6 -5
  65. package/esm2015/lib/constants/styles.js +181 -180
  66. package/esm2015/lib/constants/validation.js +1 -1
  67. package/esm2015/lib/directives/ellipsis.directive.js +8 -8
  68. package/esm2015/lib/directives/index.js +1 -1
  69. package/esm2015/lib/directives/loading.directive.js +8 -5
  70. package/esm2015/lib/directives/ngx-datatable-default.directive.js +4 -4
  71. package/esm2015/lib/directives/ngx-datatable-list.directive.js +4 -4
  72. package/esm2015/lib/enums/index.js +1 -1
  73. package/esm2015/lib/enums/route-names.js +1 -1
  74. package/esm2015/lib/handlers/document-dir.handler.js +33 -0
  75. package/esm2015/lib/handlers/error.handler.js +44 -33
  76. package/esm2015/lib/handlers/index.js +2 -2
  77. package/esm2015/lib/models/common.js +1 -1
  78. package/esm2015/lib/models/confirmation.js +1 -1
  79. package/esm2015/lib/models/index.js +1 -1
  80. package/esm2015/lib/models/nav-item.js +1 -1
  81. package/esm2015/lib/models/statistics.js +1 -1
  82. package/esm2015/lib/models/toaster.js +1 -1
  83. package/esm2015/lib/providers/index.js +1 -1
  84. package/esm2015/lib/providers/ng-bootstrap-config.provider.js +1 -1
  85. package/esm2015/lib/providers/route.provider.js +1 -1
  86. package/esm2015/lib/services/confirmation.service.js +4 -4
  87. package/esm2015/lib/services/index.js +1 -1
  88. package/esm2015/lib/services/nav-items.service.js +4 -4
  89. package/esm2015/lib/services/page-alert.service.js +4 -4
  90. package/esm2015/lib/services/toaster.service.js +5 -5
  91. package/esm2015/lib/theme-shared.module.js +19 -18
  92. package/esm2015/lib/tokens/append-content.token.js +1 -1
  93. package/esm2015/lib/tokens/http-error.token.js +1 -1
  94. package/esm2015/lib/tokens/index.js +1 -2
  95. package/esm2015/lib/tokens/ngx-datatable-messages.token.js +1 -1
  96. package/esm2015/lib/tokens/suppress-unsaved-changes-warning.token.js +1 -1
  97. package/esm2015/lib/utils/date-parser-formatter.js +7 -6
  98. package/esm2015/lib/utils/index.js +1 -1
  99. package/esm2015/lib/utils/validation-utils.js +1 -1
  100. package/esm2015/public-api.js +1 -2
  101. package/esm2015/testing/abp-ng.theme.shared-testing.js +1 -1
  102. package/esm2015/testing/lib/models/config.js +1 -1
  103. package/esm2015/testing/lib/models/index.js +1 -1
  104. package/esm2015/testing/lib/theme-shared-testing.module.js +5 -5
  105. package/esm2015/testing/public-api.js +1 -1
  106. package/extensions/lib/adapters/date.adapter.d.ts +1 -1
  107. package/extensions/lib/adapters/time.adapter.d.ts +1 -1
  108. package/extensions/lib/components/abstract-actions/abstract-actions.component.d.ts +1 -1
  109. package/extensions/lib/components/extensible-form/extensible-form-prop.component.d.ts +1 -1
  110. package/extensions/lib/directives/prop-data.directive.d.ts +3 -3
  111. package/extensions/lib/models/actions.d.ts +1 -1
  112. package/extensions/lib/models/props.d.ts +1 -1
  113. package/extensions/lib/utils/state.util.d.ts +1 -1
  114. package/fesm2015/abp-ng.theme.shared-extensions.js +113 -110
  115. package/fesm2015/abp-ng.theme.shared-extensions.js.map +1 -1
  116. package/fesm2015/abp-ng.theme.shared-testing.js +4 -4
  117. package/fesm2015/abp-ng.theme.shared-testing.js.map +1 -1
  118. package/fesm2015/abp-ng.theme.shared.js +445 -478
  119. package/fesm2015/abp-ng.theme.shared.js.map +1 -1
  120. package/lib/components/breadcrumb-items/breadcrumb-items.component.d.ts +2 -1
  121. package/lib/components/button/button.component.d.ts +3 -3
  122. package/lib/components/http-error-wrapper/http-error-wrapper.component.d.ts +2 -2
  123. package/lib/components/modal/modal-ref.service.d.ts +1 -1
  124. package/lib/components/modal/modal.component.d.ts +5 -5
  125. package/lib/components/toast-container/toast-container.component.d.ts +4 -4
  126. package/lib/constants/styles.d.ts +1 -2
  127. package/lib/directives/ellipsis.directive.d.ts +2 -2
  128. package/lib/directives/loading.directive.d.ts +3 -3
  129. package/lib/handlers/document-dir.handler.d.ts +13 -0
  130. package/lib/handlers/error.handler.d.ts +3 -2
  131. package/lib/handlers/index.d.ts +1 -1
  132. package/lib/models/nav-item.d.ts +1 -1
  133. package/lib/services/toaster.service.d.ts +1 -1
  134. package/lib/tokens/index.d.ts +0 -1
  135. package/lib/utils/date-parser-formatter.d.ts +1 -1
  136. package/package.json +5 -5
  137. package/public-api.d.ts +0 -1
  138. package/esm2015/abp-ng.theme.shared.js.map +0 -1
  139. package/esm2015/extensions/abp-ng.theme.shared-extensions.js.map +0 -1
  140. package/esm2015/extensions/lib/adapters/date-time.adapter.js.map +0 -1
  141. package/esm2015/extensions/lib/adapters/date.adapter.js.map +0 -1
  142. package/esm2015/extensions/lib/adapters/time.adapter.js.map +0 -1
  143. package/esm2015/extensions/lib/components/abstract-actions/abstract-actions.component.js.map +0 -1
  144. package/esm2015/extensions/lib/components/date-time-picker/date-time-picker.component.js.map +0 -1
  145. package/esm2015/extensions/lib/components/extensible-form/extensible-form-prop.component.js.map +0 -1
  146. package/esm2015/extensions/lib/components/extensible-form/extensible-form.component.js.map +0 -1
  147. package/esm2015/extensions/lib/components/extensible-table/extensible-table.component.js.map +0 -1
  148. package/esm2015/extensions/lib/components/grid-actions/grid-actions.component.js.map +0 -1
  149. package/esm2015/extensions/lib/components/page-toolbar/page-toolbar.component.js.map +0 -1
  150. package/esm2015/extensions/lib/constants/extra-properties.js.map +0 -1
  151. package/esm2015/extensions/lib/directives/disabled.directive.js.map +0 -1
  152. package/esm2015/extensions/lib/directives/prop-data.directive.js.map +0 -1
  153. package/esm2015/extensions/lib/enums/props.enum.js.map +0 -1
  154. package/esm2015/extensions/lib/models/actions.js.map +0 -1
  155. package/esm2015/extensions/lib/models/entity-actions.js.map +0 -1
  156. package/esm2015/extensions/lib/models/entity-props.js.map +0 -1
  157. package/esm2015/extensions/lib/models/form-props.js.map +0 -1
  158. package/esm2015/extensions/lib/models/internal/object-extensions.js.map +0 -1
  159. package/esm2015/extensions/lib/models/object-extensions.js.map +0 -1
  160. package/esm2015/extensions/lib/models/props.js.map +0 -1
  161. package/esm2015/extensions/lib/models/toolbar-actions.js.map +0 -1
  162. package/esm2015/extensions/lib/services/extensions.service.js.map +0 -1
  163. package/esm2015/extensions/lib/tokens/extensions.token.js.map +0 -1
  164. package/esm2015/extensions/lib/ui-extensions.module.js.map +0 -1
  165. package/esm2015/extensions/lib/utils/actions.util.js.map +0 -1
  166. package/esm2015/extensions/lib/utils/enum.util.js.map +0 -1
  167. package/esm2015/extensions/lib/utils/factory.util.js.map +0 -1
  168. package/esm2015/extensions/lib/utils/form-props.util.js.map +0 -1
  169. package/esm2015/extensions/lib/utils/localization.util.js.map +0 -1
  170. package/esm2015/extensions/lib/utils/props.util.js.map +0 -1
  171. package/esm2015/extensions/lib/utils/state.util.js.map +0 -1
  172. package/esm2015/extensions/lib/utils/typeahead.util.js.map +0 -1
  173. package/esm2015/extensions/lib/utils/validation.util.js.map +0 -1
  174. package/esm2015/extensions/public-api.js.map +0 -1
  175. package/esm2015/lib/animations/bounce.animations.js.map +0 -1
  176. package/esm2015/lib/animations/collapse.animations.js.map +0 -1
  177. package/esm2015/lib/animations/fade.animations.js.map +0 -1
  178. package/esm2015/lib/animations/index.js.map +0 -1
  179. package/esm2015/lib/animations/modal.animations.js.map +0 -1
  180. package/esm2015/lib/animations/slide.animations.js.map +0 -1
  181. package/esm2015/lib/animations/toast.animations.js.map +0 -1
  182. package/esm2015/lib/components/breadcrumb/breadcrumb.component.js.map +0 -1
  183. package/esm2015/lib/components/breadcrumb-items/breadcrumb-items.component.js.map +0 -1
  184. package/esm2015/lib/components/button/button.component.js.map +0 -1
  185. package/esm2015/lib/components/confirmation/confirmation.component.js.map +0 -1
  186. package/esm2015/lib/components/http-error-wrapper/http-error-wrapper.component.js.map +0 -1
  187. package/esm2015/lib/components/index.js.map +0 -1
  188. package/esm2015/lib/components/loader-bar/loader-bar.component.js.map +0 -1
  189. package/esm2015/lib/components/loading/loading.component.js.map +0 -1
  190. package/esm2015/lib/components/modal/modal-close.directive.js.map +0 -1
  191. package/esm2015/lib/components/modal/modal-ref.service.js.map +0 -1
  192. package/esm2015/lib/components/modal/modal.component.js.map +0 -1
  193. package/esm2015/lib/components/toast/toast.component.js.map +0 -1
  194. package/esm2015/lib/components/toast-container/toast-container.component.js.map +0 -1
  195. package/esm2015/lib/constants/styles.js.map +0 -1
  196. package/esm2015/lib/constants/validation.js.map +0 -1
  197. package/esm2015/lib/directives/ellipsis.directive.js.map +0 -1
  198. package/esm2015/lib/directives/index.js.map +0 -1
  199. package/esm2015/lib/directives/loading.directive.js.map +0 -1
  200. package/esm2015/lib/directives/ngx-datatable-default.directive.js.map +0 -1
  201. package/esm2015/lib/directives/ngx-datatable-list.directive.js.map +0 -1
  202. package/esm2015/lib/enums/index.js.map +0 -1
  203. package/esm2015/lib/enums/route-names.js.map +0 -1
  204. package/esm2015/lib/handlers/error.handler.js.map +0 -1
  205. package/esm2015/lib/handlers/index.js.map +0 -1
  206. package/esm2015/lib/handlers/lazy-style.handler.js +0 -89
  207. package/esm2015/lib/handlers/lazy-style.handler.js.map +0 -1
  208. package/esm2015/lib/models/common.js.map +0 -1
  209. package/esm2015/lib/models/confirmation.js.map +0 -1
  210. package/esm2015/lib/models/index.js.map +0 -1
  211. package/esm2015/lib/models/nav-item.js.map +0 -1
  212. package/esm2015/lib/models/statistics.js.map +0 -1
  213. package/esm2015/lib/models/toaster.js.map +0 -1
  214. package/esm2015/lib/providers/index.js.map +0 -1
  215. package/esm2015/lib/providers/ng-bootstrap-config.provider.js.map +0 -1
  216. package/esm2015/lib/providers/route.provider.js.map +0 -1
  217. package/esm2015/lib/services/confirmation.service.js.map +0 -1
  218. package/esm2015/lib/services/index.js.map +0 -1
  219. package/esm2015/lib/services/nav-items.service.js.map +0 -1
  220. package/esm2015/lib/services/page-alert.service.js.map +0 -1
  221. package/esm2015/lib/services/toaster.service.js.map +0 -1
  222. package/esm2015/lib/theme-shared.module.js.map +0 -1
  223. package/esm2015/lib/tokens/append-content.token.js.map +0 -1
  224. package/esm2015/lib/tokens/http-error.token.js.map +0 -1
  225. package/esm2015/lib/tokens/index.js.map +0 -1
  226. package/esm2015/lib/tokens/lazy-styles.token.js +0 -3
  227. package/esm2015/lib/tokens/lazy-styles.token.js.map +0 -1
  228. package/esm2015/lib/tokens/ngx-datatable-messages.token.js.map +0 -1
  229. package/esm2015/lib/tokens/suppress-unsaved-changes-warning.token.js.map +0 -1
  230. package/esm2015/lib/utils/date-parser-formatter.js.map +0 -1
  231. package/esm2015/lib/utils/index.js.map +0 -1
  232. package/esm2015/lib/utils/validation-utils.js.map +0 -1
  233. package/esm2015/public-api.js.map +0 -1
  234. package/esm2015/testing/abp-ng.theme.shared-testing.js.map +0 -1
  235. package/esm2015/testing/lib/models/config.js.map +0 -1
  236. package/esm2015/testing/lib/models/index.js.map +0 -1
  237. package/esm2015/testing/lib/theme-shared-testing.module.js.map +0 -1
  238. package/esm2015/testing/public-api.js.map +0 -1
  239. package/lib/handlers/lazy-style.handler.d.ts +0 -23
  240. package/lib/tokens/lazy-styles.token.d.ts +0 -2
  241. package/styles/bootstrap-rtl.min.css +0 -7
@@ -1,15 +1,15 @@
1
1
  import { animation, style, animate, keyframes, trigger, state, transition, useAnimation, query } from '@angular/animations';
2
2
  import * as i0 from '@angular/core';
3
- import { Component, Input, ChangeDetectionStrategy, EventEmitter, Output, ViewChild, ViewEncapsulation, Injectable, InjectionToken, Optional, Inject, ContentChild, Directive, HostListener, HostBinding, NgModule, ComponentFactoryResolver, RendererFactory2, ApplicationRef, APP_INITIALIZER, inject, LOCALE_ID, Injector } from '@angular/core';
3
+ import { Component, Input, ChangeDetectionStrategy, EventEmitter, Output, ViewChild, ViewEncapsulation, Injectable, InjectionToken, Optional, Inject, ContentChild, Directive, HostListener, HostBinding, NgModule, ComponentFactoryResolver, RendererFactory2, ApplicationRef, APP_INITIALIZER, inject, LOCALE_ID } from '@angular/core';
4
4
  import * as i1 from '@angular/common';
5
5
  import { DOCUMENT, formatDate, DatePipe } from '@angular/common';
6
6
  import * as i1$1 from '@angular/router';
7
7
  import { ResolveEnd } from '@angular/router';
8
8
  import * as i2 from '@abp/ng.core';
9
- import { getRoutePath, SubscriptionService, PROJECTION_STRATEGY, uuid, HttpErrorReporterService, RouterEvents, AuthService, LocalizationService, getLocaleDirection, LazyLoadService, LOADING_STRATEGY, RoutesService, InternalStore, DomInsertionService, CONTENT_STRATEGY, CoreModule, noop, ConfigStateService } from '@abp/ng.core';
9
+ import { getRoutePath, SubscriptionService, PROJECTION_STRATEGY, uuid, LocalizationService, getLocaleDirection, HttpErrorReporterService, RouterEvents, AuthService, RoutesService, InternalStore, DomInsertionService, CONTENT_STRATEGY, CoreModule, noop, ConfigStateService } from '@abp/ng.core';
10
10
  import { __rest } from 'tslib';
11
11
  import { startWith, map, debounceTime, filter, takeUntil, distinctUntilChanged, take, catchError, switchMap } from 'rxjs/operators';
12
- import { fromEvent, Subscription, combineLatest, timer, ReplaySubject, Subject, throwError, Observable, of, BehaviorSubject } from 'rxjs';
12
+ import { fromEvent, Subscription, combineLatest, timer, ReplaySubject, Subject, BehaviorSubject, throwError, Observable, of } from 'rxjs';
13
13
  import * as i3 from '@ng-bootstrap/ng-bootstrap';
14
14
  import { NgbInputDatepickerConfig, NgbTypeaheadConfig, NgbDateParserFormatter, NgbPaginationModule } from '@ng-bootstrap/ng-bootstrap';
15
15
  import * as i1$2 from '@swimlane/ngx-datatable';
@@ -153,9 +153,9 @@ class BreadcrumbItemsComponent {
153
153
  this.items = [];
154
154
  }
155
155
  }
156
- BreadcrumbItemsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: BreadcrumbItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
157
- BreadcrumbItemsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: BreadcrumbItemsComponent, selector: "abp-breadcrumb-items", inputs: { items: "items" }, ngImport: i0, template: "<ol class=\"breadcrumb\" *ngIf=\"items.length\">\n <li class=\"breadcrumb-item\">\n <a routerLink=\"/\"><i class=\"fa fa-home\"></i> </a>\n </li>\n <li\n *ngFor=\"let item of items; let last = last\"\n class=\"breadcrumb-item\"\n [class.active]=\"last\"\n aria-current=\"page\"\n >\n <ng-container\n *ngTemplateOutlet=\"item.path ? linkTemplate : textTemplate; context: { $implicit: item }\"\n ></ng-container>\n </li>\n</ol>\n\n<ng-template #linkTemplate let-item>\n <a [routerLink]=\"item.path\"> {{ item.name | abpLocalization }}</a>\n</ng-template>\n\n<ng-template #textTemplate let-item>\n {{ item.name | abpLocalization }}\n</ng-template>\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "abpLocalization": i2.LocalizationPipe } });
158
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: BreadcrumbItemsComponent, decorators: [{
156
+ BreadcrumbItemsComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BreadcrumbItemsComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
157
+ BreadcrumbItemsComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: BreadcrumbItemsComponent, selector: "abp-breadcrumb-items", inputs: { items: "items" }, ngImport: i0, template: "<ol class=\"breadcrumb\" *ngIf=\"items.length\">\r\n <li class=\"breadcrumb-item\">\r\n <a routerLink=\"/\"><i class=\"fa fa-home\"></i> </a>\r\n </li>\r\n <li\r\n *ngFor=\"let item of items; let last = last\"\r\n class=\"breadcrumb-item\"\r\n [class.active]=\"last\"\r\n aria-current=\"page\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"item.path ? linkTemplate : textTemplate; context: { $implicit: item }\"\r\n ></ng-container>\r\n </li>\r\n</ol>\r\n\r\n<ng-template #linkTemplate let-item>\r\n <a [routerLink]=\"item.path\"> {{ item.name | abpLocalization }}</a>\r\n</ng-template>\r\n\r\n<ng-template #textTemplate let-item>\r\n {{ item.name | abpLocalization }}\r\n</ng-template>\r\n", directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }, { type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "abpLocalization": i2.LocalizationPipe } });
158
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BreadcrumbItemsComponent, decorators: [{
159
159
  type: Component,
160
160
  args: [{
161
161
  selector: 'abp-breadcrumb-items',
@@ -190,9 +190,9 @@ class BreadcrumbComponent {
190
190
  });
191
191
  }
192
192
  }
193
- BreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.Router }, { token: i2.RoutesService }, { token: i2.SubscriptionService }, { token: i2.RouterEvents }], target: i0.ɵɵFactoryTarget.Component });
194
- BreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: BreadcrumbComponent, selector: "abp-breadcrumb", providers: [SubscriptionService], ngImport: i0, template: "<abp-breadcrumb-items [items]=\"segments\"></abp-breadcrumb-items>\n", components: [{ type: BreadcrumbItemsComponent, selector: "abp-breadcrumb-items", inputs: ["items"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
195
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: BreadcrumbComponent, decorators: [{
193
+ BreadcrumbComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BreadcrumbComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1$1.Router }, { token: i2.RoutesService }, { token: i2.SubscriptionService }, { token: i2.RouterEvents }], target: i0.ɵɵFactoryTarget.Component });
194
+ BreadcrumbComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: BreadcrumbComponent, selector: "abp-breadcrumb", providers: [SubscriptionService], ngImport: i0, template: "<abp-breadcrumb-items [items]=\"segments\"></abp-breadcrumb-items>\r\n", components: [{ type: BreadcrumbItemsComponent, selector: "abp-breadcrumb-items", inputs: ["items"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
195
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BreadcrumbComponent, decorators: [{
196
196
  type: Component,
197
197
  args: [{
198
198
  selector: 'abp-breadcrumb',
@@ -226,43 +226,46 @@ class ButtonComponent {
226
226
  ngOnInit() {
227
227
  if (this.attributes) {
228
228
  Object.keys(this.attributes).forEach(key => {
229
- this.renderer.setAttribute(this.buttonRef.nativeElement, key, this.attributes[key]);
229
+ var _a;
230
+ if ((_a = this.attributes) === null || _a === void 0 ? void 0 : _a[key]) {
231
+ this.renderer.setAttribute(this.buttonRef.nativeElement, key, this.attributes[key]);
232
+ }
230
233
  });
231
234
  }
232
235
  }
233
236
  }
234
- ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ButtonComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
235
- ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: ButtonComponent, selector: "abp-button", inputs: { buttonId: "buttonId", buttonClass: "buttonClass", buttonType: "buttonType", iconClass: "iconClass", loading: "loading", disabled: "disabled", attributes: "attributes" }, outputs: { click: "click", focus: "focus", blur: "blur", abpClick: "abpClick", abpFocus: "abpFocus", abpBlur: "abpBlur" }, viewQueries: [{ propertyName: "buttonRef", first: true, predicate: ["button"], descendants: true, static: true }], ngImport: i0, template: `
236
- <button
237
- #button
238
- [id]="buttonId"
239
- [attr.type]="buttonType"
240
- [ngClass]="buttonClass"
241
- [disabled]="loading || disabled"
242
- (click.stop)="click.next($event); abpClick.next($event)"
243
- (focus)="focus.next($event); abpFocus.next($event)"
244
- (blur)="blur.next($event); abpBlur.next($event)"
245
- >
246
- <i [ngClass]="icon" class="mr-1"></i><ng-content></ng-content>
247
- </button>
237
+ ButtonComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ButtonComponent, deps: [{ token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Component });
238
+ ButtonComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ButtonComponent, selector: "abp-button", inputs: { buttonId: "buttonId", buttonClass: "buttonClass", buttonType: "buttonType", iconClass: "iconClass", loading: "loading", disabled: "disabled", attributes: "attributes" }, outputs: { click: "click", focus: "focus", blur: "blur", abpClick: "abpClick", abpFocus: "abpFocus", abpBlur: "abpBlur" }, viewQueries: [{ propertyName: "buttonRef", first: true, predicate: ["button"], descendants: true, static: true }], ngImport: i0, template: `
239
+ <button
240
+ #button
241
+ [id]="buttonId"
242
+ [attr.type]="buttonType"
243
+ [ngClass]="buttonClass"
244
+ [disabled]="loading || disabled"
245
+ (click.stop)="click.next($event); abpClick.next($event)"
246
+ (focus)="focus.next($event); abpFocus.next($event)"
247
+ (blur)="blur.next($event); abpBlur.next($event)"
248
+ >
249
+ <i [ngClass]="icon" class="me-1"></i><ng-content></ng-content>
250
+ </button>
248
251
  `, isInline: true, directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i2.StopPropagationDirective, selector: "[click.stop]", outputs: ["click.stop"] }] });
249
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ButtonComponent, decorators: [{
252
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ButtonComponent, decorators: [{
250
253
  type: Component,
251
254
  args: [{
252
255
  selector: 'abp-button',
253
- template: `
254
- <button
255
- #button
256
- [id]="buttonId"
257
- [attr.type]="buttonType"
258
- [ngClass]="buttonClass"
259
- [disabled]="loading || disabled"
260
- (click.stop)="click.next($event); abpClick.next($event)"
261
- (focus)="focus.next($event); abpFocus.next($event)"
262
- (blur)="blur.next($event); abpBlur.next($event)"
263
- >
264
- <i [ngClass]="icon" class="mr-1"></i><ng-content></ng-content>
265
- </button>
256
+ template: `
257
+ <button
258
+ #button
259
+ [id]="buttonId"
260
+ [attr.type]="buttonType"
261
+ [ngClass]="buttonClass"
262
+ [disabled]="loading || disabled"
263
+ (click.stop)="click.next($event); abpClick.next($event)"
264
+ (focus)="focus.next($event); abpFocus.next($event)"
265
+ (blur)="blur.next($event); abpBlur.next($event)"
266
+ >
267
+ <i [ngClass]="icon" class="me-1"></i><ng-content></ng-content>
268
+ </button>
266
269
  `,
267
270
  }]
268
271
  }], ctorParameters: function () { return [{ type: i0.Renderer2 }]; }, propDecorators: { buttonId: [{
@@ -330,9 +333,9 @@ class ConfirmationComponent {
330
333
  }
331
334
  }
332
335
  }
333
- ConfirmationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
334
- ConfirmationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: ConfirmationComponent, selector: "abp-confirmation", ngImport: i0, template: "<div class=\"confirmation\" *ngIf=\"confirmation$ | async as data\">\n <div\n class=\"confirmation-backdrop\"\n (click)=\"data.options?.dismissible ? close(dismiss) : null\"\n ></div>\n <div class=\"confirmation-dialog\">\n <div class=\"icon-container\" [ngClass]=\"data.severity\" *ngIf=\"data.severity\">\n <i class=\"fa icon\" [ngClass]=\"getIconClass(data)\"></i>\n </div>\n <div class=\"content\">\n <h1\n class=\"title\"\n *ngIf=\"data.title\"\n [innerHTML]=\"data.title | abpLocalization: data.options?.titleLocalizationParams\"\n ></h1>\n <p\n class=\"message\"\n *ngIf=\"data.message\"\n [innerHTML]=\"data.message | abpLocalization: data.options?.messageLocalizationParams\"\n ></p>\n </div>\n <div class=\"footer\">\n <button\n id=\"cancel\"\n class=\"confirmation-button confirmation-button--reject\"\n [innerHTML]=\"data.options?.cancelText || 'AbpUi::Cancel' | abpLocalization\"\n *ngIf=\"!data?.options?.hideCancelBtn\"\n (click)=\"close(reject)\"\n ></button>\n <button\n id=\"confirm\"\n class=\"confirmation-button confirmation-button--approve\"\n [innerHTML]=\"data.options?.yesText || 'AbpUi::Yes' | abpLocalization\"\n *ngIf=\"!data?.options?.hideYesBtn\"\n (click)=\"close(confirm)\"\n ></button>\n </div>\n </div>\n</div>\n", styles: [".confirmation{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:1060}.confirmation .confirmation-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1061!important}.confirmation .confirmation-dialog{display:flex;flex-direction:column;margin:20px auto;padding:0;width:450px;min-height:300px;z-index:1062!important}@media screen and (max-width: 500px){.confirmation .confirmation-dialog{width:90vw}}.confirmation .confirmation-dialog .icon-container{display:flex;align-items:center;justify-content:center;margin:0 0 10px;padding:20px}.confirmation .confirmation-dialog .icon-container .icon{width:100px;height:100px;stroke-width:1;font-size:80px;text-align:center}.confirmation .confirmation-dialog .content{flex-grow:1;display:block}.confirmation .confirmation-dialog .content .title{display:block;margin:0;padding:0;font-size:27px;font-weight:600;text-align:center}.confirmation .confirmation-dialog .content .message{display:block;margin:10px auto;padding:20px;font-size:16px;font-weight:400;text-align:center}.confirmation .confirmation-dialog .footer{display:flex;align-items:center;justify-content:flex-end;margin:10px 0 0;padding:20px;width:100%}.confirmation .confirmation-dialog .footer .confirmation-button{display:inline-block;margin:0 5px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "async": i1.AsyncPipe, "abpLocalization": i2.LocalizationPipe } });
335
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ConfirmationComponent, decorators: [{
336
+ ConfirmationComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
337
+ ConfirmationComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ConfirmationComponent, selector: "abp-confirmation", ngImport: i0, template: "<div class=\"confirmation\" *ngIf=\"confirmation$ | async as data\">\r\n <div\r\n class=\"confirmation-backdrop\"\r\n (click)=\"data.options?.dismissible ? close(dismiss) : null\"\r\n ></div>\r\n <div class=\"confirmation-dialog\">\r\n <div class=\"icon-container\" [ngClass]=\"data.severity\" *ngIf=\"data.severity\">\r\n <i class=\"fa icon\" [ngClass]=\"getIconClass(data)\"></i>\r\n </div>\r\n <div class=\"content\">\r\n <h1\r\n class=\"title\"\r\n *ngIf=\"data.title\"\r\n [innerHTML]=\"data.title | abpLocalization: data.options?.titleLocalizationParams\"\r\n ></h1>\r\n <p\r\n class=\"message\"\r\n *ngIf=\"data.message\"\r\n [innerHTML]=\"data.message | abpLocalization: data.options?.messageLocalizationParams\"\r\n ></p>\r\n </div>\r\n <div class=\"footer\">\r\n <button\r\n id=\"cancel\"\r\n class=\"confirmation-button confirmation-button--reject\"\r\n [innerHTML]=\"data.options?.cancelText || 'AbpUi::Cancel' | abpLocalization\"\r\n *ngIf=\"!data?.options?.hideCancelBtn\"\r\n (click)=\"close(reject)\"\r\n ></button>\r\n <button\r\n id=\"confirm\"\r\n class=\"confirmation-button confirmation-button--approve\"\r\n [innerHTML]=\"data.options?.yesText || 'AbpUi::Yes' | abpLocalization\"\r\n *ngIf=\"!data?.options?.hideYesBtn\"\r\n (click)=\"close(confirm)\"\r\n ></button>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".confirmation{position:fixed;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;z-index:1060}.confirmation .confirmation-backdrop{position:fixed;top:0;left:0;width:100vw;height:100vh;z-index:1061!important}.confirmation .confirmation-dialog{display:flex;flex-direction:column;margin:20px auto;padding:0;width:450px;min-height:300px;z-index:1062!important}@media screen and (max-width: 500px){.confirmation .confirmation-dialog{width:90vw}}.confirmation .confirmation-dialog .icon-container{display:flex;align-items:center;justify-content:center;margin:0 0 10px;padding:20px}.confirmation .confirmation-dialog .icon-container .icon{width:100px;height:100px;stroke-width:1;font-size:80px;text-align:center}.confirmation .confirmation-dialog .content{flex-grow:1;display:block}.confirmation .confirmation-dialog .content .title{display:block;margin:0;padding:0;font-size:27px;font-weight:600;text-align:center}.confirmation .confirmation-dialog .content .message{display:block;margin:10px auto;padding:20px;font-size:16px;font-weight:400;text-align:center}.confirmation .confirmation-dialog .footer{display:flex;align-items:center;justify-content:flex-end;margin:10px 0 0;padding:20px;width:100%}.confirmation .confirmation-dialog .footer .confirmation-button{display:inline-block;margin:0 5px;padding:10px 20px;border:none;border-radius:6px;font-size:14px;font-weight:600}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }], pipes: { "async": i1.AsyncPipe, "abpLocalization": i2.LocalizationPipe } });
338
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ConfirmationComponent, decorators: [{
336
339
  type: Component,
337
340
  args: [{
338
341
  selector: 'abp-confirmation',
@@ -347,7 +350,7 @@ class HttpErrorWrapperComponent {
347
350
  this.status = 0;
348
351
  this.title = 'Oops!';
349
352
  this.details = 'Sorry, an error has occured.';
350
- this.customComponent = null;
353
+ this.customComponent = undefined;
351
354
  this.hideCloseIcon = false;
352
355
  this.isHomeShow = true;
353
356
  }
@@ -367,7 +370,9 @@ class HttpErrorWrapperComponent {
367
370
  customComponentRef.instance.errorStatus = this.status;
368
371
  customComponentRef.instance.destroy$ = this.destroy$;
369
372
  this.appRef.attachView(customComponentRef.hostView);
370
- this.containerRef.nativeElement.appendChild(customComponentRef.hostView.rootNodes[0]);
373
+ if (this.containerRef) {
374
+ this.containerRef.nativeElement.appendChild(customComponentRef.hostView.rootNodes[0]);
375
+ }
371
376
  customComponentRef.changeDetectorRef.detectChanges();
372
377
  }
373
378
  const keyup$ = fromEvent(document, 'keyup').pipe(debounceTime(150), filter((key) => key && key.key === 'Escape'));
@@ -381,9 +386,9 @@ class HttpErrorWrapperComponent {
381
386
  this.destroy$.complete();
382
387
  }
383
388
  }
384
- HttpErrorWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: HttpErrorWrapperComponent, deps: [{ token: i2.SubscriptionService }], target: i0.ɵɵFactoryTarget.Component });
385
- HttpErrorWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: HttpErrorWrapperComponent, selector: "abp-http-error-wrapper", providers: [SubscriptionService], viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\n #container\n id=\"abp-http-error-container\"\n class=\"error\"\n [style.backgroundColor]=\"backgroundColor\"\n>\n <button\n *ngIf=\"!hideCloseIcon\"\n id=\"abp-close-button\"\n type=\"button\"\n class=\"close mr-2\"\n (click)=\"destroy()\"\n >\n <span aria-hidden=\"true\">&times;</span>\n </button>\n\n <div *ngIf=\"!customComponent\" class=\"row centered\">\n <div class=\"col-md-12\">\n <div class=\"error-template\">\n <h1>{{ statusText }} {{ title | abpLocalization }}</h1>\n <div class=\"error-details\">\n {{ details | abpLocalization }}\n </div>\n <div class=\"error-actions\">\n <a\n *ngIf=\"isHomeShow\"\n (click)=\"destroy()\"\n routerLink=\"/\"\n class=\"btn btn-primary btn-md mt-2\"\n ><span class=\"glyphicon glyphicon-home\"></span>\n {{ { key: '::Menu:Home', defaultValue: 'Home' } | abpLocalization }}\n </a>\n </div>\n </div>\n </div>\n </div>\n</div>\n", styles: [".error{position:fixed;top:0;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }], pipes: { "abpLocalization": i2.LocalizationPipe } });
386
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: HttpErrorWrapperComponent, decorators: [{
389
+ HttpErrorWrapperComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: HttpErrorWrapperComponent, deps: [{ token: i2.SubscriptionService }], target: i0.ɵɵFactoryTarget.Component });
390
+ HttpErrorWrapperComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: HttpErrorWrapperComponent, selector: "abp-http-error-wrapper", providers: [SubscriptionService], viewQueries: [{ propertyName: "containerRef", first: true, predicate: ["container"], descendants: true }], ngImport: i0, template: "<div\r\n #container\r\n id=\"abp-http-error-container\"\r\n class=\"error\"\r\n [style.backgroundColor]=\"backgroundColor\"\r\n>\r\n <button\r\n *ngIf=\"!hideCloseIcon\"\r\n id=\"abp-close-button\"\r\n type=\"button\"\r\n class=\"btn-close me-2\"\r\n (click)=\"destroy()\"\r\n ></button>\r\n\r\n <div *ngIf=\"!customComponent\" class=\"row centered\">\r\n <div class=\"col-md-12\">\r\n <div class=\"error-template\">\r\n <h1>{{ statusText }} {{ title | abpLocalization }}</h1>\r\n <div class=\"error-details\">\r\n {{ details | abpLocalization }}\r\n </div>\r\n <div class=\"error-actions\">\r\n <a\r\n *ngIf=\"isHomeShow\"\r\n (click)=\"destroy()\"\r\n routerLink=\"/\"\r\n class=\"btn btn-primary btn-md mt-2\"\r\n ><span class=\"glyphicon glyphicon-home\"></span>\r\n {{ { key: '::Menu:Home', defaultValue: 'Home' } | abpLocalization }}\r\n </a>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n</div>\r\n", styles: [".error{position:fixed;top:0;width:100vw;height:100vh;z-index:999999}.centered{position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1$1.RouterLinkWithHref, selector: "a[routerLink],area[routerLink]", inputs: ["routerLink", "target", "queryParams", "fragment", "queryParamsHandling", "preserveFragment", "skipLocationChange", "replaceUrl", "state", "relativeTo"] }], pipes: { "abpLocalization": i2.LocalizationPipe } });
391
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: HttpErrorWrapperComponent, decorators: [{
387
392
  type: Component,
388
393
  args: [{
389
394
  selector: 'abp-http-error-wrapper',
@@ -472,36 +477,36 @@ class LoaderBarComponent {
472
477
  this.timer = timer(this.stopDelay).subscribe(this.clearProgress);
473
478
  }
474
479
  }
475
- LoaderBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LoaderBarComponent, deps: [{ token: i1$1.Router }, { token: i0.ChangeDetectorRef }, { token: i2.SubscriptionService }, { token: i2.HttpWaitService }, { token: i2.RouterWaitService }], target: i0.ɵɵFactoryTarget.Component });
476
- LoaderBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: LoaderBarComponent, selector: "abp-loader-bar", inputs: { isLoading: "isLoading", containerClass: "containerClass", color: "color" }, providers: [SubscriptionService], ngImport: i0, template: `
477
- <div id="abp-loader-bar" [ngClass]="containerClass" [class.is-loading]="isLoading">
478
- <div
479
- class="abp-progress"
480
- [class.progressing]="progressLevel"
481
- [style.width.vw]="progressLevel"
482
- [ngStyle]="{
483
- 'background-color': color,
484
- 'box-shadow': boxShadow
485
- }"
486
- ></div>
487
- </div>
480
+ LoaderBarComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoaderBarComponent, deps: [{ token: i1$1.Router }, { token: i0.ChangeDetectorRef }, { token: i2.SubscriptionService }, { token: i2.HttpWaitService }, { token: i2.RouterWaitService }], target: i0.ɵɵFactoryTarget.Component });
481
+ LoaderBarComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: LoaderBarComponent, selector: "abp-loader-bar", inputs: { isLoading: "isLoading", containerClass: "containerClass", color: "color" }, providers: [SubscriptionService], ngImport: i0, template: `
482
+ <div id="abp-loader-bar" [ngClass]="containerClass" [class.is-loading]="isLoading">
483
+ <div
484
+ class="abp-progress"
485
+ [class.progressing]="progressLevel"
486
+ [style.width.vw]="progressLevel"
487
+ [ngStyle]="{
488
+ 'background-color': color,
489
+ 'box-shadow': boxShadow
490
+ }"
491
+ ></div>
492
+ </div>
488
493
  `, isInline: true, styles: [".abp-loader-bar{left:0;opacity:0;position:fixed;top:0;transition:opacity .4s linear .4s;z-index:99999}.abp-loader-bar.is-loading{opacity:1;transition:none}.abp-loader-bar .abp-progress{height:3px;left:0;position:fixed;top:0}.abp-loader-bar .abp-progress.progressing{transition:width .4s ease}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }] });
489
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LoaderBarComponent, decorators: [{
494
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoaderBarComponent, decorators: [{
490
495
  type: Component,
491
496
  args: [{
492
497
  selector: 'abp-loader-bar',
493
- template: `
494
- <div id="abp-loader-bar" [ngClass]="containerClass" [class.is-loading]="isLoading">
495
- <div
496
- class="abp-progress"
497
- [class.progressing]="progressLevel"
498
- [style.width.vw]="progressLevel"
499
- [ngStyle]="{
500
- 'background-color': color,
501
- 'box-shadow': boxShadow
502
- }"
503
- ></div>
504
- </div>
498
+ template: `
499
+ <div id="abp-loader-bar" [ngClass]="containerClass" [class.is-loading]="isLoading">
500
+ <div
501
+ class="abp-progress"
502
+ [class.progressing]="progressLevel"
503
+ [style.width.vw]="progressLevel"
504
+ [ngStyle]="{
505
+ 'background-color': color,
506
+ 'box-shadow': boxShadow
507
+ }"
508
+ ></div>
509
+ </div>
505
510
  `,
506
511
  styleUrls: ['./loader-bar.component.scss'],
507
512
  providers: [SubscriptionService],
@@ -516,44 +521,44 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImpor
516
521
 
517
522
  class LoadingComponent {
518
523
  }
519
- LoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LoadingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
520
- LoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: LoadingComponent, selector: "abp-loading", ngImport: i0, template: `
521
- <div class="abp-loading">
522
- <i class="fa fa-spinner fa-pulse abp-spinner"></i>
523
- </div>
524
+ LoadingComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoadingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
525
+ LoadingComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: LoadingComponent, selector: "abp-loading", ngImport: i0, template: `
526
+ <div class="abp-loading">
527
+ <i class="fa fa-spinner fa-pulse abp-spinner"></i>
528
+ </div>
524
529
  `, isInline: true, styles: ["\n .abp-loading {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n z-index: 1040;\n }\n\n .abp-loading .abp-spinner {\n position: absolute;\n top: 50%;\n left: 50%;\n font-size: 14px;\n -moz-transform: translateX(-50%) translateY(-50%);\n -o-transform: translateX(-50%) translateY(-50%);\n -ms-transform: translateX(-50%) translateY(-50%);\n -webkit-transform: translateX(-50%) translateY(-50%);\n transform: translateX(-50%) translateY(-50%);\n }\n "], encapsulation: i0.ViewEncapsulation.None });
525
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LoadingComponent, decorators: [{
530
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoadingComponent, decorators: [{
526
531
  type: Component,
527
532
  args: [{
528
533
  selector: 'abp-loading',
529
- template: `
530
- <div class="abp-loading">
531
- <i class="fa fa-spinner fa-pulse abp-spinner"></i>
532
- </div>
534
+ template: `
535
+ <div class="abp-loading">
536
+ <i class="fa fa-spinner fa-pulse abp-spinner"></i>
537
+ </div>
533
538
  `,
534
539
  encapsulation: ViewEncapsulation.None,
535
540
  styles: [
536
- `
537
- .abp-loading {
538
- position: absolute;
539
- width: 100%;
540
- height: 100%;
541
- top: 0;
542
- left: 0;
543
- z-index: 1040;
544
- }
545
-
546
- .abp-loading .abp-spinner {
547
- position: absolute;
548
- top: 50%;
549
- left: 50%;
550
- font-size: 14px;
551
- -moz-transform: translateX(-50%) translateY(-50%);
552
- -o-transform: translateX(-50%) translateY(-50%);
553
- -ms-transform: translateX(-50%) translateY(-50%);
554
- -webkit-transform: translateX(-50%) translateY(-50%);
555
- transform: translateX(-50%) translateY(-50%);
556
- }
541
+ `
542
+ .abp-loading {
543
+ position: absolute;
544
+ width: 100%;
545
+ height: 100%;
546
+ top: 0;
547
+ left: 0;
548
+ z-index: 1040;
549
+ }
550
+
551
+ .abp-loading .abp-spinner {
552
+ position: absolute;
553
+ top: 50%;
554
+ left: 50%;
555
+ font-size: 14px;
556
+ -moz-transform: translateX(-50%) translateY(-50%);
557
+ -o-transform: translateX(-50%) translateY(-50%);
558
+ -ms-transform: translateX(-50%) translateY(-50%);
559
+ -webkit-transform: translateX(-50%) translateY(-50%);
560
+ transform: translateX(-50%) translateY(-50%);
561
+ }
557
562
  `,
558
563
  ],
559
564
  }]
@@ -612,9 +617,9 @@ class ConfirmationService {
612
617
  });
613
618
  }
614
619
  }
615
- ConfirmationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ConfirmationService, deps: [{ token: i2.ContentProjectionService }], target: i0.ɵɵFactoryTarget.Injectable });
616
- ConfirmationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ConfirmationService, providedIn: 'root' });
617
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ConfirmationService, decorators: [{
620
+ ConfirmationService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ConfirmationService, deps: [{ token: i2.ContentProjectionService }], target: i0.ɵɵFactoryTarget.Injectable });
621
+ ConfirmationService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ConfirmationService, providedIn: 'root' });
622
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ConfirmationService, decorators: [{
618
623
  type: Injectable,
619
624
  args: [{ providedIn: 'root' }]
620
625
  }], ctorParameters: function () { return [{ type: i2.ContentProjectionService }]; } });
@@ -638,9 +643,9 @@ class ModalRefService {
638
643
  this.modalRefs.forEach(modal => modal.dismiss(mode));
639
644
  }
640
645
  }
641
- ModalRefService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ModalRefService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
642
- ModalRefService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ModalRefService, providedIn: 'root' });
643
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ModalRefService, decorators: [{
646
+ ModalRefService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalRefService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
647
+ ModalRefService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalRefService, providedIn: 'root' });
648
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalRefService, decorators: [{
644
649
  type: Injectable,
645
650
  args: [{ providedIn: 'root' }]
646
651
  }] });
@@ -687,7 +692,8 @@ class ModalComponent {
687
692
  return document.querySelector(`ngb-modal-window.${this.modalIdentifier}`);
688
693
  }
689
694
  get isFormDirty() {
690
- return Boolean(this.modalWindowRef.querySelector('.ng-dirty'));
695
+ var _a;
696
+ return Boolean((_a = this.modalWindowRef) === null || _a === void 0 ? void 0 : _a.querySelector('.ng-dirty'));
691
697
  }
692
698
  ngOnInit() {
693
699
  this.modalRefService.register(this);
@@ -752,26 +758,25 @@ class ModalComponent {
752
758
  }
753
759
  }
754
760
  listen() {
755
- fromEvent(this.modalWindowRef, 'keyup')
756
- .pipe(takeUntil(this.destroy$), debounceTime(150), filter((key) => key && key.key === 'Escape'))
757
- .subscribe(() => this.close());
761
+ if (this.modalWindowRef) {
762
+ fromEvent(this.modalWindowRef, 'keyup')
763
+ .pipe(takeUntil(this.destroy$), debounceTime(150), filter((key) => key && key.key === 'Escape'))
764
+ .subscribe(() => this.close());
765
+ }
758
766
  fromEvent(window, 'beforeunload')
759
767
  .pipe(takeUntil(this.destroy$))
760
768
  .subscribe(event => {
761
- event.preventDefault();
762
- if (this.isFormDirty && !this.suppressUnsavedChangesWarning) {
763
- event.returnValue = true;
764
- }
765
- else {
766
- delete event.returnValue;
769
+ // TODO: check this
770
+ if (!this.isFormDirty || this.suppressUnsavedChangesWarning) {
771
+ event.preventDefault();
767
772
  }
768
773
  });
769
774
  this.init.emit();
770
775
  }
771
776
  }
772
- ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ModalComponent, deps: [{ token: ConfirmationService }, { token: i2.SubscriptionService }, { token: SUPPRESS_UNSAVED_CHANGES_WARNING, optional: true }, { token: i3.NgbModal }, { token: ModalRefService }], target: i0.ɵɵFactoryTarget.Component });
773
- ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: ModalComponent, selector: "abp-modal", inputs: { visible: "visible", busy: "busy", options: "options", suppressUnsavedChangesWarning: "suppressUnsavedChangesWarning" }, outputs: { visibleChange: "visibleChange", init: "init", appear: "appear", disappear: "disappear" }, providers: [SubscriptionService], queries: [{ propertyName: "abpHeader", first: true, predicate: ["abpHeader"], descendants: true }, { propertyName: "abpBody", first: true, predicate: ["abpBody"], descendants: true }, { propertyName: "abpFooter", first: true, predicate: ["abpFooter"], descendants: true }, { propertyName: "abpSubmit", first: true, predicate: ButtonComponent, descendants: true, read: ButtonComponent }], viewQueries: [{ propertyName: "modalContent", first: true, predicate: ["modalContent"], descendants: true }], ngImport: i0, template: "<ng-content></ng-content>\n\n<ng-template #modalContent let-modal>\n <div id=\"abp-modal-header\" class=\"modal-header\">\n <ng-container *ngTemplateOutlet=\"abpHeader\"></ng-container>\n \u200B\n <button\n id=\"abp-modal-close-button\"\n type=\"button\"\n class=\"close\"\n aria-label=\"Close\"\n (click)=\"modal.dismiss()\"\n >\n <span aria-hidden=\"true\">&times;</span>\n </button>\n </div>\n <div id=\"abp-modal-body\" class=\"modal-body\">\n <ng-container *ngTemplateOutlet=\"abpBody\"></ng-container>\n </div>\n <div *ngIf=\"abpFooter\" id=\"abp-modal-footer\" class=\"modal-footer\">\n <ng-container *ngTemplateOutlet=\"abpFooter\"></ng-container>\n </div>\n</ng-template>\n", styles: [".modal.show{display:block!important}.modal-backdrop{opacity:.8}.modal::-webkit-scrollbar{width:7px}.modal::-webkit-scrollbar-track{background:#ddd}.modal::-webkit-scrollbar-thumb{background:#8a8686}.modal-dialog{z-index:1050}\n"], directives: [{ type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }] });
774
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ModalComponent, decorators: [{
777
+ ModalComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalComponent, deps: [{ token: ConfirmationService }, { token: i2.SubscriptionService }, { token: SUPPRESS_UNSAVED_CHANGES_WARNING, optional: true }, { token: i3.NgbModal }, { token: ModalRefService }], target: i0.ɵɵFactoryTarget.Component });
778
+ ModalComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ModalComponent, selector: "abp-modal", inputs: { visible: "visible", busy: "busy", options: "options", suppressUnsavedChangesWarning: "suppressUnsavedChangesWarning" }, outputs: { visibleChange: "visibleChange", init: "init", appear: "appear", disappear: "disappear" }, providers: [SubscriptionService], queries: [{ propertyName: "abpHeader", first: true, predicate: ["abpHeader"], descendants: true }, { propertyName: "abpBody", first: true, predicate: ["abpBody"], descendants: true }, { propertyName: "abpFooter", first: true, predicate: ["abpFooter"], descendants: true }, { propertyName: "abpSubmit", first: true, predicate: ButtonComponent, descendants: true, read: ButtonComponent }], viewQueries: [{ propertyName: "modalContent", first: true, predicate: ["modalContent"], descendants: true }], ngImport: i0, template: "<ng-content></ng-content>\r\n\r\n<ng-template #modalContent let-modal>\r\n <div *ngIf=\"abpHeader\" id=\"abp-modal-header\" class=\"modal-header\">\r\n <ng-container *ngTemplateOutlet=\"abpHeader\"></ng-container>\r\n \u200B\r\n <button\r\n id=\"abp-modal-close-button\"\r\n type=\"button\"\r\n class=\"btn-sm btn-close\"\r\n aria-label=\"Close\"\r\n (click)=\"modal.dismiss()\"\r\n ></button>\r\n </div>\r\n <div *ngIf=\"abpBody\" id=\"abp-modal-body\" class=\"modal-body\">\r\n <ng-container *ngTemplateOutlet=\"abpBody\"></ng-container>\r\n </div>\r\n <div *ngIf=\"abpFooter\" id=\"abp-modal-footer\" class=\"modal-footer\">\r\n <ng-container *ngTemplateOutlet=\"abpFooter\"></ng-container>\r\n </div>\r\n</ng-template>\r\n", styles: [".modal.show{display:block!important}.modal-backdrop{opacity:.8}.modal::-webkit-scrollbar{width:7px}.modal::-webkit-scrollbar-track{background:#ddd}.modal::-webkit-scrollbar-thumb{background:#8a8686}.modal-dialog{z-index:1050}\n"], directives: [{ type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }] });
779
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalComponent, decorators: [{
775
780
  type: Component,
776
781
  args: [{
777
782
  selector: 'abp-modal',
@@ -829,9 +834,9 @@ class ModalCloseDirective {
829
834
  (_a = this.modal) === null || _a === void 0 ? void 0 : _a.close();
830
835
  }
831
836
  }
832
- ModalCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ModalCloseDirective, deps: [{ token: ModalComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
833
- ModalCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: ModalCloseDirective, selector: "[abpClose]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
834
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ModalCloseDirective, decorators: [{
837
+ ModalCloseDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalCloseDirective, deps: [{ token: ModalComponent, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
838
+ ModalCloseDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: ModalCloseDirective, selector: "[abpClose]", host: { listeners: { "click": "onClick()" } }, ngImport: i0 });
839
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ModalCloseDirective, decorators: [{
835
840
  type: Directive,
836
841
  args: [{ selector: '[abpClose]' }]
837
842
  }], ctorParameters: function () { return [{ type: ModalComponent, decorators: [{
@@ -874,7 +879,8 @@ class ToastComponent {
874
879
  }, timeout);
875
880
  }
876
881
  close() {
877
- this.remove.emit(this.toast.options.id);
882
+ var _a;
883
+ this.remove.emit((_a = this.toast.options) === null || _a === void 0 ? void 0 : _a.id);
878
884
  }
879
885
  tap() {
880
886
  var _a;
@@ -882,9 +888,9 @@ class ToastComponent {
882
888
  this.close();
883
889
  }
884
890
  }
885
- ToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ToastComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
886
- ToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: ToastComponent, selector: "abp-toast", inputs: { toast: "toast" }, outputs: { remove: "remove" }, ngImport: i0, template: "<div class=\"abp-toast\" [ngClass]=\"severityClass\" (click)=\"tap()\">\n <div class=\"abp-toast-icon\">\n <i class=\"fa icon\" [ngClass]=\"iconClass\"></i>\n </div>\n <div class=\"abp-toast-content\">\n <button class=\"abp-toast-close-button\" (click)=\"close()\" *ngIf=\"toast.options.closable\">\n <i class=\"fa fa-times\"></i>\n </button>\n <div class=\"abp-toast-title\">\n {{ toast.title | abpLocalization: toast.options?.titleLocalizationParams }}\n </div>\n <p\n class=\"abp-toast-message\"\n [innerHTML]=\"toast.message | abpLocalization: toast.options?.messageLocalizationParams\"\n ></p>\n </div>\n</div>\n", styles: [".abp-toast{display:grid;grid-template-columns:50px 1fr;grid-gap:10px;gap:10px;margin:5px 0;padding:10px;border-radius:0;width:350px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:9999;border:2px solid #f0f0f0;background-color:#f0f0f0;color:#000;box-shadow:0 0 10px -5px #0006;opacity:1}.abp-toast:hover{border:2px solid #e3e3e3;background-color:#e3e3e3;box-shadow:0 0 15px -5px #0006}.abp-toast.abp-toast-success{border:2px solid #51a351;background-color:#51a351;color:#fff;box-shadow:0 0 10px -5px #0006}.abp-toast.abp-toast-success:hover{border:2px solid #499249;background-color:#499249;box-shadow:0 0 15px -5px #0006}.abp-toast.abp-toast-info{border:2px solid #2f96b4;background-color:#2f96b4;color:#fff;box-shadow:0 0 10px -5px #0006}.abp-toast.abp-toast-info:hover{border:2px solid #2a85a0;background-color:#2a85a0;box-shadow:0 0 15px -5px #0006}.abp-toast.abp-toast-warning{border:2px solid #f89406;background-color:#f89406;color:#fff;box-shadow:0 0 10px -5px #0006}.abp-toast.abp-toast-warning:hover{border:2px solid #df8505;background-color:#df8505;box-shadow:0 0 15px -5px #0006}.abp-toast.abp-toast-error{border:2px solid #bd362f;background-color:#bd362f;color:#fff;box-shadow:0 0 10px -5px #0006}.abp-toast.abp-toast-error:hover{border:2px solid #a9302a;background-color:#a9302a;box-shadow:0 0 15px -5px #0006}.abp-toast .abp-toast-icon{display:flex;align-items:center;justify-content:center}.abp-toast .abp-toast-icon .icon{font-size:36px}.abp-toast .abp-toast-content{position:relative}.abp-toast .abp-toast-content .abp-toast-close-button{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;margin:0;padding:0 5px 0 0;width:25px;height:25px;border:none;border-radius:50%;background:transparent;color:inherit}.abp-toast .abp-toast-content .abp-toast-close-button:focus{outline:none}.abp-toast .abp-toast-content .abp-toast-title{margin:0;padding:0;font-size:1rem;font-weight:600}.abp-toast .abp-toast-content .abp-toast-message{margin:0;padding:0;max-width:240px}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "abpLocalization": i2.LocalizationPipe } });
887
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ToastComponent, decorators: [{
891
+ ToastComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ToastComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
892
+ ToastComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ToastComponent, selector: "abp-toast", inputs: { toast: "toast" }, outputs: { remove: "remove" }, ngImport: i0, template: "<div class=\"abp-toast\" [ngClass]=\"severityClass\" (click)=\"tap()\">\r\n <div class=\"abp-toast-icon\">\r\n <i class=\"fa icon\" [ngClass]=\"iconClass\"></i>\r\n </div>\r\n <div class=\"abp-toast-content\">\r\n <button class=\"abp-toast-close-button\" (click)=\"close()\" *ngIf=\"toast.options?.closable\">\r\n <i class=\"fa fa-times\"></i>\r\n </button>\r\n <div class=\"abp-toast-title\">\r\n {{ toast.title | abpLocalization: toast.options?.titleLocalizationParams }}\r\n </div>\r\n <p\r\n class=\"abp-toast-message\"\r\n [innerHTML]=\"toast.message | abpLocalization: toast.options?.messageLocalizationParams\"\r\n ></p>\r\n </div>\r\n</div>\r\n", styles: [".abp-toast{display:grid;grid-template-columns:50px 1fr;grid-gap:10px;gap:10px;margin:5px 0;padding:10px;border-radius:0;width:350px;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:9999;border:2px solid #f0f0f0;background-color:#f0f0f0;color:#000;box-shadow:0 0 10px -5px #0006;opacity:1}.abp-toast:hover{border:2px solid #e3e3e3;background-color:#e3e3e3;box-shadow:0 0 15px -5px #0006}.abp-toast.abp-toast-success{border:2px solid #51a351;background-color:#51a351;color:#fff;box-shadow:0 0 10px -5px #0006}.abp-toast.abp-toast-success:hover{border:2px solid #499249;background-color:#499249;box-shadow:0 0 15px -5px #0006}.abp-toast.abp-toast-info{border:2px solid #2f96b4;background-color:#2f96b4;color:#fff;box-shadow:0 0 10px -5px #0006}.abp-toast.abp-toast-info:hover{border:2px solid #2a85a0;background-color:#2a85a0;box-shadow:0 0 15px -5px #0006}.abp-toast.abp-toast-warning{border:2px solid #f89406;background-color:#f89406;color:#fff;box-shadow:0 0 10px -5px #0006}.abp-toast.abp-toast-warning:hover{border:2px solid #df8505;background-color:#df8505;box-shadow:0 0 15px -5px #0006}.abp-toast.abp-toast-error{border:2px solid #bd362f;background-color:#bd362f;color:#fff;box-shadow:0 0 10px -5px #0006}.abp-toast.abp-toast-error:hover{border:2px solid #a9302a;background-color:#a9302a;box-shadow:0 0 15px -5px #0006}.abp-toast .abp-toast-icon{display:flex;align-items:center;justify-content:center}.abp-toast .abp-toast-icon .icon{font-size:36px}.abp-toast .abp-toast-content{position:relative}.abp-toast .abp-toast-content .abp-toast-close-button{position:absolute;top:0;right:0;display:flex;align-items:center;justify-content:center;margin:0;padding:0 5px 0 0;width:25px;height:25px;border:none;border-radius:50%;background:transparent;color:inherit}.abp-toast .abp-toast-content .abp-toast-close-button:focus{outline:none}.abp-toast .abp-toast-content .abp-toast-title{margin:0;padding:0;font-size:1rem;font-weight:600}.abp-toast .abp-toast-content .abp-toast-message{margin:0;padding:0;max-width:240px}\n"], directives: [{ type: i1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }], pipes: { "abpLocalization": i2.LocalizationPipe } });
893
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ToastComponent, decorators: [{
888
894
  type: Component,
889
895
  args: [{
890
896
  selector: 'abp-toast',
@@ -913,14 +919,15 @@ class ToastContainerComponent {
913
919
  });
914
920
  }
915
921
  trackByFunc(index, toast) {
922
+ var _a;
916
923
  if (!toast)
917
924
  return null;
918
- return toast.options.id;
925
+ return (_a = toast.options) === null || _a === void 0 ? void 0 : _a.id;
919
926
  }
920
927
  }
921
- ToastContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ToastContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
922
- ToastContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.6", type: ToastContainerComponent, selector: "abp-toast-container", inputs: { top: "top", right: "right", bottom: "bottom", left: "left", toastKey: "toastKey" }, ngImport: i0, template: "<div\n class=\"abp-toast-container\"\n [style.top]=\"top || 'auto'\"\n [style.right]=\"right || 'auto'\"\n [style.bottom]=\"bottom || 'auto'\"\n [style.left]=\"left || 'auto'\"\n [style.display]=\"toasts.length ? 'flex' : 'none'\"\n [@toastInOut]=\"toasts.length\"\n>\n <abp-toast\n [toast]=\"toast\"\n *ngFor=\"let toast of toasts; trackBy: trackByFunc\"\n (remove)=\"remove($event)\"\n ></abp-toast>\n</div>\n", styles: [".abp-toast-container{position:fixed;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:350px;min-height:80px;z-index:1900}.abp-toast-container.new-on-top{flex-direction:column-reverse}\n"], components: [{ type: ToastComponent, selector: "abp-toast", inputs: ["toast"], outputs: ["remove"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], animations: [toastInOut] });
923
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ToastContainerComponent, decorators: [{
928
+ ToastContainerComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ToastContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
929
+ ToastContainerComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.13", type: ToastContainerComponent, selector: "abp-toast-container", inputs: { top: "top", right: "right", bottom: "bottom", left: "left", toastKey: "toastKey" }, ngImport: i0, template: "<div\r\n class=\"abp-toast-container\"\r\n [style.top]=\"top || 'auto'\"\r\n [style.right]=\"right || 'auto'\"\r\n [style.bottom]=\"bottom || 'auto'\"\r\n [style.left]=\"left || 'auto'\"\r\n [style.display]=\"toasts.length ? 'flex' : 'none'\"\r\n [@toastInOut]=\"toasts.length\"\r\n>\r\n <abp-toast\r\n [toast]=\"toast\"\r\n *ngFor=\"let toast of toasts; trackBy: trackByFunc\"\r\n (remove)=\"remove($event)\"\r\n ></abp-toast>\r\n</div>\r\n", styles: [".abp-toast-container{position:fixed;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-width:350px;min-height:80px;z-index:1900}.abp-toast-container.new-on-top{flex-direction:column-reverse}\n"], components: [{ type: ToastComponent, selector: "abp-toast", inputs: ["toast"], outputs: ["remove"] }], directives: [{ type: i1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }], animations: [toastInOut] });
930
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ToastContainerComponent, decorators: [{
924
931
  type: Component,
925
932
  args: [{
926
933
  selector: 'abp-toast-container',
@@ -940,187 +947,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImpor
940
947
  type: Input
941
948
  }] } });
942
949
 
943
- var styles = `
944
- .is-invalid .form-control {
945
- border-color: #dc3545;
946
- border-style: solid !important;
947
- padding-right: calc(1.5em + .75rem);
948
- background-image: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e);
949
- background-repeat: no-repeat;
950
- background-position: right calc(.375em + .1875rem) center;
951
- background-size: calc(.75em + .375rem) calc(.75em + .375rem);
952
- }
953
-
954
- .is-invalid .invalid-feedback,
955
- .is-invalid + * .invalid-feedback {
956
- display: block;
957
- }
958
-
959
- .data-tables-filter {
960
- text-align: right;
961
- }
962
-
963
- [dir=rtl] .data-tables-filter {
964
- text-align: left;
965
- }
966
-
967
- .pointer {
968
- cursor: pointer;
969
- }
970
-
971
- .navbar .dropdown-submenu a::after {
972
- transform: rotate(-90deg);
973
- position: absolute;
974
- right: 16px;
975
- top: 18px;
976
- }
977
-
978
- .navbar .dropdown-menu {
979
- min-width: 215px;
980
- }
981
-
982
- .datatable-scroll {
983
- margin-bottom: 5px !important;
984
- width: unset !important;
985
- }
986
-
987
- .ui-table-scrollable-body::-webkit-scrollbar {
988
- height: 5px !important;
989
- width: 5px !important;
990
- }
991
-
992
- .ui-table-scrollable-body::-webkit-scrollbar-track {
993
- background: #ddd;
994
- }
995
-
996
- .ui-table-scrollable-body::-webkit-scrollbar-thumb {
997
- background: #8a8686;
998
- }
999
-
1000
- .abp-ellipsis-inline {
1001
- display: inline-block;
1002
- overflow: hidden;
1003
- text-overflow: ellipsis;
1004
- white-space: nowrap;
1005
- }
1006
-
1007
- .abp-ellipsis {
1008
- overflow: hidden !important;
1009
- text-overflow: ellipsis;
1010
- white-space: nowrap;
1011
- }
1012
-
1013
- .ui-widget-overlay {
1014
- z-index: 1000;
1015
- }
1016
-
1017
- .color-white {
1018
- color: #FFF !important;
1019
- }
1020
-
1021
- .custom-checkbox > label {
1022
- cursor: pointer;
1023
- }
1024
-
1025
- /* <animations */
1026
-
1027
- .fade-in-top {
1028
- animation: fadeInTop 0.2s ease-in-out;
1029
- }
1030
-
1031
- .fade-out-top {
1032
- animation: fadeOutTop 0.2s ease-in-out;
1033
- }
1034
-
1035
- .abp-collapsed-height {
1036
- -moz-transition: max-height linear 0.35s;
1037
- -ms-transition: max-height linear 0.35s;
1038
- -o-transition: max-height linear 0.35s;
1039
- -webkit-transition: max-height linear 0.35s;
1040
- overflow:hidden;
1041
- transition:max-height 0.35s linear;
1042
- height:auto;
1043
- max-height: 0;
1044
- }
1045
-
1046
- .abp-mh-25 {
1047
- max-height: 25vh;
1048
- }
1049
-
1050
- .abp-mh-50 {
1051
- transition:max-height 0.65s linear;
1052
- max-height: 50vh;
1053
- }
1054
-
1055
- .abp-mh-75 {
1056
- transition:max-height 0.85s linear;
1057
- max-height: 75vh;
1058
- }
1059
-
1060
- .abp-mh-100 {
1061
- transition:max-height 1s linear;
1062
- max-height: 100vh;
1063
- }
1064
-
1065
- [class^="sorting"] {
1066
- opacity: .3;
1067
- cursor: pointer;
1068
- }
1069
- [class^="sorting"]:before {
1070
- right: 0.5rem;
1071
- content: "↑";
1072
- }
1073
- [class^="sorting"]:after {
1074
- right: 0.5rem;
1075
- content: "↓";
1076
- }
1077
-
1078
- .sorting_desc {
1079
- opacity: 1;
1080
- }
1081
- .sorting_desc:before {
1082
- opacity: .3;
1083
- }
1084
-
1085
- .sorting_asc {
1086
- opacity: 1;
1087
- }
1088
- .sorting_asc:after {
1089
- opacity: .3;
1090
- }
1091
- .ngx-datatable.material {
1092
- box-shadow: none;
1093
- }
1094
- ngb-typeahead-window, ngb-typeahead-window.dropdown-menu {
1095
- max-height: 25em;
1096
- overflow-y: scroll !important;
1097
- z-index: 1050;
1098
- }
1099
-
1100
- @keyframes fadeInTop {
1101
- from {
1102
- transform: translateY(-5px);
1103
- opacity: 0;
1104
- }
1105
-
1106
- to {
1107
- transform: translateY(0px);
1108
- opacity: 1;
1109
- }
1110
- }
1111
-
1112
- @keyframes fadeOutTop {
1113
- to {
1114
- transform: translateY(-5px);
1115
- opacity: 0;
1116
- }
1117
- }
1118
-
1119
- /* </animations */
1120
-
1121
- `;
1122
- const BOOTSTRAP = 'bootstrap-{{dir}}.min.css';
1123
-
1124
950
  const DEFAULT_VALIDATION_BLUEPRINTS = {
1125
951
  creditCard: 'AbpValidation::ThisFieldIsNotAValidCreditCardNumber.',
1126
952
  email: 'AbpValidation::ThisFieldIsNotAValidEmailAddress.',
@@ -1156,9 +982,9 @@ class EllipsisDirective {
1156
982
  this.cdRef.detectChanges();
1157
983
  }
1158
984
  }
1159
- EllipsisDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EllipsisDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
1160
- EllipsisDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: EllipsisDirective, selector: "[abpEllipsis]", inputs: { width: ["abpEllipsis", "width"], title: "title", enabled: ["abpEllipsisEnabled", "enabled"] }, host: { properties: { "title": "this.title", "class.abp-ellipsis-inline": "this.inlineClass", "class.abp-ellipsis": "this.class", "style.max-width": "this.maxWidth" } }, ngImport: i0 });
1161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EllipsisDirective, decorators: [{
985
+ EllipsisDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EllipsisDirective, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Directive });
986
+ EllipsisDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: EllipsisDirective, selector: "[abpEllipsis]", inputs: { width: ["abpEllipsis", "width"], title: "title", enabled: ["abpEllipsisEnabled", "enabled"] }, host: { properties: { "title": "this.title", "class.abp-ellipsis-inline": "this.inlineClass", "class.abp-ellipsis": "this.class", "style.max-width": "this.maxWidth" } }, ngImport: i0 });
987
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EllipsisDirective, decorators: [{
1162
988
  type: Directive,
1163
989
  args: [{
1164
990
  selector: '[abpEllipsis]',
@@ -1186,10 +1012,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImpor
1186
1012
  }] } });
1187
1013
  class EllipsisModule {
1188
1014
  }
1189
- EllipsisModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EllipsisModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1190
- EllipsisModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EllipsisModule, declarations: [EllipsisDirective], exports: [EllipsisDirective] });
1191
- EllipsisModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EllipsisModule });
1192
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: EllipsisModule, decorators: [{
1015
+ EllipsisModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EllipsisModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
1016
+ EllipsisModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EllipsisModule, declarations: [EllipsisDirective], exports: [EllipsisDirective] });
1017
+ EllipsisModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EllipsisModule });
1018
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: EllipsisModule, decorators: [{
1193
1019
  type: NgModule,
1194
1020
  args: [{
1195
1021
  exports: [EllipsisDirective],
@@ -1206,6 +1032,8 @@ class LoadingDirective {
1206
1032
  this.renderer = renderer;
1207
1033
  this.position = 'relative';
1208
1034
  this.delay = 0;
1035
+ this.rootNode = null;
1036
+ this.timerSubscription = null;
1209
1037
  }
1210
1038
  get loading() {
1211
1039
  return this._loading;
@@ -1225,6 +1053,7 @@ class LoadingDirective {
1225
1053
  this.timerSubscription = timer(this.delay)
1226
1054
  .pipe(take(1))
1227
1055
  .subscribe(() => {
1056
+ var _a;
1228
1057
  if (!this.componentRef) {
1229
1058
  this.componentRef = this.cdRes
1230
1059
  .resolveComponentFactory(LoadingComponent)
@@ -1232,7 +1061,7 @@ class LoadingDirective {
1232
1061
  }
1233
1062
  if (newValue && !this.rootNode) {
1234
1063
  this.rootNode = this.componentRef.hostView.rootNodes[0];
1235
- this.targetElement.appendChild(this.rootNode);
1064
+ (_a = this.targetElement) === null || _a === void 0 ? void 0 : _a.appendChild(this.rootNode);
1236
1065
  }
1237
1066
  else if (this.rootNode) {
1238
1067
  this.renderer.removeChild(this.rootNode.parentElement, this.rootNode);
@@ -1260,9 +1089,9 @@ class LoadingDirective {
1260
1089
  }
1261
1090
  }
1262
1091
  }
1263
- LoadingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LoadingDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
1264
- LoadingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: LoadingDirective, selector: "[abpLoading]", inputs: { loading: ["abpLoading", "loading"], targetElement: ["abpLoadingTargetElement", "targetElement"], delay: ["abpLoadingDelay", "delay"] }, host: { properties: { "style.position": "this.position" } }, ngImport: i0 });
1265
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LoadingDirective, decorators: [{
1092
+ LoadingDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoadingDirective, deps: [{ token: i0.ElementRef }, { token: i0.ViewContainerRef }, { token: i0.ComponentFactoryResolver }, { token: i0.Injector }, { token: i0.Renderer2 }], target: i0.ɵɵFactoryTarget.Directive });
1093
+ LoadingDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: LoadingDirective, selector: "[abpLoading]", inputs: { loading: ["abpLoading", "loading"], targetElement: ["abpLoadingTargetElement", "targetElement"], delay: ["abpLoadingDelay", "delay"] }, host: { properties: { "style.position": "this.position" } }, ngImport: i0 });
1094
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: LoadingDirective, decorators: [{
1266
1095
  type: Directive,
1267
1096
  args: [{ selector: '[abpLoading]' }]
1268
1097
  }], ctorParameters: function () { return [{ type: i0.ElementRef }, { type: i0.ViewContainerRef }, { type: i0.ComponentFactoryResolver }, { type: i0.Injector }, { type: i0.Renderer2 }]; }, propDecorators: { position: [{
@@ -1328,9 +1157,9 @@ class NgxDatatableDefaultDirective {
1328
1157
  this.subscription.unsubscribe();
1329
1158
  }
1330
1159
  }
1331
- NgxDatatableDefaultDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: NgxDatatableDefaultDirective, deps: [{ token: i1$2.DatatableComponent }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
1332
- NgxDatatableDefaultDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: NgxDatatableDefaultDirective, selector: "ngx-datatable[default]", inputs: { class: "class" }, host: { properties: { "class": "this.classes" } }, exportAs: ["ngxDatatableDefault"], ngImport: i0 });
1333
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: NgxDatatableDefaultDirective, decorators: [{
1160
+ NgxDatatableDefaultDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableDefaultDirective, deps: [{ token: i1$2.DatatableComponent }, { token: DOCUMENT }], target: i0.ɵɵFactoryTarget.Directive });
1161
+ NgxDatatableDefaultDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: NgxDatatableDefaultDirective, selector: "ngx-datatable[default]", inputs: { class: "class" }, host: { properties: { "class": "this.classes" } }, exportAs: ["ngxDatatableDefault"], ngImport: i0 });
1162
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableDefaultDirective, decorators: [{
1334
1163
  type: Directive,
1335
1164
  args: [{
1336
1165
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1422,9 +1251,9 @@ class NgxDatatableListDirective {
1422
1251
  this.subscribeToSort();
1423
1252
  }
1424
1253
  }
1425
- NgxDatatableListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: NgxDatatableListDirective, deps: [{ token: i1$2.DatatableComponent }, { token: i0.ChangeDetectorRef }, { token: i2.LocalizationService }, { token: NGX_DATATABLE_MESSAGES, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1426
- NgxDatatableListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.6", type: NgxDatatableListDirective, selector: "ngx-datatable[list]", inputs: { list: "list" }, exportAs: ["ngxDatatableList"], usesOnChanges: true, ngImport: i0 });
1427
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: NgxDatatableListDirective, decorators: [{
1254
+ NgxDatatableListDirective.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableListDirective, deps: [{ token: i1$2.DatatableComponent }, { token: i0.ChangeDetectorRef }, { token: i2.LocalizationService }, { token: NGX_DATATABLE_MESSAGES, optional: true }], target: i0.ɵɵFactoryTarget.Directive });
1255
+ NgxDatatableListDirective.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "12.0.0", version: "12.2.13", type: NgxDatatableListDirective, selector: "ngx-datatable[list]", inputs: { list: "list" }, exportAs: ["ngxDatatableList"], usesOnChanges: true, ngImport: i0 });
1256
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NgxDatatableListDirective, decorators: [{
1428
1257
  type: Directive,
1429
1258
  args: [{
1430
1259
  // eslint-disable-next-line @angular-eslint/directive-selector
@@ -1440,6 +1269,34 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImpor
1440
1269
  type: Input
1441
1270
  }] } });
1442
1271
 
1272
+ class DocumentDirHandlerService {
1273
+ constructor(injector) {
1274
+ this.injector = injector;
1275
+ this.dir = new BehaviorSubject('ltr');
1276
+ this.dir$ = this.dir.asObservable();
1277
+ this.listenToLanguageChanges();
1278
+ }
1279
+ listenToLanguageChanges() {
1280
+ const l10n = this.injector.get(LocalizationService);
1281
+ // will always listen, no need to unsubscribe
1282
+ l10n.languageChange$
1283
+ .pipe(startWith(l10n.currentLang), map(locale => getLocaleDirection(locale)))
1284
+ .subscribe(dir => {
1285
+ this.dir.next(dir);
1286
+ this.setBodyDir(dir);
1287
+ });
1288
+ }
1289
+ setBodyDir(dir) {
1290
+ document.body.dir = dir;
1291
+ document.dir = dir;
1292
+ }
1293
+ }
1294
+ DocumentDirHandlerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
1295
+ DocumentDirHandlerService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService });
1296
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DocumentDirHandlerService, decorators: [{
1297
+ type: Injectable
1298
+ }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
1299
+
1443
1300
  function httpErrorConfigFactory(config = {}) {
1444
1301
  if (config.errorScreen && config.errorScreen.component && !config.errorScreen.forWhichErrors) {
1445
1302
  config.errorScreen.forWhichErrors = [401, 403, 404, 500];
@@ -1496,8 +1353,9 @@ const DEFAULT_ERROR_LOCALIZATIONS = {
1496
1353
  class ErrorHandler {
1497
1354
  constructor(injector) {
1498
1355
  this.injector = injector;
1356
+ this.componentRef = null;
1499
1357
  this.httpErrorHandler = this.injector.get(HTTP_ERROR_HANDLER, (_, err) => throwError(err));
1500
- this.executeErrorHandler = error => {
1358
+ this.executeErrorHandler = (error) => {
1501
1359
  const returnValue = this.httpErrorHandler(this.injector, error);
1502
1360
  return (returnValue instanceof Observable ? returnValue : of(null)).pipe(catchError(err => {
1503
1361
  this.handleError(err);
@@ -1507,11 +1365,13 @@ class ErrorHandler {
1507
1365
  this.filterRestErrors = ({ status }) => {
1508
1366
  if (typeof status !== 'number')
1509
1367
  return false;
1510
- return this.httpErrorConfig.skipHandledErrorCodes.findIndex(code => code === status) < 0;
1368
+ return (!!this.httpErrorConfig.skipHandledErrorCodes &&
1369
+ this.httpErrorConfig.skipHandledErrorCodes.findIndex(code => code === status) < 0);
1511
1370
  };
1512
1371
  this.filterRouteErrors = (navigationError) => {
1513
1372
  var _a, _b;
1514
1373
  return (((_b = (_a = navigationError.error) === null || _a === void 0 ? void 0 : _a.message) === null || _b === void 0 ? void 0 : _b.indexOf('Cannot match')) > -1 &&
1374
+ !!this.httpErrorConfig.skipHandledErrorCodes &&
1515
1375
  this.httpErrorConfig.skipHandledErrorCodes.findIndex(code => code === 404) < 0);
1516
1376
  };
1517
1377
  this.httpErrorReporter = injector.get(HttpErrorReporterService);
@@ -1535,7 +1395,8 @@ class ErrorHandler {
1535
1395
  .getEvents(ResolveEnd)
1536
1396
  .pipe(filter(() => !!this.componentRef))
1537
1397
  .subscribe(() => {
1538
- this.componentRef.destroy();
1398
+ var _a;
1399
+ (_a = this.componentRef) === null || _a === void 0 ? void 0 : _a.destroy();
1539
1400
  this.componentRef = null;
1540
1401
  });
1541
1402
  }
@@ -1551,7 +1412,7 @@ class ErrorHandler {
1551
1412
  defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,
1552
1413
  };
1553
1414
  if (err instanceof HttpErrorResponse && err.headers.get('_AbpErrorFormat')) {
1554
- const confirmation$ = this.showError(null, null, body);
1415
+ const confirmation$ = this.showErrorWithRequestBody(body);
1555
1416
  if (err.status === 401) {
1556
1417
  confirmation$.subscribe(() => {
1557
1418
  this.navigateToLogin();
@@ -1650,26 +1511,30 @@ class ErrorHandler {
1650
1511
  status: 404,
1651
1512
  });
1652
1513
  }
1653
- showError(message, title, body) {
1654
- if (body) {
1655
- if (body.details) {
1656
- message = body.details;
1657
- title = body.message;
1658
- }
1659
- else if (body.message) {
1660
- title = {
1661
- key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,
1662
- defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,
1663
- };
1664
- message = body.message;
1665
- }
1666
- else {
1667
- message = body.message || {
1668
- key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,
1669
- defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,
1670
- };
1671
- }
1514
+ showErrorWithRequestBody(body) {
1515
+ let message;
1516
+ let title;
1517
+ if (body.details) {
1518
+ message = body.details;
1519
+ title = body.message;
1520
+ }
1521
+ else if (body.message) {
1522
+ title = {
1523
+ key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,
1524
+ defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,
1525
+ };
1526
+ message = body.message;
1672
1527
  }
1528
+ else {
1529
+ message = body.message || {
1530
+ key: DEFAULT_ERROR_LOCALIZATIONS.defaultError.title,
1531
+ defaultValue: DEFAULT_ERROR_MESSAGES.defaultError.title,
1532
+ };
1533
+ title = '';
1534
+ }
1535
+ return this.showError(message, title);
1536
+ }
1537
+ showError(message, title) {
1673
1538
  return this.confirmationService.error(message, title, {
1674
1539
  hideCancelBtn: true,
1675
1540
  yesText: 'AbpAccount::Close',
@@ -1679,6 +1544,7 @@ class ErrorHandler {
1679
1544
  this.injector.get(AuthService).navigateToLogin();
1680
1545
  }
1681
1546
  createErrorComponent(instance) {
1547
+ var _a, _b;
1682
1548
  const renderer = this.rendererFactory.createRenderer(null, null);
1683
1549
  const host = renderer.selectRootElement(document.body, true);
1684
1550
  this.componentRef = this.cfRes
@@ -1690,121 +1556,38 @@ class ErrorHandler {
1690
1556
  this.componentRef.instance[key] = instance[key];
1691
1557
  }
1692
1558
  }
1693
- this.componentRef.instance.hideCloseIcon = this.httpErrorConfig.errorScreen.hideCloseIcon;
1559
+ this.componentRef.instance.hideCloseIcon = !!((_a = this.httpErrorConfig.errorScreen) === null || _a === void 0 ? void 0 : _a.hideCloseIcon);
1694
1560
  const appRef = this.injector.get(ApplicationRef);
1695
1561
  if (this.canCreateCustomError(instance.status)) {
1696
1562
  this.componentRef.instance.cfRes = this.cfRes;
1697
1563
  this.componentRef.instance.appRef = appRef;
1698
1564
  this.componentRef.instance.injector = this.injector;
1699
- this.componentRef.instance.customComponent = this.httpErrorConfig.errorScreen.component;
1565
+ this.componentRef.instance.customComponent = (_b = this.httpErrorConfig.errorScreen) === null || _b === void 0 ? void 0 : _b.component;
1700
1566
  }
1701
1567
  appRef.attachView(this.componentRef.hostView);
1702
1568
  renderer.appendChild(host, this.componentRef.hostView.rootNodes[0]);
1703
1569
  const destroy$ = new Subject();
1704
1570
  this.componentRef.instance.destroy$ = destroy$;
1705
1571
  destroy$.subscribe(() => {
1706
- this.componentRef.destroy();
1572
+ var _a;
1573
+ (_a = this.componentRef) === null || _a === void 0 ? void 0 : _a.destroy();
1707
1574
  this.componentRef = null;
1708
1575
  });
1709
1576
  }
1710
1577
  canCreateCustomError(status) {
1711
- var _a, _b, _c, _d, _e;
1712
- return (((_b = (_a = this.httpErrorConfig) === null || _a === void 0 ? void 0 : _a.errorScreen) === null || _b === void 0 ? void 0 : _b.component) &&
1713
- ((_e = (_d = (_c = this.httpErrorConfig) === null || _c === void 0 ? void 0 : _c.errorScreen) === null || _d === void 0 ? void 0 : _d.forWhichErrors) === null || _e === void 0 ? void 0 : _e.indexOf(status)) > -1);
1578
+ var _a, _b, _c, _d, _e, _f;
1579
+ return !!(((_b = (_a = this.httpErrorConfig) === null || _a === void 0 ? void 0 : _a.errorScreen) === null || _b === void 0 ? void 0 : _b.component) &&
1580
+ ((_d = (_c = this.httpErrorConfig) === null || _c === void 0 ? void 0 : _c.errorScreen) === null || _d === void 0 ? void 0 : _d.forWhichErrors) &&
1581
+ ((_f = (_e = this.httpErrorConfig) === null || _e === void 0 ? void 0 : _e.errorScreen) === null || _f === void 0 ? void 0 : _f.forWhichErrors.indexOf(status)) > -1);
1714
1582
  }
1715
1583
  }
1716
- ErrorHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ErrorHandler, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
1717
- ErrorHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ErrorHandler, providedIn: 'root' });
1718
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ErrorHandler, decorators: [{
1584
+ ErrorHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ErrorHandler, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
1585
+ ErrorHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ErrorHandler, providedIn: 'root' });
1586
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ErrorHandler, decorators: [{
1719
1587
  type: Injectable,
1720
1588
  args: [{ providedIn: 'root' }]
1721
1589
  }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
1722
1590
 
1723
- const LAZY_STYLES = new InjectionToken('LAZY_STYLES');
1724
-
1725
- class LazyStyleHandler {
1726
- constructor(injector) {
1727
- this._dir = 'ltr';
1728
- this.loaded = new Map();
1729
- this.setStyles(injector);
1730
- this.setLazyLoad(injector);
1731
- this.listenToLanguageChanges(injector);
1732
- }
1733
- set dir(dir) {
1734
- if (dir === this._dir)
1735
- return;
1736
- this.switchCSS(dir);
1737
- this.setBodyDir(dir);
1738
- this._dir = dir;
1739
- }
1740
- get dir() {
1741
- return this._dir;
1742
- }
1743
- getHrefFromLink(link) {
1744
- if (!link)
1745
- return '';
1746
- const a = document.createElement('a');
1747
- a.href = link.href;
1748
- return a.pathname.replace(/^\//, '');
1749
- }
1750
- getLoadedBootstrap() {
1751
- const href = createLazyStyleHref(BOOTSTRAP, this.dir);
1752
- const selector = `[href*="${href.replace(/\.css$/, '')}"]`;
1753
- const link = document.querySelector(selector);
1754
- return { href, link };
1755
- }
1756
- listenToLanguageChanges(injector) {
1757
- const l10n = injector.get(LocalizationService);
1758
- // will always listen, no need to unsubscribe
1759
- l10n.languageChange$.pipe(startWith(l10n.currentLang)).subscribe(locale => {
1760
- this.dir = getLocaleDirection(locale);
1761
- });
1762
- }
1763
- setBodyDir(dir) {
1764
- document.body.dir = dir;
1765
- }
1766
- setLazyLoad(injector) {
1767
- this.lazyLoad = injector.get(LazyLoadService);
1768
- const { href, link } = this.getLoadedBootstrap();
1769
- this.lazyLoad.loaded.set(href, link);
1770
- }
1771
- setStyles(injector) {
1772
- this.styles = injector.get(LAZY_STYLES, [BOOTSTRAP]);
1773
- }
1774
- switchCSS(dir) {
1775
- this.styles.forEach(style => {
1776
- const oldHref = createLazyStyleHref(style, this.dir);
1777
- const newHref = createLazyStyleHref(style, dir);
1778
- const link = this.loaded.get(newHref);
1779
- const href = this.getHrefFromLink(link) || newHref;
1780
- const strategy = LOADING_STRATEGY.PrependAnonymousStyleToHead(href);
1781
- this.lazyLoad.load(strategy).subscribe(() => {
1782
- const oldLink = this.lazyLoad.loaded.get(oldHref);
1783
- this.loaded.delete(newHref);
1784
- this.loaded.set(oldHref, oldLink);
1785
- const newLink = this.lazyLoad.loaded.get(href);
1786
- this.lazyLoad.loaded.delete(href);
1787
- this.lazyLoad.loaded.set(newHref, newLink);
1788
- this.lazyLoad.remove(oldHref);
1789
- });
1790
- });
1791
- }
1792
- }
1793
- LazyStyleHandler.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LazyStyleHandler, deps: [{ token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable });
1794
- LazyStyleHandler.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LazyStyleHandler, providedIn: 'root' });
1795
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: LazyStyleHandler, decorators: [{
1796
- type: Injectable,
1797
- args: [{
1798
- providedIn: 'root',
1799
- }]
1800
- }], ctorParameters: function () { return [{ type: i0.Injector }]; } });
1801
- function createLazyStyleHref(style, dir) {
1802
- return style.replace(/{{\s*dir\s*}}/g, dir);
1803
- }
1804
- function initLazyStyleHandler(injector) {
1805
- return () => new LazyStyleHandler(injector);
1806
- }
1807
-
1808
1591
  class NavItem {
1809
1592
  constructor(props) {
1810
1593
  props = Object.assign(Object.assign({}, props), { visible: props.visible || (() => true) });
@@ -1876,9 +1659,9 @@ class NavItemsService {
1876
1659
  this._items$.next(items);
1877
1660
  }
1878
1661
  }
1879
- NavItemsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: NavItemsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1880
- NavItemsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: NavItemsService, providedIn: 'root' });
1881
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: NavItemsService, decorators: [{
1662
+ NavItemsService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NavItemsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1663
+ NavItemsService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NavItemsService, providedIn: 'root' });
1664
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: NavItemsService, decorators: [{
1882
1665
  type: Injectable,
1883
1666
  args: [{ providedIn: 'root' }]
1884
1667
  }] });
@@ -1906,9 +1689,9 @@ class PageAlertService {
1906
1689
  this.alerts.set(alerts);
1907
1690
  }
1908
1691
  }
1909
- PageAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: PageAlertService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1910
- PageAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: PageAlertService, providedIn: 'root' });
1911
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: PageAlertService, decorators: [{
1692
+ PageAlertService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PageAlertService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
1693
+ PageAlertService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PageAlertService, providedIn: 'root' });
1694
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: PageAlertService, decorators: [{
1912
1695
  type: Injectable,
1913
1696
  args: [{ providedIn: 'root' }]
1914
1697
  }], ctorParameters: function () { return []; } });
@@ -1978,7 +1761,7 @@ class ToasterService {
1978
1761
  * @param severity Sets color of the toast. "success", "warning" etc.
1979
1762
  * @param options Spesific style or structural options for individual toast
1980
1763
  */
1981
- show(message, title = null, severity = 'neutral', options = {}) {
1764
+ show(message, title = undefined, severity = 'neutral', options = {}) {
1982
1765
  if (!this.containerComponentRef)
1983
1766
  this.setContainer();
1984
1767
  const id = ++this.lastId;
@@ -2001,15 +1784,197 @@ class ToasterService {
2001
1784
  this.toasts$.next(this.toasts);
2002
1785
  }
2003
1786
  }
2004
- ToasterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ToasterService, deps: [{ token: i2.ContentProjectionService }], target: i0.ɵɵFactoryTarget.Injectable });
2005
- ToasterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ToasterService, providedIn: 'root' });
2006
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ToasterService, decorators: [{
1787
+ ToasterService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ToasterService, deps: [{ token: i2.ContentProjectionService }], target: i0.ɵɵFactoryTarget.Injectable });
1788
+ ToasterService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ToasterService, providedIn: 'root' });
1789
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ToasterService, decorators: [{
2007
1790
  type: Injectable,
2008
1791
  args: [{
2009
1792
  providedIn: 'root',
2010
1793
  }]
2011
1794
  }], ctorParameters: function () { return [{ type: i2.ContentProjectionService }]; } });
2012
1795
 
1796
+ var styles = `
1797
+ .is-invalid .form-control {
1798
+ border-color: #dc3545;
1799
+ border-style: solid !important;
1800
+ padding-right: calc(1.5em + .75rem);
1801
+ background-image: url(data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' fill='none' stroke='%23dc3545' viewBox='0 0 12 12'%3e%3ccircle cx='6' cy='6' r='4.5'/%3e%3cpath stroke-linejoin='round' d='M5.8 3.6h.4L6 6.5z'/%3e%3ccircle cx='6' cy='8.2' r='.6' fill='%23dc3545' stroke='none'/%3e%3c/svg%3e);
1802
+ background-repeat: no-repeat;
1803
+ background-position: right calc(.375em + .1875rem) center;
1804
+ background-size: calc(.75em + .375rem) calc(.75em + .375rem);
1805
+ }
1806
+
1807
+ .is-invalid .invalid-feedback,
1808
+ .is-invalid + * .invalid-feedback {
1809
+ display: block;
1810
+ }
1811
+
1812
+ .data-tables-filter {
1813
+ text-align: right;
1814
+ }
1815
+
1816
+ [dir=rtl] .data-tables-filter {
1817
+ text-align: left;
1818
+ }
1819
+
1820
+ .pointer {
1821
+ cursor: pointer;
1822
+ }
1823
+
1824
+ .navbar .dropdown-submenu a::after {
1825
+ transform: rotate(-90deg);
1826
+ position: absolute;
1827
+ right: 16px;
1828
+ top: 18px;
1829
+ }
1830
+
1831
+ .navbar .dropdown-menu {
1832
+ min-width: 215px;
1833
+ }
1834
+
1835
+ .datatable-scroll {
1836
+ margin-bottom: 5px !important;
1837
+ width: unset !important;
1838
+ }
1839
+
1840
+ .ui-table-scrollable-body::-webkit-scrollbar {
1841
+ height: 5px !important;
1842
+ width: 5px !important;
1843
+ }
1844
+
1845
+ .ui-table-scrollable-body::-webkit-scrollbar-track {
1846
+ background: #ddd;
1847
+ }
1848
+
1849
+ .ui-table-scrollable-body::-webkit-scrollbar-thumb {
1850
+ background: #8a8686;
1851
+ }
1852
+
1853
+ .abp-ellipsis-inline {
1854
+ display: inline-block;
1855
+ overflow: hidden;
1856
+ text-overflow: ellipsis;
1857
+ white-space: nowrap;
1858
+ }
1859
+
1860
+ .abp-ellipsis {
1861
+ overflow: hidden !important;
1862
+ text-overflow: ellipsis;
1863
+ white-space: nowrap;
1864
+ }
1865
+
1866
+ .ui-widget-overlay {
1867
+ z-index: 1000;
1868
+ }
1869
+
1870
+ .color-white {
1871
+ color: #FFF !important;
1872
+ }
1873
+
1874
+ .custom-checkbox > label {
1875
+ cursor: pointer;
1876
+ }
1877
+
1878
+ /* <animations */
1879
+
1880
+ .fade-in-top {
1881
+ animation: fadeInTop 0.2s ease-in-out;
1882
+ }
1883
+
1884
+ .fade-out-top {
1885
+ animation: fadeOutTop 0.2s ease-in-out;
1886
+ }
1887
+
1888
+ .abp-collapsed-height {
1889
+ -moz-transition: max-height linear 0.35s;
1890
+ -ms-transition: max-height linear 0.35s;
1891
+ -o-transition: max-height linear 0.35s;
1892
+ -webkit-transition: max-height linear 0.35s;
1893
+ overflow:hidden;
1894
+ transition:max-height 0.35s linear;
1895
+ height:auto;
1896
+ max-height: 0;
1897
+ }
1898
+
1899
+ .abp-mh-25 {
1900
+ max-height: 25vh;
1901
+ }
1902
+
1903
+ .abp-mh-50 {
1904
+ transition:max-height 0.65s linear;
1905
+ max-height: 50vh;
1906
+ }
1907
+
1908
+ .abp-mh-75 {
1909
+ transition:max-height 0.85s linear;
1910
+ max-height: 75vh;
1911
+ }
1912
+
1913
+ .abp-mh-100 {
1914
+ transition:max-height 1s linear;
1915
+ max-height: 100vh;
1916
+ }
1917
+
1918
+ [class^="sorting"] {
1919
+ opacity: .3;
1920
+ cursor: pointer;
1921
+ }
1922
+ [class^="sorting"]:before {
1923
+ right: 0.5rem;
1924
+ content: "↑";
1925
+ }
1926
+ [class^="sorting"]:after {
1927
+ right: 0.5rem;
1928
+ content: "↓";
1929
+ }
1930
+
1931
+ .sorting_desc {
1932
+ opacity: 1;
1933
+ }
1934
+ .sorting_desc:before {
1935
+ opacity: .3;
1936
+ }
1937
+
1938
+ .sorting_asc {
1939
+ opacity: 1;
1940
+ }
1941
+ .sorting_asc:after {
1942
+ opacity: .3;
1943
+ }
1944
+ .ngx-datatable.material {
1945
+ box-shadow: none;
1946
+ }
1947
+ ngb-typeahead-window, ngb-typeahead-window.dropdown-menu {
1948
+ max-height: 25em;
1949
+ overflow-y: scroll !important;
1950
+ z-index: 1050;
1951
+ }
1952
+
1953
+ @keyframes fadeInTop {
1954
+ from {
1955
+ transform: translateY(-5px);
1956
+ opacity: 0;
1957
+ }
1958
+
1959
+ to {
1960
+ transform: translateY(0px);
1961
+ opacity: 1;
1962
+ }
1963
+ }
1964
+
1965
+ @keyframes fadeOutTop {
1966
+ to {
1967
+ transform: translateY(-5px);
1968
+ opacity: 0;
1969
+ }
1970
+ }
1971
+
1972
+ /* </animations */
1973
+ .ngb-dp-body {
1974
+ z-index: 1055 !important;
1975
+ }
1976
+ `;
1977
+
2013
1978
  const THEME_SHARED_APPEND_CONTENT = new InjectionToken('THEME_SHARED_APPEND_CONTENT', {
2014
1979
  providedIn: 'root',
2015
1980
  factory: () => {
@@ -2033,11 +1998,12 @@ class DateParserFormatter extends NgbDateParserFormatter {
2033
1998
  parse(value) {
2034
1999
  if (value) {
2035
2000
  const dateParts = value.trim().split('-');
2001
+ // TODO: CHANGED
2036
2002
  if (dateParts.length === 1 && isNumber(dateParts[0])) {
2037
- return { year: toInteger(dateParts[0]), month: null, day: null };
2003
+ return { year: toInteger(dateParts[0]), month: -1, day: -1 };
2038
2004
  }
2039
2005
  else if (dateParts.length === 2 && isNumber(dateParts[0]) && isNumber(dateParts[1])) {
2040
- return { year: toInteger(dateParts[0]), month: toInteger(dateParts[1]), day: null };
2006
+ return { year: toInteger(dateParts[0]), month: toInteger(dateParts[1]), day: -1 };
2041
2007
  }
2042
2008
  else if (dateParts.length === 3 &&
2043
2009
  isNumber(dateParts[0]) &&
@@ -2061,9 +2027,9 @@ class DateParserFormatter extends NgbDateParserFormatter {
2061
2027
  return formatDate(new Date(date.year, date.month - 1, date.day), dateFormat, this.locale);
2062
2028
  }
2063
2029
  }
2064
- DateParserFormatter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DateParserFormatter, deps: [{ token: i2.ConfigStateService }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });
2065
- DateParserFormatter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DateParserFormatter });
2066
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: DateParserFormatter, decorators: [{
2030
+ DateParserFormatter.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DateParserFormatter, deps: [{ token: i2.ConfigStateService }, { token: LOCALE_ID }], target: i0.ɵɵFactoryTarget.Injectable });
2031
+ DateParserFormatter.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DateParserFormatter });
2032
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: DateParserFormatter, decorators: [{
2067
2033
  type: Injectable
2068
2034
  }], ctorParameters: function () { return [{ type: i2.ConfigStateService }, { type: undefined, decorators: [{
2069
2035
  type: Inject,
@@ -2087,8 +2053,8 @@ const declarationsWithExports = [
2087
2053
  ];
2088
2054
  class BaseThemeSharedModule {
2089
2055
  }
2090
- BaseThemeSharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: BaseThemeSharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2091
- BaseThemeSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: BaseThemeSharedModule, declarations: [BreadcrumbComponent,
2056
+ BaseThemeSharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BaseThemeSharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2057
+ BaseThemeSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BaseThemeSharedModule, declarations: [BreadcrumbComponent,
2092
2058
  BreadcrumbItemsComponent,
2093
2059
  ButtonComponent,
2094
2060
  ConfirmationComponent,
@@ -2117,14 +2083,14 @@ BaseThemeSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", v
2117
2083
  NgxDatatableListDirective,
2118
2084
  LoadingDirective,
2119
2085
  ModalCloseDirective] });
2120
- BaseThemeSharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: BaseThemeSharedModule, providers: [DatePipe], imports: [[
2086
+ BaseThemeSharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BaseThemeSharedModule, providers: [DatePipe], imports: [[
2121
2087
  CoreModule,
2122
2088
  NgxDatatableModule,
2123
2089
  NgxValidateCoreModule,
2124
2090
  NgbPaginationModule,
2125
2091
  EllipsisModule,
2126
2092
  ], NgxDatatableModule, EllipsisModule] });
2127
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: BaseThemeSharedModule, decorators: [{
2093
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: BaseThemeSharedModule, decorators: [{
2128
2094
  type: NgModule,
2129
2095
  args: [{
2130
2096
  imports: [
@@ -2163,12 +2129,6 @@ class ThemeSharedModule {
2163
2129
  deps: [THEME_SHARED_APPEND_CONTENT],
2164
2130
  useFactory: noop,
2165
2131
  },
2166
- {
2167
- provide: APP_INITIALIZER,
2168
- multi: true,
2169
- deps: [Injector],
2170
- useFactory: initLazyStyleHandler,
2171
- },
2172
2132
  { provide: HTTP_ERROR_CONFIG, useValue: httpErrorConfig },
2173
2133
  {
2174
2134
  provide: 'HTTP_ERROR_CONFIG',
@@ -2189,14 +2149,21 @@ class ThemeSharedModule {
2189
2149
  provide: VALIDATION_VALIDATE_ON_SUBMIT,
2190
2150
  useValue: validation.validateOnSubmit,
2191
2151
  },
2152
+ DocumentDirHandlerService,
2153
+ {
2154
+ provide: APP_INITIALIZER,
2155
+ useFactory: noop,
2156
+ multi: true,
2157
+ deps: [DocumentDirHandlerService],
2158
+ },
2192
2159
  ],
2193
2160
  };
2194
2161
  }
2195
2162
  }
2196
- ThemeSharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ThemeSharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2197
- ThemeSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ThemeSharedModule, imports: [BaseThemeSharedModule], exports: [BaseThemeSharedModule] });
2198
- ThemeSharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ThemeSharedModule, imports: [[BaseThemeSharedModule], BaseThemeSharedModule] });
2199
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.6", ngImport: i0, type: ThemeSharedModule, decorators: [{
2163
+ ThemeSharedModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ThemeSharedModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
2164
+ ThemeSharedModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ThemeSharedModule, imports: [BaseThemeSharedModule], exports: [BaseThemeSharedModule] });
2165
+ ThemeSharedModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ThemeSharedModule, imports: [[BaseThemeSharedModule], BaseThemeSharedModule] });
2166
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.13", ngImport: i0, type: ThemeSharedModule, decorators: [{
2200
2167
  type: NgModule,
2201
2168
  args: [{
2202
2169
  imports: [BaseThemeSharedModule],
@@ -2242,5 +2209,5 @@ function getRuleFn(injector) {
2242
2209
  * Generated bundle index. Do not edit.
2243
2210
  */
2244
2211
 
2245
- export { BOOTSTRAP, BaseThemeSharedModule, BreadcrumbComponent, BreadcrumbItemsComponent, ButtonComponent, Confirmation, ConfirmationComponent, ConfirmationService, DEFAULT_ERROR_LOCALIZATIONS, DEFAULT_ERROR_MESSAGES, DEFAULT_VALIDATION_BLUEPRINTS, DateParserFormatter, EllipsisDirective, EllipsisModule, ErrorHandler, HTTP_ERROR_CONFIG, HTTP_ERROR_HANDLER, HttpErrorWrapperComponent, LAZY_STYLES, LazyStyleHandler, LoaderBarComponent, LoadingComponent, LoadingDirective, ModalCloseDirective, ModalComponent, ModalRefService, NGX_DATATABLE_MESSAGES, NG_BOOTSTRAP_CONFIG_PROVIDERS, NavItem, NavItemsService, NgxDatatableDefaultDirective, NgxDatatableListDirective, PageAlertService, SUPPRESS_UNSAVED_CHANGES_WARNING, THEME_SHARED_APPEND_CONTENT, THEME_SHARED_ROUTE_PROVIDERS, ThemeSharedModule, ToastComponent, ToastContainerComponent, ToasterService, bounceIn, collapse, collapseLinearWithMargin, collapseWithMargin, collapseX, collapseY, collapseYWithMargin, configureNgBootstrap, configureRoutes, createLazyStyleHref, defaultNgxDatatableMessages, dialogAnimation, expandX, expandY, expandYWithMargin, fadeAnimation, fadeIn, fadeInDown, fadeInLeft, fadeInRight, fadeInUp, fadeOut, fadeOutDown, fadeOutLeft, fadeOutRight, fadeOutUp, getPasswordValidators, httpErrorConfigFactory, initLazyStyleHandler, slideFromBottom, toastInOut };
2212
+ export { BaseThemeSharedModule, BreadcrumbComponent, BreadcrumbItemsComponent, ButtonComponent, Confirmation, ConfirmationComponent, ConfirmationService, DEFAULT_ERROR_LOCALIZATIONS, DEFAULT_ERROR_MESSAGES, DEFAULT_VALIDATION_BLUEPRINTS, DateParserFormatter, DocumentDirHandlerService, EllipsisDirective, EllipsisModule, ErrorHandler, HTTP_ERROR_CONFIG, HTTP_ERROR_HANDLER, HttpErrorWrapperComponent, LoaderBarComponent, LoadingComponent, LoadingDirective, ModalCloseDirective, ModalComponent, ModalRefService, NGX_DATATABLE_MESSAGES, NG_BOOTSTRAP_CONFIG_PROVIDERS, NavItem, NavItemsService, NgxDatatableDefaultDirective, NgxDatatableListDirective, PageAlertService, SUPPRESS_UNSAVED_CHANGES_WARNING, THEME_SHARED_APPEND_CONTENT, THEME_SHARED_ROUTE_PROVIDERS, ThemeSharedModule, ToastComponent, ToastContainerComponent, ToasterService, bounceIn, collapse, collapseLinearWithMargin, collapseWithMargin, collapseX, collapseY, collapseYWithMargin, configureNgBootstrap, configureRoutes, defaultNgxDatatableMessages, dialogAnimation, expandX, expandY, expandYWithMargin, fadeAnimation, fadeIn, fadeInDown, fadeInLeft, fadeInRight, fadeInUp, fadeOut, fadeOutDown, fadeOutLeft, fadeOutRight, fadeOutUp, getPasswordValidators, httpErrorConfigFactory, slideFromBottom, toastInOut };
2246
2213
  //# sourceMappingURL=abp-ng.theme.shared.js.map