@acorex/components 18.5.16 → 18.5.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (227) hide show
  1. package/action-sheet/lib/action-sheet.component.d.ts +26 -0
  2. package/alert/lib/alert.component.d.ts +50 -2
  3. package/audio-wave/lib/audio-wave.component.d.ts +48 -0
  4. package/avatar/lib/avatar.component.d.ts +20 -1
  5. package/badge/lib/badge.component.d.ts +8 -0
  6. package/bottom-navigation/lib/bottom-navigation.component.d.ts +16 -0
  7. package/breadcrumbs/lib/breadcrumbs-item.component.d.ts +11 -0
  8. package/breadcrumbs/lib/breadcrumbs.component.d.ts +11 -0
  9. package/button/lib/button-item-list.component.d.ts +34 -0
  10. package/button/lib/button-item.component.d.ts +47 -0
  11. package/button/lib/button.component.d.ts +36 -0
  12. package/button-group/lib/button-group.component.d.ts +53 -0
  13. package/calendar/lib/calendar-range.component.d.ts +48 -0
  14. package/calendar/lib/calendar.component.d.ts +114 -0
  15. package/check-box/lib/check-box.component.d.ts +36 -0
  16. package/chips/lib/chips.component.d.ts +13 -0
  17. package/circular-progress/lib/circular-progress.component.d.ts +67 -1
  18. package/collapse/lib/collapse-group.component.d.ts +38 -0
  19. package/collapse/lib/collapse.component.d.ts +55 -0
  20. package/color-box/lib/color-box.component.d.ts +28 -1
  21. package/color-palette/lib/color-palette-input.component.d.ts +35 -0
  22. package/color-palette/lib/color-palette-picker.component.d.ts +53 -0
  23. package/color-palette/lib/color-palette-preview.component.d.ts +17 -0
  24. package/color-palette/lib/color-palette-swatches.component.d.ts +30 -0
  25. package/color-palette/lib/color-palette.component.d.ts +8 -0
  26. package/comment/lib/comment-container/comment-container.component.d.ts +5 -0
  27. package/comment/lib/comment-item/comment-item.component.d.ts +16 -2
  28. package/comment/lib/comment-like/comment-like.component.d.ts +8 -0
  29. package/comment/lib/comment-reply/comment-reply.component.d.ts +4 -0
  30. package/comment/lib/comment-view/comment-view.component.d.ts +4 -0
  31. package/common/lib/components/base-component.class.d.ts +8 -0
  32. package/common/lib/components/button-base-component.class.d.ts +21 -0
  33. package/common/lib/components/interactive-component.class.d.ts +15 -0
  34. package/conversation/lib/conversation-container/conversation-container.component.d.ts +4 -0
  35. package/conversation/lib/conversation-input/conversation-input.component.d.ts +79 -2
  36. package/conversation/lib/conversation-message/conversation-message.component.d.ts +41 -0
  37. package/conversation/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.d.ts +62 -0
  38. package/conversation/lib/conversation-messages/conversation-message-file/conversation-message-file.component.d.ts +34 -0
  39. package/conversation/lib/conversation-messages/conversation-message-image/conversation-message-image.component.d.ts +21 -0
  40. package/conversation/lib/conversation-messages/conversation-message-image-popup/conversation-message-image-popup.component.d.ts +11 -0
  41. package/conversation/lib/conversation-messages/conversation-message-text/conversation-message-text.component.d.ts +29 -0
  42. package/conversation/lib/conversation-messages/conversation-message-video/conversation-message-video.component.d.ts +11 -0
  43. package/conversation/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.d.ts +72 -0
  44. package/conversation/lib/conversation-view/conversation-view.component.d.ts +22 -0
  45. package/data-pager/lib/data-pager-base.component.d.ts +9 -0
  46. package/data-pager/lib/data-pager-info.component.d.ts +14 -0
  47. package/data-pager/lib/data-pager-input-selector.component.d.ts +17 -0
  48. package/data-pager/lib/data-pager-next-buttons.components.d.ts +20 -0
  49. package/data-pager/lib/data-pager-numeric-selector.component.d.ts +14 -0
  50. package/esm2022/action-sheet/lib/action-sheet.component.mjs +21 -1
  51. package/esm2022/alert/lib/alert.component.mjs +48 -3
  52. package/esm2022/audio-wave/lib/audio-wave.component.mjs +43 -1
  53. package/esm2022/avatar/lib/avatar.component.mjs +21 -2
  54. package/esm2022/badge/lib/badge.component.mjs +9 -1
  55. package/esm2022/bottom-navigation/lib/bottom-navigation.component.mjs +14 -1
  56. package/esm2022/breadcrumbs/lib/breadcrumbs-item.component.mjs +9 -1
  57. package/esm2022/breadcrumbs/lib/breadcrumbs.component.mjs +6 -1
  58. package/esm2022/button/lib/button-item-list.component.mjs +35 -1
  59. package/esm2022/button/lib/button-item.component.mjs +36 -1
  60. package/esm2022/button/lib/button.component.mjs +37 -1
  61. package/esm2022/button-group/lib/button-group.component.mjs +48 -1
  62. package/esm2022/calendar/lib/calendar-range.component.mjs +46 -1
  63. package/esm2022/calendar/lib/calendar.component.mjs +112 -1
  64. package/esm2022/check-box/lib/check-box.component.mjs +34 -1
  65. package/esm2022/chips/lib/chips.component.mjs +14 -1
  66. package/esm2022/circular-progress/lib/circular-progress.component.mjs +69 -1
  67. package/esm2022/collapse/lib/collapse-group.component.mjs +39 -1
  68. package/esm2022/collapse/lib/collapse.component.mjs +53 -1
  69. package/esm2022/color-box/lib/color-box.component.mjs +23 -2
  70. package/esm2022/color-palette/lib/color-palette-input.component.mjs +36 -1
  71. package/esm2022/color-palette/lib/color-palette-picker.component.mjs +54 -1
  72. package/esm2022/color-palette/lib/color-palette-preview.component.mjs +18 -1
  73. package/esm2022/color-palette/lib/color-palette-swatches.component.mjs +28 -1
  74. package/esm2022/color-palette/lib/color-palette.component.mjs +9 -1
  75. package/esm2022/comment/lib/comment-container/comment-container.component.mjs +6 -1
  76. package/esm2022/comment/lib/comment-item/comment-item.component.mjs +15 -1
  77. package/esm2022/comment/lib/comment-like/comment-like.component.mjs +9 -1
  78. package/esm2022/comment/lib/comment-reply/comment-reply.component.mjs +5 -1
  79. package/esm2022/comment/lib/comment-view/comment-view.component.mjs +5 -1
  80. package/esm2022/common/lib/components/base-component.class.mjs +9 -1
  81. package/esm2022/common/lib/components/button-base-component.class.mjs +22 -1
  82. package/esm2022/common/lib/components/interactive-component.class.mjs +16 -1
  83. package/esm2022/conversation/lib/conversation-container/conversation-container.component.mjs +5 -1
  84. package/esm2022/conversation/lib/conversation-input/conversation-input.component.mjs +75 -1
  85. package/esm2022/conversation/lib/conversation-message/conversation-message.component.mjs +39 -1
  86. package/esm2022/conversation/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.mjs +63 -1
  87. package/esm2022/conversation/lib/conversation-messages/conversation-message-file/conversation-message-file.component.mjs +35 -1
  88. package/esm2022/conversation/lib/conversation-messages/conversation-message-image/conversation-message-image.component.mjs +22 -1
  89. package/esm2022/conversation/lib/conversation-messages/conversation-message-image-popup/conversation-message-image-popup.component.mjs +9 -1
  90. package/esm2022/conversation/lib/conversation-messages/conversation-message-text/conversation-message-text.component.mjs +30 -1
  91. package/esm2022/conversation/lib/conversation-messages/conversation-message-video/conversation-message-video.component.mjs +12 -1
  92. package/esm2022/conversation/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.mjs +70 -1
  93. package/esm2022/conversation/lib/conversation-view/conversation-view.component.mjs +23 -1
  94. package/esm2022/data-pager/lib/data-pager-base.component.mjs +7 -1
  95. package/esm2022/data-pager/lib/data-pager-info.component.mjs +9 -1
  96. package/esm2022/data-pager/lib/data-pager-input-selector.component.mjs +18 -1
  97. package/esm2022/data-pager/lib/data-pager-next-buttons.components.mjs +18 -1
  98. package/esm2022/data-pager/lib/data-pager-numeric-selector.component.mjs +15 -1
  99. package/esm2022/scheduler/lib/scheduler-month-view.component.mjs +20 -1
  100. package/esm2022/scheduler/lib/scheduler-week-view.component.mjs +5 -1
  101. package/esm2022/scheduler/lib/scheduler.component.mjs +10 -1
  102. package/esm2022/search-box/lib/search-box.component.mjs +19 -2
  103. package/esm2022/select-box/lib/select-box.component.mjs +50 -2
  104. package/esm2022/selection-list/lib/selection-list.component.mjs +51 -1
  105. package/esm2022/side-menu/lib/side-menu.component.mjs +5 -1
  106. package/esm2022/skeleton/lib/skeleton.component.mjs +11 -1
  107. package/esm2022/slider/lib/slider.component.mjs +52 -2
  108. package/esm2022/step-wizard/lib/step-wizard.component.mjs +23 -1
  109. package/esm2022/switch/lib/switch-content.component.mjs +5 -1
  110. package/esm2022/switch/lib/switch.component.mjs +11 -1
  111. package/esm2022/tabs/lib/tab-item.component.mjs +24 -1
  112. package/esm2022/tabs/lib/tabs.component.mjs +36 -1
  113. package/esm2022/tag/lib/tag.component.mjs +2 -1
  114. package/esm2022/text-area/lib/text-area.component.mjs +8 -1
  115. package/esm2022/text-box/lib/text-box.component.mjs +13 -1
  116. package/esm2022/toast/lib/toast.component.mjs +6 -1
  117. package/esm2022/tooltip/lib/tooltip.component.mjs +5 -1
  118. package/esm2022/uploader/lib/uploader-dialog-container.component.mjs +16 -1
  119. package/esm2022/uploader/lib/uploader-drop-zone.component.mjs +5 -1
  120. package/esm2022/uploader/lib/uploader-list.component.mjs +8 -3
  121. package/esm2022/uploader/lib/uploader.models.mjs +14 -1
  122. package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.mjs +18 -1
  123. package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-toolbar/wysiwyg-toolbar.component.mjs +106 -36
  124. package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.mjs +9 -1
  125. package/esm2022/wysiwyg/lib/wysiwyg/wysiwyg.service.mjs +4 -1
  126. package/fesm2022/acorex-components-action-sheet.mjs +20 -0
  127. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  128. package/fesm2022/acorex-components-alert.mjs +47 -2
  129. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  130. package/fesm2022/acorex-components-audio-wave.mjs +42 -0
  131. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  132. package/fesm2022/acorex-components-avatar.mjs +20 -1
  133. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  134. package/fesm2022/acorex-components-badge.mjs +8 -0
  135. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  136. package/fesm2022/acorex-components-bottom-navigation.mjs +13 -0
  137. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  138. package/fesm2022/acorex-components-breadcrumbs.mjs +13 -0
  139. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  140. package/fesm2022/acorex-components-button-group.mjs +47 -0
  141. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  142. package/fesm2022/acorex-components-button.mjs +105 -0
  143. package/fesm2022/acorex-components-button.mjs.map +1 -1
  144. package/fesm2022/acorex-components-calendar.mjs +156 -0
  145. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  146. package/fesm2022/acorex-components-check-box.mjs +33 -0
  147. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  148. package/fesm2022/acorex-components-chips.mjs +13 -0
  149. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  150. package/fesm2022/acorex-components-circular-progress.mjs +68 -0
  151. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  152. package/fesm2022/acorex-components-collapse.mjs +90 -0
  153. package/fesm2022/acorex-components-collapse.mjs.map +1 -1
  154. package/fesm2022/acorex-components-color-box.mjs +22 -1
  155. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  156. package/fesm2022/acorex-components-color-palette.mjs +140 -0
  157. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  158. package/fesm2022/acorex-components-comment.mjs +35 -0
  159. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  160. package/fesm2022/acorex-components-common.mjs +44 -0
  161. package/fesm2022/acorex-components-common.mjs.map +1 -1
  162. package/fesm2022/acorex-components-conversation.mjs +372 -0
  163. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  164. package/fesm2022/acorex-components-data-pager.mjs +62 -0
  165. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  166. package/fesm2022/acorex-components-scheduler.mjs +32 -0
  167. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  168. package/fesm2022/acorex-components-search-box.mjs +18 -1
  169. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  170. package/fesm2022/acorex-components-select-box.mjs +49 -1
  171. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  172. package/fesm2022/acorex-components-selection-list.mjs +50 -0
  173. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  174. package/fesm2022/acorex-components-side-menu.mjs +4 -0
  175. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  176. package/fesm2022/acorex-components-skeleton.mjs +10 -0
  177. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  178. package/fesm2022/acorex-components-slider.mjs +51 -1
  179. package/fesm2022/acorex-components-slider.mjs.map +1 -1
  180. package/fesm2022/acorex-components-step-wizard.mjs +22 -0
  181. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  182. package/fesm2022/acorex-components-switch.mjs +14 -0
  183. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  184. package/fesm2022/acorex-components-tabs.mjs +58 -0
  185. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  186. package/fesm2022/acorex-components-tag.mjs +1 -0
  187. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  188. package/fesm2022/acorex-components-text-area.mjs +7 -0
  189. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  190. package/fesm2022/acorex-components-text-box.mjs +12 -0
  191. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  192. package/fesm2022/acorex-components-toast.mjs +5 -0
  193. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  194. package/fesm2022/acorex-components-tooltip.mjs +4 -0
  195. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  196. package/fesm2022/acorex-components-uploader.mjs +39 -2
  197. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  198. package/fesm2022/acorex-components-wysiwyg.mjs +134 -35
  199. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  200. package/package.json +31 -31
  201. package/scheduler/lib/scheduler-month-view.component.d.ts +20 -0
  202. package/scheduler/lib/scheduler-week-view.component.d.ts +4 -0
  203. package/scheduler/lib/scheduler.component.d.ts +10 -0
  204. package/search-box/lib/search-box.component.d.ts +19 -1
  205. package/select-box/lib/select-box.component.d.ts +78 -1
  206. package/selection-list/lib/selection-list.component.d.ts +55 -0
  207. package/side-menu/lib/side-menu.component.d.ts +4 -0
  208. package/skeleton/lib/skeleton.component.d.ts +10 -0
  209. package/slider/lib/slider.component.d.ts +51 -1
  210. package/step-wizard/lib/step-wizard.component.d.ts +23 -0
  211. package/switch/lib/switch-content.component.d.ts +4 -0
  212. package/switch/lib/switch.component.d.ts +14 -0
  213. package/tabs/lib/tab-item.component.d.ts +32 -0
  214. package/tabs/lib/tabs.component.d.ts +42 -0
  215. package/tag/lib/tag.component.d.ts +4 -0
  216. package/text-area/lib/text-area.component.d.ts +13 -0
  217. package/text-box/lib/text-box.component.d.ts +27 -0
  218. package/toast/lib/toast.component.d.ts +6 -0
  219. package/tooltip/lib/tooltip.component.d.ts +13 -0
  220. package/uploader/lib/uploader-dialog-container.component.d.ts +15 -0
  221. package/uploader/lib/uploader-drop-zone.component.d.ts +4 -0
  222. package/uploader/lib/uploader-list.component.d.ts +5 -0
  223. package/uploader/lib/uploader.models.d.ts +4 -0
  224. package/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.d.ts +19 -3
  225. package/wysiwyg/lib/wysiwyg/wysiwyg-toolbar/wysiwyg-toolbar.component.d.ts +61 -20
  226. package/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.d.ts +4 -0
  227. package/wysiwyg/lib/wysiwyg/wysiwyg.service.d.ts +3 -0
@@ -1,14 +1,43 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { AXConversationMessage, AXConversationMessageBaseComponent } from '../../conversation.types';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * A component for displaying a text message with optional reply content, including text, images, videos, files, and audio.
6
+ *
7
+ * @category Components
8
+ */
4
9
  export declare class AXConversationTextMessageComponent extends AXConversationMessageBaseComponent<string> implements OnInit {
10
+ /**
11
+ * @ignore
12
+ */
5
13
  protected _text: import("@angular/core").WritableSignal<string>;
14
+ /**
15
+ * @ignore
16
+ */
6
17
  protected replyText: import("@angular/core").WritableSignal<AXConversationMessage<string>>;
18
+ /**
19
+ * @ignore
20
+ */
7
21
  protected replyImage: import("@angular/core").WritableSignal<AXConversationMessage<string>>;
22
+ /**
23
+ * @ignore
24
+ */
8
25
  protected replyVideo: import("@angular/core").WritableSignal<AXConversationMessage<string>>;
26
+ /**
27
+ * @ignore
28
+ */
9
29
  protected replyAudio: import("@angular/core").WritableSignal<AXConversationMessage<string>>;
30
+ /**
31
+ * @ignore
32
+ */
10
33
  protected replyVoice: import("@angular/core").WritableSignal<AXConversationMessage<string>>;
34
+ /**
35
+ * @ignore
36
+ */
11
37
  protected replyFile: import("@angular/core").WritableSignal<AXConversationMessage<string>>;
38
+ /**
39
+ * @ignore
40
+ */
12
41
  ngOnInit(): void;
13
42
  static ɵfac: i0.ɵɵFactoryDeclaration<AXConversationTextMessageComponent, never>;
14
43
  static ɵcmp: i0.ɵɵComponentDeclaration<AXConversationTextMessageComponent, "ng-component", never, { "message": { "alias": "message"; "required": false; }; }, {}, never, never, false, never>;
@@ -1,8 +1,19 @@
1
1
  import { OnInit } from '@angular/core';
2
2
  import { AXConversationMessageBaseComponent } from '../../conversation.types';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * A component for displaying a video message with playback controls.
6
+ *
7
+ * @category Components
8
+ */
4
9
  export declare class AXConversationMessageVideoComponent extends AXConversationMessageBaseComponent<string> implements OnInit {
10
+ /**
11
+ * @ignore
12
+ */
5
13
  protected _videoUrl: import("@angular/core").WritableSignal<string>;
14
+ /**
15
+ * @ignore
16
+ */
6
17
  ngOnInit(): void;
7
18
  static ɵfac: i0.ɵɵFactoryDeclaration<AXConversationMessageVideoComponent, never>;
8
19
  static ɵcmp: i0.ɵɵComponentDeclaration<AXConversationMessageVideoComponent, "ax-conversation-message-video", never, {}, {}, never, never, false, never>;
@@ -3,26 +3,98 @@ import { WritableSignal } from '@angular/core';
3
3
  import { AXConversationViewComponent } from '../../conversation-view/conversation-view.component';
4
4
  import { AXConversationMessageBaseComponent } from '../../conversation.types';
5
5
  import * as i0 from "@angular/core";
6
+ /**
7
+ * A component for displaying and handling audio messages in a conversation.
8
+ *
9
+ * @category Components
10
+ */
6
11
  export declare class AXConversationVoiceMessageComponent extends AXConversationMessageBaseComponent<string> {
12
+ /**
13
+ * @ignore
14
+ */
7
15
  audio: AXAudioWaveComponent;
16
+ /**
17
+ * @ignore
18
+ */
8
19
  config: AXWaveConfig;
20
+ /**
21
+ * @ignore
22
+ */
9
23
  audioState: WritableSignal<'playing' | 'paused' | 'loading' | 'ready' | 'error'>;
24
+ /**
25
+ * @ignore
26
+ */
10
27
  parent: AXConversationViewComponent;
28
+ /**
29
+ * @ignore
30
+ */
11
31
  selectedRate: WritableSignal<number>;
32
+ /**
33
+ * @ignore
34
+ */
12
35
  selectedRateIndex: WritableSignal<number>;
36
+ /**
37
+ * @ignore
38
+ */
13
39
  protected audioProgress: WritableSignal<number>;
40
+ /**
41
+ * @ignore
42
+ */
14
43
  protected timeLeft: WritableSignal<number>;
44
+ /**
45
+ * @ignore
46
+ */
15
47
  protected currentTime: WritableSignal<number>;
48
+ /**
49
+ * @ignore
50
+ */
16
51
  protected duration: WritableSignal<number>;
52
+ /**
53
+ * @ignore
54
+ */
17
55
  constructor();
56
+ /**
57
+ * @ignore
58
+ */
18
59
  setWaveColor(): void;
60
+ /**
61
+ * Pauses the audio playback and updates the audio state to 'paused'.
62
+ * @ignore
63
+ */
19
64
  handlePauseClick(): void;
65
+ /**
66
+ * Plays the audio and updates the audio state to 'playing'.
67
+ * @ignore
68
+ */
20
69
  handlePlayClick(): void;
70
+ /**
71
+ * Updates audio state and progress based on status changes from the audio wave.
72
+ * @param e - The event containing status and data related to the audio.
73
+ * @ignore
74
+ */
21
75
  handleOnStatusChanged(e: AXAudioWaveChangeEvent): void;
76
+ /**
77
+ * @ignore
78
+ */
22
79
  handleLoadingProgress(): void;
80
+ /**
81
+ * Handles the cancellation of a loading operation.
82
+ * @ignore
83
+ */
23
84
  handleCancelLoading(): void;
85
+ /**
86
+ * Reloads the audio and updates the state to 'loading'.
87
+ * @ignore
88
+ */
24
89
  handleReloadClick(): void;
90
+ /**
91
+ * Cycles through predefined audio playback rates and updates the rate.
92
+ * @ignore
93
+ */
25
94
  handleRateClick(): void;
95
+ /**
96
+ * @ignore
97
+ */
26
98
  get __hostClass(): string;
27
99
  static ɵfac: i0.ɵɵFactoryDeclaration<AXConversationVoiceMessageComponent, never>;
28
100
  static ɵcmp: i0.ɵɵComponentDeclaration<AXConversationVoiceMessageComponent, "ax-conversation-message-audio", never, { "message": { "alias": "message"; "required": false; }; }, {}, never, never, false, never>;
@@ -4,12 +4,34 @@ import { AXConversationActionEvent } from '../classes/events.interface';
4
4
  import { AXConversationMessage } from '../conversation.types';
5
5
  import { AXConversationService } from '../services/conversation.service';
6
6
  import * as i0 from "@angular/core";
7
+ /**
8
+ * Displays the conversation view with messages and interactions.
9
+ *
10
+ * @category Components
11
+ */
7
12
  export declare class AXConversationViewComponent extends MXBaseComponent {
13
+ /**
14
+ * @ignore
15
+ */
8
16
  conversationService: AXConversationService;
17
+ /**
18
+ * Emits an event when an action is performed within the conversation view.
19
+ *
20
+ * @event
21
+ */
9
22
  onAction: import("@angular/core").OutputEmitterRef<AXConversationActionEvent>;
23
+ /**
24
+ * @ignore
25
+ */
10
26
  protected conversations: Signal<AXConversationMessage<any>[]>;
11
27
  viewRef: ViewContainerRef;
28
+ /**
29
+ * @ignore
30
+ */
12
31
  constructor();
32
+ /**
33
+ * @ignore
34
+ */
13
35
  scrollIntoEndOfView(): void;
14
36
  static ɵfac: i0.ɵɵFactoryDeclaration<AXConversationViewComponent, never>;
15
37
  static ɵcmp: i0.ɵɵComponentDeclaration<AXConversationViewComponent, "ax-conversation-view", never, {}, { "onAction": "onAction"; }, never, never, false, never>;
@@ -47,8 +47,17 @@ export declare abstract class AXDataPagerParentComponent {
47
47
  export declare abstract class AXDataPagerChild extends MXInteractiveComponent {
48
48
  protected _parent: AXDataPagerParentComponent;
49
49
  protected _unsubscriber: AXUnsubscriber;
50
+ /**
51
+ * @ignore
52
+ */
50
53
  constructor();
54
+ /**
55
+ * @ignore
56
+ */
51
57
  ngAfterViewInit(): void;
58
+ /**
59
+ * @ignore
60
+ */
52
61
  protected abstract applyParent(): void;
53
62
  static ɵfac: i0.ɵɵFactoryDeclaration<AXDataPagerChild, never>;
54
63
  static ɵprov: i0.ɵɵInjectableDeclaration<AXDataPagerChild>;
@@ -1,10 +1,24 @@
1
1
  import { AXTranslationService } from '@acorex/core/translation';
2
2
  import { AXDataPagerChild } from './data-pager-base.component';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * Displays formatted and translated information text for a data pager component.
6
+ *
7
+ * @category Components
8
+ */
4
9
  export declare class AXDataPagerInfoComponent extends AXDataPagerChild {
10
+ /**
11
+ * The text to be displayed in the data pager info component.
12
+ */
5
13
  text: string;
14
+ /**
15
+ * @ignore
16
+ */
6
17
  protected _textFormatted: string;
7
18
  protected translateService: AXTranslationService;
19
+ /**
20
+ * @ignore
21
+ */
8
22
  protected applyParent(): void;
9
23
  static ɵfac: i0.ɵɵFactoryDeclaration<AXDataPagerInfoComponent, never>;
10
24
  static ɵcmp: i0.ɵɵComponentDeclaration<AXDataPagerInfoComponent, "ax-data-pager-info", never, { "text": { "alias": "text"; "required": false; }; }, {}, never, never, false, never>;
@@ -1,10 +1,27 @@
1
1
  import { AXValueChangedEvent } from '@acorex/components/common';
2
2
  import { AXDataPagerChild } from './data-pager-base.component';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * Provides an input selector for navigating pages in a data pager component.
6
+ *
7
+ * @category Components
8
+ */
4
9
  export declare class AXDataPagerInputSelectorComponent extends AXDataPagerChild {
10
+ /**
11
+ * @ignore
12
+ */
5
13
  protected _totalPages: number;
14
+ /**
15
+ * @ignore
16
+ */
6
17
  protected _currentPage: number;
18
+ /**
19
+ * @ignore
20
+ */
7
21
  protected applyParent(): void;
22
+ /**
23
+ * @ignore
24
+ */
8
25
  protected _handleValueChanged(e: AXValueChangedEvent<number>): void;
9
26
  static ɵfac: i0.ɵɵFactoryDeclaration<AXDataPagerInputSelectorComponent, never>;
10
27
  static ɵcmp: i0.ɵɵComponentDeclaration<AXDataPagerInputSelectorComponent, "ax-data-pager-input-selector", never, {}, {}, never, never, false, never>;
@@ -1,11 +1,31 @@
1
1
  import { AXClickEvent } from '@acorex/components/common';
2
2
  import { AXDataPagerChild } from './data-pager-base.component';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * Provides buttons for navigating to the next and last pages in a data pager component.
6
+ *
7
+ * @category Components
8
+ */
4
9
  export declare class AXDataPagerNextButtonsComponent extends AXDataPagerChild {
10
+ /**
11
+ * @ignore
12
+ */
5
13
  protected rtl: boolean;
14
+ /**
15
+ * @ignore
16
+ */
6
17
  ngOnInit(): void;
18
+ /**
19
+ * @ignore
20
+ */
7
21
  protected applyParent(): void;
22
+ /**
23
+ * @ignore
24
+ */
8
25
  _emitOnLastPageClick(e: AXClickEvent): void;
26
+ /**
27
+ * @ignore
28
+ */
9
29
  _emitOnNextPageClick(e: AXClickEvent): void;
10
30
  static ɵfac: i0.ɵɵFactoryDeclaration<AXDataPagerNextButtonsComponent, never>;
11
31
  static ɵcmp: i0.ɵɵComponentDeclaration<AXDataPagerNextButtonsComponent, "ax-data-pager-next-buttons", never, {}, {}, never, never, false, never>;
@@ -1,13 +1,27 @@
1
1
  import { AXButtonItem } from '@acorex/components/button';
2
2
  import { AXDataPagerChild } from './data-pager-base.component';
3
3
  import * as i0 from "@angular/core";
4
+ /**
5
+ * Component that provides numeric page selection controls for a data pager.
6
+ *
7
+ * @category Components
8
+ */
4
9
  export declare class AXDataPagerNumericSelectorComponent extends AXDataPagerChild {
5
10
  _items: AXButtonItem[];
6
11
  _currentPage: number;
7
12
  _lastPage: number;
8
13
  _loading: boolean;
14
+ /**
15
+ * @ignore
16
+ */
9
17
  private _displayCount;
18
+ /**
19
+ * @ignore
20
+ */
10
21
  protected applyParent(): void;
22
+ /**
23
+ * @ignore
24
+ */
11
25
  _handleOnItemClick(e: any): void;
12
26
  static ɵfac: i0.ɵɵFactoryDeclaration<AXDataPagerNumericSelectorComponent, never>;
13
27
  static ɵcmp: i0.ɵɵComponentDeclaration<AXDataPagerNumericSelectorComponent, "ax-data-pager-numeric-selector", never, {}, {}, never, never, false, never>;
@@ -8,6 +8,11 @@ import * as i2 from "@angular/cdk/portal";
8
8
  import * as i3 from "@acorex/components/decorators";
9
9
  import * as i4 from "@acorex/core/translation";
10
10
  import * as i5 from "@angular/common";
11
+ /**
12
+ * A component for displaying an action sheet, which is a menu that slides up from the bottom of the screen.
13
+ *
14
+ * @category Components
15
+ */
11
16
  export class AXActionSheetComponent extends MXBaseComponent {
12
17
  /**
13
18
  * @ignore
@@ -17,6 +22,9 @@ export class AXActionSheetComponent extends MXBaseComponent {
17
22
  this.data = data;
18
23
  this.dialogRef = dialogRef;
19
24
  }
25
+ /**
26
+ * @ignore
27
+ */
20
28
  ngOnInit() {
21
29
  super.ngOnInit();
22
30
  if (this.data.content) {
@@ -33,12 +41,18 @@ export class AXActionSheetComponent extends MXBaseComponent {
33
41
  }
34
42
  }
35
43
  }
44
+ /**
45
+ * @ignore
46
+ */
36
47
  onKeydownHandler() {
37
48
  const focusedOrHasFocused = this.getHostElement().matches(':focus-within');
38
49
  if (this.data.closeButton && focusedOrHasFocused) {
39
50
  this.close(null);
40
51
  }
41
52
  }
53
+ /**
54
+ * @ignore
55
+ */
42
56
  _handleAttched(ref) {
43
57
  ref = ref;
44
58
  if (ref.instance) {
@@ -52,11 +66,17 @@ export class AXActionSheetComponent extends MXBaseComponent {
52
66
  }
53
67
  }
54
68
  }
69
+ /**
70
+ * @ignore
71
+ */
55
72
  onItemClick(item) {
56
73
  this.close(item);
57
74
  if (item?.onClick)
58
75
  item.onClick();
59
76
  }
77
+ /**
78
+ * @ignore
79
+ */
60
80
  close(e) {
61
81
  this.dialogRef.close({
62
82
  component: this._componentRef,
@@ -95,4 +115,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
95
115
  type: HostListener,
96
116
  args: ['keydown.escape']
97
117
  }] } });
98
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLXNoZWV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hY3Rpb24tc2hlZXQvc3JjL2xpYi9hY3Rpb24tc2hlZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FjdGlvbi1zaGVldC9zcmMvbGliL2FjdGlvbi1zaGVldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQXlCLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlILE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUE4QixlQUFlLEVBQVUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUcsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLE1BQU0sRUFFTixXQUFXLEVBQ1gsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBb0J2QixNQUFNLE9BQU8sc0JBQXVCLFNBQVEsZUFBZTtJQU16RDs7T0FFRztJQUNILFlBRVksSUFBeUIsRUFDM0IsU0FBMkM7UUFFbkQsS0FBSyxFQUFFLENBQUM7UUFIRSxTQUFJLEdBQUosSUFBSSxDQUFxQjtRQUMzQixjQUFTLEdBQVQsU0FBUyxDQUFrQztJQUdyRCxDQUFDO0lBRVEsUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sWUFBWSxXQUFXLEVBQUUsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLENBQUMsZ0JBQWdCLEVBQUUsRUFBRTtvQkFDcEYsU0FBUyxFQUFFLElBQUksQ0FBQyxJQUFJO29CQUNwQixHQUFHLEVBQUUsSUFBSTtpQkFDVixDQUFDLENBQUM7Z0JBQ0gsSUFBSSxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQztZQUMxQixDQUFDO2lCQUFNLElBQUksT0FBTyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sS0FBSyxVQUFVLEVBQUUsQ0FBQztnQkFDbkQsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJLGVBQWUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM5RCxJQUFJLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDO1lBQzFCLENBQUM7UUFDSCxDQUFDO0lBQ0gsQ0FBQztJQUdTLGdCQUFnQjtRQUN4QixNQUFNLG1CQUFtQixHQUFHLElBQUksQ0FBQyxjQUFjLEVBQUUsQ0FBQyxPQUFPLENBQUMsZUFBZSxDQUFDLENBQUM7UUFDM0UsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLFdBQVcsSUFBSSxtQkFBbUIsRUFBRSxDQUFDO1lBQ2pELElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDbkIsQ0FBQztJQUNILENBQUM7SUFFRCxjQUFjLENBQUMsR0FBK0I7UUFDNUMsR0FBRyxHQUFHLEdBQXdCLENBQUM7UUFDL0IsSUFBSSxHQUFHLENBQUMsUUFBUSxFQUFFLENBQUM7WUFDakIsSUFBSSxDQUFDLGFBQWEsR0FBRyxHQUFHLENBQUMsUUFBUSxDQUFDO1lBQ2xDLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLGFBQWEsRUFBRSxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDN0MsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsYUFBYSxFQUFFLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7WUFDdEQsSUFBSSxHQUFHLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO2dCQUMxQixHQUFHLENBQUMsUUFBUSxDQUFDLFFBQVEsQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUF3QixFQUFFLEVBQUU7b0JBQzNELElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hCLENBQUMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQztRQUNILENBQUM7SUFDSCxDQUFDO0lBRUQsV0FBVyxDQUFDLElBQXVCO1FBQ2pDLElBQUksQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUM7UUFDakIsSUFBSSxJQUFJLEVBQUUsT0FBTztZQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsQ0FBQztJQUNwQyxDQUFDO0lBRUQsS0FBSyxDQUFDLENBQUM7UUFDTCxJQUFJLENBQUMsU0FBUyxDQUFDLEtBQUssQ0FBQztZQUNuQixTQUFTLEVBQUUsSUFBSSxDQUFDLGFBQWE7WUFDN0IsV0FBVyxFQUFFLElBQUksQ0FBQyxjQUFjLEVBQUU7WUFDbEMsSUFBSSxFQUFFLENBQUM7U0FDUixDQUFDLENBQUM7SUFDTCxDQUFDOzhHQWxFVSxzQkFBc0Isa0JBVXZCLFdBQVc7a0dBVlYsc0JBQXNCLDJHQVh0QjtZQUNUO2dCQUNFLE9BQU8sRUFBRSxtQkFBbUI7Z0JBQzVCLFdBQVcsRUFBRSxzQkFBc0I7YUFDcEM7WUFDRDtnQkFDRSxPQUFPLEVBQUUsb0JBQW9CO2dCQUM3QixXQUFXLEVBQUUsc0JBQXNCO2FBQ3BDO1NBQ0YsaURDOUJILHk5QkFrQ0E7OzJGREZhLHNCQUFzQjtrQkFqQmxDLFNBQVM7K0JBQ0UsaUJBQWlCLG1CQUdWLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksYUFDMUI7d0JBQ1Q7NEJBQ0UsT0FBTyxFQUFFLG1CQUFtQjs0QkFDNUIsV0FBVyx3QkFBd0I7eUJBQ3BDO3dCQUNEOzRCQUNFLE9BQU8sRUFBRSxvQkFBb0I7NEJBQzdCLFdBQVcsd0JBQXdCO3lCQUNwQztxQkFDRjs7MEJBWUUsTUFBTTsyQkFBQyxXQUFXO2lFQXdCWCxnQkFBZ0I7c0JBRHpCLFlBQVk7dUJBQUMsZ0JBQWdCIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhDbG9zYmFsZUNvbXBvbmVudCwgQVhDb21wb25lbnRDbG9zZUV2ZW50LCBBWEZvY3VzYWJsZUNvbXBvbmVudCwgTVhCYXNlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NvbW1vbic7XG5pbXBvcnQgeyBESUFMT0dfREFUQSwgRGlhbG9nUmVmIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2RpYWxvZyc7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXRBdHRhY2hlZFJlZiwgQ29tcG9uZW50UG9ydGFsLCBQb3J0YWwsIFRlbXBsYXRlUG9ydGFsIH0gZnJvbSAnQGFuZ3VsYXIvY2RrL3BvcnRhbCc7XG5pbXBvcnQge1xuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBDb21wb25lbnRSZWYsXG4gIEhvc3RMaXN0ZW5lcixcbiAgSW5qZWN0LFxuICBPbkluaXQsXG4gIFRlbXBsYXRlUmVmLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWEFjdGlvblNoZWV0Q29uZmlnLCBBWEFjdGlvblNoZWV0SXRlbSB9IGZyb20gJy4vYWN0aW9uLXNoZWV0LmNsYXNzJztcblxuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtYWN0aW9uLXNoZWV0JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2FjdGlvbi1zaGVldC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FjdGlvbi1zaGVldC5jb21wb25lbnQuc2NzcyddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhDbG9zYmFsZUNvbXBvbmVudCxcbiAgICAgIHVzZUV4aXN0aW5nOiBBWEFjdGlvblNoZWV0Q29tcG9uZW50LFxuICAgIH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogQVhGb2N1c2FibGVDb21wb25lbnQsXG4gICAgICB1c2VFeGlzdGluZzogQVhBY3Rpb25TaGVldENvbXBvbmVudCxcbiAgICB9LFxuICBdLFxufSlcbmV4cG9ydCBjbGFzcyBBWEFjdGlvblNoZWV0Q29tcG9uZW50IGV4dGVuZHMgTVhCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLy8gZXNsaW50LWRpc2FibGUtbmV4dC1saW5lIEB0eXBlc2NyaXB0LWVzbGludC9uby1leHBsaWNpdC1hbnlcbiAgcHJvdGVjdGVkIF9zZWxlY3RlZFBvcnRhbDogUG9ydGFsPGFueT47XG5cbiAgcHJpdmF0ZSBfY29tcG9uZW50UmVmOiB1bmtub3duO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdChESUFMT0dfREFUQSlcbiAgICBwcm90ZWN0ZWQgZGF0YTogQVhBY3Rpb25TaGVldENvbmZpZyxcbiAgICBwcml2YXRlIGRpYWxvZ1JlZjogRGlhbG9nUmVmPEFYQ29tcG9uZW50Q2xvc2VFdmVudD4sXG4gICkge1xuICAgIHN1cGVyKCk7XG4gIH1cblxuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIGlmICh0aGlzLmRhdGEuY29udGVudCkge1xuICAgICAgaWYgKHRoaXMuZGF0YS5jb250ZW50IGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWRQb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5kYXRhLmNvbnRlbnQsIHRoaXMuZ2V0Vmlld0NvbnRhaW5lcigpLCB7XG4gICAgICAgICAgJGltcGxpY2l0OiB0aGlzLmRhdGEsXG4gICAgICAgICAgcmVmOiB0aGlzLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiB0aGlzLmRhdGEuY29udGVudCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aGlzLl9zZWxlY3RlZFBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwodGhpcy5kYXRhLmNvbnRlbnQpO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICBASG9zdExpc3RlbmVyKCdrZXlkb3duLmVzY2FwZScpXG4gIHByb3RlY3RlZCBvbktleWRvd25IYW5kbGVyKCkge1xuICAgIGNvbnN0IGZvY3VzZWRPckhhc0ZvY3VzZWQgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkubWF0Y2hlcygnOmZvY3VzLXdpdGhpbicpO1xuICAgIGlmICh0aGlzLmRhdGEuY2xvc2VCdXR0b24gJiYgZm9jdXNlZE9ySGFzRm9jdXNlZCkge1xuICAgICAgdGhpcy5jbG9zZShudWxsKTtcbiAgICB9XG4gIH1cblxuICBfaGFuZGxlQXR0Y2hlZChyZWY6IENka1BvcnRhbE91dGxldEF0dGFjaGVkUmVmKSB7XG4gICAgcmVmID0gcmVmIGFzIENvbXBvbmVudFJlZjxhbnk+O1xuICAgIGlmIChyZWYuaW5zdGFuY2UpIHtcbiAgICAgIHRoaXMuX2NvbXBvbmVudFJlZiA9IHJlZi5pbnN0YW5jZTtcbiAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5fY29tcG9uZW50UmVmLCB0aGlzLmRhdGEpO1xuICAgICAgT2JqZWN0LmFzc2lnbih0aGlzLl9jb21wb25lbnRSZWYsIHsgX2lzUG9wdXA6IHRydWUgfSk7XG4gICAgICBpZiAocmVmLmluc3RhbmNlLm9uQ2xvc2VkKSB7XG4gICAgICAgIHJlZi5pbnN0YW5jZS5vbkNsb3NlZC5zdWJzY3JpYmUoKGU6IEFYQ29tcG9uZW50Q2xvc2VFdmVudCkgPT4ge1xuICAgICAgICAgIHRoaXMuY2xvc2UoZSk7XG4gICAgICAgIH0pO1xuICAgICAgfVxuICAgIH1cbiAgfVxuXG4gIG9uSXRlbUNsaWNrKGl0ZW06IEFYQWN0aW9uU2hlZXRJdGVtKSB7XG4gICAgdGhpcy5jbG9zZShpdGVtKTtcbiAgICBpZiAoaXRlbT8ub25DbGljaykgaXRlbS5vbkNsaWNrKCk7XG4gIH1cblxuICBjbG9zZShlKSB7XG4gICAgdGhpcy5kaWFsb2dSZWYuY2xvc2Uoe1xuICAgICAgY29tcG9uZW50OiB0aGlzLl9jb21wb25lbnRSZWYsXG4gICAgICBodG1sRWxlbWVudDogdGhpcy5nZXRIb3N0RWxlbWVudCgpLFxuICAgICAgZGF0YTogZSxcbiAgICB9KTtcbiAgfVxufVxuIiwiQGlmIChkYXRhLmhlYWRlcikge1xuICA8YXgtaGVhZGVyPlxuICAgIDxheC1wcmVmaXg+XG4gICAgICA8YXgtdGl0bGU+e3sgZGF0YS50aXRsZSB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19PC9heC10aXRsZT5cblxuICAgICAgQGlmIChkYXRhLnN1YlRpdGxlKSB7XG4gICAgICAgIDxheC1zdWItdGl0bGU+XG4gICAgICAgICAge3sgZGF0YS5zdWJUaXRsZSB9fVxuICAgICAgICA8L2F4LXN1Yi10aXRsZT5cbiAgICAgIH1cbiAgICA8L2F4LXByZWZpeD5cbiAgICBAaWYgKGRhdGEuY2xvc2VCdXR0b24pIHtcbiAgICAgIDxheC1zdWZmaXg+XG4gICAgICAgIDxheC1jbG9zZS1idXR0b24+PC9heC1jbG9zZS1idXR0b24+XG4gICAgICA8L2F4LXN1ZmZpeD5cbiAgICB9XG4gIDwvYXgtaGVhZGVyPlxufVxuPG5nLXRlbXBsYXRlIFtjZGtQb3J0YWxPdXRsZXRdPVwiX3NlbGVjdGVkUG9ydGFsXCIgKGF0dGFjaGVkKT1cIl9oYW5kbGVBdHRjaGVkKCRldmVudClcIj48L25nLXRlbXBsYXRlPlxuPGRpdiBjbGFzcz1cImF4LWFjdGlvbi1zaGVldC1pdGVtc1wiPlxuICBAZm9yIChpdGVtIG9mIGRhdGEuaXRlbXM7IGxldCBpID0gJGluZGV4OyB0cmFjayBpKSB7XG4gICAgPGRpdlxuICAgICAgY2xhc3M9XCJheC1hY3Rpb24tc2hlZXQtaXRlbSBheC17eyBpdGVtLmNvbG9yIH19XCJcbiAgICAgIFtjbGFzcy5heC1zdGF0ZS1kaXNhYmxlZF09XCJpdGVtLmRpc2FibGVkXCJcbiAgICAgIFt0YWJpbmRleF09XCJpXCJcbiAgICAgIChjbGljayk9XCJvbkl0ZW1DbGljayhpdGVtKVwiXG4gICAgPlxuICAgICAgQGlmIChpdGVtLmljb24pIHtcbiAgICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLWljb25cIiBbY2xhc3NdPVwiaXRlbS5pY29uXCI+PC9zcGFuPlxuICAgICAgfVxuICAgICAgPHNwYW4gY2xhc3M9XCJpdGVtLXRleHRcIj57eyBpdGVtLnRleHQgfCB0cmFuc2xhdGUgfCBhc3luYyB9fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgfVxuPC9kaXY+XG4iXX0=
118
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uLXNoZWV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL2xpYnMvY29tcG9uZW50cy9hY3Rpb24tc2hlZXQvc3JjL2xpYi9hY3Rpb24tc2hlZXQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FjdGlvbi1zaGVldC9zcmMvbGliL2FjdGlvbi1zaGVldC5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQXlCLG9CQUFvQixFQUFFLGVBQWUsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlILE9BQU8sRUFBRSxXQUFXLEVBQUUsU0FBUyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDN0QsT0FBTyxFQUE4QixlQUFlLEVBQVUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDMUcsT0FBTyxFQUNMLHVCQUF1QixFQUN2QixTQUFTLEVBRVQsWUFBWSxFQUNaLE1BQU0sRUFFTixXQUFXLEVBQ1gsaUJBQWlCLEdBQ2xCLE1BQU0sZUFBZSxDQUFDOzs7Ozs7O0FBR3ZCOzs7O0dBSUc7QUFrQkgsTUFBTSxPQUFPLHNCQUF1QixTQUFRLGVBQWU7SUFhekQ7O09BRUc7SUFDSCxZQUVZLElBQXlCLEVBQzNCLFNBQTJDO1FBRW5ELEtBQUssRUFBRSxDQUFDO1FBSEUsU0FBSSxHQUFKLElBQUksQ0FBcUI7UUFDM0IsY0FBUyxHQUFULFNBQVMsQ0FBa0M7SUFHckQsQ0FBQztJQUVEOztPQUVHO0lBQ00sUUFBUTtRQUNmLEtBQUssQ0FBQyxRQUFRLEVBQUUsQ0FBQztRQUNqQixJQUFJLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUM7WUFDdEIsSUFBSSxJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sWUFBWSxXQUFXLEVBQUUsQ0FBQztnQkFDN0MsSUFBSSxDQUFDLGVBQWUsR0FBRyxJQUFJ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QUM3QixXQUFXLHdCQUF3Qjt5QkFDcEM7cUJBQ0Y7OzBCQW1CRSxNQUFNOzJCQUFDLFdBQVc7aUVBOEJYLGdCQUFnQjtzQkFEekIsWUFBWTt1QkFBQyxnQkFBZ0IiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENsb3NiYWxlQ29tcG9uZW50LCBBWENvbXBvbmVudENsb3NlRXZlbnQsIEFYRm9jdXNhYmxlQ29tcG9uZW50LCBNWEJhc2VDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IERJQUxPR19EQVRBLCBEaWFsb2dSZWYgfSBmcm9tICdAYW5ndWxhci9jZGsvZGlhbG9nJztcbmltcG9ydCB7IENka1BvcnRhbE91dGxldEF0dGFjaGVkUmVmLCBDb21wb25lbnRQb3J0YWwsIFBvcnRhbCwgVGVtcGxhdGVQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgSG9zdExpc3RlbmVyLFxuICBJbmplY3QsXG4gIE9uSW5pdCxcbiAgVGVtcGxhdGVSZWYsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYQWN0aW9uU2hlZXRDb25maWcsIEFYQWN0aW9uU2hlZXRJdGVtIH0gZnJvbSAnLi9hY3Rpb24tc2hlZXQuY2xhc3MnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IGZvciBkaXNwbGF5aW5nIGFuIGFjdGlvbiBzaGVldCwgd2hpY2ggaXMgYSBtZW51IHRoYXQgc2xpZGVzIHVwIGZyb20gdGhlIGJvdHRvbSBvZiB0aGUgc2NyZWVuLlxuICpcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWFjdGlvbi1zaGVldCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hY3Rpb24tc2hlZXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hY3Rpb24tc2hlZXQuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByb3ZpZGVyczogW1xuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYQ2xvc2JhbGVDb21wb25lbnQsXG4gICAgICB1c2VFeGlzdGluZzogQVhBY3Rpb25TaGVldENvbXBvbmVudCxcbiAgICB9LFxuICAgIHtcbiAgICAgIHByb3ZpZGU6IEFYRm9jdXNhYmxlQ29tcG9uZW50LFxuICAgICAgdXNlRXhpc3Rpbmc6IEFYQWN0aW9uU2hlZXRDb21wb25lbnQsXG4gICAgfSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhBY3Rpb25TaGVldENvbXBvbmVudCBleHRlbmRzIE1YQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8vIGVzbGludC1kaXNhYmxlLW5leHQtbGluZSBAdHlwZXNjcmlwdC1lc2xpbnQvbm8tZXhwbGljaXQtYW55XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgX3NlbGVjdGVkUG9ydGFsOiBQb3J0YWw8YW55PjtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgX2NvbXBvbmVudFJlZjogdW5rbm93bjtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKFxuICAgIEBJbmplY3QoRElBTE9HX0RBVEEpXG4gICAgcHJvdGVjdGVkIGRhdGE6IEFYQWN0aW9uU2hlZXRDb25maWcsXG4gICAgcHJpdmF0ZSBkaWFsb2dSZWY6IERpYWxvZ1JlZjxBWENvbXBvbmVudENsb3NlRXZlbnQ+LFxuICApIHtcbiAgICBzdXBlcigpO1xuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBvdmVycmlkZSBuZ09uSW5pdCgpOiB2b2lkIHtcbiAgICBzdXBlci5uZ09uSW5pdCgpO1xuICAgIGlmICh0aGlzLmRhdGEuY29udGVudCkge1xuICAgICAgaWYgKHRoaXMuZGF0YS5jb250ZW50IGluc3RhbmNlb2YgVGVtcGxhdGVSZWYpIHtcbiAgICAgICAgdGhpcy5fc2VsZWN0ZWRQb3J0YWwgPSBuZXcgVGVtcGxhdGVQb3J0YWwodGhpcy5kYXRhLmNvbnRlbnQsIHRoaXMuZ2V0Vmlld0NvbnRhaW5lcigpLCB7XG4gICAgICAgICAgJGltcGxpY2l0OiB0aGlzLmRhdGEsXG4gICAgICAgICAgcmVmOiB0aGlzLFxuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiB0aGlzLmRhdGEuY29udGVudCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICB0aGlzLl9zZWxlY3RlZFBvcnRhbCA9IG5ldyBDb21wb25lbnRQb3J0YWwodGhpcy5kYXRhLmNvbnRlbnQpO1xuICAgICAgICB0aGlzLmNkci5tYXJrRm9yQ2hlY2soKTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIEBIb3N0TGlzdGVuZXIoJ2tleWRvd24uZXNjYXBlJylcbiAgcHJvdGVjdGVkIG9uS2V5ZG93bkhhbmRsZXIoKSB7XG4gICAgY29uc3QgZm9jdXNlZE9ySGFzRm9jdXNlZCA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5tYXRjaGVzKCc6Zm9jdXMtd2l0aGluJyk7XG4gICAgaWYgKHRoaXMuZGF0YS5jbG9zZUJ1dHRvbiAmJiBmb2N1c2VkT3JIYXNGb2N1c2VkKSB7XG4gICAgICB0aGlzLmNsb3NlKG51bGwpO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgX2hhbmRsZUF0dGNoZWQocmVmOiBDZGtQb3J0YWxPdXRsZXRBdHRhY2hlZFJlZikge1xuICAgIHJlZiA9IHJlZiBhcyBDb21wb25lbnRSZWY8YW55PjtcbiAgICBpZiAocmVmLmluc3RhbmNlKSB7XG4gICAgICB0aGlzLl9jb21wb25lbnRSZWYgPSByZWYuaW5zdGFuY2U7XG4gICAgICBPYmplY3QuYXNzaWduKHRoaXMuX2NvbXBvbmVudFJlZiwgdGhpcy5kYXRhKTtcbiAgICAgIE9iamVjdC5hc3NpZ24odGhpcy5fY29tcG9uZW50UmVmLCB7IF9pc1BvcHVwOiB0cnVlIH0pO1xuICAgICAgaWYgKHJlZi5pbnN0YW5jZS5vbkNsb3NlZCkge1xuICAgICAgICByZWYuaW5zdGFuY2Uub25DbG9zZWQuc3Vic2NyaWJlKChlOiBBWENvbXBvbmVudENsb3NlRXZlbnQpID0+IHtcbiAgICAgICAgICB0aGlzLmNsb3NlKGUpO1xuICAgICAgICB9KTtcbiAgICAgIH1cbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIG9uSXRlbUNsaWNrKGl0ZW06IEFYQWN0aW9uU2hlZXRJdGVtKSB7XG4gICAgdGhpcy5jbG9zZShpdGVtKTtcbiAgICBpZiAoaXRlbT8ub25DbGljaykgaXRlbS5vbkNsaWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGNsb3NlKGUpIHtcbiAgICB0aGlzLmRpYWxvZ1JlZi5jbG9zZSh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMuX2NvbXBvbmVudFJlZixcbiAgICAgIGh0bWxFbGVtZW50OiB0aGlzLmdldEhvc3RFbGVtZW50KCksXG4gICAgICBkYXRhOiBlLFxuICAgIH0pO1xuICB9XG59XG4iLCJAaWYgKGRhdGEuaGVhZGVyKSB7XG4gIDxheC1oZWFkZXI+XG4gICAgPGF4LXByZWZpeD5cbiAgICAgIDxheC10aXRsZT57eyBkYXRhLnRpdGxlIHwgdHJhbnNsYXRlIHwgYXN5bmMgfX08L2F4LXRpdGxlPlxuXG4gICAgICBAaWYgKGRhdGEuc3ViVGl0bGUpIHtcbiAgICAgICAgPGF4LXN1Yi10aXRsZT5cbiAgICAgICAgICB7eyBkYXRhLnN1YlRpdGxlIH19XG4gICAgICAgIDwvYXgtc3ViLXRpdGxlPlxuICAgICAgfVxuICAgIDwvYXgtcHJlZml4PlxuICAgIEBpZiAoZGF0YS5jbG9zZUJ1dHRvbikge1xuICAgICAgPGF4LXN1ZmZpeD5cbiAgICAgICAgPGF4LWNsb3NlLWJ1dHRvbj48L2F4LWNsb3NlLWJ1dHRvbj5cbiAgICAgIDwvYXgtc3VmZml4PlxuICAgIH1cbiAgPC9heC1oZWFkZXI+XG59XG48bmctdGVtcGxhdGUgW2Nka1BvcnRhbE91dGxldF09XCJfc2VsZWN0ZWRQb3J0YWxcIiAoYXR0YWNoZWQpPVwiX2hhbmRsZUF0dGNoZWQoJGV2ZW50KVwiPjwvbmctdGVtcGxhdGU+XG48ZGl2IGNsYXNzPVwiYXgtYWN0aW9uLXNoZWV0LWl0ZW1zXCI+XG4gIEBmb3IgKGl0ZW0gb2YgZGF0YS5pdGVtczsgbGV0IGkgPSAkaW5kZXg7IHRyYWNrIGkpIHtcbiAgICA8ZGl2XG4gICAgICBjbGFzcz1cImF4LWFjdGlvbi1zaGVldC1pdGVtIGF4LXt7IGl0ZW0uY29sb3IgfX1cIlxuICAgICAgW2NsYXNzLmF4LXN0YXRlLWRpc2FibGVkXT1cIml0ZW0uZGlzYWJsZWRcIlxuICAgICAgW3RhYmluZGV4XT1cImlcIlxuICAgICAgKGNsaWNrKT1cIm9uSXRlbUNsaWNrKGl0ZW0pXCJcbiAgICA+XG4gICAgICBAaWYgKGl0ZW0uaWNvbikge1xuICAgICAgICA8c3BhbiBjbGFzcz1cIml0ZW0taWNvblwiIFtjbGFzc109XCJpdGVtLmljb25cIj48L3NwYW4+XG4gICAgICB9XG4gICAgICA8c3BhbiBjbGFzcz1cIml0ZW0tdGV4dFwiPnt7IGl0ZW0udGV4dCB8IHRyYW5zbGF0ZSB8IGFzeW5jIH19PC9zcGFuPlxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==
@@ -4,21 +4,55 @@ import { afterNextRender, ChangeDetectionStrategy, Component, contentChild, effe
4
4
  import * as i0 from "@angular/core";
5
5
  import * as i1 from "@angular/common";
6
6
  /**
7
- * Regular description
7
+ * The Alert component is used to display notifications or alerts to users.
8
8
  *
9
9
  * @category Components
10
10
  */
11
11
  export class AXAlertComponent extends MXColorComponent {
12
+ /**
13
+ * @ignore
14
+ */
12
15
  constructor() {
13
16
  super();
17
+ /**
18
+ * @ignore
19
+ */
14
20
  this.axIcon = contentChild('ax-icon');
21
+ /**
22
+ * @ignore
23
+ */
15
24
  this.axTitle = contentChild('ax-title');
25
+ /**
26
+ * @ignore
27
+ */
16
28
  this.axContent = contentChild('ax-content');
29
+ /**
30
+ * @ignore
31
+ */
17
32
  this.axFooter = contentChild('ax-footer');
33
+ /**
34
+ * @ignore
35
+ */
18
36
  this.showInline = signal(false);
37
+ /**
38
+ * Emits an event when the alert component is closed.
39
+ *
40
+ * @event
41
+ */
19
42
  this.onClosed = output();
43
+ /**
44
+ * @ignore
45
+ */
20
46
  this.customIcon = signal('');
47
+ /**
48
+ * Sets the duration (in milliseconds) after which the alert will automatically close.
49
+ *
50
+ * @defaultValue 0
51
+ */
21
52
  this.timeOut = model(0);
53
+ /**
54
+ * @ignore
55
+ */
22
56
  //TODO: Check Console for effect() can only be used within an injection context such as a constructor, a factory function, a field initializer, or a function used with `runInInjectionContext`
23
57
  this.timeOutEffect = () => {
24
58
  effect(() => {
@@ -35,14 +69,23 @@ export class AXAlertComponent extends MXColorComponent {
35
69
  });
36
70
  this.timeOutEffect();
37
71
  }
72
+ /**
73
+ * @ignore
74
+ */
38
75
  _setLayout() {
39
76
  this._setIcon();
40
77
  this.showInline.set(this.axContent() == null && this.axFooter() == null);
41
78
  this.cdr.markForCheck();
42
79
  }
80
+ /**
81
+ * @ignore
82
+ */
43
83
  _handleOnOptionChanged() {
44
84
  this._setIcon();
45
85
  }
86
+ /**
87
+ * @ignore
88
+ */
46
89
  _setIcon() {
47
90
  if (!this.axIcon() || this.axIcon().getHostElement().firstElementChild)
48
91
  return;
@@ -65,7 +108,9 @@ export class AXAlertComponent extends MXColorComponent {
65
108
  }
66
109
  }
67
110
  /**
68
- * Remove the alert from the container
111
+ * Removes the alert from the container after a transition effect.
112
+ *
113
+ * @ignore
69
114
  */
70
115
  close() {
71
116
  const host = this.getHostElement();
@@ -96,4 +141,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.2", ngImpor
96
141
  type: HostBinding,
97
142
  args: ['class']
98
143
  }] } });
99
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FsZXJ0L3NyYy9saWIvYWxlcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FsZXJ0L3NyYy9saWIvYWxlcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFXLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFM0YsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWxELE9BQU8sRUFDTCxlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7OztBQUV2Qjs7OztHQUlHO0FBV0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQTZCcEQ7UUFDRSxLQUFLLEVBQUUsQ0FBQztRQTdCVixXQUFNLEdBQUcsWUFBWSxDQUEyQixTQUFTLENBQUMsQ0FBQztRQUUzRCxZQUFPLEdBQUcsWUFBWSxDQUE4QixVQUFVLENBQUMsQ0FBQztRQUVoRSxjQUFTLEdBQUcsWUFBWSxDQUE4QixZQUFZLENBQUMsQ0FBQztRQUVwRSxhQUFRLEdBQUcsWUFBWSxDQUE4QixXQUFXLENBQUMsQ0FBQztRQUV4RCxlQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJDLGFBQVEsR0FBRyxNQUFNLEVBQVcsQ0FBQztRQUVyQixlQUFVLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBSWhDLFlBQU8sR0FBRyxLQUFLLENBQVMsQ0FBQyxDQUFDLENBQUM7UUFFM0IsZ01BQWdNO1FBQ2hNLGtCQUFhLEdBQUcsR0FB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QUF1QixJQUFJLENBQUMsS0FBSyxRQUFRLENBQUM7SUFDbkQsQ0FBQzs4R0E5RlUsZ0JBQWdCO2tHQUFoQixnQkFBZ0Isc2JBRmhCLENBQUMsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxFQUFFLGdCQUFnQixFQUFFLENBQUMsd2RDOUI5RSxnc0RBbURBOzsyRkRuQmEsZ0JBQWdCO2tCQVY1QixTQUFTOytCQUNFLFVBQVUsVUFHWixDQUFDLE9BQU8sQ0FBQyxXQUNSLENBQUMsYUFBYSxDQUFDLG1CQUNQLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksYUFDMUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLGtCQUFrQixFQUFFLENBQUM7d0RBOEZ4RSxXQUFXO3NCQURkLFdBQVc7dUJBQUMsT0FBTyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQ2xvc2JhbGVDb21wb25lbnQsIEFYRXZlbnQsIE1YQ29sb3JDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvY29tbW9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudCwgQVhEZWNvcmF0b3JJY29uQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgaXNCcm93c2VyIH0gZnJvbSAnQGFjb3JleC9jb3JlL3BsYXRmb3JtJztcblxuaW1wb3J0IHtcbiAgYWZ0ZXJOZXh0UmVuZGVyLFxuICBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSxcbiAgQ29tcG9uZW50LFxuICBjb250ZW50Q2hpbGQsXG4gIGVmZmVjdCxcbiAgSG9zdEJpbmRpbmcsXG4gIG1vZGVsLFxuICBvdXRwdXQsXG4gIHNpZ25hbCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG59IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG4vKipcbiAqIFJlZ3VsYXIgZGVzY3JpcHRpb25cbiAqXG4gKiBAY2F0ZWdvcnkgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1hbGVydCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9hbGVydC5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2FsZXJ0LmNvbXBvbmVudC5zY3NzJ10sXG4gIGlucHV0czogWydjb2xvciddLFxuICBvdXRwdXRzOiBbJ2NvbG9yQ2hhbmdlJ10sXG4gIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYQ2xvc2JhbGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWEFsZXJ0Q29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBBWEFsZXJ0Q29tcG9uZW50IGV4dGVuZHMgTVhDb2xvckNvbXBvbmVudCB7XG4gIGF4SWNvbiA9IGNvbnRlbnRDaGlsZDxBWERlY29yYXRvckljb25Db21wb25lbnQ+KCdheC1pY29uJyk7XG5cbiAgYXhUaXRsZSA9IGNvbnRlbnRDaGlsZDxBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQ+KCdheC10aXRsZScpO1xuXG4gIGF4Q29udGVudCA9IGNvbnRlbnRDaGlsZDxBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQ+KCdheC1jb250ZW50Jyk7XG5cbiAgYXhGb290ZXIgPSBjb250ZW50Q2hpbGQ8QVhEZWNvcmF0b3JHZW5lcmljQ29tcG9uZW50PignYXgtZm9vdGVyJyk7XG5cbiAgcHJvdGVjdGVkIHNob3dJbmxpbmUgPSBzaWduYWwoZmFsc2UpO1xuXG4gIG9uQ2xvc2VkID0gb3V0cHV0PEFYRXZlbnQ+KCk7XG5cbiAgcHJpdmF0ZSBjdXN0b21JY29uID0gc2lnbmFsKCcnKTtcblxuICBwcml2YXRlIF90aW1lT3V0UmVmOiBudW1iZXI7XG5cbiAgdGltZU91dCA9IG1vZGVsPG51bWJlcj4oMCk7XG5cbiAgLy9UT0RPOiBDaGVjayBDb25zb2xlIGZvciAgZWZmZWN0KCkgY2FuIG9ubHkgYmUgdXNlZCB3aXRoaW4gYW4gaW5qZWN0aW9uIGNvbnRleHQgc3VjaCBhcyBhIGNvbnN0cnVjdG9yLCBhIGZhY3RvcnkgZnVuY3Rpb24sIGEgZmllbGQgaW5pdGlhbGl6ZXIsIG9yIGEgZnVuY3Rpb24gdXNlZCB3aXRoIGBydW5JbkluamVjdGlvbkNvbnRleHRgXG4gIHRpbWVPdXRFZmZlY3QgPSAoKSA9PiB7XG4gICAgZWZmZWN0KCgpID0+IHtcbiAgICAgIGNsZWFyVGltZW91dCh0aGlzLl90aW1lT3V0UmVmKTtcbiAgICAgIHRoaXMuX3RpbWVPdXRSZWYgPSB3aW5kb3cuc2V0VGltZW91dCgoKSA9PiB7XG4gICAgICAgIHRoaXMuY2xvc2UoKTtcbiAgICAgIH0sIHRoaXMudGltZU91dCgpKTtcbiAgICB9KTtcbiAgfTtcblxuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgICB0aGlzLm9uT3B0aW9uQ2hhbmdlZC5zdWJzY3JpYmUodGhpcy5faGFuZGxlT25PcHRpb25DaGFuZ2VkLmJpbmQodGhpcykpO1xuICAgICAgdGhpcy5fc2V0TGF5b3V0KCk7XG4gICAgICB0aGlzLmN1c3RvbUljb24uc2V0KHRoaXMuYXhJY29uKCk/Lmljb24pO1xuICAgIH0pO1xuICAgIHRoaXMudGltZU91dEVmZmVjdCgpO1xuICB9XG5cbiAgcHJpdmF0ZSBfc2V0TGF5b3V0KCkge1xuICAgIHRoaXMuX3NldEljb24oKTtcbiAgICB0aGlzLnNob3dJbmxpbmUuc2V0KHRoaXMuYXhDb250ZW50KCkgPT0gbnVsbCAmJiB0aGlzLmF4Rm9vdGVyKCkgPT0gbnVsbCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgX2hhbmRsZU9uT3B0aW9uQ2hhbmdlZCgpIHtcbiAgICB0aGlzLl9zZXRJY29uKCk7XG4gIH1cblxuICBwcml2YXRlIF9zZXRJY29uKCkge1xuICAgIGlmICghdGhpcy5heEljb24oKSB8fCB0aGlzLmF4SWNvbigpLmdldEhvc3RFbGVtZW50KCkuZmlyc3RFbGVtZW50Q2hpbGQpIHJldHVybjtcblxuICAgIHN3aXRjaCAodGhpcy5jb2xvcikge1xuICAgICAgY2FzZSAnc3VjY2Vzcyc6XG4gICAgICAgIHRoaXMuYXhJY29uKCkuaWNvbiA9ICdheC1pY29uIGF4LWljb24tY2hlY2stY2lyY2xlJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdkYW5nZXInOlxuICAgICAgICB0aGlzLmF4SWNvbigpLmljb24gPSAnYXgtaWNvbiBheC1pY29uLWVycm9yJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd3YXJuaW5nJzpcbiAgICAgICAgdGhpcy5heEljb24oKS5pY29uID0gJ2F4LWljb24gYXgtaWNvbi13YXJuaW5nJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdpbmZvJzpcbiAgICAgICAgdGhpcy5heEljb24oKS5pY29uID0gJ2F4LWljb24gYXgtaWNvbi1pbmZvJztcbiAgICAgICAgYnJlYWs7XG4gICAgICBkZWZhdWx0OlxuICAgICAgICB0aGlzLmF4SWNvbigpLmljb24gPSB0aGlzLmN1c3RvbUljb24oKSB8fCAnYXgtaWNvbiBheC1pY29uLWNoZWNrLWNpcmNsZSc7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxuXG4gIC8qKlxuICAgKiAgUmVtb3ZlIHRoZSBhbGVydCBmcm9tIHRoZSBjb250YWluZXJcbiAgICovXG4gIGNsb3NlKCk6IHZvaWQge1xuICAgIGNvbnN0IGhvc3QgPSB0aGlzLmdldEhvc3RFbGVtZW50KCk7XG4gICAgY29uc3QgZnVuYyA9ICgpID0+IHtcbiAgICAgIGlmIChpc0Jyb3dzZXIoKSkge1xuICAgICAgICBob3N0LnBhcmVudEVsZW1lbnQ/LnJlbW92ZUNoaWxkKGhvc3QpO1xuICAgICAgICB0aGlzLm9uQ2xvc2VkLmVtaXQoe1xuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgfSk7XG4gICAgICAgIGhvc3QucmVtb3ZlRXZlbnRMaXN0ZW5lcigndHJhbnNpdGlvbmVuZCcsIGZ1bmMpO1xuICAgICAgfVxuICAgIH07XG4gICAgaG9zdC5hZGRFdmVudExpc3RlbmVyKCd0cmFuc2l0aW9uZW5kJywgZnVuYyk7XG4gIH1cblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgX19ob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYGF4LWFsZXJ0IGF4LW5vbmUgYXgtJHt0aGlzLmNvbG9yfS1zb2xpZGA7XG4gIH1cbn1cbiIsIkBpZiAoc2hvd0lubGluZSgpKSB7XG4gIDxkaXYgY2xhc3M9XCJheC1hbGVydC1pbmxpbmVcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtaWNvbiBheC1pY29uLXNvbGlkXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtdGl0bGVcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwidGl0bGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtYnV0dG9uc1wiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJidXR0b25zXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjbG9zZUJ1dHRvblwiPjwvbmctY29udGFpbmVyPlxuICA8L2Rpdj5cbn0gQGVsc2Uge1xuICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtYmxvY2tcIj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtaWNvbiBheC1pY29uLXNvbGlkXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImljb25cIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtY29udGVudFwiPlxuICAgICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LXRpdGxlXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwidGl0bGVcIj48L25nLWNvbnRhaW5lcj5cbiAgICAgIDwvZGl2PlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjb250ZW50XCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cImZvb3RlclwiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxkaXY+PG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJjbG9zZUJ1dHRvblwiPjwvbmctY29udGFpbmVyPjwvZGl2PlxuICA8L2Rpdj5cbn1cblxuQGlmICh0aW1lT3V0KCkpIHtcbiAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LXByb2dyZXNzXCIgW3N0eWxlLmFuaW1hdGlvbi1kdXJhdGlvbi5tc109XCJ0aW1lT3V0KClcIj48L2Rpdj5cbn1cblxuPG5nLXRlbXBsYXRlICNidXR0b25zPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1idXR0b25cIj4gPC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjY2xvc2VCdXR0b24+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWNsb3NlLWJ1dHRvblwiPiA8L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlICN0aXRsZT5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtdGl0bGVcIj4gPC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjaWNvbj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtaWNvblwiPiA8L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlICNjb250ZW50PlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1jb250ZW50XCI+IDwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2Zvb3Rlcj5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtZm9vdGVyXCI+IDwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG4iXX0=
144
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWxlcnQuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FsZXJ0L3NyYy9saWIvYWxlcnQuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9jb21wb25lbnRzL2FsZXJ0L3NyYy9saWIvYWxlcnQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLG1CQUFtQixFQUFXLGdCQUFnQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFFM0YsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRWxELE9BQU8sRUFDTCxlQUFlLEVBQ2YsdUJBQXVCLEVBQ3ZCLFNBQVMsRUFDVCxZQUFZLEVBQ1osTUFBTSxFQUNOLFdBQVcsRUFDWCxLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sRUFDTixpQkFBaUIsR0FDbEIsTUFBTSxlQUFlLENBQUM7OztBQUV2Qjs7OztHQUlHO0FBV0gsTUFBTSxPQUFPLGdCQUFpQixTQUFRLGdCQUFnQjtJQTREcEQ7O09BRUc7SUFDSDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBL0RWOztXQUVHO1FBQ0gsV0FBTSxHQUFHLFlBQVksQ0FBMkIsU0FBUyxDQUFDLENBQUM7UUFDM0Q7O1dBRUc7UUFDSCxZQUFPLEdBQUcsWUFBWSxDQUE4QixVQUFVLENBQUMsQ0FBQztRQUNoRTs7V0FFRztRQUNILGNBQVMsR0FBRyxZQUFZLENBQThCLFlBQVksQ0FBQyxDQUFDO1FBQ3BFOztXQUVHO1FBQ0gsYUFBUSxHQUFHLFlBQVksQ0FBOEIsV0FBVyxDQUFDLENBQUM7UUFFbEU7O1dBRUc7UUFDTyxlQUFVLEdBQUcsTUFBTSxDQUFDLEtBQUssQ0FBQyxDQUFDO1FBRXJDOzs7O1dBSUc7UUFDSCxhQUFRLEdBQUcsTUFBTSxFQUFXLENBQUM7UUFFN0I7O1dBRUc7UUFDSyxlQUFVLEdBQUcsTUFBTSxDQUFD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ZSxFQUFFLElBQUksQ0FBQyxDQUFDO1lBQ2xELENBQUM7UUFDSCxDQUFDLENBQUM7UUFDRixJQUFJLENBQUMsZ0JBQWdCLENBQUMsZUFBZSxFQUFFLElBQUksQ0FBQyxDQUFDO0lBQy9DLENBQUM7SUFFRDs7T0FFRztJQUNILElBQ0ksV0FBVztRQUNiLE9BQU8sdUJBQXVCLElBQUksQ0FBQyxLQUFLLFFBQVEsQ0FBQztJQUNuRCxDQUFDOzhHQTNJVSxnQkFBZ0I7a0dBQWhCLGdCQUFnQixzYkFGaEIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxXQUFXLEVBQUUsZ0JBQWdCLEVBQUUsQ0FBQyx3ZEM5QjlFLGdzREFtREE7OzJGRG5CYSxnQkFBZ0I7a0JBVjVCLFNBQVM7K0JBQ0UsVUFBVSxVQUdaLENBQUMsT0FBTyxDQUFDLFdBQ1IsQ0FBQyxhQUFhLENBQUMsbUJBQ1AsdUJBQXVCLENBQUMsTUFBTSxpQkFDaEMsaUJBQWlCLENBQUMsSUFBSSxhQUMxQixDQUFDLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsa0JBQWtCLEVBQUUsQ0FBQzt3REEySXhFLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhDbG9zYmFsZUNvbXBvbmVudCwgQVhFdmVudCwgTVhDb2xvckNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9jb21tb24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JHZW5lcmljQ29tcG9uZW50LCBBWERlY29yYXRvckljb25Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBpc0Jyb3dzZXIgfSBmcm9tICdAYWNvcmV4L2NvcmUvcGxhdGZvcm0nO1xuXG5pbXBvcnQge1xuICBhZnRlck5leHRSZW5kZXIsXG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIGNvbnRlbnRDaGlsZCxcbiAgZWZmZWN0LFxuICBIb3N0QmluZGluZyxcbiAgbW9kZWwsXG4gIG91dHB1dCxcbiAgc2lnbmFsLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbn0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogVGhlIEFsZXJ0IGNvbXBvbmVudCBpcyB1c2VkIHRvIGRpc3BsYXkgbm90aWZpY2F0aW9ucyBvciBhbGVydHMgdG8gdXNlcnMuXG4gKlxuICogQGNhdGVnb3J5IENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtYWxlcnQnLFxuICB0ZW1wbGF0ZVVybDogJy4vYWxlcnQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9hbGVydC5jb21wb25lbnQuc2NzcyddLFxuICBpbnB1dHM6IFsnY29sb3InXSxcbiAgb3V0cHV0czogWydjb2xvckNoYW5nZSddLFxuICBjaGFuZ2VEZXRlY3Rpb246IENoYW5nZURldGVjdGlvblN0cmF0ZWd5Lk9uUHVzaCxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBBWENsb3NiYWxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhBbGVydENvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgQVhBbGVydENvbXBvbmVudCBleHRlbmRzIE1YQ29sb3JDb21wb25lbnQge1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGF4SWNvbiA9IGNvbnRlbnRDaGlsZDxBWERlY29yYXRvckljb25Db21wb25lbnQ+KCdheC1pY29uJyk7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgYXhUaXRsZSA9IGNvbnRlbnRDaGlsZDxBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQ+KCdheC10aXRsZScpO1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGF4Q29udGVudCA9IGNvbnRlbnRDaGlsZDxBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQ+KCdheC1jb250ZW50Jyk7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgYXhGb290ZXIgPSBjb250ZW50Q2hpbGQ8QVhEZWNvcmF0b3JHZW5lcmljQ29tcG9uZW50PignYXgtZm9vdGVyJyk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgc2hvd0lubGluZSA9IHNpZ25hbChmYWxzZSk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW4gdGhlIGFsZXJ0IGNvbXBvbmVudCBpcyBjbG9zZWQuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgb25DbG9zZWQgPSBvdXRwdXQ8QVhFdmVudD4oKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgY3VzdG9tSWNvbiA9IHNpZ25hbCgnJyk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcml2YXRlIF90aW1lT3V0UmVmOiBudW1iZXI7XG5cbiAgLyoqXG4gICAqIFNldHMgdGhlIGR1cmF0aW9uIChpbiBtaWxsaXNlY29uZHMpIGFmdGVyIHdoaWNoIHRoZSBhbGVydCB3aWxsIGF1dG9tYXRpY2FsbHkgY2xvc2UuXG4gICAqXG4gICAqIEBkZWZhdWx0VmFsdWUgMFxuICAgKi9cbiAgdGltZU91dCA9IG1vZGVsPG51bWJlcj4oMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICAvL1RPRE86IENoZWNrIENvbnNvbGUgZm9yICBlZmZlY3QoKSBjYW4gb25seSBiZSB1c2VkIHdpdGhpbiBhbiBpbmplY3Rpb24gY29udGV4dCBzdWNoIGFzIGEgY29uc3RydWN0b3IsIGEgZmFjdG9yeSBmdW5jdGlvbiwgYSBmaWVsZCBpbml0aWFsaXplciwgb3IgYSBmdW5jdGlvbiB1c2VkIHdpdGggYHJ1bkluSW5qZWN0aW9uQ29udGV4dGBcbiAgdGltZU91dEVmZmVjdCA9ICgpID0+IHtcbiAgICBlZmZlY3QoKCkgPT4ge1xuICAgICAgY2xlYXJUaW1lb3V0KHRoaXMuX3RpbWVPdXRSZWYpO1xuICAgICAgdGhpcy5fdGltZU91dFJlZiA9IHdpbmRvdy5zZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgdGhpcy5jbG9zZSgpO1xuICAgICAgfSwgdGhpcy50aW1lT3V0KCkpO1xuICAgIH0pO1xuICB9O1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgY29uc3RydWN0b3IoKSB7XG4gICAgc3VwZXIoKTtcbiAgICBhZnRlck5leHRSZW5kZXIoKCkgPT4ge1xuICAgICAgdGhpcy5vbk9wdGlvbkNoYW5nZWQuc3Vic2NyaWJlKHRoaXMuX2hhbmRsZU9uT3B0aW9uQ2hhbmdlZC5iaW5kKHRoaXMpKTtcbiAgICAgIHRoaXMuX3NldExheW91dCgpO1xuICAgICAgdGhpcy5jdXN0b21JY29uLnNldCh0aGlzLmF4SWNvbigpPy5pY29uKTtcbiAgICB9KTtcbiAgICB0aGlzLnRpbWVPdXRFZmZlY3QoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0TGF5b3V0KCkge1xuICAgIHRoaXMuX3NldEljb24oKTtcbiAgICB0aGlzLnNob3dJbmxpbmUuc2V0KHRoaXMuYXhDb250ZW50KCkgPT0gbnVsbCAmJiB0aGlzLmF4Rm9vdGVyKCkgPT0gbnVsbCk7XG4gICAgdGhpcy5jZHIubWFya0ZvckNoZWNrKCk7XG4gIH1cblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBfaGFuZGxlT25PcHRpb25DaGFuZ2VkKCkge1xuICAgIHRoaXMuX3NldEljb24oKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJpdmF0ZSBfc2V0SWNvbigpIHtcbiAgICBpZiAoIXRoaXMuYXhJY29uKCkgfHwgdGhpcy5heEljb24oKS5nZXRIb3N0RWxlbWVudCgpLmZpcnN0RWxlbWVudENoaWxkKSByZXR1cm47XG5cbiAgICBzd2l0Y2ggKHRoaXMuY29sb3IpIHtcbiAgICAgIGNhc2UgJ3N1Y2Nlc3MnOlxuICAgICAgICB0aGlzLmF4SWNvbigpLmljb24gPSAnYXgtaWNvbiBheC1pY29uLWNoZWNrLWNpcmNsZSc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnZGFuZ2VyJzpcbiAgICAgICAgdGhpcy5heEljb24oKS5pY29uID0gJ2F4LWljb24gYXgtaWNvbi1lcnJvcic7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnd2FybmluZyc6XG4gICAgICAgIHRoaXMuYXhJY29uKCkuaWNvbiA9ICdheC1pY29uIGF4LWljb24td2FybmluZyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgY2FzZSAnaW5mbyc6XG4gICAgICAgIHRoaXMuYXhJY29uKCkuaWNvbiA9ICdheC1pY29uIGF4LWljb24taW5mbyc7XG4gICAgICAgIGJyZWFrO1xuICAgICAgZGVmYXVsdDpcbiAgICAgICAgdGhpcy5heEljb24oKS5pY29uID0gdGhpcy5jdXN0b21JY29uKCkgfHwgJ2F4LWljb24gYXgtaWNvbi1jaGVjay1jaXJjbGUnO1xuICAgICAgICBicmVhaztcbiAgICB9XG4gIH1cblxuICAvKipcbiAgICogUmVtb3ZlcyB0aGUgYWxlcnQgZnJvbSB0aGUgY29udGFpbmVyIGFmdGVyIGEgdHJhbnNpdGlvbiBlZmZlY3QuXG4gICAqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBjbG9zZSgpOiB2b2lkIHtcbiAgICBjb25zdCBob3N0ID0gdGhpcy5nZXRIb3N0RWxlbWVudCgpO1xuICAgIGNvbnN0IGZ1bmMgPSAoKSA9PiB7XG4gICAgICBpZiAoaXNCcm93c2VyKCkpIHtcbiAgICAgICAgaG9zdC5wYXJlbnRFbGVtZW50Py5yZW1vdmVDaGlsZChob3N0KTtcbiAgICAgICAgdGhpcy5vbkNsb3NlZC5lbWl0KHtcbiAgICAgICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICAgIH0pO1xuICAgICAgICBob3N0LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RyYW5zaXRpb25lbmQnLCBmdW5jKTtcbiAgICAgIH1cbiAgICB9O1xuICAgIGhvc3QuYWRkRXZlbnRMaXN0ZW5lcigndHJhbnNpdGlvbmVuZCcsIGZ1bmMpO1xuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IF9faG9zdENsYXNzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGBheC1hbGVydCBheC1ub25lIGF4LSR7dGhpcy5jb2xvcn0tc29saWRgO1xuICB9XG59XG4iLCJAaWYgKHNob3dJbmxpbmUoKSkge1xuICA8ZGl2IGNsYXNzPVwiYXgtYWxlcnQtaW5saW5lXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWljb24gYXgtaWNvbi1zb2xpZFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LXRpdGxlXCI+XG4gICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRpdGxlXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWJ1dHRvbnNcIj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYnV0dG9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgIDwvZGl2PlxuICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2xvc2VCdXR0b25cIj48L25nLWNvbnRhaW5lcj5cbiAgPC9kaXY+XG59IEBlbHNlIHtcbiAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWJsb2NrXCI+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWljb24gYXgtaWNvbi1zb2xpZFwiPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJpY29uXCI+PC9uZy1jb250YWluZXI+XG4gICAgPC9kaXY+XG4gICAgPGRpdiBjbGFzcz1cImF4LWFsZXJ0LWNvbnRlbnRcIj5cbiAgICAgIDxkaXYgY2xhc3M9XCJheC1hbGVydC10aXRsZVwiPlxuICAgICAgICA8bmctY29udGFpbmVyIFtuZ1RlbXBsYXRlT3V0bGV0XT1cInRpdGxlXCI+PC9uZy1jb250YWluZXI+XG4gICAgICA8L2Rpdj5cbiAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY29udGVudFwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPG5nLWNvbnRhaW5lciBbbmdUZW1wbGF0ZU91dGxldF09XCJmb290ZXJcIj48L25nLWNvbnRhaW5lcj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2PjxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiY2xvc2VCdXR0b25cIj48L25nLWNvbnRhaW5lcj48L2Rpdj5cbiAgPC9kaXY+XG59XG5cbkBpZiAodGltZU91dCgpKSB7XG4gIDxkaXYgY2xhc3M9XCJheC1hbGVydC1wcm9ncmVzc1wiIFtzdHlsZS5hbmltYXRpb24tZHVyYXRpb24ubXNdPVwidGltZU91dCgpXCI+PC9kaXY+XG59XG5cbjxuZy10ZW1wbGF0ZSAjYnV0dG9ucz5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtYnV0dG9uXCI+IDwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2Nsb3NlQnV0dG9uPlxuICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1jbG9zZS1idXR0b25cIj4gPC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjdGl0bGU+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LXRpdGxlXCI+IDwvbmctY29udGVudD5cbjwvbmctdGVtcGxhdGU+XG48bmctdGVtcGxhdGUgI2ljb24+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWljb25cIj4gPC9uZy1jb250ZW50PlxuPC9uZy10ZW1wbGF0ZT5cbjxuZy10ZW1wbGF0ZSAjY29udGVudD5cbiAgPG5nLWNvbnRlbnQgc2VsZWN0PVwiYXgtY29udGVudFwiPiA8L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuPG5nLXRlbXBsYXRlICNmb290ZXI+XG4gIDxuZy1jb250ZW50IHNlbGVjdD1cImF4LWZvb3RlclwiPiA8L25nLWNvbnRlbnQ+XG48L25nLXRlbXBsYXRlPlxuIl19