@fundamental-ngx/cdk 0.54.2 → 0.55.0-rc.1

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 (256) hide show
  1. package/fesm2022/fundamental-ngx-cdk-data-source.mjs +7 -7
  2. package/fesm2022/fundamental-ngx-cdk-forms.mjs +21 -14
  3. package/fesm2022/fundamental-ngx-cdk-forms.mjs.map +1 -1
  4. package/fesm2022/fundamental-ngx-cdk-utils.mjs +361 -312
  5. package/fesm2022/fundamental-ngx-cdk-utils.mjs.map +1 -1
  6. package/fesm2022/fundamental-ngx-cdk.mjs +4 -4
  7. package/forms/cva/cva.directive.d.ts +7 -3
  8. package/package.json +8 -16
  9. package/utils/abstract-fd-ngx-class.d.ts +1 -1
  10. package/utils/directives/overflow-list/overflow-list.directive.d.ts +7 -0
  11. package/utils/drag-and-drop/dnd-item/dnd-item.directive.d.ts +1 -1
  12. package/utils/drag-and-drop/dnd-keyboard-group/dnd-keyboard-group.directive.d.ts +1 -1
  13. package/utils/drag-and-drop/dnd-keyboard-item/dnd-keyboard-item.directive.d.ts +1 -1
  14. package/utils/drag-and-drop/dnd-list/dnd-list.directive.d.ts +1 -1
  15. package/utils/drag-and-drop/drag-and-drop.module.d.ts +7 -7
  16. package/utils/toast/base-toast-positions.d.ts +16 -16
  17. package/utils/toast/classes/base-toast-animated-container.component.d.ts +1 -1
  18. package/utils/toast/classes/base-toast-container.component.d.ts +1 -1
  19. package/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-container.component.d.ts +1 -1
  20. package/esm2022/data-source/base/abstract-data-provider.class.mjs +0 -142
  21. package/esm2022/data-source/base/base-data-source.class.mjs +0 -112
  22. package/esm2022/data-source/data-source.directive.mjs +0 -95
  23. package/esm2022/data-source/data-source.module.mjs +0 -16
  24. package/esm2022/data-source/fundamental-ngx-cdk-data-source.mjs +0 -5
  25. package/esm2022/data-source/helpers/apply-datasource-directive.mjs +0 -7
  26. package/esm2022/data-source/helpers/common.mjs +0 -17
  27. package/esm2022/data-source/helpers/is-datasource.mjs +0 -7
  28. package/esm2022/data-source/index.mjs +0 -9
  29. package/esm2022/data-source/models/data-source-provider.mjs +0 -2
  30. package/esm2022/data-source/models/data-source.mjs +0 -2
  31. package/esm2022/data-source/models/index.mjs +0 -4
  32. package/esm2022/data-source/models/matching-strategy.mjs +0 -7
  33. package/esm2022/data-source/tokens.mjs +0 -6
  34. package/esm2022/forms/cva/cva-control.class.mjs +0 -42
  35. package/esm2022/forms/cva/cva.directive.mjs +0 -321
  36. package/esm2022/forms/forms.module.mjs +0 -16
  37. package/esm2022/forms/fundamental-ngx-cdk-forms.mjs +0 -5
  38. package/esm2022/forms/helpers/state.mjs +0 -7
  39. package/esm2022/forms/index.mjs +0 -13
  40. package/esm2022/forms/models/control-type.model.mjs +0 -2
  41. package/esm2022/forms/models/cva.mjs +0 -2
  42. package/esm2022/forms/models/form-error.mjs +0 -2
  43. package/esm2022/forms/models/form-field.mjs +0 -9
  44. package/esm2022/forms/models/form-state.mjs +0 -2
  45. package/esm2022/forms/models/select-item.mjs +0 -14
  46. package/esm2022/forms/tokens/form-field-control.token.mjs +0 -3
  47. package/esm2022/forms/tokens/form-field.token.mjs +0 -3
  48. package/esm2022/fundamental-ngx-cdk.mjs +0 -5
  49. package/esm2022/fundamental-ngx.module.mjs +0 -19
  50. package/esm2022/index.mjs +0 -5
  51. package/esm2022/utils/abstract-fd-ngx-class.mjs +0 -61
  52. package/esm2022/utils/async-strategy/function-strategy.class.mjs +0 -12
  53. package/esm2022/utils/async-strategy/index.mjs +0 -7
  54. package/esm2022/utils/async-strategy/observable-strategy.class.mjs +0 -13
  55. package/esm2022/utils/async-strategy/promise-strategy.class.mjs +0 -12
  56. package/esm2022/utils/async-strategy/select-strategy.class.mjs +0 -23
  57. package/esm2022/utils/async-strategy/subscription-strategy.interface.mjs +0 -2
  58. package/esm2022/utils/async-strategy/value-strategy.class.mjs +0 -10
  59. package/esm2022/utils/coercion/array.mjs +0 -7
  60. package/esm2022/utils/components/dynamic-portal/dynamic-portal.component.mjs +0 -98
  61. package/esm2022/utils/components/index.mjs +0 -2
  62. package/esm2022/utils/consts/error-messages.mjs +0 -6
  63. package/esm2022/utils/consts/index.mjs +0 -5
  64. package/esm2022/utils/consts/overflow-priority-score.mjs +0 -8
  65. package/esm2022/utils/consts/unicode-letters.regex.mjs +0 -11
  66. package/esm2022/utils/consts/unicode-numbers.regex.mjs +0 -8
  67. package/esm2022/utils/datatypes/color-accent.datatype.mjs +0 -2
  68. package/esm2022/utils/datatypes/hash.datatype.mjs +0 -2
  69. package/esm2022/utils/datatypes/index.mjs +0 -5
  70. package/esm2022/utils/datatypes/object-nesting.types.mjs +0 -2
  71. package/esm2022/utils/datatypes/size.datatype.mjs +0 -2
  72. package/esm2022/utils/decorators/apply-css-class.decorator.mjs +0 -61
  73. package/esm2022/utils/decorators/apply-css-style.decorator.mjs +0 -26
  74. package/esm2022/utils/decorators/coerce-boolean.mjs +0 -7
  75. package/esm2022/utils/decorators/coerce-css-pixel.mjs +0 -4
  76. package/esm2022/utils/decorators/index.mjs +0 -6
  77. package/esm2022/utils/decorators/setter-alternator.mjs +0 -18
  78. package/esm2022/utils/deprecated-selector.class.mjs +0 -35
  79. package/esm2022/utils/directives/auto-complete/auto-complete.directive.mjs +0 -135
  80. package/esm2022/utils/directives/auto-complete/auto-complete.module.mjs +0 -17
  81. package/esm2022/utils/directives/breakpoints/breakpoint.directive.mjs +0 -156
  82. package/esm2022/utils/directives/breakpoints/responsive-breakpoints.mjs +0 -19
  83. package/esm2022/utils/directives/clicked/clicked-behavior.module.mjs +0 -35
  84. package/esm2022/utils/directives/clicked/clicked-event.plugin.mjs +0 -79
  85. package/esm2022/utils/directives/clicked/clicked.directive.mjs +0 -36
  86. package/esm2022/utils/directives/clicked/element-click.observable.mjs +0 -21
  87. package/esm2022/utils/directives/clicked/fdk-clicked-provider.service.mjs +0 -48
  88. package/esm2022/utils/directives/clicked/index.mjs +0 -6
  89. package/esm2022/utils/directives/clicked/provide-fdk-clicked.mjs +0 -29
  90. package/esm2022/utils/directives/disabled/default-disabled-view-modifier.mjs +0 -12
  91. package/esm2022/utils/directives/disabled/disabled-behavior.directive.mjs +0 -84
  92. package/esm2022/utils/directives/disabled/disabled-behavior.interface.mjs +0 -2
  93. package/esm2022/utils/directives/disabled/disabled-behavior.module.mjs +0 -16
  94. package/esm2022/utils/directives/disabled/disabled-view-modifier.interface.mjs +0 -2
  95. package/esm2022/utils/directives/disabled/disabled.observer.mjs +0 -35
  96. package/esm2022/utils/directives/disabled/fdk-disabled-provider.service.mjs +0 -101
  97. package/esm2022/utils/directives/disabled/fdk-disabled.token.mjs +0 -3
  98. package/esm2022/utils/directives/disabled/index.mjs +0 -9
  99. package/esm2022/utils/directives/disabled/set-disabled-state.mjs +0 -18
  100. package/esm2022/utils/directives/focus-key-manager/focus-key-manager-helpers.module.mjs +0 -17
  101. package/esm2022/utils/directives/focus-key-manager/focus-key-manager-item.directive.mjs +0 -67
  102. package/esm2022/utils/directives/focus-key-manager/focus-key-manager-list.directive.mjs +0 -88
  103. package/esm2022/utils/directives/focus-key-manager/focus-key-manager.tokens.mjs +0 -3
  104. package/esm2022/utils/directives/focus-key-manager/index.mjs +0 -5
  105. package/esm2022/utils/directives/focusable-grid/focusable-grid.directive.mjs +0 -164
  106. package/esm2022/utils/directives/focusable-grid/focusable-grid.module.mjs +0 -17
  107. package/esm2022/utils/directives/focusable-grid/focusable-grid.tokens.mjs +0 -3
  108. package/esm2022/utils/directives/focusable-grid/index.mjs +0 -4
  109. package/esm2022/utils/directives/focusable-item/focusable-item.directive.mjs +0 -198
  110. package/esm2022/utils/directives/focusable-item/focusable-item.module.mjs +0 -16
  111. package/esm2022/utils/directives/focusable-item/focusable-item.tokens.mjs +0 -3
  112. package/esm2022/utils/directives/focusable-item/focusable-list.position.mjs +0 -2
  113. package/esm2022/utils/directives/focusable-item/focusable.item.mjs +0 -2
  114. package/esm2022/utils/directives/focusable-item/focusable.observer.mjs +0 -46
  115. package/esm2022/utils/directives/focusable-item/get-item-element.mjs +0 -14
  116. package/esm2022/utils/directives/focusable-item/index.mjs +0 -9
  117. package/esm2022/utils/directives/focusable-item/indirect-focusable-item.directive.mjs +0 -44
  118. package/esm2022/utils/directives/focusable-item/is-element-focusable-by-default.mjs +0 -32
  119. package/esm2022/utils/directives/focusable-item/is-item-focusable.mjs +0 -8
  120. package/esm2022/utils/directives/focusable-list/focusable-list.directive.mjs +0 -300
  121. package/esm2022/utils/directives/focusable-list/focusable-list.module.mjs +0 -17
  122. package/esm2022/utils/directives/focusable-list/focusable-list.tokens.mjs +0 -3
  123. package/esm2022/utils/directives/focusable-list/index.mjs +0 -6
  124. package/esm2022/utils/directives/focusable-list/indirect-focusable-list.directive.mjs +0 -59
  125. package/esm2022/utils/directives/focusable-list/scroll.mjs +0 -43
  126. package/esm2022/utils/directives/ignore-click-on-selection/ignore-click-on-selection.directive.mjs +0 -55
  127. package/esm2022/utils/directives/ignore-click-on-selection/ignore-click-on-selection.module.mjs +0 -16
  128. package/esm2022/utils/directives/ignore-click-on-selection/tokens.mjs +0 -3
  129. package/esm2022/utils/directives/index.mjs +0 -35
  130. package/esm2022/utils/directives/initial-focus/initial-focus.directive.mjs +0 -99
  131. package/esm2022/utils/directives/initial-focus/initial-focus.module.mjs +0 -16
  132. package/esm2022/utils/directives/intersection-spy/intersection-spy.directive.mjs +0 -42
  133. package/esm2022/utils/directives/line-clamp/line-clamp.directive.mjs +0 -213
  134. package/esm2022/utils/directives/line-clamp/line-clamp.module.mjs +0 -16
  135. package/esm2022/utils/directives/only-digits/only-digits.directive.mjs +0 -206
  136. package/esm2022/utils/directives/only-digits/only-digits.module.mjs +0 -16
  137. package/esm2022/utils/directives/overflow-list/overflow-list-item.directive.mjs +0 -18
  138. package/esm2022/utils/directives/overflow-list/overflow-list.directive.mjs +0 -114
  139. package/esm2022/utils/directives/overflow-list/overflow-list.module.mjs +0 -17
  140. package/esm2022/utils/directives/readonly/default-readonly-view-modifier.mjs +0 -12
  141. package/esm2022/utils/directives/readonly/fdk-readonly-provider.service.mjs +0 -101
  142. package/esm2022/utils/directives/readonly/fdk-readonly.token.mjs +0 -3
  143. package/esm2022/utils/directives/readonly/index.mjs +0 -10
  144. package/esm2022/utils/directives/readonly/readonly-behavior.directive.mjs +0 -67
  145. package/esm2022/utils/directives/readonly/readonly-behavior.interface.mjs +0 -2
  146. package/esm2022/utils/directives/readonly/readonly-behavior.module.mjs +0 -16
  147. package/esm2022/utils/directives/readonly/readonly-view-modifier.interface.mjs +0 -2
  148. package/esm2022/utils/directives/readonly/readonly.observer.mjs +0 -33
  149. package/esm2022/utils/directives/readonly/set-readonly-state.mjs +0 -14
  150. package/esm2022/utils/directives/repeat/repeat.directive.mjs +0 -34
  151. package/esm2022/utils/directives/repeat/repeat.module.mjs +0 -16
  152. package/esm2022/utils/directives/resize/resize-handle.directive.mjs +0 -18
  153. package/esm2022/utils/directives/resize/resize.directive.mjs +0 -241
  154. package/esm2022/utils/directives/resize/resize.module.mjs +0 -17
  155. package/esm2022/utils/directives/resize-observer/index.mjs +0 -2
  156. package/esm2022/utils/directives/resize-observer/resize-observer.directive.mjs +0 -29
  157. package/esm2022/utils/directives/selectable-list/index.mjs +0 -8
  158. package/esm2022/utils/directives/selectable-list/select-component-root.token.mjs +0 -3
  159. package/esm2022/utils/directives/selectable-list/selectable-item.directive.mjs +0 -147
  160. package/esm2022/utils/directives/selectable-list/selectable-item.token.mjs +0 -3
  161. package/esm2022/utils/directives/selectable-list/selectable-list.directive.mjs +0 -85
  162. package/esm2022/utils/directives/selectable-list/selectable-list.module.mjs +0 -17
  163. package/esm2022/utils/directives/selectable-list/selectable-list.tokens.mjs +0 -3
  164. package/esm2022/utils/directives/selectable-list/selection.service.mjs +0 -138
  165. package/esm2022/utils/directives/template/template.directive.mjs +0 -25
  166. package/esm2022/utils/directives/template/template.module.mjs +0 -16
  167. package/esm2022/utils/directives/truncate/truncate.directive.mjs +0 -94
  168. package/esm2022/utils/directives/truncate/truncate.module.mjs +0 -16
  169. package/esm2022/utils/drag-and-drop/dnd-item/dnd-item.directive.mjs +0 -274
  170. package/esm2022/utils/drag-and-drop/dnd-keyboard-group/dnd-keyboard-group.directive.mjs +0 -88
  171. package/esm2022/utils/drag-and-drop/dnd-keyboard-item/dnd-keyboard-item.directive.mjs +0 -83
  172. package/esm2022/utils/drag-and-drop/dnd-list/dnd-list.directive.mjs +0 -378
  173. package/esm2022/utils/drag-and-drop/dnd.interfaces.mjs +0 -2
  174. package/esm2022/utils/drag-and-drop/drag-and-drop.module.mjs +0 -22
  175. package/esm2022/utils/drag-and-drop/index.mjs +0 -8
  176. package/esm2022/utils/drag-and-drop/tokens.mjs +0 -4
  177. package/esm2022/utils/dynamic-component/dynamic-component-config.mjs +0 -2
  178. package/esm2022/utils/dynamic-component/dynamic-component-container.mjs +0 -32
  179. package/esm2022/utils/dynamic-component/dynamic-component-injector.mjs +0 -20
  180. package/esm2022/utils/dynamic-component/dynamic-component.service.mjs +0 -100
  181. package/esm2022/utils/dynamic-component/index.mjs +0 -5
  182. package/esm2022/utils/functions/consumer-provider-factory.mjs +0 -12
  183. package/esm2022/utils/functions/element-size.mjs +0 -23
  184. package/esm2022/utils/functions/get-document-font-size.mjs +0 -9
  185. package/esm2022/utils/functions/index.mjs +0 -14
  186. package/esm2022/utils/functions/intersection-observable.mjs +0 -26
  187. package/esm2022/utils/functions/is-compact-density.mjs +0 -11
  188. package/esm2022/utils/functions/is-odd.mjs +0 -9
  189. package/esm2022/utils/functions/key-util.mjs +0 -90
  190. package/esm2022/utils/functions/module-deprecations-provider.mjs +0 -18
  191. package/esm2022/utils/functions/parser-file-size.mjs +0 -37
  192. package/esm2022/utils/functions/random-color-accent.mjs +0 -5
  193. package/esm2022/utils/functions/resize-observable.mjs +0 -33
  194. package/esm2022/utils/functions/scroll.mjs +0 -19
  195. package/esm2022/utils/functions/uuidv4-generator.mjs +0 -12
  196. package/esm2022/utils/fundamental-ngx-cdk-utils.mjs +0 -5
  197. package/esm2022/utils/helpers/destroy-observable.mjs +0 -12
  198. package/esm2022/utils/helpers/dfs.mjs +0 -47
  199. package/esm2022/utils/helpers/get-native-element.mjs +0 -19
  200. package/esm2022/utils/helpers/index.mjs +0 -6
  201. package/esm2022/utils/helpers/range-selector.mjs +0 -117
  202. package/esm2022/utils/helpers/warn-once.mjs +0 -9
  203. package/esm2022/utils/index.mjs +0 -25
  204. package/esm2022/utils/interfaces/content-density.mjs +0 -2
  205. package/esm2022/utils/interfaces/css-class-builder.interface.mjs +0 -2
  206. package/esm2022/utils/interfaces/css-style-builder.interface.mjs +0 -2
  207. package/esm2022/utils/interfaces/has-element-ref.interface.mjs +0 -2
  208. package/esm2022/utils/interfaces/index.mjs +0 -8
  209. package/esm2022/utils/interfaces/keyboard-support-item.interface.mjs +0 -2
  210. package/esm2022/utils/interfaces/module-deprecation.interface.mjs +0 -2
  211. package/esm2022/utils/interfaces/require.interface.mjs +0 -2
  212. package/esm2022/utils/list-item/list-item-utils.mjs +0 -3
  213. package/esm2022/utils/models/nullable.mjs +0 -2
  214. package/esm2022/utils/pipes/async-or-sync.pipe.mjs +0 -35
  215. package/esm2022/utils/pipes/displayFn.pipe.mjs +0 -18
  216. package/esm2022/utils/pipes/filter-strings.pipe.mjs +0 -31
  217. package/esm2022/utils/pipes/index.mjs +0 -12
  218. package/esm2022/utils/pipes/is-compact.pipe.mjs +0 -16
  219. package/esm2022/utils/pipes/make-async.pipe.mjs +0 -24
  220. package/esm2022/utils/pipes/pipe.module.mjs +0 -65
  221. package/esm2022/utils/pipes/safe.pipe.mjs +0 -37
  222. package/esm2022/utils/pipes/search-highlight.pipe.mjs +0 -40
  223. package/esm2022/utils/pipes/truncate.pipe.mjs +0 -18
  224. package/esm2022/utils/pipes/two-digits.pipe.mjs +0 -23
  225. package/esm2022/utils/pipes/value-by-path.pipe.mjs +0 -16
  226. package/esm2022/utils/services/content-density.service.mjs +0 -35
  227. package/esm2022/utils/services/destroyed.service.mjs +0 -26
  228. package/esm2022/utils/services/focus-trap.service.mjs +0 -92
  229. package/esm2022/utils/services/index.mjs +0 -10
  230. package/esm2022/utils/services/keyboard-support/keyboard-support.service.mjs +0 -73
  231. package/esm2022/utils/services/local-storage.service.mjs +0 -38
  232. package/esm2022/utils/services/observers/attribute.observer.mjs +0 -81
  233. package/esm2022/utils/services/resize-observer.service.mjs +0 -92
  234. package/esm2022/utils/services/rtl.service.mjs +0 -32
  235. package/esm2022/utils/services/tabbable-element.service.mjs +0 -43
  236. package/esm2022/utils/toast/base-toast-animations.mjs +0 -22
  237. package/esm2022/utils/toast/base-toast-positions.mjs +0 -108
  238. package/esm2022/utils/toast/base-toast.service.mjs +0 -261
  239. package/esm2022/utils/toast/classes/action-dismissible/base-toast-action-dismissible-ref.mjs +0 -36
  240. package/esm2022/utils/toast/classes/base-toast-animated-container.component.mjs +0 -87
  241. package/esm2022/utils/toast/classes/base-toast-config.mjs +0 -23
  242. package/esm2022/utils/toast/classes/base-toast-container.component.mjs +0 -72
  243. package/esm2022/utils/toast/classes/base-toast-overlay-container.mjs +0 -25
  244. package/esm2022/utils/toast/classes/base-toast-ref.mjs +0 -45
  245. package/esm2022/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-config.mjs +0 -19
  246. package/esm2022/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-container.component.mjs +0 -39
  247. package/esm2022/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible-ref.mjs +0 -23
  248. package/esm2022/utils/toast/classes/duration-dismissible/base-toast-duration-dismissible.service.mjs +0 -25
  249. package/esm2022/utils/toast/index.mjs +0 -16
  250. package/esm2022/utils/toast/interfaces/toast-container-component.interface.mjs +0 -2
  251. package/esm2022/utils/toast/interfaces/toast-duration-dismissible-container-component.interface.mjs +0 -2
  252. package/esm2022/utils/toast/interfaces/toast-text-component.interface.mjs +0 -2
  253. package/esm2022/utils/tokens/module-deprecations.token.mjs +0 -3
  254. package/esm2022/utils/tokens/viewport-size.observable.mjs +0 -20
  255. package/esm2022/utils/typecheck.mjs +0 -75
  256. package/esm2022/utils/utils.module.mjs +0 -131
@@ -1,43 +0,0 @@
1
- import { InteractivityChecker } from '@angular/cdk/a11y';
2
- import { DOCUMENT } from '@angular/common';
3
- import { Inject, Injectable, Optional } from '@angular/core';
4
- import * as i0 from "@angular/core";
5
- import * as i1 from "@angular/cdk/a11y";
6
- export class TabbableElementService {
7
- /** @hidden */
8
- constructor(_checker, _document) {
9
- this._checker = _checker;
10
- this._document = _document;
11
- }
12
- /** Get the first tabbable element from a DOM subtree (inclusive). */
13
- getTabbableElement(root, focusLastElement = false, skipSelf = false) {
14
- if (!skipSelf && this._checker.isFocusable(root) && this._checker.isTabbable(root)) {
15
- return root;
16
- }
17
- // Iterate in DOM order. Note that IE doesn't have `children` for SVG, so we fall
18
- // back to `childNodes` which includes text nodes, comments etc.
19
- const rootChildren = root.children || root.childNodes;
20
- const children = focusLastElement ? Array.from(rootChildren).reverse() : rootChildren;
21
- for (let i = 0; i < children.length; i++) {
22
- const tabbableChild = children[i].nodeType === this._document?.ELEMENT_NODE
23
- ? this.getTabbableElement(children[i], focusLastElement)
24
- : null;
25
- if (tabbableChild) {
26
- return tabbableChild;
27
- }
28
- }
29
- return null;
30
- }
31
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: TabbableElementService, deps: [{ token: i1.InteractivityChecker }, { token: DOCUMENT, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
32
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: TabbableElementService, providedIn: 'root' }); }
33
- }
34
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: TabbableElementService, decorators: [{
35
- type: Injectable,
36
- args: [{ providedIn: 'root' }]
37
- }], ctorParameters: () => [{ type: i1.InteractivityChecker }, { type: Document, decorators: [{
38
- type: Optional
39
- }, {
40
- type: Inject,
41
- args: [DOCUMENT]
42
- }] }] });
43
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFiYmFibGUtZWxlbWVudC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvdXRpbHMvc2VydmljZXMvdGFiYmFibGUtZWxlbWVudC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ3pELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMzQyxPQUFPLEVBQUUsTUFBTSxFQUFFLFVBQVUsRUFBRSxRQUFRLEVBQUUsTUFBTSxlQUFlLENBQUM7OztBQUc3RCxNQUFNLE9BQU8sc0JBQXNCO0lBQy9CLGNBQWM7SUFDZCxZQUNxQixRQUE4QixFQUNBLFNBQTBCO1FBRHhELGFBQVEsR0FBUixRQUFRLENBQXNCO1FBQ0EsY0FBUyxHQUFULFNBQVMsQ0FBaUI7SUFDMUUsQ0FBQztJQUVKLHFFQUFxRTtJQUNyRSxrQkFBa0IsQ0FBQyxJQUFpQixFQUFFLGdCQUFnQixHQUFHLEtBQUssRUFBRSxRQUFRLEdBQUcsS0FBSztRQUM1RSxJQUFJLENBQUMsUUFBUSxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsV0FBVyxDQUFDLElBQUksQ0FBQyxJQUFJLElBQUksQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUM7WUFDakYsT0FBTyxJQUFJLENBQUM7UUFDaEIsQ0FBQztRQUVELGlGQUFpRjtRQUNqRixnRUFBZ0U7UUFDaEUsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLFFBQVEsSUFBSSxJQUFJLENBQUMsVUFBVSxDQUFDO1FBRXRELE1BQU0sUUFBUSxHQUFHLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLFlBQVksQ0FBQyxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUM7UUFFdEYsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLFFBQVEsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLEVBQUUsQ0FBQztZQUN2QyxNQUFNLGFBQWEsR0FDZixRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxLQUFLLElBQUksQ0FBQyxTQUFTLEVBQUUsWUFBWTtnQkFDakQsQ0FBQyxDQUFDLElBQUksQ0FBQyxrQkFBa0IsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFnQixFQUFFLGdCQUFnQixDQUFDO2dCQUN2RSxDQUFDLENBQUMsSUFBSSxDQUFDO1lBRWYsSUFBSSxhQUFhLEVBQUUsQ0FBQztnQkFDaEIsT0FBTyxhQUFhLENBQUM7WUFDekIsQ0FBQztRQUNMLENBQUM7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNoQixDQUFDOzhHQS9CUSxzQkFBc0Isc0RBSVAsUUFBUTtrSEFKdkIsc0JBQXNCLGNBRFQsTUFBTTs7MkZBQ25CLHNCQUFzQjtrQkFEbEMsVUFBVTttQkFBQyxFQUFFLFVBQVUsRUFBRSxNQUFNLEVBQUU7OzBCQUt6QixRQUFROzswQkFBSSxNQUFNOzJCQUFDLFFBQVEiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBJbnRlcmFjdGl2aXR5Q2hlY2tlciB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9hMTF5JztcbmltcG9ydCB7IERPQ1VNRU5UIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEluamVjdCwgSW5qZWN0YWJsZSwgT3B0aW9uYWwgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQEluamVjdGFibGUoeyBwcm92aWRlZEluOiAncm9vdCcgfSlcbmV4cG9ydCBjbGFzcyBUYWJiYWJsZUVsZW1lbnRTZXJ2aWNlIHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIGNvbnN0cnVjdG9yKFxuICAgICAgICBwcml2YXRlIHJlYWRvbmx5IF9jaGVja2VyOiBJbnRlcmFjdGl2aXR5Q2hlY2tlcixcbiAgICAgICAgQE9wdGlvbmFsKCkgQEluamVjdChET0NVTUVOVCkgcHJpdmF0ZSByZWFkb25seSBfZG9jdW1lbnQ6IERvY3VtZW50IHwgbnVsbFxuICAgICkge31cblxuICAgIC8qKiBHZXQgdGhlIGZpcnN0IHRhYmJhYmxlIGVsZW1lbnQgZnJvbSBhIERPTSBzdWJ0cmVlIChpbmNsdXNpdmUpLiAqL1xuICAgIGdldFRhYmJhYmxlRWxlbWVudChyb290OiBIVE1MRWxlbWVudCwgZm9jdXNMYXN0RWxlbWVudCA9IGZhbHNlLCBza2lwU2VsZiA9IGZhbHNlKTogSFRNTEVsZW1lbnQgfCBudWxsIHtcbiAgICAgICAgaWYgKCFza2lwU2VsZiAmJiB0aGlzLl9jaGVja2VyLmlzRm9jdXNhYmxlKHJvb3QpICYmIHRoaXMuX2NoZWNrZXIuaXNUYWJiYWJsZShyb290KSkge1xuICAgICAgICAgICAgcmV0dXJuIHJvb3Q7XG4gICAgICAgIH1cblxuICAgICAgICAvLyBJdGVyYXRlIGluIERPTSBvcmRlci4gTm90ZSB0aGF0IElFIGRvZXNuJ3QgaGF2ZSBgY2hpbGRyZW5gIGZvciBTVkcsIHNvIHdlIGZhbGxcbiAgICAgICAgLy8gYmFjayB0byBgY2hpbGROb2Rlc2Agd2hpY2ggaW5jbHVkZXMgdGV4dCBub2RlcywgY29tbWVudHMgZXRjLlxuICAgICAgICBjb25zdCByb290Q2hpbGRyZW4gPSByb290LmNoaWxkcmVuIHx8IHJvb3QuY2hpbGROb2RlcztcblxuICAgICAgICBjb25zdCBjaGlsZHJlbiA9IGZvY3VzTGFzdEVsZW1lbnQgPyBBcnJheS5mcm9tKHJvb3RDaGlsZHJlbikucmV2ZXJzZSgpIDogcm9vdENoaWxkcmVuO1xuXG4gICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDwgY2hpbGRyZW4ubGVuZ3RoOyBpKyspIHtcbiAgICAgICAgICAgIGNvbnN0IHRhYmJhYmxlQ2hpbGQgPVxuICAgICAgICAgICAgICAgIGNoaWxkcmVuW2ldLm5vZGVUeXBlID09PSB0aGlzLl9kb2N1bWVudD8uRUxFTUVOVF9OT0RFXG4gICAgICAgICAgICAgICAgICAgID8gdGhpcy5nZXRUYWJiYWJsZUVsZW1lbnQoY2hpbGRyZW5baV0gYXMgSFRNTEVsZW1lbnQsIGZvY3VzTGFzdEVsZW1lbnQpXG4gICAgICAgICAgICAgICAgICAgIDogbnVsbDtcblxuICAgICAgICAgICAgaWYgKHRhYmJhYmxlQ2hpbGQpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gdGFiYmFibGVDaGlsZDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBudWxsO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,22 +0,0 @@
1
- import { animate, state, style, transition, trigger } from '@angular/animations';
2
- /**
3
- * Animations used by the Toast components.
4
- */
5
- export const baseToastAnimations = {
6
- /** Animation that shows and hides Toast. */
7
- toastState: trigger('state', [
8
- state('void, hidden', style({
9
- transform: 'translateY(1rem)',
10
- opacity: 0
11
- })),
12
- state('visible', style({
13
- transform: 'translateY(0)',
14
- opacity: 1
15
- })),
16
- transition('* => visible', animate('150ms cubic-bezier(0, 0, 0.2, 1)')),
17
- transition('* => void, * => hidden', animate('75ms cubic-bezier(0.4, 0.0, 1, 1)', style({
18
- opacity: 0
19
- })))
20
- ])
21
- };
22
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC1hbmltYXRpb25zLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvdXRpbHMvdG9hc3QvYmFzZS10b2FzdC1hbmltYXRpb25zLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBNEIsT0FBTyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsVUFBVSxFQUFFLE9BQU8sRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBRTNHOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sbUJBQW1CLEdBRTVCO0lBQ0EsNENBQTRDO0lBQzVDLFVBQVUsRUFBRSxPQUFPLENBQUMsT0FBTyxFQUFFO1FBQ3pCLEtBQUssQ0FDRCxjQUFjLEVBQ2QsS0FBSyxDQUFDO1lBQ0YsU0FBUyxFQUFFLGtCQUFrQjtZQUM3QixPQUFPLEVBQUUsQ0FBQztTQUNiLENBQUMsQ0FDTDtRQUNELEtBQUssQ0FDRCxTQUFTLEVBQ1QsS0FBSyxDQUFDO1lBQ0YsU0FBUyxFQUFFLGVBQWU7WUFDMUIsT0FBTyxFQUFFLENBQUM7U0FDYixDQUFDLENBQ0w7UUFDRCxVQUFVLENBQUMsY0FBYyxFQUFFLE9BQU8sQ0FBQyxrQ0FBa0MsQ0FBQyxDQUFDO1FBQ3ZFLFVBQVUsQ0FDTix3QkFBd0IsRUFDeEIsT0FBTyxDQUNILG1DQUFtQyxFQUNuQyxLQUFLLENBQUM7WUFDRixPQUFPLEVBQUUsQ0FBQztTQUNiLENBQUMsQ0FDTCxDQUNKO0tBQ0osQ0FBQztDQUNMLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBbmltYXRpb25UcmlnZ2VyTWV0YWRhdGEsIGFuaW1hdGUsIHN0YXRlLCBzdHlsZSwgdHJhbnNpdGlvbiwgdHJpZ2dlciB9IGZyb20gJ0Bhbmd1bGFyL2FuaW1hdGlvbnMnO1xuXG4vKipcbiAqIEFuaW1hdGlvbnMgdXNlZCBieSB0aGUgVG9hc3QgY29tcG9uZW50cy5cbiAqL1xuZXhwb3J0IGNvbnN0IGJhc2VUb2FzdEFuaW1hdGlvbnM6IHtcbiAgICByZWFkb25seSB0b2FzdFN0YXRlOiBBbmltYXRpb25UcmlnZ2VyTWV0YWRhdGE7XG59ID0ge1xuICAgIC8qKiBBbmltYXRpb24gdGhhdCBzaG93cyBhbmQgaGlkZXMgVG9hc3QuICovXG4gICAgdG9hc3RTdGF0ZTogdHJpZ2dlcignc3RhdGUnLCBbXG4gICAgICAgIHN0YXRlKFxuICAgICAgICAgICAgJ3ZvaWQsIGhpZGRlbicsXG4gICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgxcmVtKScsXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMFxuICAgICAgICAgICAgfSlcbiAgICAgICAgKSxcbiAgICAgICAgc3RhdGUoXG4gICAgICAgICAgICAndmlzaWJsZScsXG4gICAgICAgICAgICBzdHlsZSh7XG4gICAgICAgICAgICAgICAgdHJhbnNmb3JtOiAndHJhbnNsYXRlWSgwKScsXG4gICAgICAgICAgICAgICAgb3BhY2l0eTogMVxuICAgICAgICAgICAgfSlcbiAgICAgICAgKSxcbiAgICAgICAgdHJhbnNpdGlvbignKiA9PiB2aXNpYmxlJywgYW5pbWF0ZSgnMTUwbXMgY3ViaWMtYmV6aWVyKDAsIDAsIDAuMiwgMSknKSksXG4gICAgICAgIHRyYW5zaXRpb24oXG4gICAgICAgICAgICAnKiA9PiB2b2lkLCAqID0+IGhpZGRlbicsXG4gICAgICAgICAgICBhbmltYXRlKFxuICAgICAgICAgICAgICAgICc3NW1zIGN1YmljLWJlemllcigwLjQsIDAuMCwgMSwgMSknLFxuICAgICAgICAgICAgICAgIHN0eWxlKHtcbiAgICAgICAgICAgICAgICAgICAgb3BhY2l0eTogMFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICApXG4gICAgICAgIClcbiAgICBdKVxufTtcbiJdfQ==
@@ -1,108 +0,0 @@
1
- export const toastConnectedTopPosition = {
2
- originX: 'center',
3
- originY: 'bottom',
4
- overlayX: 'center',
5
- overlayY: 'top',
6
- offsetY: 16
7
- };
8
- export const toastConnectedTopLeftPosition = {
9
- ...toastConnectedTopPosition,
10
- ...{ overlayX: 'start', originX: 'start' }
11
- };
12
- export const toastConnectedTopRightPosition = {
13
- ...toastConnectedTopPosition,
14
- ...{ overlayX: 'end', originX: 'end' }
15
- };
16
- export const toastConnectedBottomPosition = {
17
- originX: 'center',
18
- originY: 'top',
19
- overlayX: 'center',
20
- overlayY: 'bottom',
21
- offsetY: -16
22
- };
23
- export const toastConnectedBottomLeftPosition = {
24
- ...toastConnectedBottomPosition,
25
- ...{ overlayX: 'start', originX: 'start' }
26
- };
27
- export const toastConnectedBottomRightPosition = {
28
- ...toastConnectedBottomPosition,
29
- ...{ overlayX: 'end', originX: 'end' }
30
- };
31
- /**
32
- * Base Toast Position class.
33
- */
34
- export class BaseToastPosition {
35
- }
36
- /**
37
- * Toast Position class.
38
- * The first item will pop from the top-center of the screen.
39
- * New items will stack after the first item.
40
- */
41
- export class ToastTopCenterPosition extends BaseToastPosition {
42
- /** @hidden */
43
- static { this.global = {
44
- top: '1rem',
45
- center: true
46
- }; }
47
- /** @hidden */
48
- static { this.connected = toastConnectedTopPosition; }
49
- }
50
- /**
51
- * Toast Position class.
52
- * The first item will pop from the bottom-center of the screen.
53
- * New items will stack before first item.
54
- */
55
- export class ToastBottomCenterPosition extends BaseToastPosition {
56
- /** @hidden */
57
- static { this.global = {
58
- bottom: '1rem',
59
- center: true
60
- }; }
61
- /** @hidden */
62
- static { this.connected = toastConnectedBottomPosition; }
63
- }
64
- /**
65
- * Toast Position class.
66
- * The first item will pop from the top-left of the screen.
67
- * New items will stack after first item.
68
- */
69
- export class ToastTopLeftPosition extends ToastTopCenterPosition {
70
- /** @hidden */
71
- static { this.global = { ...ToastTopCenterPosition.global, ...{ left: '1rem', center: false } }; }
72
- /** @hidden */
73
- static { this.connected = toastConnectedTopLeftPosition; }
74
- }
75
- /**
76
- * Toast Position class.
77
- * The first item will pop from the top-right of the screen.
78
- * New items will stack after first item.
79
- */
80
- export class ToastTopRightPosition extends ToastTopCenterPosition {
81
- /** @hidden */
82
- static { this.global = { ...ToastTopCenterPosition.global, ...{ right: '1rem', center: false } }; }
83
- /** @hidden */
84
- static { this.connected = toastConnectedTopRightPosition; }
85
- }
86
- /**
87
- * Toast Position class.
88
- * The first item will pop from the bottom-left of the screen.
89
- * New items will stack before first item.
90
- */
91
- export class ToastBottomLeftPosition extends ToastBottomCenterPosition {
92
- /** @hidden */
93
- static { this.global = { ...ToastBottomCenterPosition.global, ...{ left: '1rem', center: false } }; }
94
- /** @hidden */
95
- static { this.connected = toastConnectedBottomLeftPosition; }
96
- }
97
- /**
98
- * Toast Position class.
99
- * The first item will pop from the bottom-right of the screen.
100
- * New items will stack before first item.
101
- */
102
- export class ToastBottomRightPosition extends ToastBottomCenterPosition {
103
- /** @hidden */
104
- static { this.global = { ...ToastBottomCenterPosition.global, ...{ right: '1rem', center: false } }; }
105
- /** @hidden */
106
- static { this.connected = toastConnectedBottomRightPosition; }
107
- }
108
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC1wb3NpdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL2Nkay91dGlscy90b2FzdC9iYXNlLXRvYXN0LXBvc2l0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFlQSxNQUFNLENBQUMsTUFBTSx5QkFBeUIsR0FBc0I7SUFDeEQsT0FBTyxFQUFFLFFBQVE7SUFDakIsT0FBTyxFQUFFLFFBQVE7SUFDakIsUUFBUSxFQUFFLFFBQVE7SUFDbEIsUUFBUSxFQUFFLEtBQUs7SUFDZixPQUFPLEVBQUUsRUFBRTtDQUNkLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSw2QkFBNkIsR0FBc0I7SUFDNUQsR0FBRyx5QkFBeUI7SUFDNUIsR0FBRyxFQUFFLFFBQVEsRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRTtDQUM3QyxDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sOEJBQThCLEdBQXNCO0lBQzdELEdBQUcseUJBQXlCO0lBQzVCLEdBQUcsRUFBRSxRQUFRLEVBQUUsS0FBSyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUU7Q0FDekMsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLDRCQUE0QixHQUFzQjtJQUMzRCxPQUFPLEVBQUUsUUFBUTtJQUNqQixPQUFPLEVBQUUsS0FBSztJQUNkLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLFFBQVEsRUFBRSxRQUFRO0lBQ2xCLE9BQU8sRUFBRSxDQUFDLEVBQUU7Q0FDZixDQUFDO0FBRUYsTUFBTSxDQUFDLE1BQU0sZ0NBQWdDLEdBQXNCO0lBQy9ELEdBQUcsNEJBQTRCO0lBQy9CLEdBQUcsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUU7Q0FDN0MsQ0FBQztBQUVGLE1BQU0sQ0FBQyxNQUFNLGlDQUFpQyxHQUFzQjtJQUNoRSxHQUFHLDRCQUE0QjtJQUMvQixHQUFHLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsS0FBSyxFQUFFO0NBQ3pDLENBQUM7QUFFRjs7R0FFRztBQUNILE1BQU0sT0FBZ0IsaUJBQWlCO0NBY3RDO0FBRUQ7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxzQkFBdUIsU0FBUSxpQkFBaUI7SUFDekQsY0FBYzthQUNQLFdBQU0sR0FBd0I7UUFDakMsR0FBRyxFQUFFLE1BQU07UUFDWCxNQUFNLEVBQUUsSUFBSTtLQUNmLENBQUM7SUFDRixjQUFjO2FBQ1AsY0FBUyxHQUFzQix5QkFBeUIsQ0FBQzs7QUFHcEU7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyx5QkFBMEIsU0FBUSxpQkFBaUI7SUFDNUQsY0FBYzthQUNQLFdBQU0sR0FBd0I7UUFDakMsTUFBTSxFQUFFLE1BQU07UUFDZCxNQUFNLEVBQUUsSUFBSTtLQUNmLENBQUM7SUFDRixjQUFjO2FBQ1AsY0FBUyxHQUFzQiw0QkFBNEIsQ0FBQzs7QUFHdkU7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxvQkFBcUIsU0FBUSxzQkFBc0I7SUFDNUQsY0FBYzthQUNFLFdBQU0sR0FBRyxFQUFFLEdBQUcsc0JBQXNCLENBQUMsTUFBTSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDO0lBQ2xHLGNBQWM7YUFDRSxjQUFTLEdBQXNCLDZCQUE2QixDQUFDOztBQUdqRjs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLHFCQUFzQixTQUFRLHNCQUFzQjtJQUM3RCxjQUFjO2FBQ0UsV0FBTSxHQUFHLEVBQUUsR0FBRyxzQkFBc0IsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDbkcsY0FBYzthQUNFLGNBQVMsR0FBc0IsOEJBQThCLENBQUM7O0FBR2xGOzs7O0dBSUc7QUFDSCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEseUJBQXlCO0lBQ2xFLGNBQWM7YUFDRSxXQUFNLEdBQUcsRUFBRSxHQUFHLHlCQUF5QixDQUFDLE1BQU0sRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLEVBQUUsQ0FBQztJQUNyRyxjQUFjO2FBQ0UsY0FBUyxHQUFHLGdDQUFnQyxDQUFDOztBQUdqRTs7OztHQUlHO0FBQ0gsTUFBTSxPQUFPLHdCQUF5QixTQUFRLHlCQUF5QjtJQUNuRSxjQUFjO2FBQ0UsV0FBTSxHQUFHLEVBQUUsR0FBRyx5QkFBeUIsQ0FBQyxNQUFNLEVBQUUsR0FBRyxFQUFFLEtBQUssRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxFQUFFLENBQUM7SUFDdEcsY0FBYzthQUNFLGNBQVMsR0FBRyxpQ0FBaUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbm5lY3RlZFBvc2l0aW9uLCBTY3JvbGxTdHJhdGVneSB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcblxuZXhwb3J0IGludGVyZmFjZSBUb2FzdEdsb2JhbFBvc2l0aW9uIHtcbiAgICBsZWZ0Pzogc3RyaW5nO1xuICAgIHJpZ2h0Pzogc3RyaW5nO1xuICAgIGJvdHRvbT86IHN0cmluZztcbiAgICB0b3A/OiBzdHJpbmc7XG4gICAgY2VudGVyOiBib29sZWFuO1xuICAgIGNlbnRlclZlcnRpY2FsbHk/OiBib29sZWFuO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRvYXN0R2xvYmFsQ29ubmVjdGVkUG9zaXRpb24gZXh0ZW5kcyBDb25uZWN0ZWRQb3NpdGlvbiB7XG4gICAgYm91bmRUbzogSFRNTEVsZW1lbnQ7XG59XG5cbmV4cG9ydCBjb25zdCB0b2FzdENvbm5lY3RlZFRvcFBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICBvcmlnaW5YOiAnY2VudGVyJyxcbiAgICBvcmlnaW5ZOiAnYm90dG9tJyxcbiAgICBvdmVybGF5WDogJ2NlbnRlcicsXG4gICAgb3ZlcmxheVk6ICd0b3AnLFxuICAgIG9mZnNldFk6IDE2XG59O1xuXG5leHBvcnQgY29uc3QgdG9hc3RDb25uZWN0ZWRUb3BMZWZ0UG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgIC4uLnRvYXN0Q29ubmVjdGVkVG9wUG9zaXRpb24sXG4gICAgLi4ueyBvdmVybGF5WDogJ3N0YXJ0Jywgb3JpZ2luWDogJ3N0YXJ0JyB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9hc3RDb25uZWN0ZWRUb3BSaWdodFBvc2l0aW9uOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHtcbiAgICAuLi50b2FzdENvbm5lY3RlZFRvcFBvc2l0aW9uLFxuICAgIC4uLnsgb3ZlcmxheVg6ICdlbmQnLCBvcmlnaW5YOiAnZW5kJyB9XG59O1xuXG5leHBvcnQgY29uc3QgdG9hc3RDb25uZWN0ZWRCb3R0b21Qb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgb3JpZ2luWDogJ2NlbnRlcicsXG4gICAgb3JpZ2luWTogJ3RvcCcsXG4gICAgb3ZlcmxheVg6ICdjZW50ZXInLFxuICAgIG92ZXJsYXlZOiAnYm90dG9tJyxcbiAgICBvZmZzZXRZOiAtMTZcbn07XG5cbmV4cG9ydCBjb25zdCB0b2FzdENvbm5lY3RlZEJvdHRvbUxlZnRQb3NpdGlvbjogQ29ubmVjdGVkUG9zaXRpb24gPSB7XG4gICAgLi4udG9hc3RDb25uZWN0ZWRCb3R0b21Qb3NpdGlvbixcbiAgICAuLi57IG92ZXJsYXlYOiAnc3RhcnQnLCBvcmlnaW5YOiAnc3RhcnQnIH1cbn07XG5cbmV4cG9ydCBjb25zdCB0b2FzdENvbm5lY3RlZEJvdHRvbVJpZ2h0UG9zaXRpb246IENvbm5lY3RlZFBvc2l0aW9uID0ge1xuICAgIC4uLnRvYXN0Q29ubmVjdGVkQm90dG9tUG9zaXRpb24sXG4gICAgLi4ueyBvdmVybGF5WDogJ2VuZCcsIG9yaWdpblg6ICdlbmQnIH1cbn07XG5cbi8qKlxuICogQmFzZSBUb2FzdCBQb3NpdGlvbiBjbGFzcy5cbiAqL1xuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VUb2FzdFBvc2l0aW9uIHtcbiAgICAvKipcbiAgICAgKiBQb3NpdGlvbiBzdHJhdGVneSBvZiB0aGUgZmlyc3QgaXRlbS5cbiAgICAgKi9cbiAgICBnbG9iYWwhOiBUb2FzdEdsb2JhbFBvc2l0aW9uIHwgVG9hc3RHbG9iYWxDb25uZWN0ZWRQb3NpdGlvbjtcbiAgICAvKipcbiAgICAgKiBQb3NpdGlvbiBzdHJhdGVneSBvZiB0aGUgbmV3bHkgYWRkZWQgaXRlbXMuXG4gICAgICovXG4gICAgY29ubmVjdGVkITogQ29ubmVjdGVkUG9zaXRpb247XG5cbiAgICAvKipcbiAgICAgKiBTY3JvbGwgc3RyYXRlZ3kuIFVzZWQgd2hlbiBnbG9iYWwgcG9zaXRpb24gaXMgYm91bmQgdG8gc29tZSBIVE1MIGVsZW1lbnQgb24gdGhlIHBhZ2UuXG4gICAgICovXG4gICAgc2Nyb2xsUG9zaXRpb24/OiBTY3JvbGxTdHJhdGVneTtcbn1cblxuLyoqXG4gKiBUb2FzdCBQb3NpdGlvbiBjbGFzcy5cbiAqIFRoZSBmaXJzdCBpdGVtIHdpbGwgcG9wIGZyb20gdGhlIHRvcC1jZW50ZXIgb2YgdGhlIHNjcmVlbi5cbiAqIE5ldyBpdGVtcyB3aWxsIHN0YWNrIGFmdGVyIHRoZSBmaXJzdCBpdGVtLlxuICovXG5leHBvcnQgY2xhc3MgVG9hc3RUb3BDZW50ZXJQb3NpdGlvbiBleHRlbmRzIEJhc2VUb2FzdFBvc2l0aW9uIHtcbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHN0YXRpYyBnbG9iYWw6IFRvYXN0R2xvYmFsUG9zaXRpb24gPSB7XG4gICAgICAgIHRvcDogJzFyZW0nLFxuICAgICAgICBjZW50ZXI6IHRydWVcbiAgICB9O1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIGNvbm5lY3RlZDogQ29ubmVjdGVkUG9zaXRpb24gPSB0b2FzdENvbm5lY3RlZFRvcFBvc2l0aW9uO1xufVxuXG4vKipcbiAqIFRvYXN0IFBvc2l0aW9uIGNsYXNzLlxuICogVGhlIGZpcnN0IGl0ZW0gd2lsbCBwb3AgZnJvbSB0aGUgYm90dG9tLWNlbnRlciBvZiB0aGUgc2NyZWVuLlxuICogTmV3IGl0ZW1zIHdpbGwgc3RhY2sgYmVmb3JlIGZpcnN0IGl0ZW0uXG4gKi9cbmV4cG9ydCBjbGFzcyBUb2FzdEJvdHRvbUNlbnRlclBvc2l0aW9uIGV4dGVuZHMgQmFzZVRvYXN0UG9zaXRpb24ge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIGdsb2JhbDogVG9hc3RHbG9iYWxQb3NpdGlvbiA9IHtcbiAgICAgICAgYm90dG9tOiAnMXJlbScsXG4gICAgICAgIGNlbnRlcjogdHJ1ZVxuICAgIH07XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgY29ubmVjdGVkOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHRvYXN0Q29ubmVjdGVkQm90dG9tUG9zaXRpb247XG59XG5cbi8qKlxuICogVG9hc3QgUG9zaXRpb24gY2xhc3MuXG4gKiBUaGUgZmlyc3QgaXRlbSB3aWxsIHBvcCBmcm9tIHRoZSB0b3AtbGVmdCBvZiB0aGUgc2NyZWVuLlxuICogTmV3IGl0ZW1zIHdpbGwgc3RhY2sgYWZ0ZXIgZmlyc3QgaXRlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvYXN0VG9wTGVmdFBvc2l0aW9uIGV4dGVuZHMgVG9hc3RUb3BDZW50ZXJQb3NpdGlvbiB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgZ2xvYmFsID0geyAuLi5Ub2FzdFRvcENlbnRlclBvc2l0aW9uLmdsb2JhbCwgLi4ueyBsZWZ0OiAnMXJlbScsIGNlbnRlcjogZmFsc2UgfSB9O1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG92ZXJyaWRlIGNvbm5lY3RlZDogQ29ubmVjdGVkUG9zaXRpb24gPSB0b2FzdENvbm5lY3RlZFRvcExlZnRQb3NpdGlvbjtcbn1cblxuLyoqXG4gKiBUb2FzdCBQb3NpdGlvbiBjbGFzcy5cbiAqIFRoZSBmaXJzdCBpdGVtIHdpbGwgcG9wIGZyb20gdGhlIHRvcC1yaWdodCBvZiB0aGUgc2NyZWVuLlxuICogTmV3IGl0ZW1zIHdpbGwgc3RhY2sgYWZ0ZXIgZmlyc3QgaXRlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvYXN0VG9wUmlnaHRQb3NpdGlvbiBleHRlbmRzIFRvYXN0VG9wQ2VudGVyUG9zaXRpb24ge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG92ZXJyaWRlIGdsb2JhbCA9IHsgLi4uVG9hc3RUb3BDZW50ZXJQb3NpdGlvbi5nbG9iYWwsIC4uLnsgcmlnaHQ6ICcxcmVtJywgY2VudGVyOiBmYWxzZSB9IH07XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY29ubmVjdGVkOiBDb25uZWN0ZWRQb3NpdGlvbiA9IHRvYXN0Q29ubmVjdGVkVG9wUmlnaHRQb3NpdGlvbjtcbn1cblxuLyoqXG4gKiBUb2FzdCBQb3NpdGlvbiBjbGFzcy5cbiAqIFRoZSBmaXJzdCBpdGVtIHdpbGwgcG9wIGZyb20gdGhlIGJvdHRvbS1sZWZ0IG9mIHRoZSBzY3JlZW4uXG4gKiBOZXcgaXRlbXMgd2lsbCBzdGFjayBiZWZvcmUgZmlyc3QgaXRlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvYXN0Qm90dG9tTGVmdFBvc2l0aW9uIGV4dGVuZHMgVG9hc3RCb3R0b21DZW50ZXJQb3NpdGlvbiB7XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgZ2xvYmFsID0geyAuLi5Ub2FzdEJvdHRvbUNlbnRlclBvc2l0aW9uLmdsb2JhbCwgLi4ueyBsZWZ0OiAnMXJlbScsIGNlbnRlcjogZmFsc2UgfSB9O1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG92ZXJyaWRlIGNvbm5lY3RlZCA9IHRvYXN0Q29ubmVjdGVkQm90dG9tTGVmdFBvc2l0aW9uO1xufVxuXG4vKipcbiAqIFRvYXN0IFBvc2l0aW9uIGNsYXNzLlxuICogVGhlIGZpcnN0IGl0ZW0gd2lsbCBwb3AgZnJvbSB0aGUgYm90dG9tLXJpZ2h0IG9mIHRoZSBzY3JlZW4uXG4gKiBOZXcgaXRlbXMgd2lsbCBzdGFjayBiZWZvcmUgZmlyc3QgaXRlbS5cbiAqL1xuZXhwb3J0IGNsYXNzIFRvYXN0Qm90dG9tUmlnaHRQb3NpdGlvbiBleHRlbmRzIFRvYXN0Qm90dG9tQ2VudGVyUG9zaXRpb24ge1xuICAgIC8qKiBAaGlkZGVuICovXG4gICAgc3RhdGljIG92ZXJyaWRlIGdsb2JhbCA9IHsgLi4uVG9hc3RCb3R0b21DZW50ZXJQb3NpdGlvbi5nbG9iYWwsIC4uLnsgcmlnaHQ6ICcxcmVtJywgY2VudGVyOiBmYWxzZSB9IH07XG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBzdGF0aWMgb3ZlcnJpZGUgY29ubmVjdGVkID0gdG9hc3RDb25uZWN0ZWRCb3R0b21SaWdodFBvc2l0aW9uO1xufVxuIl19
@@ -1,261 +0,0 @@
1
- import { Overlay, OverlayConfig } from '@angular/cdk/overlay';
2
- import { ComponentPortal, TemplatePortal } from '@angular/cdk/portal';
3
- import { DestroyRef, Injectable, Injector, TemplateRef, inject } from '@angular/core';
4
- import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
5
- import * as i0 from "@angular/core";
6
- import * as i1 from "@angular/cdk/overlay";
7
- export class BaseToastService {
8
- /** @hidden */
9
- constructor(overlay, injector) {
10
- this.overlay = overlay;
11
- this.injector = injector;
12
- /**
13
- * @hidden
14
- * Array of all current toasts.
15
- */
16
- this._toasts = [];
17
- /**
18
- * @hidden
19
- */
20
- this._toastsMap = new Map();
21
- /** @hidden */
22
- this._destroyRef = inject(DestroyRef);
23
- }
24
- /**
25
- * Dismisses all Toasts.
26
- */
27
- hideAll() {
28
- this._toasts.forEach((t) => t.dismiss());
29
- }
30
- /**
31
- * Returns `true` if there are some message toasts currently open. `False` otherwise.
32
- */
33
- hasOpenMessageToasts() {
34
- return this._toasts.length > 0;
35
- }
36
- /**
37
- * Sets new position strategy for all Toast items.
38
- * @param newStrategy New Position Strategy
39
- */
40
- setNewPositionStrategy(newStrategy) {
41
- if (newStrategy === this.toastPositionStrategy) {
42
- return;
43
- }
44
- this.toastPositionStrategy = newStrategy;
45
- this._refreshOverlayPositions();
46
- }
47
- /**
48
- * @hidden
49
- * Places a new component or a template as the content of the Toast container.
50
- */
51
- _attach(content, userConfig) {
52
- const config = { ...this.defaultConfig, ...userConfig };
53
- const positionStrategy = config.positionStrategy || this.toastPositionStrategy;
54
- const { overlay, isAnchor } = this._createOverlay(positionStrategy);
55
- const containerRef = this.attachToastContainerComponent(overlay, config);
56
- const toastRef = this.getToastRef(containerRef, overlay, positionStrategy);
57
- toastRef._defaultPositionStrategy = !config.positionStrategy;
58
- toastRef._isAnchor = isAnchor;
59
- if (content instanceof TemplateRef) {
60
- // TemplatePortal requires viewContainer ref
61
- const viewRef = null;
62
- const portal = new TemplatePortal(content, viewRef, { $implicit: config, toastRef });
63
- toastRef.instance = containerRef.attachTemplatePortal(portal);
64
- }
65
- else {
66
- const injector = this.createContentComponentInjector(config, toastRef);
67
- const portal = new ComponentPortal(content, undefined, injector);
68
- const contentRef = containerRef.attachComponentPortal(portal);
69
- // We can't pass this via the injector, because the injector is created earlier.
70
- toastRef.instance = contentRef.instance;
71
- contentRef.changeDetectorRef.detectChanges();
72
- }
73
- const allToasts = this._toastsMap.get(positionStrategy) || [];
74
- allToasts.push(toastRef);
75
- this._toasts.push(toastRef);
76
- this._toastsMap.set(positionStrategy, allToasts);
77
- this.animateToast(toastRef);
78
- return toastRef;
79
- }
80
- /**
81
- * Attaches the Toast container component to the overlay.
82
- */
83
- attachToastContainerComponent(overlayRef, config) {
84
- const injector = Injector.create({
85
- parent: this.injector,
86
- providers: this.getContainerComponentProviders(config)
87
- });
88
- const containerPortal = new ComponentPortal(this.toastContainerComponent, null, injector);
89
- const containerRef = overlayRef.attach(containerPortal);
90
- containerRef.instance.config = config;
91
- containerRef.instance.overlayRef = overlayRef;
92
- return containerRef.instance;
93
- }
94
- /**
95
- * Creates an injector to be used inside a Toast component.
96
- * @param config Config that was used to create the Toast.
97
- * @param toastRef Reference to the Toast.
98
- */
99
- createContentComponentInjector(config, toastRef) {
100
- return Injector.create({
101
- parent: this.injector,
102
- providers: this.getContentComponentProviders(config, toastRef)
103
- });
104
- }
105
- /**
106
- * Animates the old Toast out and the new one in.
107
- */
108
- animateToast(toastRef) {
109
- const positionStrategy = toastRef.positionStrategy;
110
- // When the toast is dismissed, clear the reference to it.
111
- toastRef
112
- .afterDismissed()
113
- .pipe(takeUntilDestroyed(this._destroyRef))
114
- .subscribe(() => {
115
- const allToasts = this._toastsMap.get(positionStrategy) || [];
116
- allToasts.splice(allToasts.indexOf(toastRef), 1);
117
- this._toasts.splice(this._toasts.indexOf(toastRef), 1);
118
- this._toastsMap.set(positionStrategy, allToasts);
119
- this._refreshOverlayPositions();
120
- });
121
- toastRef.containerInstance.enter();
122
- }
123
- /**
124
- * @hidden
125
- * Creates a new overlay and places it in the correct location.
126
- */
127
- _createOverlay(positionStrategy) {
128
- const overlayConfig = new OverlayConfig();
129
- overlayConfig.scrollStrategy = positionStrategy.scrollPosition || this.overlay.scrollStrategies.reposition();
130
- const { position, isAnchor } = this._getPositionStrategy(positionStrategy);
131
- overlayConfig.positionStrategy = position;
132
- overlayConfig.panelClass = 'fd-toast-overlay';
133
- return { overlay: this.overlay.create(overlayConfig), isAnchor };
134
- }
135
- /**
136
- * @hidden
137
- * @returns Initial Position Strategy of the Toast Overlay Reference.
138
- */
139
- _getPositionStrategy(positionStrategy) {
140
- const lastOverlay = this._getLastToastWithSamePosition(positionStrategy);
141
- const globalOverlay = this._toastsMap.get(positionStrategy)?.find(({ _isAnchor }) => _isAnchor);
142
- if (lastOverlay && globalOverlay) {
143
- return {
144
- position: this._composeFlexibleConnectedPosition(lastOverlay.overlayRef.overlayElement, positionStrategy),
145
- isAnchor: false
146
- };
147
- }
148
- return { position: this._composeGlobalPosition(positionStrategy), isAnchor: true };
149
- }
150
- /**
151
- * @hidden
152
- * @param needlePosition
153
- * @private
154
- */
155
- _getLastToastWithSamePosition(needlePosition) {
156
- return [...(this._toastsMap.get(needlePosition) || [])]?.reverse()[0];
157
- }
158
- /**
159
- * @hidden
160
- * @param connectedElm element to connect with.
161
- * @param positionStrategy Position Strategy
162
- * @returns Flexible Connected Position Strategy for Overlay Reference.
163
- */
164
- _composeFlexibleConnectedPosition(connectedElm, positionStrategy) {
165
- positionStrategy = positionStrategy || this.toastPositionStrategy;
166
- return this.overlay
167
- .position()
168
- .flexibleConnectedTo(connectedElm)
169
- .withPush(false)
170
- .withPositions([positionStrategy.connected]);
171
- }
172
- /**
173
- * @hidden
174
- * @returns Default Global Position for Overlay Reference.
175
- */
176
- _composeGlobalPosition(positionStrategy) {
177
- let position;
178
- if (this._isBoundGlobalPosition(positionStrategy.global)) {
179
- position = this.overlay
180
- .position()
181
- .flexibleConnectedTo(positionStrategy.global.boundTo)
182
- .withPositions([positionStrategy.global])
183
- .withPush(false);
184
- }
185
- else {
186
- position = this.overlay.position().global();
187
- const globalToastPositionStrategy = positionStrategy.global;
188
- for (const [pos, value] of Object.entries(globalToastPositionStrategy)) {
189
- switch (pos) {
190
- case 'left':
191
- position.left(value);
192
- break;
193
- case 'right':
194
- position.right(value);
195
- break;
196
- case 'bottom':
197
- position.bottom(value);
198
- break;
199
- case 'top':
200
- position.top(value);
201
- break;
202
- case 'center':
203
- position.centerHorizontally();
204
- break;
205
- case 'centerVertically':
206
- position.centerVertically();
207
- break;
208
- }
209
- }
210
- }
211
- return position;
212
- }
213
- /** @hidden */
214
- _refreshOverlayPositions() {
215
- this._toastsMap.forEach((toasts) => {
216
- this._updateOverlayPositionStrategy(toasts);
217
- });
218
- }
219
- /** @hidden */
220
- _updateOverlayPositionStrategy(toasts) {
221
- toasts.forEach((toastRef) => {
222
- const positionStrategy = this._updatePositionStrategy(toastRef);
223
- const overlayConfig = toastRef.overlayRef.getConfig();
224
- toastRef.overlayRef.updatePositionStrategy(positionStrategy);
225
- overlayConfig.positionStrategy = positionStrategy;
226
- });
227
- }
228
- /**
229
- * @hidden
230
- * Updates the position of a current Overlay Reference.
231
- * @returns New Position Strategy.
232
- * @param toast Toast Reference
233
- */
234
- _updatePositionStrategy(toast) {
235
- const positionStrategy = toast._defaultPositionStrategy ? this.toastPositionStrategy : toast.positionStrategy;
236
- if (toast._isAnchor) {
237
- return this._composeGlobalPosition(positionStrategy);
238
- }
239
- const toasts = this._toastsMap.get(positionStrategy) || [];
240
- const globalOverlay = toasts?.find(({ _isAnchor }) => _isAnchor);
241
- if (!globalOverlay) {
242
- toast._isAnchor = true;
243
- return this._composeGlobalPosition(positionStrategy);
244
- }
245
- // Get Previous overlay item.
246
- const overlayItemIndex = toasts.findIndex((t) => t === toast);
247
- const previousOverlay = toasts[overlayItemIndex - 1];
248
- toast._isAnchor = false;
249
- return this._composeFlexibleConnectedPosition(previousOverlay.overlayRef.overlayElement, positionStrategy);
250
- }
251
- /** @hidden */
252
- _isBoundGlobalPosition(position) {
253
- return !!position.boundTo;
254
- }
255
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BaseToastService, deps: [{ token: i1.Overlay }, { token: i0.Injector }], target: i0.ɵɵFactoryTarget.Injectable }); }
256
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BaseToastService }); }
257
- }
258
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: BaseToastService, decorators: [{
259
- type: Injectable
260
- }], ctorParameters: () => [{ type: i1.Overlay }, { type: i0.Injector }] });
261
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvdXRpbHMvdG9hc3QvYmFzZS10b2FzdC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFJSCxPQUFPLEVBQ1AsYUFBYSxFQUdoQixNQUFNLHNCQUFzQixDQUFDO0FBQzlCLE9BQU8sRUFBRSxlQUFlLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDdEUsT0FBTyxFQUVILFVBQVUsRUFFVixVQUFVLEVBRVYsUUFBUSxFQUVSLFdBQVcsRUFHWCxNQUFNLEVBQ1QsTUFBTSxlQUFlLENBQUM7QUFDdkIsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7OztBQVFoRSxNQUFNLE9BQWdCLGdCQUFnQjtJQWdGbEMsY0FBYztJQUNkLFlBQ1csT0FBZ0IsRUFDaEIsUUFBa0I7UUFEbEIsWUFBTyxHQUFQLE9BQU8sQ0FBUztRQUNoQixhQUFRLEdBQVIsUUFBUSxDQUFVO1FBakI3Qjs7O1dBR0c7UUFDTyxZQUFPLEdBQW1CLEVBQUUsQ0FBQztRQUV2Qzs7V0FFRztRQUNPLGVBQVUsR0FBRyxJQUFJLEdBQUcsRUFBcUMsQ0FBQztRQUVwRSxjQUFjO1FBQ04sZ0JBQVcsR0FBRyxNQUFNLENBQUMsVUFBVSxDQUFDLENBQUM7SUFNdEMsQ0FBQztJQUVKOztPQUVHO0lBQ0gsT0FBTztRQUNILElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztJQUM3QyxDQUFDO0lBRUQ7O09BRUc7SUFDSCxvQkFBb0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsT0FBTyxDQUFDLE1BQU0sR0FBRyxDQUFDLENBQUM7SUFDbkMsQ0FBQztJQUVEOzs7T0FHRztJQUNILHNCQUFzQixDQUFDLFdBQThC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LEdBQUcsQ0FBQyxDQUFDLENBQUM7UUFDckQsS0FBSyxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7UUFFeEIsT0FBTyxJQUFJLENBQUMsaUNBQWlDLENBQUMsZUFBZSxDQUFDLFVBQVUsQ0FBQyxjQUFjLEVBQUUsZ0JBQWdCLENBQUMsQ0FBQztJQUMvRyxDQUFDO0lBRUQsY0FBYztJQUNOLHNCQUFzQixDQUFDLFFBQWE7UUFDeEMsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDLE9BQU8sQ0FBQztJQUM5QixDQUFDOzhHQWxYaUIsZ0JBQWdCO2tIQUFoQixnQkFBZ0I7OzJGQUFoQixnQkFBZ0I7a0JBRHJDLFVBQVUiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuICAgIENvbXBvbmVudFR5cGUsXG4gICAgRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5LFxuICAgIEdsb2JhbFBvc2l0aW9uU3RyYXRlZ3ksXG4gICAgT3ZlcmxheSxcbiAgICBPdmVybGF5Q29uZmlnLFxuICAgIE92ZXJsYXlSZWYsXG4gICAgUG9zaXRpb25TdHJhdGVneVxufSBmcm9tICdAYW5ndWxhci9jZGsvb3ZlcmxheSc7XG5pbXBvcnQgeyBDb21wb25lbnRQb3J0YWwsIFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICAgIENvbXBvbmVudFJlZixcbiAgICBEZXN0cm95UmVmLFxuICAgIEVtYmVkZGVkVmlld1JlZixcbiAgICBJbmplY3RhYmxlLFxuICAgIEluamVjdGlvblRva2VuLFxuICAgIEluamVjdG9yLFxuICAgIFN0YXRpY1Byb3ZpZGVyLFxuICAgIFRlbXBsYXRlUmVmLFxuICAgIFR5cGUsXG4gICAgVmlld0NvbnRhaW5lclJlZixcbiAgICBpbmplY3Rcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyB0YWtlVW50aWxEZXN0cm95ZWQgfSBmcm9tICdAYW5ndWxhci9jb3JlL3J4anMtaW50ZXJvcCc7XG5pbXBvcnQgeyBCYXNlVG9hc3RQb3NpdGlvbiwgVG9hc3RHbG9iYWxDb25uZWN0ZWRQb3NpdGlvbiwgVG9hc3RHbG9iYWxQb3NpdGlvbiB9IGZyb20gJy4vYmFzZS10b2FzdC1wb3NpdGlvbnMnO1xuaW1wb3J0IHsgQmFzZVRvYXN0Q29uZmlnIH0gZnJvbSAnLi9jbGFzc2VzL2Jhc2UtdG9hc3QtY29uZmlnJztcbmltcG9ydCB7IEJhc2VUb2FzdFJlZiB9IGZyb20gJy4vY2xhc3Nlcy9iYXNlLXRvYXN0LXJlZic7XG5pbXBvcnQgeyBUb2FzdENvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4vaW50ZXJmYWNlcy90b2FzdC1jb250YWluZXItY29tcG9uZW50LmludGVyZmFjZSc7XG5pbXBvcnQgeyBUb2FzdFRleHRDb21wb25lbnQgfSBmcm9tICcuL2ludGVyZmFjZXMvdG9hc3QtdGV4dC1jb21wb25lbnQuaW50ZXJmYWNlJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGFic3RyYWN0IGNsYXNzIEJhc2VUb2FzdFNlcnZpY2U8XG4gICAgUCBleHRlbmRzIEJhc2VUb2FzdENvbmZpZyxcbiAgICBDIGV4dGVuZHMgVG9hc3RDb250YWluZXJDb21wb25lbnQ8UD4gPSBUb2FzdENvbnRhaW5lckNvbXBvbmVudDxQPlxuPiB7XG4gICAgLyoqIENvbXBvbmVudCBmb3Igc2ltcGxlIHRleHQgdG9hc3QuICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IHRvYXN0VGV4dENvbXBvbmVudDogVHlwZTxUb2FzdFRleHRDb21wb25lbnQ+O1xuICAgIC8qKiBDb21wb25lbnQgZm9yIFRvYXN0IENvbnRhaW5lci4gKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgdG9hc3RDb250YWluZXJDb21wb25lbnQ6IFR5cGU8Qz47XG4gICAgLyoqIEluamVjdGlvbiB0b2tlbiBmb3IgVG9hc3QgRGF0YS4gKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgdG9hc3REYXRhSW5qZWN0aW9uVG9rZW46IEluamVjdGlvblRva2VuPGFueT47XG4gICAgLyoqIFRvYXN0IFBvc2l0aW9uIFN0cmF0ZWd5LiAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCB0b2FzdFBvc2l0aW9uU3RyYXRlZ3k6IEJhc2VUb2FzdFBvc2l0aW9uO1xuICAgIC8qKiBUb2FzdCBkZWZhdWx0IGNvbmZpZy4gKi9cbiAgICBwcm90ZWN0ZWQgYWJzdHJhY3QgZGVmYXVsdENvbmZpZzogUDtcblxuICAgIC8qKlxuICAgICAqIE9wZW5zIGEgVG9hc3Qgd2l0aCB0aGUgcHJvdmlkZWQgY29uZmlndXJhdGlvbi5cbiAgICAgKiBAcGFyYW0gdG9hc3QgYWNjZXB0cyBzdHJpbmcsIENvbXBvbmVudCBvciBUZW1wbGF0ZVJlZi5cbiAgICAgKi9cbiAgICBhYnN0cmFjdCBvcGVuPFQ+KFxuICAgICAgICB0b2FzdDogc3RyaW5nIHwgVHlwZTxUPiB8IFRlbXBsYXRlUmVmPFQ+XG4gICAgKTogQmFzZVRvYXN0UmVmPFRvYXN0VGV4dENvbXBvbmVudCB8IFQgfCBFbWJlZGRlZFZpZXdSZWY8VD4sIFA+O1xuXG4gICAgYWJzdHJhY3Qgb3BlbkZyb21TdHJpbmcobWVzc2FnZTogc3RyaW5nLCBjb25maWc6IFApOiBCYXNlVG9hc3RSZWY8VG9hc3RUZXh0Q29tcG9uZW50LCBQPjtcblxuICAgIC8qKlxuICAgICAqIE9wZW5zIGEgVG9hc3Qgd2l0aCBwcm92aWRlZCBjb21wb25lbnQgaW5zaWRlLlxuICAgICAqIEBwYXJhbSBjb21wb25lbnQgQ29tcG9uZW50IHRvIHJlbmRlciBpbnNpZGUgYSBUb2FzdC5cbiAgICAgKiBAcGFyYW0gY29uZmlnIFRvYXN0IGNvbmZpZ3VyYXRpb24uXG4gICAgICogQHJldHVybnMgVG9hc3QgcmVmZXJlbmNlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IG9wZW5Gcm9tQ29tcG9uZW50PFQ+KGNvbXBvbmVudDogVHlwZTxUPiwgY29uZmlnOiBQKTogQmFzZVRvYXN0UmVmPFQsIFA+O1xuXG4gICAgLyoqXG4gICAgICogT3BlbnMgYSBUb2FzdCB3aXRoIHByb3ZpZGVkIFRlbXBsYXRlIFJlZmVyZW5jZS5cbiAgICAgKiBAcGFyYW0gdGVtcGxhdGUgVGVtcGxhdGUgUmVmZXJlbmNlIHRvIHJlbmRlciBpbnNpZGUgYSBUb2FzdC5cbiAgICAgKiBAcGFyYW0gY29uZmlnIFRvYXN0IGNvbmZpZ3VyYXRpb24uXG4gICAgICogQHJldHVybnMgVG9hc3QgcmVmZXJlbmNlLlxuICAgICAqL1xuICAgIGFic3RyYWN0IG9wZW5Gcm9tVGVtcGxhdGUodGVtcGxhdGU6IFRlbXBsYXRlUmVmPGFueT4sIGNvbmZpZzogUCk6IEJhc2VUb2FzdFJlZjxFbWJlZGRlZFZpZXdSZWY8YW55Pj47XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIFRvYXN0IENvbnRhaW5lciBwcm92aWRlcnMuXG4gICAgICogQHBhcmFtIGNvbmZpZyBUb2FzdCBDb25maWcuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFic3RyYWN0IGdldENvbnRhaW5lckNvbXBvbmVudFByb3ZpZGVycyhjb25maWc6IFApOiBTdGF0aWNQcm92aWRlcltdO1xuXG4gICAgLyoqXG4gICAgICogR2V0cyBUb2FzdCBDb250ZW50IHByb3ZpZGVycy5cbiAgICAgKiBAcGFyYW0gY29uZmlnIFRvYXN0IENvbmZpZy5cbiAgICAgKiBAcGFyYW0gdG9hc3RSZWYgVG9hc3QgUmVmZXJlbmNlLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRDb250ZW50Q29tcG9uZW50UHJvdmlkZXJzPFQ+KGNvbmZpZzogUCwgdG9hc3RSZWY6IEJhc2VUb2FzdFJlZjxUPik6IFN0YXRpY1Byb3ZpZGVyW107XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIFRvYXN0IFJlZmVyZW5jZSBmb3IgcHJvdmlkZWQgY29udGFpbmVyIGFuZCBvdmVybGF5LlxuICAgICAqIEBwYXJhbSBjb250YWluZXJSZWYgQ29udGFpbmVyIHJlZmVyZW5jZS5cbiAgICAgKiBAcGFyYW0gb3ZlcmxheVJlZiBPdmVybGF5IFJlZmVyZW5jZS5cbiAgICAgKiBAcGFyYW0gcG9zaXRpb25TdHJhdGVneSBQb3NpdGlvbiBTdHJhdGVneVxuICAgICAqL1xuICAgIHByb3RlY3RlZCBhYnN0cmFjdCBnZXRUb2FzdFJlZjxUPihcbiAgICAgICAgY29udGFpbmVyUmVmOiBDLFxuICAgICAgICBvdmVybGF5UmVmOiBPdmVybGF5UmVmLFxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiBCYXNlVG9hc3RQb3NpdGlvblxuICAgICk6IEJhc2VUb2FzdFJlZjxUIHwgRW1iZWRkZWRWaWV3UmVmPGFueT4sIFA+O1xuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEFycmF5IG9mIGFsbCBjdXJyZW50IHRvYXN0cy5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3RvYXN0czogQmFzZVRvYXN0UmVmW10gPSBbXTtcblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgX3RvYXN0c01hcCA9IG5ldyBNYXA8QmFzZVRvYXN0UG9zaXRpb24sIEJhc2VUb2FzdFJlZltdPigpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9kZXN0cm95UmVmID0gaW5qZWN0KERlc3Ryb3lSZWYpO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgICAgIHB1YmxpYyBvdmVybGF5OiBPdmVybGF5LFxuICAgICAgICBwdWJsaWMgaW5qZWN0b3I6IEluamVjdG9yXG4gICAgKSB7fVxuXG4gICAgLyoqXG4gICAgICogRGlzbWlzc2VzIGFsbCBUb2FzdHMuXG4gICAgICovXG4gICAgaGlkZUFsbCgpOiB2b2lkIHtcbiAgICAgICAgdGhpcy5fdG9hc3RzLmZvckVhY2goKHQpID0+IHQuZGlzbWlzcygpKTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBSZXR1cm5zIGB0cnVlYCBpZiB0aGVyZSBhcmUgc29tZSBtZXNzYWdlIHRvYXN0cyBjdXJyZW50bHkgb3Blbi4gYEZhbHNlYCBvdGhlcndpc2UuXG4gICAgICovXG4gICAgaGFzT3Blbk1lc3NhZ2VUb2FzdHMoKTogYm9vbGVhbiB7XG4gICAgICAgIHJldHVybiB0aGlzLl90b2FzdHMubGVuZ3RoID4gMDtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBTZXRzIG5ldyBwb3NpdGlvbiBzdHJhdGVneSBmb3IgYWxsIFRvYXN0IGl0ZW1zLlxuICAgICAqIEBwYXJhbSBuZXdTdHJhdGVneSBOZXcgUG9zaXRpb24gU3RyYXRlZ3lcbiAgICAgKi9cbiAgICBzZXROZXdQb3NpdGlvblN0cmF0ZWd5KG5ld1N0cmF0ZWd5OiBCYXNlVG9hc3RQb3NpdGlvbik6IHZvaWQge1xuICAgICAgICBpZiAobmV3U3RyYXRlZ3kgPT09IHRoaXMudG9hc3RQb3NpdGlvblN0cmF0ZWd5KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cblxuICAgICAgICB0aGlzLnRvYXN0UG9zaXRpb25TdHJhdGVneSA9IG5ld1N0cmF0ZWd5O1xuXG4gICAgICAgIHRoaXMuX3JlZnJlc2hPdmVybGF5UG9zaXRpb25zKCk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFBsYWNlcyBhIG5ldyBjb21wb25lbnQgb3IgYSB0ZW1wbGF0ZSBhcyB0aGUgY29udGVudCBvZiB0aGUgVG9hc3QgY29udGFpbmVyLlxuICAgICAqL1xuICAgIHByb3RlY3RlZCBfYXR0YWNoPFQ+KFxuICAgICAgICBjb250ZW50OiBDb21wb25lbnRUeXBlPFQ+IHwgVGVtcGxhdGVSZWY8VD4sXG4gICAgICAgIHVzZXJDb25maWc/OiBQXG4gICAgKTogQmFzZVRvYXN0UmVmPFQgfCBFbWJlZGRlZFZpZXdSZWY8YW55PiwgUD4ge1xuICAgICAgICBjb25zdCBjb25maWcgPSB7IC4uLnRoaXMuZGVmYXVsdENvbmZpZywgLi4udXNlckNvbmZpZyB9O1xuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gY29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgfHwgdGhpcy50b2FzdFBvc2l0aW9uU3RyYXRlZ3k7XG4gICAgICAgIGNvbnN0IHsgb3ZlcmxheSwgaXNBbmNob3IgfSA9IHRoaXMuX2NyZWF0ZU92ZXJsYXkocG9zaXRpb25TdHJhdGVneSk7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lclJlZiA9IHRoaXMuYXR0YWNoVG9hc3RDb250YWluZXJDb21wb25lbnQob3ZlcmxheSwgY29uZmlnKTtcbiAgICAgICAgY29uc3QgdG9hc3RSZWYgPSB0aGlzLmdldFRvYXN0UmVmPFQ+KGNvbnRhaW5lclJlZiwgb3ZlcmxheSwgcG9zaXRpb25TdHJhdGVneSk7XG4gICAgICAgIHRvYXN0UmVmLl9kZWZhdWx0UG9zaXRpb25TdHJhdGVneSA9ICFjb25maWcucG9zaXRpb25TdHJhdGVneTtcbiAgICAgICAgdG9hc3RSZWYuX2lzQW5jaG9yID0gaXNBbmNob3I7XG5cbiAgICAgICAgaWYgKGNvbnRlbnQgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZikge1xuICAgICAgICAgICAgLy8gVGVtcGxhdGVQb3J0YWwgcmVxdWlyZXMgdmlld0NvbnRhaW5lciByZWZcbiAgICAgICAgICAgIGNvbnN0IHZpZXdSZWYgPSBudWxsIGFzIGFueSBhcyBWaWV3Q29udGFpbmVyUmVmO1xuICAgICAgICAgICAgY29uc3QgcG9ydGFsID0gbmV3IFRlbXBsYXRlUG9ydGFsKGNvbnRlbnQsIHZpZXdSZWYsIHsgJGltcGxpY2l0OiBjb25maWcsIHRvYXN0UmVmIH0gYXMgYW55KTtcblxuICAgICAgICAgICAgdG9hc3RSZWYuaW5zdGFuY2UgPSBjb250YWluZXJSZWYuYXR0YWNoVGVtcGxhdGVQb3J0YWwocG9ydGFsKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGNvbnN0IGluamVjdG9yID0gdGhpcy5jcmVhdGVDb250ZW50Q29tcG9uZW50SW5qZWN0b3IoY29uZmlnLCB0b2FzdFJlZik7XG4gICAgICAgICAgICBjb25zdCBwb3J0YWwgPSBuZXcgQ29tcG9uZW50UG9ydGFsKGNvbnRlbnQsIHVuZGVmaW5lZCwgaW5qZWN0b3IpO1xuICAgICAgICAgICAgY29uc3QgY29udGVudFJlZiA9IGNvbnRhaW5lclJlZi5hdHRhY2hDb21wb25lbnRQb3J0YWw8VD4ocG9ydGFsKTtcblxuICAgICAgICAgICAgLy8gV2UgY2FuJ3QgcGFzcyB0aGlzIHZpYSB0aGUgaW5qZWN0b3IsIGJlY2F1c2UgdGhlIGluamVjdG9yIGlzIGNyZWF0ZWQgZWFybGllci5cbiAgICAgICAgICAgIHRvYXN0UmVmLmluc3RhbmNlID0gY29udGVudFJlZi5pbnN0YW5jZTtcblxuICAgICAgICAgICAgY29udGVudFJlZi5jaGFuZ2VEZXRlY3RvclJlZi5kZXRlY3RDaGFuZ2VzKCk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCBhbGxUb2FzdHMgPSB0aGlzLl90b2FzdHNNYXAuZ2V0KHBvc2l0aW9uU3RyYXRlZ3kpIHx8IFtdO1xuICAgICAgICBhbGxUb2FzdHMucHVzaCh0b2FzdFJlZik7XG4gICAgICAgIHRoaXMuX3RvYXN0cy5wdXNoKHRvYXN0UmVmKTtcbiAgICAgICAgdGhpcy5fdG9hc3RzTWFwLnNldChwb3NpdGlvblN0cmF0ZWd5LCBhbGxUb2FzdHMpO1xuXG4gICAgICAgIHRoaXMuYW5pbWF0ZVRvYXN0PFQ+KHRvYXN0UmVmKTtcblxuICAgICAgICByZXR1cm4gdG9hc3RSZWY7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQXR0YWNoZXMgdGhlIFRvYXN0IGNvbnRhaW5lciBjb21wb25lbnQgdG8gdGhlIG92ZXJsYXkuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGF0dGFjaFRvYXN0Q29udGFpbmVyQ29tcG9uZW50KG92ZXJsYXlSZWY6IE92ZXJsYXlSZWYsIGNvbmZpZzogUCk6IEMge1xuICAgICAgICBjb25zdCBpbmplY3RvciA9IEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICAgICAgICBwcm92aWRlcnM6IHRoaXMuZ2V0Q29udGFpbmVyQ29tcG9uZW50UHJvdmlkZXJzKGNvbmZpZylcbiAgICAgICAgfSk7XG5cbiAgICAgICAgY29uc3QgY29udGFpbmVyUG9ydGFsID0gbmV3IENvbXBvbmVudFBvcnRhbCh0aGlzLnRvYXN0Q29udGFpbmVyQ29tcG9uZW50LCBudWxsLCBpbmplY3Rvcik7XG4gICAgICAgIGNvbnN0IGNvbnRhaW5lclJlZjogQ29tcG9uZW50UmVmPEM+ID0gb3ZlcmxheVJlZi5hdHRhY2goY29udGFpbmVyUG9ydGFsKTtcblxuICAgICAgICBjb250YWluZXJSZWYuaW5zdGFuY2UuY29uZmlnID0gY29uZmlnO1xuICAgICAgICBjb250YWluZXJSZWYuaW5zdGFuY2Uub3ZlcmxheVJlZiA9IG92ZXJsYXlSZWY7XG5cbiAgICAgICAgcmV0dXJuIGNvbnRhaW5lclJlZi5pbnN0YW5jZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBDcmVhdGVzIGFuIGluamVjdG9yIHRvIGJlIHVzZWQgaW5zaWRlIGEgVG9hc3QgY29tcG9uZW50LlxuICAgICAqIEBwYXJhbSBjb25maWcgQ29uZmlnIHRoYXQgd2FzIHVzZWQgdG8gY3JlYXRlIHRoZSBUb2FzdC5cbiAgICAgKiBAcGFyYW0gdG9hc3RSZWYgUmVmZXJlbmNlIHRvIHRoZSBUb2FzdC5cbiAgICAgKi9cbiAgICBwcm90ZWN0ZWQgY3JlYXRlQ29udGVudENvbXBvbmVudEluamVjdG9yPFQ+KGNvbmZpZzogUCwgdG9hc3RSZWY6IEJhc2VUb2FzdFJlZjxUPik6IEluamVjdG9yIHtcbiAgICAgICAgcmV0dXJuIEluamVjdG9yLmNyZWF0ZSh7XG4gICAgICAgICAgICBwYXJlbnQ6IHRoaXMuaW5qZWN0b3IsXG4gICAgICAgICAgICBwcm92aWRlcnM6IHRoaXMuZ2V0Q29udGVudENvbXBvbmVudFByb3ZpZGVycyhjb25maWcsIHRvYXN0UmVmKVxuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBBbmltYXRlcyB0aGUgb2xkIFRvYXN0IG91dCBhbmQgdGhlIG5ldyBvbmUgaW4uXG4gICAgICovXG4gICAgcHJvdGVjdGVkIGFuaW1hdGVUb2FzdDxUPih0b2FzdFJlZjogQmFzZVRvYXN0UmVmPFQgfCBFbWJlZGRlZFZpZXdSZWY8YW55PiwgUD4pOiB2b2lkIHtcbiAgICAgICAgY29uc3QgcG9zaXRpb25TdHJhdGVneSA9IHRvYXN0UmVmLnBvc2l0aW9uU3RyYXRlZ3k7XG4gICAgICAgIC8vIFdoZW4gdGhlIHRvYXN0IGlzIGRpc21pc3NlZCwgY2xlYXIgdGhlIHJlZmVyZW5jZSB0byBpdC5cbiAgICAgICAgdG9hc3RSZWZcbiAgICAgICAgICAgIC5hZnRlckRpc21pc3NlZCgpXG4gICAgICAgICAgICAucGlwZSh0YWtlVW50aWxEZXN0cm95ZWQodGhpcy5fZGVzdHJveVJlZikpXG4gICAgICAgICAgICAuc3Vic2NyaWJlKCgpID0+IHtcbiAgICAgICAgICAgICAgICBjb25zdCBhbGxUb2FzdHMgPSB0aGlzLl90b2FzdHNNYXAuZ2V0KHBvc2l0aW9uU3RyYXRlZ3kpIHx8IFtdO1xuICAgICAgICAgICAgICAgIGFsbFRvYXN0cy5zcGxpY2UoYWxsVG9hc3RzLmluZGV4T2YodG9hc3RSZWYpLCAxKTtcbiAgICAgICAgICAgICAgICB0aGlzLl90b2FzdHMuc3BsaWNlKHRoaXMuX3RvYXN0cy5pbmRleE9mKHRvYXN0UmVmKSwgMSk7XG4gICAgICAgICAgICAgICAgdGhpcy5fdG9hc3RzTWFwLnNldChwb3NpdGlvblN0cmF0ZWd5LCBhbGxUb2FzdHMpO1xuICAgICAgICAgICAgICAgIHRoaXMuX3JlZnJlc2hPdmVybGF5UG9zaXRpb25zKCk7XG4gICAgICAgICAgICB9KTtcblxuICAgICAgICB0b2FzdFJlZi5jb250YWluZXJJbnN0YW5jZS5lbnRlcigpO1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBDcmVhdGVzIGEgbmV3IG92ZXJsYXkgYW5kIHBsYWNlcyBpdCBpbiB0aGUgY29ycmVjdCBsb2NhdGlvbi5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9jcmVhdGVPdmVybGF5KHBvc2l0aW9uU3RyYXRlZ3k6IEJhc2VUb2FzdFBvc2l0aW9uKTogeyBvdmVybGF5OiBPdmVybGF5UmVmOyBpc0FuY2hvcjogYm9vbGVhbiB9IHtcbiAgICAgICAgY29uc3Qgb3ZlcmxheUNvbmZpZyA9IG5ldyBPdmVybGF5Q29uZmlnKCk7XG4gICAgICAgIG92ZXJsYXlDb25maWcuc2Nyb2xsU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5LnNjcm9sbFBvc2l0aW9uIHx8IHRoaXMub3ZlcmxheS5zY3JvbGxTdHJhdGVnaWVzLnJlcG9zaXRpb24oKTtcblxuICAgICAgICBjb25zdCB7IHBvc2l0aW9uLCBpc0FuY2hvciB9ID0gdGhpcy5fZ2V0UG9zaXRpb25TdHJhdGVneShwb3NpdGlvblN0cmF0ZWd5KTtcblxuICAgICAgICBvdmVybGF5Q29uZmlnLnBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvbjtcbiAgICAgICAgb3ZlcmxheUNvbmZpZy5wYW5lbENsYXNzID0gJ2ZkLXRvYXN0LW92ZXJsYXknO1xuICAgICAgICByZXR1cm4geyBvdmVybGF5OiB0aGlzLm92ZXJsYXkuY3JlYXRlKG92ZXJsYXlDb25maWcpLCBpc0FuY2hvciB9O1xuICAgIH1cblxuICAgIC8qKlxuICAgICAqIEBoaWRkZW5cbiAgICAgKiBAcmV0dXJucyBJbml0aWFsIFBvc2l0aW9uIFN0cmF0ZWd5IG9mIHRoZSBUb2FzdCBPdmVybGF5IFJlZmVyZW5jZS5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9nZXRQb3NpdGlvblN0cmF0ZWd5KHBvc2l0aW9uU3RyYXRlZ3k6IEJhc2VUb2FzdFBvc2l0aW9uKToge1xuICAgICAgICBwb3NpdGlvbjogUG9zaXRpb25TdHJhdGVneTtcbiAgICAgICAgaXNBbmNob3I6IGJvb2xlYW47XG4gICAgfSB7XG4gICAgICAgIGNvbnN0IGxhc3RPdmVybGF5ID0gdGhpcy5fZ2V0TGFzdFRvYXN0V2l0aFNhbWVQb3NpdGlvbihwb3NpdGlvblN0cmF0ZWd5KTtcblxuICAgICAgICBjb25zdCBnbG9iYWxPdmVybGF5ID0gdGhpcy5fdG9hc3RzTWFwLmdldChwb3NpdGlvblN0cmF0ZWd5KT8uZmluZCgoeyBfaXNBbmNob3IgfSkgPT4gX2lzQW5jaG9yKTtcblxuICAgICAgICBpZiAobGFzdE92ZXJsYXkgJiYgZ2xvYmFsT3ZlcmxheSkge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICBwb3NpdGlvbjogdGhpcy5fY29tcG9zZUZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb24oXG4gICAgICAgICAgICAgICAgICAgIGxhc3RPdmVybGF5Lm92ZXJsYXlSZWYub3ZlcmxheUVsZW1lbnQsXG4gICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uU3RyYXRlZ3lcbiAgICAgICAgICAgICAgICApLFxuICAgICAgICAgICAgICAgIGlzQW5jaG9yOiBmYWxzZVxuICAgICAgICAgICAgfTtcbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiB7IHBvc2l0aW9uOiB0aGlzLl9jb21wb3NlR2xvYmFsUG9zaXRpb24ocG9zaXRpb25TdHJhdGVneSksIGlzQW5jaG9yOiB0cnVlIH07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBuZWVkbGVQb3NpdGlvblxuICAgICAqIEBwcml2YXRlXG4gICAgICovXG4gICAgcHJpdmF0ZSBfZ2V0TGFzdFRvYXN0V2l0aFNhbWVQb3NpdGlvbihuZWVkbGVQb3NpdGlvbjogQmFzZVRvYXN0UG9zaXRpb24pOiBCYXNlVG9hc3RSZWY8UCwgQz4gfCB1bmRlZmluZWQge1xuICAgICAgICByZXR1cm4gWy4uLih0aGlzLl90b2FzdHNNYXAuZ2V0KG5lZWRsZVBvc2l0aW9uKSB8fCBbXSldPy5yZXZlcnNlKClbMF07XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEBwYXJhbSBjb25uZWN0ZWRFbG0gZWxlbWVudCB0byBjb25uZWN0IHdpdGguXG4gICAgICogQHBhcmFtIHBvc2l0aW9uU3RyYXRlZ3kgUG9zaXRpb24gU3RyYXRlZ3lcbiAgICAgKiBAcmV0dXJucyBGbGV4aWJsZSBDb25uZWN0ZWQgUG9zaXRpb24gU3RyYXRlZ3kgZm9yIE92ZXJsYXkgUmVmZXJlbmNlLlxuICAgICAqL1xuICAgIHByaXZhdGUgX2NvbXBvc2VGbGV4aWJsZUNvbm5lY3RlZFBvc2l0aW9uKFxuICAgICAgICBjb25uZWN0ZWRFbG06IEhUTUxFbGVtZW50LFxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiBCYXNlVG9hc3RQb3NpdGlvblxuICAgICk6IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3kgPSBwb3NpdGlvblN0cmF0ZWd5IHx8IHRoaXMudG9hc3RQb3NpdGlvblN0cmF0ZWd5O1xuICAgICAgICByZXR1cm4gdGhpcy5vdmVybGF5XG4gICAgICAgICAgICAucG9zaXRpb24oKVxuICAgICAgICAgICAgLmZsZXhpYmxlQ29ubmVjdGVkVG8oY29ubmVjdGVkRWxtKVxuICAgICAgICAgICAgLndpdGhQdXNoKGZhbHNlKVxuICAgICAgICAgICAgLndpdGhQb3NpdGlvbnMoW3Bvc2l0aW9uU3RyYXRlZ3kuY29ubmVjdGVkXSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIEByZXR1cm5zIERlZmF1bHQgR2xvYmFsIFBvc2l0aW9uIGZvciBPdmVybGF5IFJlZmVyZW5jZS5cbiAgICAgKi9cbiAgICBwcml2YXRlIF9jb21wb3NlR2xvYmFsUG9zaXRpb24oXG4gICAgICAgIHBvc2l0aW9uU3RyYXRlZ3k6IEJhc2VUb2FzdFBvc2l0aW9uXG4gICAgKTogR2xvYmFsUG9zaXRpb25TdHJhdGVneSB8IEZsZXhpYmxlQ29ubmVjdGVkUG9zaXRpb25TdHJhdGVneSB7XG4gICAgICAgIGxldCBwb3NpdGlvbjogRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvblN0cmF0ZWd5IHwgR2xvYmFsUG9zaXRpb25TdHJhdGVneTtcbiAgICAgICAgaWYgKHRoaXMuX2lzQm91bmRHbG9iYWxQb3NpdGlvbihwb3NpdGlvblN0cmF0ZWd5Lmdsb2JhbCkpIHtcbiAgICAgICAgICAgIHBvc2l0aW9uID0gdGhpcy5vdmVybGF5XG4gICAgICAgICAgICAgICAgLnBvc2l0aW9uKClcbiAgICAgICAgICAgICAgICAuZmxleGlibGVDb25uZWN0ZWRUbyhwb3NpdGlvblN0cmF0ZWd5Lmdsb2JhbC5ib3VuZFRvKVxuICAgICAgICAgICAgICAgIC53aXRoUG9zaXRpb25zKFtwb3NpdGlvblN0cmF0ZWd5Lmdsb2JhbF0pXG4gICAgICAgICAgICAgICAgLndpdGhQdXNoKGZhbHNlKTtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIHBvc2l0aW9uID0gdGhpcy5vdmVybGF5LnBvc2l0aW9uKCkuZ2xvYmFsKCk7XG4gICAgICAgICAgICBjb25zdCBnbG9iYWxUb2FzdFBvc2l0aW9uU3RyYXRlZ3k6IFRvYXN0R2xvYmFsUG9zaXRpb24gPSBwb3NpdGlvblN0cmF0ZWd5Lmdsb2JhbDtcblxuICAgICAgICAgICAgZm9yIChjb25zdCBbcG9zLCB2YWx1ZV0gb2YgT2JqZWN0LmVudHJpZXMoZ2xvYmFsVG9hc3RQb3NpdGlvblN0cmF0ZWd5KSkge1xuICAgICAgICAgICAgICAgIHN3aXRjaCAocG9zKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2xlZnQnOlxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24ubGVmdCh2YWx1ZSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAncmlnaHQnOlxuICAgICAgICAgICAgICAgICAgICAgICAgcG9zaXRpb24ucmlnaHQodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2JvdHRvbSc6XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbi5ib3R0b20odmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ3RvcCc6XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbi50b3AodmFsdWUpO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2NlbnRlcic6XG4gICAgICAgICAgICAgICAgICAgICAgICBwb3NpdGlvbi5jZW50ZXJIb3Jpem9udGFsbHkoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBjYXNlICdjZW50ZXJWZXJ0aWNhbGx5JzpcbiAgICAgICAgICAgICAgICAgICAgICAgIHBvc2l0aW9uLmNlbnRlclZlcnRpY2FsbHkoKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBwb3NpdGlvbjtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3JlZnJlc2hPdmVybGF5UG9zaXRpb25zKCk6IHZvaWQge1xuICAgICAgICB0aGlzLl90b2FzdHNNYXAuZm9yRWFjaCgodG9hc3RzKSA9PiB7XG4gICAgICAgICAgICB0aGlzLl91cGRhdGVPdmVybGF5UG9zaXRpb25TdHJhdGVneSh0b2FzdHMpO1xuICAgICAgICB9KTtcbiAgICB9XG5cbiAgICAvKiogQGhpZGRlbiAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZU92ZXJsYXlQb3NpdGlvblN0cmF0ZWd5KHRvYXN0czogQmFzZVRvYXN0UmVmW10pOiB2b2lkIHtcbiAgICAgICAgdG9hc3RzLmZvckVhY2goKHRvYXN0UmVmKSA9PiB7XG4gICAgICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdGhpcy5fdXBkYXRlUG9zaXRpb25TdHJhdGVneSh0b2FzdFJlZik7XG4gICAgICAgICAgICBjb25zdCBvdmVybGF5Q29uZmlnID0gdG9hc3RSZWYub3ZlcmxheVJlZi5nZXRDb25maWcoKTtcblxuICAgICAgICAgICAgdG9hc3RSZWYub3ZlcmxheVJlZi51cGRhdGVQb3NpdGlvblN0cmF0ZWd5KHBvc2l0aW9uU3RyYXRlZ3kpO1xuICAgICAgICAgICAgb3ZlcmxheUNvbmZpZy5wb3NpdGlvblN0cmF0ZWd5ID0gcG9zaXRpb25TdHJhdGVneTtcbiAgICAgICAgfSk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIFVwZGF0ZXMgdGhlIHBvc2l0aW9uIG9mIGEgY3VycmVudCBPdmVybGF5IFJlZmVyZW5jZS5cbiAgICAgKiBAcmV0dXJucyBOZXcgUG9zaXRpb24gU3RyYXRlZ3kuXG4gICAgICogQHBhcmFtIHRvYXN0IFRvYXN0IFJlZmVyZW5jZVxuICAgICAqL1xuICAgIHByaXZhdGUgX3VwZGF0ZVBvc2l0aW9uU3RyYXRlZ3kodG9hc3Q6IEJhc2VUb2FzdFJlZik6IFBvc2l0aW9uU3RyYXRlZ3kge1xuICAgICAgICBjb25zdCBwb3NpdGlvblN0cmF0ZWd5ID0gdG9hc3QuX2RlZmF1bHRQb3NpdGlvblN0cmF0ZWd5ID8gdGhpcy50b2FzdFBvc2l0aW9uU3RyYXRlZ3kgOiB0b2FzdC5wb3NpdGlvblN0cmF0ZWd5O1xuXG4gICAgICAgIGlmICh0b2FzdC5faXNBbmNob3IpIHtcbiAgICAgICAgICAgIHJldHVybiB0aGlzLl9jb21wb3NlR2xvYmFsUG9zaXRpb24ocG9zaXRpb25TdHJhdGVneSk7XG4gICAgICAgIH1cblxuICAgICAgICBjb25zdCB0b2FzdHMgPSB0aGlzLl90b2FzdHNNYXAuZ2V0KHBvc2l0aW9uU3RyYXRlZ3kpIHx8IFtdO1xuXG4gICAgICAgIGNvbnN0IGdsb2JhbE92ZXJsYXkgPSB0b2FzdHM/LmZpbmQoKHsgX2lzQW5jaG9yIH0pID0+IF9pc0FuY2hvcik7XG5cbiAgICAgICAgaWYgKCFnbG9iYWxPdmVybGF5KSB7XG4gICAgICAgICAgICB0b2FzdC5faXNBbmNob3IgPSB0cnVlO1xuICAgICAgICAgICAgcmV0dXJuIHRoaXMuX2NvbXBvc2VHbG9iYWxQb3NpdGlvbihwb3NpdGlvblN0cmF0ZWd5KTtcbiAgICAgICAgfVxuXG4gICAgICAgIC8vIEdldCBQcmV2aW91cyBvdmVybGF5IGl0ZW0uXG4gICAgICAgIGNvbnN0IG92ZXJsYXlJdGVtSW5kZXggPSB0b2FzdHMuZmluZEluZGV4KCh0KSA9PiB0ID09PSB0b2FzdCk7XG4gICAgICAgIGNvbnN0IHByZXZpb3VzT3ZlcmxheSA9IHRvYXN0c1tvdmVybGF5SXRlbUluZGV4IC0gMV07XG4gICAgICAgIHRvYXN0Ll9pc0FuY2hvciA9IGZhbHNlO1xuXG4gICAgICAgIHJldHVybiB0aGlzLl9jb21wb3NlRmxleGlibGVDb25uZWN0ZWRQb3NpdGlvbihwcmV2aW91c092ZXJsYXkub3ZlcmxheVJlZi5vdmVybGF5RWxlbWVudCwgcG9zaXRpb25TdHJhdGVneSk7XG4gICAgfVxuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcml2YXRlIF9pc0JvdW5kR2xvYmFsUG9zaXRpb24ocG9zaXRpb246IGFueSk6IHBvc2l0aW9uIGlzIFRvYXN0R2xvYmFsQ29ubmVjdGVkUG9zaXRpb24ge1xuICAgICAgICByZXR1cm4gISFwb3NpdGlvbi5ib3VuZFRvO1xuICAgIH1cbn1cbiJdfQ==
@@ -1,36 +0,0 @@
1
- import { Subject } from 'rxjs';
2
- import { BaseToastDurationDismissibleRef } from '../duration-dismissible/base-toast-duration-dismissible-ref';
3
- export class BaseToastActionDismissibleRef extends BaseToastDurationDismissibleRef {
4
- /** @hidden */
5
- constructor(containerInstance, overlayRef, positionStrategy) {
6
- super(containerInstance, overlayRef, positionStrategy);
7
- /** Subject for notifying the user that the Toast action-dismissible was called. */
8
- this.onAction$ = new Subject();
9
- /** Whether the Toast was dismissed using the action-dismissible button. */
10
- this.dismissedByAction = false;
11
- this.onAction().subscribe(() => this.dismiss());
12
- }
13
- /** Marks the Toast action-dismissible clicked. */
14
- dismissWithAction(reason = null) {
15
- if (!this.onAction$.closed) {
16
- this.dismissedByAction = true;
17
- this.onAction$.next(reason);
18
- this.onAction$.complete();
19
- }
20
- }
21
- /** Gets an observable that is notified when the Toast action-dismissible is called. */
22
- onAction() {
23
- return this.onAction$;
24
- }
25
- /**
26
- * @hidden
27
- * Cleans up the DOM after closing.
28
- */
29
- _finishDismiss() {
30
- if (!this.onAction$.closed) {
31
- this.onAction$.complete();
32
- }
33
- super._finishDismiss();
34
- }
35
- }
36
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYmFzZS10b2FzdC1hY3Rpb24tZGlzbWlzc2libGUtcmVmLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jZGsvdXRpbHMvdG9hc3QvY2xhc3Nlcy9hY3Rpb24tZGlzbWlzc2libGUvYmFzZS10b2FzdC1hY3Rpb24tZGlzbWlzc2libGUtcmVmLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBYyxPQUFPLEVBQUUsTUFBTSxNQUFNLENBQUM7QUFJM0MsT0FBTyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNkRBQTZELENBQUM7QUFFOUcsTUFBTSxPQUFnQiw2QkFHcEIsU0FBUSwrQkFBcUM7SUFPM0MsY0FBYztJQUNkLFlBQ0ksaUJBQW9FLEVBQ3BFLFVBQXNCLEVBQ3RCLGdCQUFtQztRQUVuQyxLQUFLLENBQUMsaUJBQWlCLEVBQUUsVUFBVSxFQUFFLGdCQUFnQixDQUFDLENBQUM7UUFaM0QsbUZBQW1GO1FBQ2hFLGNBQVMsR0FBRyxJQUFJLE9BQU8sRUFBaUIsQ0FBQztRQUU1RCwyRUFBMkU7UUFDakUsc0JBQWlCLEdBQUcsS0FBSyxDQUFDO1FBVWhDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDcEQsQ0FBQztJQUVELGtEQUFrRDtJQUNsRCxpQkFBaUIsQ0FBQyxTQUF3QixJQUFJO1FBQzFDLElBQUksQ0FBQyxJQUFJLENBQUMsU0FBUyxDQUFDLE1BQU0sRUFBRSxDQUFDO1lBQ3pCLElBQUksQ0FBQyxpQkFBaUIsR0FBRyxJQUFJLENBQUM7WUFFOUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUM7WUFDNUIsSUFBSSxDQUFDLFNBQVMsQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUM5QixDQUFDO0lBQ0wsQ0FBQztJQUVELHVGQUF1RjtJQUN2RixRQUFRO1FBQ0osT0FBTyxJQUFJLENBQUMsU0FBUyxDQUFDO0lBQzFCLENBQUM7SUFFRDs7O09BR0c7SUFDZ0IsY0FBYztRQUM3QixJQUFJLENBQUMsSUFBSSxDQUFDLFNBQVMsQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUN6QixJQUFJLENBQUMsU0FBUyxDQUFDLFFBQVEsRUFBRSxDQUFDO1FBQzlCLENBQUM7UUFFRCxLQUFLLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDM0IsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgT3ZlcmxheVJlZiB9IGZyb20gJ0Bhbmd1bGFyL2Nkay9vdmVybGF5JztcbmltcG9ydCB7IE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJztcbmltcG9ydCB7IEJhc2VUb2FzdFBvc2l0aW9uIH0gZnJvbSAnLi4vLi4vYmFzZS10b2FzdC1wb3NpdGlvbnMnO1xuaW1wb3J0IHsgQmFzZVRvYXN0Q29uZmlnIH0gZnJvbSAnLi4vYmFzZS10b2FzdC1jb25maWcnO1xuaW1wb3J0IHsgQmFzZVRvYXN0RHVyYXRpb25EaXNtaXNzaWJsZUNvbnRhaW5lckNvbXBvbmVudCB9IGZyb20gJy4uL2R1cmF0aW9uLWRpc21pc3NpYmxlL2Jhc2UtdG9hc3QtZHVyYXRpb24tZGlzbWlzc2libGUtY29udGFpbmVyLmNvbXBvbmVudCc7XG5pbXBvcnQgeyBCYXNlVG9hc3REdXJhdGlvbkRpc21pc3NpYmxlUmVmIH0gZnJvbSAnLi4vZHVyYXRpb24tZGlzbWlzc2libGUvYmFzZS10b2FzdC1kdXJhdGlvbi1kaXNtaXNzaWJsZS1yZWYnO1xuXG5leHBvcnQgYWJzdHJhY3QgY2xhc3MgQmFzZVRvYXN0QWN0aW9uRGlzbWlzc2libGVSZWY8XG4gICAgVCA9IGFueSxcbiAgICBQIGV4dGVuZHMgQmFzZVRvYXN0Q29uZmlnPFQ+ID0gYW55XG4+IGV4dGVuZHMgQmFzZVRvYXN0RHVyYXRpb25EaXNtaXNzaWJsZVJlZjxULCBQPiB7XG4gICAgLyoqIFN1YmplY3QgZm9yIG5vdGlmeWluZyB0aGUgdXNlciB0aGF0IHRoZSBUb2FzdCBhY3Rpb24tZGlzbWlzc2libGUgd2FzIGNhbGxlZC4gKi9cbiAgICBwcm90ZWN0ZWQgcmVhZG9ubHkgb25BY3Rpb24kID0gbmV3IFN1YmplY3Q8c3RyaW5nIHwgbnVsbD4oKTtcblxuICAgIC8qKiBXaGV0aGVyIHRoZSBUb2FzdCB3YXMgZGlzbWlzc2VkIHVzaW5nIHRoZSBhY3Rpb24tZGlzbWlzc2libGUgYnV0dG9uLiAqL1xuICAgIHByb3RlY3RlZCBkaXNtaXNzZWRCeUFjdGlvbiA9IGZhbHNlO1xuXG4gICAgLyoqIEBoaWRkZW4gKi9cbiAgICBwcm90ZWN0ZWQgY29uc3RydWN0b3IoXG4gICAgICAgIGNvbnRhaW5lckluc3RhbmNlOiBCYXNlVG9hc3REdXJhdGlvbkRpc21pc3NpYmxlQ29udGFpbmVyQ29tcG9uZW50PFA+LFxuICAgICAgICBvdmVybGF5UmVmOiBPdmVybGF5UmVmLFxuICAgICAgICBwb3NpdGlvblN0cmF0ZWd5OiBCYXNlVG9hc3RQb3NpdGlvblxuICAgICkge1xuICAgICAgICBzdXBlcihjb250YWluZXJJbnN0YW5jZSwgb3ZlcmxheVJlZiwgcG9zaXRpb25TdHJhdGVneSk7XG5cbiAgICAgICAgdGhpcy5vbkFjdGlvbigpLnN1YnNjcmliZSgoKSA9PiB0aGlzLmRpc21pc3MoKSk7XG4gICAgfVxuXG4gICAgLyoqIE1hcmtzIHRoZSBUb2FzdCBhY3Rpb24tZGlzbWlzc2libGUgY2xpY2tlZC4gKi9cbiAgICBkaXNtaXNzV2l0aEFjdGlvbihyZWFzb246IHN0cmluZyB8IG51bGwgPSBudWxsKTogdm9pZCB7XG4gICAgICAgIGlmICghdGhpcy5vbkFjdGlvbiQuY2xvc2VkKSB7XG4gICAgICAgICAgICB0aGlzLmRpc21pc3NlZEJ5QWN0aW9uID0gdHJ1ZTtcblxuICAgICAgICAgICAgdGhpcy5vbkFjdGlvbiQubmV4dChyZWFzb24pO1xuICAgICAgICAgICAgdGhpcy5vbkFjdGlvbiQuY29tcGxldGUoKTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIC8qKiBHZXRzIGFuIG9ic2VydmFibGUgdGhhdCBpcyBub3RpZmllZCB3aGVuIHRoZSBUb2FzdCBhY3Rpb24tZGlzbWlzc2libGUgaXMgY2FsbGVkLiAqL1xuICAgIG9uQWN0aW9uKCk6IE9ic2VydmFibGU8c3RyaW5nIHwgbnVsbD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5vbkFjdGlvbiQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQGhpZGRlblxuICAgICAqIENsZWFucyB1cCB0aGUgRE9NIGFmdGVyIGNsb3NpbmcuXG4gICAgICovXG4gICAgcHJvdGVjdGVkIG92ZXJyaWRlIF9maW5pc2hEaXNtaXNzKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMub25BY3Rpb24kLmNsb3NlZCkge1xuICAgICAgICAgICAgdGhpcy5vbkFjdGlvbiQuY29tcGxldGUoKTtcbiAgICAgICAgfVxuXG4gICAgICAgIHN1cGVyLl9maW5pc2hEaXNtaXNzKCk7XG4gICAgfVxufVxuIl19