@acorex/components 19.15.0-next.8 → 20.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (704) hide show
  1. package/accordion/README.md +3 -0
  2. package/accordion/index.d.ts +41 -0
  3. package/action-sheet/index.d.ts +126 -4
  4. package/alert/index.d.ts +93 -2
  5. package/audio-wave/index.d.ts +143 -3
  6. package/autocomplete/index.d.ts +123 -2
  7. package/avatar/index.d.ts +52 -3
  8. package/badge/index.d.ts +27 -2
  9. package/bottom-navigation/index.d.ts +67 -3
  10. package/breadcrumbs/index.d.ts +56 -4
  11. package/button/index.d.ts +230 -5
  12. package/button-group/index.d.ts +166 -3
  13. package/calendar/index.d.ts +367 -4
  14. package/check-box/index.d.ts +74 -2
  15. package/chips/index.d.ts +37 -2
  16. package/circular-progress/index.d.ts +73 -2
  17. package/collapse/index.d.ts +173 -3
  18. package/color-box/index.d.ts +72 -2
  19. package/color-palette/index.d.ts +293 -7
  20. package/comment/index.d.ts +107 -9
  21. package/conversation/index.d.ts +656 -18
  22. package/cron-job/index.d.ts +329 -8
  23. package/data-pager/index.d.ts +416 -9
  24. package/data-table/index.d.ts +1060 -11
  25. package/datetime-box/index.d.ts +112 -2
  26. package/datetime-input/index.d.ts +135 -2
  27. package/datetime-picker/index.d.ts +147 -3
  28. package/decorators/index.d.ts +129 -8
  29. package/dialog/index.d.ts +122 -4
  30. package/drawer/index.d.ts +86 -3
  31. package/drawer-2/README.md +3 -0
  32. package/drawer-2/index.d.ts +48 -0
  33. package/dropdown/index.d.ts +243 -4
  34. package/dropdown-button/index.d.ts +82 -2
  35. package/fesm2022/acorex-components-accordion.mjs +118 -0
  36. package/fesm2022/acorex-components-accordion.mjs.map +1 -0
  37. package/fesm2022/acorex-components-action-sheet.mjs +20 -27
  38. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  39. package/fesm2022/acorex-components-alert.mjs +9 -9
  40. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  41. package/fesm2022/acorex-components-audio-wave.mjs +8 -8
  42. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  43. package/fesm2022/acorex-components-autocomplete.mjs +7 -7
  44. package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
  45. package/fesm2022/acorex-components-avatar.mjs +11 -11
  46. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  47. package/fesm2022/acorex-components-badge.mjs +9 -8
  48. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  49. package/fesm2022/acorex-components-bottom-navigation.mjs +12 -12
  50. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  51. package/fesm2022/acorex-components-breadcrumbs.mjs +15 -21
  52. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  53. package/fesm2022/acorex-components-button-group.mjs +10 -10
  54. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  55. package/fesm2022/acorex-components-button.mjs +21 -27
  56. package/fesm2022/acorex-components-button.mjs.map +1 -1
  57. package/fesm2022/acorex-components-calendar.mjs +28 -22
  58. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  59. package/fesm2022/acorex-components-check-box.mjs +9 -9
  60. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  61. package/fesm2022/acorex-components-chips.mjs +8 -8
  62. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  63. package/fesm2022/acorex-components-circular-progress.mjs +8 -8
  64. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  65. package/fesm2022/acorex-components-collapse.mjs +17 -25
  66. package/fesm2022/acorex-components-collapse.mjs.map +1 -1
  67. package/fesm2022/acorex-components-color-box.mjs +9 -11
  68. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  69. package/fesm2022/acorex-components-color-palette.mjs +59 -63
  70. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  71. package/fesm2022/acorex-components-comment.mjs +31 -31
  72. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  73. package/fesm2022/acorex-components-conversation.mjs +119 -151
  74. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  75. package/fesm2022/acorex-components-cron-job.mjs +64 -64
  76. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  77. package/fesm2022/acorex-components-data-pager.mjs +44 -50
  78. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  79. package/fesm2022/acorex-components-data-table.mjs +49 -49
  80. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  81. package/fesm2022/acorex-components-datetime-box.mjs +10 -22
  82. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  83. package/fesm2022/acorex-components-datetime-input.mjs +12 -9
  84. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  85. package/fesm2022/acorex-components-datetime-picker.mjs +10 -16
  86. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  87. package/fesm2022/acorex-components-decorators.mjs +34 -51
  88. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  89. package/fesm2022/acorex-components-dialog.mjs +19 -26
  90. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  91. package/fesm2022/acorex-components-drawer-2.mjs +120 -0
  92. package/fesm2022/acorex-components-drawer-2.mjs.map +1 -0
  93. package/fesm2022/acorex-components-drawer.mjs +149 -60
  94. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  95. package/fesm2022/acorex-components-dropdown-button.mjs +9 -9
  96. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  97. package/fesm2022/acorex-components-dropdown.mjs +14 -14
  98. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  99. package/fesm2022/acorex-components-file-explorer.mjs +27 -28
  100. package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
  101. package/fesm2022/acorex-components-flow-chart.mjs +16 -16
  102. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
  103. package/fesm2022/acorex-components-form.mjs +25 -30
  104. package/fesm2022/acorex-components-form.mjs.map +1 -1
  105. package/fesm2022/acorex-components-grid-layout-builder.mjs +10 -10
  106. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  107. package/fesm2022/acorex-components-image-editor.mjs +39 -40
  108. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  109. package/fesm2022/acorex-components-image.mjs +10 -10
  110. package/fesm2022/acorex-components-image.mjs.map +1 -1
  111. package/fesm2022/acorex-components-json-viewer.mjs +7 -7
  112. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  113. package/fesm2022/acorex-components-kbd.mjs +10 -10
  114. package/fesm2022/acorex-components-kbd.mjs.map +1 -1
  115. package/fesm2022/acorex-components-label.mjs +9 -9
  116. package/fesm2022/acorex-components-label.mjs.map +1 -1
  117. package/fesm2022/acorex-components-list.mjs +11 -21
  118. package/fesm2022/acorex-components-list.mjs.map +1 -1
  119. package/fesm2022/acorex-components-loading-dialog.mjs +18 -25
  120. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  121. package/fesm2022/acorex-components-loading.mjs +23 -23
  122. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  123. package/fesm2022/acorex-components-map.mjs +700 -193
  124. package/fesm2022/acorex-components-map.mjs.map +1 -1
  125. package/fesm2022/acorex-components-media-viewer.mjs +39 -43
  126. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  127. package/fesm2022/acorex-components-menu.mjs +41 -26
  128. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  129. package/fesm2022/{acorex-components-modal-acorex-components-modal-CJ3M9U7p.mjs → acorex-components-modal-acorex-components-modal-DTLjJam5.mjs} +21 -21
  130. package/fesm2022/acorex-components-modal-acorex-components-modal-DTLjJam5.mjs.map +1 -0
  131. package/fesm2022/{acorex-components-modal-modal-content.component-Ef5XWxUb.mjs → acorex-components-modal-modal-content.component-CsxuUsLE.mjs} +5 -5
  132. package/fesm2022/acorex-components-modal-modal-content.component-CsxuUsLE.mjs.map +1 -0
  133. package/fesm2022/acorex-components-modal.mjs +1 -1
  134. package/fesm2022/acorex-components-navbar.mjs +7 -7
  135. package/fesm2022/acorex-components-navbar.mjs.map +1 -1
  136. package/fesm2022/acorex-components-notification.mjs +19 -23
  137. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  138. package/fesm2022/acorex-components-number-box.mjs +7 -7
  139. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  140. package/fesm2022/acorex-components-otp.mjs +7 -7
  141. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  142. package/fesm2022/acorex-components-page.mjs +10 -10
  143. package/fesm2022/acorex-components-page.mjs.map +1 -1
  144. package/fesm2022/acorex-components-paint.mjs +29 -29
  145. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  146. package/fesm2022/acorex-components-password-box.mjs +12 -12
  147. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  148. package/fesm2022/acorex-components-pdf-reader.mjs +7 -7
  149. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  150. package/fesm2022/acorex-components-phone-box.mjs +7 -7
  151. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  152. package/fesm2022/acorex-components-picker.mjs +13 -13
  153. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  154. package/fesm2022/acorex-components-popover.mjs +11 -11
  155. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  156. package/fesm2022/acorex-components-popup.mjs +22 -39
  157. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  158. package/fesm2022/acorex-components-progress-bar.mjs +8 -8
  159. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  160. package/fesm2022/acorex-components-qrcode.mjs +7 -7
  161. package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
  162. package/fesm2022/acorex-components-query-builder.mjs +9 -10
  163. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  164. package/fesm2022/acorex-components-radio.mjs +7 -7
  165. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  166. package/fesm2022/acorex-components-rail-navigation.mjs +13 -13
  167. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  168. package/fesm2022/acorex-components-range-slider.mjs +9 -9
  169. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  170. package/fesm2022/acorex-components-rate-picker.mjs +7 -7
  171. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  172. package/fesm2022/acorex-components-rest-api-generator.mjs +26 -26
  173. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  174. package/fesm2022/acorex-components-result.mjs +8 -8
  175. package/fesm2022/acorex-components-result.mjs.map +1 -1
  176. package/fesm2022/acorex-components-routing-progress.mjs +13 -14
  177. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  178. package/fesm2022/acorex-components-scheduler.mjs +192 -146
  179. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  180. package/fesm2022/acorex-components-scss.mjs +4 -4
  181. package/fesm2022/acorex-components-scss.mjs.map +1 -1
  182. package/fesm2022/acorex-components-search-box.mjs +12 -21
  183. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  184. package/fesm2022/acorex-components-select-box.mjs +7 -7
  185. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  186. package/fesm2022/acorex-components-selection-list-2.mjs +163 -0
  187. package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -0
  188. package/fesm2022/acorex-components-selection-list.mjs +9 -9
  189. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  190. package/fesm2022/acorex-components-side-menu.mjs +28 -21
  191. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  192. package/fesm2022/acorex-components-skeleton.mjs +7 -7
  193. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  194. package/fesm2022/acorex-components-slider.mjs +14 -15
  195. package/fesm2022/acorex-components-slider.mjs.map +1 -1
  196. package/fesm2022/acorex-components-sliding-item.mjs +14 -14
  197. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  198. package/fesm2022/acorex-components-step-wizard.mjs +18 -18
  199. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  200. package/fesm2022/acorex-components-switch.mjs +12 -12
  201. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  202. package/fesm2022/acorex-components-tabs.mjs +17 -17
  203. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  204. package/fesm2022/acorex-components-tag-box.mjs +7 -7
  205. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  206. package/fesm2022/acorex-components-tag.mjs +8 -8
  207. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  208. package/fesm2022/acorex-components-text-area.mjs +7 -7
  209. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  210. package/fesm2022/acorex-components-text-box.mjs +10 -10
  211. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  212. package/fesm2022/acorex-components-time-duration.mjs +17 -9
  213. package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
  214. package/fesm2022/acorex-components-time-line.mjs +10 -10
  215. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  216. package/fesm2022/acorex-components-toast.mjs +23 -31
  217. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  218. package/fesm2022/acorex-components-toolbar.mjs +7 -7
  219. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  220. package/fesm2022/acorex-components-tooltip.mjs +16 -16
  221. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  222. package/fesm2022/acorex-components-tree-view.mjs +13 -12
  223. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  224. package/fesm2022/acorex-components-uploader.mjs +28 -28
  225. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  226. package/fesm2022/acorex-components-video-player.mjs +7 -7
  227. package/fesm2022/acorex-components-video-player.mjs.map +1 -1
  228. package/fesm2022/acorex-components-wysiwyg.mjs +33 -33
  229. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  230. package/fesm2022/acorex-components.mjs.map +1 -1
  231. package/file-explorer/index.d.ts +103 -8
  232. package/flow-chart/index.d.ts +159 -5
  233. package/form/index.d.ts +283 -6
  234. package/grid-layout-builder/index.d.ts +197 -4
  235. package/image/index.d.ts +95 -2
  236. package/image-editor/index.d.ts +268 -11
  237. package/index.d.ts +3 -1
  238. package/json-viewer/index.d.ts +25 -2
  239. package/kbd/index.d.ts +23 -3
  240. package/label/index.d.ts +58 -2
  241. package/list/index.d.ts +148 -2
  242. package/loading/index.d.ts +149 -6
  243. package/loading-dialog/index.d.ts +115 -4
  244. package/map/index.d.ts +661 -7
  245. package/media-viewer/index.d.ts +142 -9
  246. package/menu/index.d.ts +207 -6
  247. package/modal/index.d.ts +78 -5
  248. package/navbar/index.d.ts +22 -2
  249. package/notification/index.d.ts +134 -5
  250. package/number-box/index.d.ts +179 -2
  251. package/otp/index.d.ts +74 -3
  252. package/package.json +24 -12
  253. package/page/index.d.ts +58 -3
  254. package/paint/index.d.ts +157 -7
  255. package/password-box/index.d.ts +97 -3
  256. package/pdf-reader/index.d.ts +17 -2
  257. package/phone-box/index.d.ts +92 -2
  258. package/picker/index.d.ts +44 -4
  259. package/popover/index.d.ts +222 -2
  260. package/popup/index.d.ts +120 -4
  261. package/progress-bar/index.d.ts +65 -2
  262. package/qrcode/index.d.ts +68 -3
  263. package/query-builder/index.d.ts +52 -2
  264. package/radio/index.d.ts +33 -2
  265. package/rail-navigation/index.d.ts +74 -5
  266. package/range-slider/index.d.ts +320 -3
  267. package/rate-picker/index.d.ts +141 -2
  268. package/rest-api-generator/index.d.ts +129 -8
  269. package/result/index.d.ts +34 -2
  270. package/routing-progress/index.d.ts +39 -2
  271. package/scheduler/index.d.ts +556 -11
  272. package/scss/index.d.ts +10 -1
  273. package/search-box/index.d.ts +51 -2
  274. package/select-box/index.d.ts +161 -2
  275. package/selection-list/index.d.ts +93 -2
  276. package/selection-list-2/README.md +3 -0
  277. package/selection-list-2/index.d.ts +52 -0
  278. package/side-menu/index.d.ts +94 -4
  279. package/skeleton/index.d.ts +28 -2
  280. package/slider/index.d.ts +101 -2
  281. package/sliding-item/index.d.ts +45 -4
  282. package/step-wizard/index.d.ts +109 -5
  283. package/switch/index.d.ts +49 -3
  284. package/tabs/index.d.ts +156 -5
  285. package/tag/index.d.ts +26 -2
  286. package/tag-box/index.d.ts +41 -2
  287. package/text-area/index.d.ts +52 -2
  288. package/text-box/index.d.ts +92 -3
  289. package/time-duration/index.d.ts +48 -3
  290. package/time-line/index.d.ts +33 -3
  291. package/toast/index.d.ts +127 -5
  292. package/toolbar/index.d.ts +22 -2
  293. package/tooltip/index.d.ts +60 -3
  294. package/tree-view/index.d.ts +179 -4
  295. package/uploader/index.d.ts +188 -8
  296. package/video-player/index.d.ts +15 -2
  297. package/wysiwyg/index.d.ts +240 -9
  298. package/action-sheet/lib/action-sheet.class.d.ts +0 -40
  299. package/action-sheet/lib/action-sheet.component.d.ts +0 -59
  300. package/action-sheet/lib/action-sheet.module.d.ts +0 -16
  301. package/action-sheet/lib/action-sheet.service.d.ts +0 -16
  302. package/alert/lib/alert.component.d.ts +0 -82
  303. package/alert/lib/alert.module.d.ts +0 -9
  304. package/audio-wave/lib/audio-wave.component.d.ts +0 -112
  305. package/audio-wave/lib/audio-wave.module.d.ts +0 -12
  306. package/audio-wave/lib/interfaces/audio-wave.interface.d.ts +0 -16
  307. package/autocomplete/lib/autocomplete.component.d.ts +0 -114
  308. package/autocomplete/lib/autocomplete.module.d.ts +0 -7
  309. package/avatar/lib/avatar-group.component.d.ts +0 -5
  310. package/avatar/lib/avatar.component.d.ts +0 -37
  311. package/avatar/lib/avatar.module.d.ts +0 -9
  312. package/badge/lib/badge.component.d.ts +0 -16
  313. package/badge/lib/badge.module.d.ts +0 -8
  314. package/bottom-navigation/lib/bottom-navigation-item/bottom-navigation-item.component.d.ts +0 -15
  315. package/bottom-navigation/lib/bottom-navigation.component.d.ts +0 -43
  316. package/bottom-navigation/lib/bottom-navigation.module.d.ts +0 -9
  317. package/breadcrumbs/lib/breadcrumbs-item.class.d.ts +0 -9
  318. package/breadcrumbs/lib/breadcrumbs-item.component.d.ts +0 -25
  319. package/breadcrumbs/lib/breadcrumbs.component.d.ts +0 -15
  320. package/breadcrumbs/lib/breadcrumbs.module.d.ts +0 -10
  321. package/button/lib/button-item-list.component.d.ts +0 -56
  322. package/button/lib/button-item.class.d.ts +0 -24
  323. package/button/lib/button-item.component.d.ts +0 -77
  324. package/button/lib/button.component.d.ts +0 -65
  325. package/button/lib/button.module.d.ts +0 -13
  326. package/button-group/lib/button-group-item.component.d.ts +0 -79
  327. package/button-group/lib/button-group.component.d.ts +0 -79
  328. package/button-group/lib/button-group.module.d.ts +0 -11
  329. package/calendar/lib/calendar-range.component.d.ts +0 -82
  330. package/calendar/lib/calendar.class.d.ts +0 -89
  331. package/calendar/lib/calendar.component.d.ts +0 -183
  332. package/calendar/lib/calendar.module.d.ts +0 -13
  333. package/check-box/lib/check-box.component.d.ts +0 -62
  334. package/check-box/lib/check-box.module.d.ts +0 -10
  335. package/chips/lib/chips.component.d.ts +0 -26
  336. package/chips/lib/chips.module.d.ts +0 -8
  337. package/circular-progress/lib/circular-progress.component.d.ts +0 -63
  338. package/circular-progress/lib/circular-progress.module.d.ts +0 -7
  339. package/collapse/lib/collapse-group.component.d.ts +0 -68
  340. package/collapse/lib/collapse.component.d.ts +0 -101
  341. package/collapse/lib/collapse.module.d.ts +0 -10
  342. package/color-box/lib/color-box.component.d.ts +0 -59
  343. package/color-box/lib/color-box.module.d.ts +0 -11
  344. package/color-palette/lib/color-palette-input.component.d.ts +0 -65
  345. package/color-palette/lib/color-palette-picker.component.d.ts +0 -96
  346. package/color-palette/lib/color-palette-preview.component.d.ts +0 -33
  347. package/color-palette/lib/color-palette-swatches.component.d.ts +0 -51
  348. package/color-palette/lib/color-palette.class.d.ts +0 -28
  349. package/color-palette/lib/color-palette.component.d.ts +0 -18
  350. package/color-palette/lib/color-palette.module.d.ts +0 -22
  351. package/comment/lib/comment-container/comment-container.component.d.ts +0 -13
  352. package/comment/lib/comment-item/comment-item.component.d.ts +0 -23
  353. package/comment/lib/comment-tools/comment-date/comment-date.component.d.ts +0 -10
  354. package/comment/lib/comment-tools/comment-like/comment-like.component.d.ts +0 -16
  355. package/comment/lib/comment-tools/comment-menu-options/comment-menu-options.component.d.ts +0 -10
  356. package/comment/lib/comment-tools/comment-reply-more/comment-reply-more.component.d.ts +0 -5
  357. package/comment/lib/comment-tools/comment-reply-text/comment-reply-text.component.d.ts +0 -5
  358. package/comment/lib/comment-view/comment-view.component.d.ts +0 -9
  359. package/comment/lib/comment.module.d.ts +0 -21
  360. package/conversation/lib/classes/events.interface.d.ts +0 -7
  361. package/conversation/lib/conversation-container/conversation-container.component.d.ts +0 -9
  362. package/conversation/lib/conversation-input/conversation-input.component.d.ts +0 -126
  363. package/conversation/lib/conversation-input/conversation-input.interface.d.ts +0 -10
  364. package/conversation/lib/conversation-message/conversation-message.component.d.ts +0 -62
  365. package/conversation/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.d.ts +0 -95
  366. package/conversation/lib/conversation-messages/conversation-message-file/conversation-message-file.component.d.ts +0 -53
  367. package/conversation/lib/conversation-messages/conversation-message-image/conversation-message-image.component.d.ts +0 -40
  368. package/conversation/lib/conversation-messages/conversation-message-image-popup/conversation-message-image-popup.component.d.ts +0 -18
  369. package/conversation/lib/conversation-messages/conversation-message-text/conversation-message-text.component.d.ts +0 -44
  370. package/conversation/lib/conversation-messages/conversation-message-video/conversation-message-video.component.d.ts +0 -20
  371. package/conversation/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.d.ts +0 -102
  372. package/conversation/lib/conversation-view/conversation-view.component.d.ts +0 -27
  373. package/conversation/lib/conversation.module.d.ts +0 -45
  374. package/conversation/lib/conversation.types.d.ts +0 -26
  375. package/conversation/lib/services/conversation-message-type-registry.service.d.ts +0 -9
  376. package/conversation/lib/services/conversation.service.d.ts +0 -7
  377. package/conversation/lib/services/recording.service.d.ts +0 -20
  378. package/cron-job/lib/cron-job-container/cron-job-container.component.d.ts +0 -30
  379. package/cron-job/lib/cron-job.module.d.ts +0 -25
  380. package/cron-job/lib/cron-job.service.d.ts +0 -22
  381. package/cron-job/lib/day/day.component.d.ts +0 -24
  382. package/cron-job/lib/day/day.model.d.ts +0 -61
  383. package/cron-job/lib/day/day.service.d.ts +0 -17
  384. package/cron-job/lib/hours/hours.component.d.ts +0 -16
  385. package/cron-job/lib/hours/hours.model.d.ts +0 -5
  386. package/cron-job/lib/hours/hours.service.d.ts +0 -13
  387. package/cron-job/lib/minutes/minutes.component.d.ts +0 -16
  388. package/cron-job/lib/minutes/minutes.model.d.ts +0 -5
  389. package/cron-job/lib/minutes/minutes.service.d.ts +0 -13
  390. package/cron-job/lib/month/month.component.d.ts +0 -18
  391. package/cron-job/lib/month/month.model.d.ts +0 -5
  392. package/cron-job/lib/month/month.service.d.ts +0 -14
  393. package/cron-job/lib/seconds/seconds.component.d.ts +0 -16
  394. package/cron-job/lib/seconds/seconds.model.d.ts +0 -5
  395. package/cron-job/lib/seconds/seconds.service.d.ts +0 -13
  396. package/cron-job/lib/types/iexpression.d.ts +0 -3
  397. package/cron-job/lib/types/shared.model.d.ts +0 -37
  398. package/cron-job/lib/year/year.component.d.ts +0 -17
  399. package/cron-job/lib/year/year.model.d.ts +0 -16
  400. package/cron-job/lib/year/year.service.d.ts +0 -12
  401. package/data-pager/lib/data-pager-base.component.d.ts +0 -64
  402. package/data-pager/lib/data-pager-info.component.d.ts +0 -25
  403. package/data-pager/lib/data-pager-input-selector.component.d.ts +0 -28
  404. package/data-pager/lib/data-pager-next-buttons.component.d.ts +0 -32
  405. package/data-pager/lib/data-pager-numeric-selector.component.d.ts +0 -36
  406. package/data-pager/lib/data-pager-pagesize-dropdown.component.d.ts +0 -42
  407. package/data-pager/lib/data-pager-prev-buttons.component.d.ts +0 -32
  408. package/data-pager/lib/data-pager.component.d.ts +0 -151
  409. package/data-pager/lib/data-pager.module.d.ts +0 -22
  410. package/data-table/lib/base-data-table.class.d.ts +0 -38
  411. package/data-table/lib/columns/data-table-column-resizable.directive.d.ts +0 -24
  412. package/data-table/lib/columns/data-table-column.d.ts +0 -20
  413. package/data-table/lib/columns/data-text-column.component.d.ts +0 -100
  414. package/data-table/lib/columns/row-command-column.component.d.ts +0 -131
  415. package/data-table/lib/columns/row-expand-column.component.d.ts +0 -50
  416. package/data-table/lib/columns/row-index-column.component.d.ts +0 -74
  417. package/data-table/lib/columns/row-select-column.component.d.ts +0 -70
  418. package/data-table/lib/data-table/data-table.component.d.ts +0 -301
  419. package/data-table/lib/data-table.module.d.ts +0 -27
  420. package/data-table/lib/infinite-scroll-data-table/infinite-scroll-data-table.component.d.ts +0 -253
  421. package/datetime-box/lib/datetime-box.component.d.ts +0 -98
  422. package/datetime-box/lib/datetime-box.module.d.ts +0 -13
  423. package/datetime-input/lib/datetime-input.component.d.ts +0 -123
  424. package/datetime-input/lib/datetime-input.module.d.ts +0 -10
  425. package/datetime-picker/lib/datetime-picker.component.d.ts +0 -121
  426. package/datetime-picker/lib/datetime-picker.config.d.ts +0 -8
  427. package/datetime-picker/lib/datetime-picker.module.d.ts +0 -16
  428. package/decorators/lib/components/clear-button/clear-button.component.d.ts +0 -38
  429. package/decorators/lib/components/close-button/close-button.component.d.ts +0 -35
  430. package/decorators/lib/components/color-indicator/color-indicator.component.d.ts +0 -6
  431. package/decorators/lib/components/full-screen/full-screen-button.component.d.ts +0 -7
  432. package/decorators/lib/components/generic-content.component.d.ts +0 -10
  433. package/decorators/lib/components/heading/heading.component.d.ts +0 -17
  434. package/decorators/lib/components/icon/icon.component.d.ts +0 -20
  435. package/decorators/lib/decorators.module.d.ts +0 -14
  436. package/dialog/lib/dialog.class.d.ts +0 -39
  437. package/dialog/lib/dialog.component.d.ts +0 -41
  438. package/dialog/lib/dialog.module.d.ts +0 -16
  439. package/dialog/lib/dialog.service.d.ts +0 -31
  440. package/drawer/lib/drawer/drawer-container/drawer-container.component.d.ts +0 -12
  441. package/drawer/lib/drawer/drawer-item/drawer.component.d.ts +0 -29
  442. package/drawer/lib/drawer.module.d.ts +0 -9
  443. package/drawer/lib/drawer.service.d.ts +0 -7
  444. package/dropdown/lib/dropdown-box.class.d.ts +0 -17
  445. package/dropdown/lib/dropdown-box.component.d.ts +0 -97
  446. package/dropdown/lib/dropdown-panel.component.d.ts +0 -120
  447. package/dropdown/lib/dropdown.module.d.ts +0 -14
  448. package/dropdown-button/lib/dropdown-button.component.d.ts +0 -67
  449. package/dropdown-button/lib/dropdown-button.module.d.ts +0 -13
  450. package/fesm2022/acorex-components-modal-acorex-components-modal-CJ3M9U7p.mjs.map +0 -1
  451. package/fesm2022/acorex-components-modal-modal-content.component-Ef5XWxUb.mjs.map +0 -1
  452. package/file-explorer/lib/file-explorer-container/file-explorer-container.component.d.ts +0 -5
  453. package/file-explorer/lib/file-explorer-header/file-explorer-header.component.d.ts +0 -9
  454. package/file-explorer/lib/file-explorer-internal.service.d.ts +0 -18
  455. package/file-explorer/lib/file-explorer-item/file-explorer-item.component.d.ts +0 -11
  456. package/file-explorer/lib/file-explorer-tree/file-explorer-tree.component.d.ts +0 -13
  457. package/file-explorer/lib/file-explorer-types.d.ts +0 -11
  458. package/file-explorer/lib/file-explorer-view/file-explorer-view.component.d.ts +0 -14
  459. package/file-explorer/lib/file-explorer.module.d.ts +0 -19
  460. package/file-explorer/lib/file-explorer.service.d.ts +0 -11
  461. package/flow-chart/lib/flow-chart-creator/flow-chart-creator.component.d.ts +0 -13
  462. package/flow-chart/lib/flow-chart-renderer/flow-chart-renderer.component.d.ts +0 -22
  463. package/flow-chart/lib/flow-chart.component.d.ts +0 -24
  464. package/flow-chart/lib/flow-chart.module.d.ts +0 -10
  465. package/flow-chart/lib/flow-chart.service.d.ts +0 -57
  466. package/flow-chart/lib/flow-chart.type.d.ts +0 -37
  467. package/form/lib/form-field.component.d.ts +0 -69
  468. package/form/lib/form.component.d.ts +0 -109
  469. package/form/lib/form.config.d.ts +0 -7
  470. package/form/lib/form.module.d.ts +0 -16
  471. package/form/lib/validation-rule.directive.d.ts +0 -17
  472. package/form/lib/validation-summary.component.d.ts +0 -76
  473. package/grid-layout-builder/lib/grid-layout-builder.module.d.ts +0 -9
  474. package/grid-layout-builder/lib/grid-layout-container.component.d.ts +0 -47
  475. package/grid-layout-builder/lib/grid-layout-widget.component.d.ts +0 -39
  476. package/grid-layout-builder/lib/types.d.ts +0 -103
  477. package/grid-layout-builder/lib/utility.d.ts +0 -9
  478. package/image/lib/image.component.d.ts +0 -85
  479. package/image/lib/image.module.d.ts +0 -8
  480. package/image-editor/lib/image-editor-container/image-editor-container.component.d.ts +0 -26
  481. package/image-editor/lib/image-editor-cropper-window/image-editor-cropper-window.component.d.ts +0 -47
  482. package/image-editor/lib/image-editor-tools/image-editor-crop/image-editor-crop.component.d.ts +0 -14
  483. package/image-editor/lib/image-editor-tools/image-editor-highlight/image-editor-highlight.component.d.ts +0 -18
  484. package/image-editor/lib/image-editor-tools/image-editor-history/image-editor-history.component.d.ts +0 -13
  485. package/image-editor/lib/image-editor-tools/image-editor-pen/image-editor-pen.component.d.ts +0 -18
  486. package/image-editor/lib/image-editor-tools/image-editor-rotate/image-editor-rotate.component.d.ts +0 -16
  487. package/image-editor/lib/image-editor-tools/image-editor-tool-selector/image-editor-tool-selector.component.d.ts +0 -12
  488. package/image-editor/lib/image-editor-view/image-editor-view.component.d.ts +0 -78
  489. package/image-editor/lib/image-editor.module.d.ts +0 -25
  490. package/image-editor/lib/image-editor.service.d.ts +0 -22
  491. package/json-viewer/lib/json-viewer/json-viewer.component.d.ts +0 -13
  492. package/json-viewer/lib/json-viewer.module.d.ts +0 -10
  493. package/kbd/lib/kbd-item/kbd-item.component.d.ts +0 -8
  494. package/kbd/lib/kbd.component.d.ts +0 -5
  495. package/kbd/lib/kbd.module.d.ts +0 -9
  496. package/label/lib/label.component.d.ts +0 -48
  497. package/label/lib/label.module.d.ts +0 -8
  498. package/list/lib/list.component.d.ts +0 -139
  499. package/list/lib/list.module.d.ts +0 -10
  500. package/loading/lib/loading-spinner.component.d.ts +0 -34
  501. package/loading/lib/loading.component.d.ts +0 -53
  502. package/loading/lib/loading.config.d.ts +0 -8
  503. package/loading/lib/loading.directive.d.ts +0 -15
  504. package/loading/lib/loading.module.d.ts +0 -13
  505. package/loading/lib/loading.service.d.ts +0 -29
  506. package/loading-dialog/lib/loading-dialog.class.d.ts +0 -35
  507. package/loading-dialog/lib/loading-dialog.component.d.ts +0 -63
  508. package/loading-dialog/lib/loading-dialog.module.d.ts +0 -14
  509. package/loading-dialog/lib/loading-dialog.service.d.ts +0 -8
  510. package/map/lib/map.component.d.ts +0 -214
  511. package/map/lib/map.config.d.ts +0 -13
  512. package/map/lib/map.module.d.ts +0 -8
  513. package/map/lib/map.service.d.ts +0 -172
  514. package/map/lib/map.type.d.ts +0 -20
  515. package/map/lib/map.utility.d.ts +0 -2
  516. package/map/lib/map.world-map.d.ts +0 -28
  517. package/media-viewer/lib/media-viewer-container/media-viewer-container.component.d.ts +0 -38
  518. package/media-viewer/lib/media-viewer-slider/media-viewer-slider.component.d.ts +0 -18
  519. package/media-viewer/lib/media-viewer-tools/audio-player/audio-player.component.d.ts +0 -8
  520. package/media-viewer/lib/media-viewer-tools/file-info/file-info.component.d.ts +0 -9
  521. package/media-viewer/lib/media-viewer-tools/image-viewer/image-viewer.component.d.ts +0 -6
  522. package/media-viewer/lib/media-viewer-tools/pdf-reader/pdf-reader.component.d.ts +0 -8
  523. package/media-viewer/lib/media-viewer-tools/video-player/video-player.component.d.ts +0 -8
  524. package/media-viewer/lib/media-viewer-type-registry.service.d.ts +0 -9
  525. package/media-viewer/lib/media-viewer-types.d.ts +0 -19
  526. package/media-viewer/lib/media-viewer.module.d.ts +0 -31
  527. package/media-viewer/lib/media-viewer.service.d.ts +0 -8
  528. package/menu/lib/context-menu.component.d.ts +0 -57
  529. package/menu/lib/menu-item.component.d.ts +0 -62
  530. package/menu/lib/menu.component.d.ts +0 -23
  531. package/menu/lib/menu.module.d.ts +0 -15
  532. package/menu/lib/menu.service.d.ts +0 -19
  533. package/menu/lib/menu.types.d.ts +0 -39
  534. package/modal/lib/modal-content/modal-content.component.d.ts +0 -51
  535. package/modal/lib/modal-footer/modal-footer.component.d.ts +0 -5
  536. package/modal/lib/modal-state.service.d.ts +0 -17
  537. package/modal/lib/modal.component.d.ts +0 -18
  538. package/modal/lib/modal.module.d.ts +0 -8
  539. package/modal/lib/modal.service.d.ts +0 -15
  540. package/modal/lib/modal.types.d.ts +0 -34
  541. package/navbar/lib/navbar.component.d.ts +0 -12
  542. package/navbar/lib/navbar.module.d.ts +0 -8
  543. package/notification/lib/notification.class.d.ts +0 -42
  544. package/notification/lib/notification.component.d.ts +0 -41
  545. package/notification/lib/notification.config.d.ts +0 -15
  546. package/notification/lib/notification.module.d.ts +0 -14
  547. package/notification/lib/notification.service.d.ts +0 -25
  548. package/number-box/lib/number-box.component.d.ts +0 -165
  549. package/number-box/lib/number-box.module.d.ts +0 -12
  550. package/otp/lib/otp.class.d.ts +0 -5
  551. package/otp/lib/otp.component.d.ts +0 -59
  552. package/otp/lib/otp.module.d.ts +0 -9
  553. package/page/lib/base-page.class.d.ts +0 -22
  554. package/page/lib/page.component.d.ts +0 -29
  555. package/page/lib/page.module.d.ts +0 -6
  556. package/paint/lib/paint/paint-container/paint-container.component.d.ts +0 -19
  557. package/paint/lib/paint/paint-tools/paint-eraser-tool/paint-eraser-tool.component.d.ts +0 -15
  558. package/paint/lib/paint/paint-tools/paint-highlight-tool/paint-highlight-tool.component.d.ts +0 -18
  559. package/paint/lib/paint/paint-tools/paint-pen-tool/paint-pen-tool.component.d.ts +0 -18
  560. package/paint/lib/paint/paint-tools-selector/paint-tools-selector.component.d.ts +0 -9
  561. package/paint/lib/paint/paint-view/paint-view.component.d.ts +0 -56
  562. package/paint/lib/paint/paint.service.d.ts +0 -12
  563. package/paint/lib/paint.module.d.ts +0 -20
  564. package/password-box/lib/password-box.component.d.ts +0 -42
  565. package/password-box/lib/password-box.module.d.ts +0 -15
  566. package/password-box/lib/password-strength-validation/password-strength-validation.component.d.ts +0 -40
  567. package/pdf-reader/lib/pdf-reader/pdf-reader.component.d.ts +0 -8
  568. package/pdf-reader/lib/pdf-reader.module.d.ts +0 -7
  569. package/phone-box/lib/phone-box.component.d.ts +0 -75
  570. package/phone-box/lib/phone-box.module.d.ts +0 -15
  571. package/picker/lib/picker-container/picker-container.component.d.ts +0 -7
  572. package/picker/lib/picker-items/picker-items.component.d.ts +0 -20
  573. package/picker/lib/picker-title/picker-title.component.d.ts +0 -5
  574. package/picker/lib/picker.module.d.ts +0 -11
  575. package/popover/lib/popover.component.d.ts +0 -211
  576. package/popover/lib/popover.module.d.ts +0 -8
  577. package/popup/lib/popup.component.d.ts +0 -75
  578. package/popup/lib/popup.interface.d.ts +0 -30
  579. package/popup/lib/popup.module.d.ts +0 -15
  580. package/popup/lib/popup.service.d.ts +0 -22
  581. package/progress-bar/lib/progress-bar.component.d.ts +0 -54
  582. package/progress-bar/lib/progress-bar.module.d.ts +0 -8
  583. package/qrcode/lib/qrcode.class.d.ts +0 -3
  584. package/qrcode/lib/qrcode.component.d.ts +0 -54
  585. package/qrcode/lib/qrcode.module.d.ts +0 -8
  586. package/query-builder/lib/query-builder.component.d.ts +0 -35
  587. package/query-builder/lib/query-builder.module.d.ts +0 -15
  588. package/radio/lib/radio.component.d.ts +0 -22
  589. package/radio/lib/radio.module.d.ts +0 -9
  590. package/rail-navigation/lib/rail-navigation-item/rail-navigation-item.component.d.ts +0 -31
  591. package/rail-navigation/lib/rail-navigation.class.d.ts +0 -8
  592. package/rail-navigation/lib/rail-navigation.component.d.ts +0 -18
  593. package/rail-navigation/lib/rail-navigation.module.d.ts +0 -10
  594. package/rail-navigation/lib/rail-navigation.service.d.ts +0 -9
  595. package/range-slider/lib/range-slider.class.d.ts +0 -9
  596. package/range-slider/lib/range-slider.component.d.ts +0 -301
  597. package/range-slider/lib/range-slider.module.d.ts +0 -8
  598. package/rate-picker/lib/calculatePercentage.d.ts +0 -27
  599. package/rate-picker/lib/rate-picker.component.d.ts +0 -131
  600. package/rate-picker/lib/rate-picker.module.d.ts +0 -8
  601. package/rest-api-generator/lib/query-params/query-params.component.d.ts +0 -16
  602. package/rest-api-generator/lib/request-body/request-body.component.d.ts +0 -22
  603. package/rest-api-generator/lib/request-headers/request-headers.component.d.ts +0 -22
  604. package/rest-api-generator/lib/rest-api-auth/rest-api-auth.component.d.ts +0 -22
  605. package/rest-api-generator/lib/rest-api-generator.component.d.ts +0 -14
  606. package/rest-api-generator/lib/rest-api-generator.module.d.ts +0 -19
  607. package/rest-api-generator/lib/rest-api-generator.service.d.ts +0 -7
  608. package/rest-api-generator/lib/types.d.ts +0 -20
  609. package/result/lib/result.component.d.ts +0 -24
  610. package/result/lib/result.module.d.ts +0 -8
  611. package/routing-progress/lib/routing-progress.component.d.ts +0 -30
  612. package/routing-progress/lib/routing-progress.module.d.ts +0 -8
  613. package/scheduler/lib/scheduler.class.d.ts +0 -77
  614. package/scheduler/lib/scheduler.component.d.ts +0 -91
  615. package/scheduler/lib/scheduler.module.d.ts +0 -11
  616. package/scheduler/lib/scheduler.service.d.ts +0 -78
  617. package/scheduler/lib/views/agenda/scheduler-agenda-view.component.d.ts +0 -45
  618. package/scheduler/lib/views/day/scheduler-day-view.component.d.ts +0 -44
  619. package/scheduler/lib/views/month/scheduler-month-view.component.d.ts +0 -59
  620. package/scheduler/lib/views/timeline-day/scheduler-timeline-day-view.component.d.ts +0 -39
  621. package/scheduler/lib/views/timeline-month/scheduler-timeline-month-view.component.d.ts +0 -47
  622. package/scheduler/lib/views/timeline-multi-day/scheduler-timeline-multi-day-view.component.d.ts +0 -40
  623. package/scheduler/lib/views/week/scheduler-week-view.component.d.ts +0 -74
  624. package/scss/lib/scss.module.d.ts +0 -7
  625. package/search-box/lib/search-box.component.d.ts +0 -40
  626. package/search-box/lib/search-box.module.d.ts +0 -14
  627. package/select-box/lib/select-box.component.d.ts +0 -139
  628. package/select-box/lib/select-box.module.d.ts +0 -20
  629. package/selection-list/lib/selection-list.component.d.ts +0 -77
  630. package/selection-list/lib/selection-list.module.d.ts +0 -13
  631. package/side-menu/lib/side-menu-item/side-menu-item.component.d.ts +0 -30
  632. package/side-menu/lib/side-menu.component.d.ts +0 -39
  633. package/side-menu/lib/side-menu.directive.d.ts +0 -14
  634. package/side-menu/lib/side-menu.module.d.ts +0 -15
  635. package/skeleton/lib/skeleton.component.d.ts +0 -18
  636. package/skeleton/lib/skeleton.module.d.ts +0 -8
  637. package/slider/lib/slider.component.d.ts +0 -92
  638. package/slider/lib/slider.module.d.ts +0 -10
  639. package/sliding-item/lib/sliding-item/sliding-item.component.d.ts +0 -13
  640. package/sliding-item/lib/sliding-item-prefix/sliding-item-prefix.component.d.ts +0 -11
  641. package/sliding-item/lib/sliding-item-suffix/sliding-item-suffix.component.d.ts +0 -11
  642. package/sliding-item/lib/sliding-item.module.d.ts +0 -11
  643. package/step-wizard/lib/step-wizard-item/step-wizard-item.component.d.ts +0 -21
  644. package/step-wizard/lib/step-wizard.class.d.ts +0 -7
  645. package/step-wizard/lib/step-wizard.component.d.ts +0 -63
  646. package/step-wizard/lib/step-wizard.directive.d.ts +0 -11
  647. package/step-wizard/lib/step-wizard.module.d.ts +0 -13
  648. package/switch/lib/switch-content.component.d.ts +0 -10
  649. package/switch/lib/switch.component.d.ts +0 -29
  650. package/switch/lib/switch.module.d.ts +0 -10
  651. package/tabs/lib/tab-content.directive.d.ts +0 -11
  652. package/tabs/lib/tab-item.component.d.ts +0 -56
  653. package/tabs/lib/tabs.class.d.ts +0 -8
  654. package/tabs/lib/tabs.component.d.ts +0 -76
  655. package/tabs/lib/tabs.module.d.ts +0 -12
  656. package/tag/lib/tag.component.d.ts +0 -16
  657. package/tag/lib/tag.module.d.ts +0 -8
  658. package/tag-box/lib/tag-box.component.d.ts +0 -32
  659. package/tag-box/lib/tag-box.module.d.ts +0 -7
  660. package/text-area/lib/text-area.component.d.ts +0 -41
  661. package/text-area/lib/text-area.module.d.ts +0 -9
  662. package/text-box/lib/mask-options.directive.d.ts +0 -17
  663. package/text-box/lib/text-box.component.d.ts +0 -61
  664. package/text-box/lib/text-box.module.d.ts +0 -13
  665. package/time-duration/lib/time-duration.component.d.ts +0 -37
  666. package/time-duration/lib/time-duration.module.d.ts +0 -7
  667. package/time-duration/lib/time-duration.type.d.ts +0 -1
  668. package/time-line/lib/time-line-item.component.d.ts +0 -14
  669. package/time-line/lib/time-line.component.d.ts +0 -9
  670. package/time-line/lib/time-line.module.d.ts +0 -9
  671. package/toast/lib/toast.class.d.ts +0 -27
  672. package/toast/lib/toast.component.d.ts +0 -44
  673. package/toast/lib/toast.config.d.ts +0 -14
  674. package/toast/lib/toast.module.d.ts +0 -13
  675. package/toast/lib/toast.service.d.ts +0 -34
  676. package/toolbar/lib/toolbar.component.d.ts +0 -12
  677. package/toolbar/lib/toolbar.module.d.ts +0 -8
  678. package/tooltip/lib/tooltip.component.d.ts +0 -21
  679. package/tooltip/lib/tooltip.directive.d.ts +0 -29
  680. package/tooltip/lib/tooltip.module.d.ts +0 -10
  681. package/tree-view/lib/tree-view-item.component.d.ts +0 -20
  682. package/tree-view/lib/tree-view.class.d.ts +0 -47
  683. package/tree-view/lib/tree-view.component.d.ts +0 -98
  684. package/tree-view/lib/tree-view.component.module.d.ts +0 -16
  685. package/uploader/lib/uploader-browse-handle.directive.d.ts +0 -11
  686. package/uploader/lib/uploader-dialog-container/uploader-dialog-container.component.d.ts +0 -24
  687. package/uploader/lib/uploader-drop-zone/uploader-drop-zone.component.d.ts +0 -12
  688. package/uploader/lib/uploader-list/uploader-list.component.d.ts +0 -12
  689. package/uploader/lib/uploader-zone.directive.d.ts +0 -31
  690. package/uploader/lib/uploader.models.d.ts +0 -52
  691. package/uploader/lib/uploader.module.d.ts +0 -21
  692. package/uploader/lib/uploader.service.d.ts +0 -30
  693. package/video-player/lib/video-player/video-player.component.d.ts +0 -6
  694. package/video-player/lib/video-player.module.d.ts +0 -7
  695. package/wysiwyg/lib/wysiwyg/wysiwyg-container/wysiwyg-container.component.d.ts +0 -40
  696. package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-alignment/wysiwyg-alignment.component.d.ts +0 -28
  697. package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-colors/wysiwyg-colors.component.d.ts +0 -40
  698. package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-font-style/wysiwyg-font-style.component.d.ts +0 -37
  699. package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-history/wysiwyg-history.component.d.ts +0 -16
  700. package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-insert/wysiwyg-insert.component.d.ts +0 -30
  701. package/wysiwyg/lib/wysiwyg/wysiwyg-tools/wysiwyg-list/wysiwyg-list.component.d.ts +0 -20
  702. package/wysiwyg/lib/wysiwyg/wysiwyg-view/wysiwyg-view.component.d.ts +0 -16
  703. package/wysiwyg/lib/wysiwyg/wysiwyg.service.d.ts +0 -11
  704. package/wysiwyg/lib/wysiwyg.module.d.ts +0 -21
@@ -1 +1 @@
1
- {"version":3,"file":"acorex-components-conversation.mjs","sources":["../../../../packages/components/conversation/src/lib/classes/events.interface.ts","../../../../packages/components/conversation/src/lib/conversation-container/conversation-container.component.ts","../../../../packages/components/conversation/src/lib/conversation-container/conversation-container.component.html","../../../../packages/components/conversation/src/lib/services/conversation.service.ts","../../../../packages/components/conversation/src/lib/services/recording.service.ts","../../../../packages/components/conversation/src/lib/conversation-input/conversation-input.component.ts","../../../../packages/components/conversation/src/lib/conversation-input/conversation-input.component.html","../../../../packages/components/conversation/src/lib/services/conversation-message-type-registry.service.ts","../../../../packages/components/conversation/src/lib/conversation-message/conversation-message.component.ts","../../../../packages/components/conversation/src/lib/conversation-message/conversation-message.component.html","../../../../packages/components/conversation/src/lib/conversation.types.ts","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.ts","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.html","../../../../packages/components/conversation/src/lib/conversation-view/conversation-view.component.ts","../../../../packages/components/conversation/src/lib/conversation-view/conversation-view.component.html","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-file/conversation-message-file.component.ts","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-file/conversation-message-file.component.html","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-image-popup/conversation-message-image-popup.component.ts","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-image/conversation-message-image.component.ts","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-text/conversation-message-text.component.ts","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-video/conversation-message-video.component.ts","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.ts","../../../../packages/components/conversation/src/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.html","../../../../packages/components/conversation/src/lib/conversation.module.ts","../../../../packages/components/conversation/src/acorex-components-conversation.ts"],"sourcesContent":["import { AXEvent, AXHtmlEvent } from '@acorex/cdk/common';\n\nexport interface AXInputFileChange extends AXHtmlEvent<MouseEvent> {\n data?: any;\n}\nexport class AXConversationActionEvent extends AXEvent {\n data: any;\n}\n","import { AXComponent, AXFocusableComponent, AXValuableComponent } from '@acorex/cdk/common';\nimport { Component, forwardRef, ViewEncapsulation } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\n\n/**\n * A container for displaying and managing conversations.\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-container',\n templateUrl: './conversation-container.component.html',\n styleUrl: './conversation-container.component.scss',\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXComponent, useExisting: AXConversationContainerComponent },\n { provide: AXFocusableComponent, useExisting: AXConversationContainerComponent },\n { provide: AXValuableComponent, useExisting: AXConversationContainerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXConversationContainerComponent),\n multi: true,\n },\n ],\n})\nexport class AXConversationContainerComponent {}\n","<div class=\"ax-conversation-container\">\n <ng-content> </ng-content>\n</div>\n","import { Injectable, signal } from '@angular/core';\n\n@Injectable()\nexport class AXConversationService {\n replyId = signal('');\n chats = signal([]);\n}\n","import { Injectable, WritableSignal, signal } from '@angular/core';\n\n@Injectable()\nexport class AXRecordingService {\n audioBlobs: any[] = [];\n mediaRecorder: MediaRecorder | null;\n streamBeingCaptured: any = null;\n\n timer: WritableSignal<string> = signal('00:0');\n\n protected time = {\n seconds: 0,\n minutes: 0,\n hours: 0,\n };\n\n protected timerInterval;\n\n startRecording() {\n if (!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia)) {\n return Promise.reject(new Error('mediaDevices API or getUserMedia method is not supported in this browser.'));\n } else {\n return navigator.mediaDevices.getUserMedia({ audio: true }).then((stream) => {\n this.streamBeingCaptured = stream;\n this.mediaRecorder = new MediaRecorder(stream);\n this.audioBlobs = [];\n this.mediaRecorder.addEventListener('dataavailable', (event) => {\n this.audioBlobs.push(event.data);\n });\n this.mediaRecorder.start();\n this.timerInterval = setInterval(() => {\n this.calculateTime();\n }, 1000);\n });\n }\n }\n\n endRecording() {\n return new Promise((resolve) => {\n const mimeType = this.mediaRecorder?.mimeType;\n this.mediaRecorder?.addEventListener('stop', () => {\n const audioBlob = new Blob(this.audioBlobs, { type: mimeType });\n resolve(audioBlob);\n });\n this.mediaRecorder?.stop();\n this.streamBeingCaptured.getTracks().forEach((track) => track.stop());\n this.mediaRecorder = null;\n this.streamBeingCaptured = null;\n this.resetTimer();\n });\n }\n\n calculateTime() {\n this.time.seconds++;\n if (this.time.seconds >= 60) {\n this.time.seconds = 0;\n this.time.minutes++;\n if (this.time.minutes >= 60) {\n this.time.minutes = 0;\n this.time.hours++;\n }\n }\n\n const formattedTime =\n (this.time.hours > 0 ? this.time.hours + ':' : '') +\n (this.time.minutes < 10 ? '0' + this.time.minutes : this.time.minutes) +\n ':' +\n (this.time.seconds < 10 ? '0' + this.time.seconds : this.time.seconds);\n\n this.timer.set(formattedTime);\n }\n\n resetTimer() {\n clearInterval(this.timerInterval);\n this.time.seconds = 0;\n this.time.minutes = 0;\n this.time.hours = 0;\n this.timer.set('00:0');\n }\n}\n","import {\n AXClickEvent,\n AXComponent,\n AXEvent,\n AXFocusableComponent,\n AXValuableComponent,\n MXInputBaseValueComponent,\n MXLookComponent,\n} from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXDropdownPanelComponent } from '@acorex/components/dropdown';\nimport { AXLoadingSpinnerComponent } from '@acorex/components/loading';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AsyncPipe } from '@angular/common';\nimport {\n ChangeDetectionStrategy,\n Component,\n ElementRef,\n Signal,\n ViewChild,\n ViewEncapsulation,\n WritableSignal,\n computed,\n contentChild,\n forwardRef,\n inject,\n input,\n output,\n signal,\n} from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport { AXConversationMessage } from '../conversation.types';\nimport { AXConversationService } from '../services/conversation.service';\nimport { AXRecordingService } from '../services/recording.service';\n\n/**\n * An input component for entering conversation messages.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-input',\n templateUrl: './conversation-input.component.html',\n styleUrls: ['./conversation-input.component.scss'],\n inputs: ['look', 'placeholder'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n providers: [\n { provide: AXComponent, useExisting: AXConversationInputComponent },\n { provide: AXFocusableComponent, useExisting: AXConversationInputComponent },\n { provide: AXValuableComponent, useExisting: AXConversationInputComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXConversationInputComponent),\n multi: true,\n },\n ],\n imports: [\n AXButtonComponent,\n AXDecoratorIconComponent,\n AXDropdownPanelComponent,\n FormsModule,\n AXLoadingSpinnerComponent,\n AsyncPipe,\n AXTranslatorPipe,\n ],\n})\nexport class AXConversationInputComponent extends classes(MXInputBaseValueComponent<string>, MXLookComponent) {\n /**\n * @ignore\n */\n @ViewChild('inputFile') protected inputFile: ElementRef<HTMLInputElement>;\n\n /**\n * @ignore\n */\n protected sendIcon = contentChild('ax-icon');\n\n /**\n * @ignore\n */\n protected conversationService = inject(AXConversationService);\n\n /**\n * @ignore\n */\n protected chats: Signal<AXConversationMessage<any>[]> = computed(() => {\n return this.conversationService.chats();\n });\n\n /**\n * @ignore\n */\n protected replyChat: Signal<AXConversationMessage<any>> = computed(() => {\n const findMessage = this.chats().find((item) => item.id === this.conversationService.replyId());\n return findMessage;\n });\n\n /** Maximum length of input text */\n maxLength = input<number>();\n\n /** Indicates if an attachment is present */\n hasAttachment = input<boolean>(true);\n\n /** Indicates if voice recording is enabled */\n hasVoice = input<boolean>(true);\n\n hasEmoji = input<boolean>(true);\n\n isLoading = input<boolean>(false);\n\n /** Acceptable file types for attachment */\n acceptFileType = input<string>('*');\n\n /**\n * Emitted when the send button is clicked.\n *\n * @event\n */\n onSendClick = output<AXClickEvent>();\n\n /**\n * Emitted when recording starts.\n *\n * @event\n */\n onStartRecording = output<AXClickEvent>();\n\n /**\n * Emitted when recording is canceled.\n *\n * @event\n */\n onCancelRecording = output<AXClickEvent>();\n\n onEnterPressed = output<AXEvent>();\n\n /**\n * @ignore\n */\n protected recording: WritableSignal<boolean> = signal(false);\n\n /**\n * @ignore\n */\n protected recordingService: AXRecordingService = inject(AXRecordingService);\n\n /**\n * @ignore\n */\n protected _updateOn: 'change' | 'blur' | 'submit' = 'change';\n\n /**\n * @ignore\n */\n protected _handleModelChange(value: string) {\n this.commitValue(value, true);\n }\n\n /**\n * Initiates recording when the record button is clicked.\n * Emits an event when recording starts.\n * @ignore\n */\n protected handleRecordClick() {\n this.recording.set(true);\n this.recordingService\n ?.startRecording()\n .then(() => {\n this.onStartRecording.emit({\n component: this,\n data: { recording: true },\n isUserInteraction: true,\n });\n })\n .catch((e) => {\n throw e;\n });\n }\n\n /**\n * Cancels the recording and emits an event to indicate cancellation.\n * @ignore\n */\n protected handleCancelRecordingClick() {\n this.recording.set(false);\n\n this.onCancelRecording.emit({\n component: this,\n data: { value: null },\n });\n }\n\n protected shiftState = false;\n protected keyDownHandler(e: KeyboardEvent) {\n if (e.key === 'Shift') {\n this.shiftState = true;\n }\n this.onKeyDown.emit({\n component: this,\n nativeEvent: e,\n });\n }\n protected keyUpHandler(e: KeyboardEvent) {\n if (e.key === 'Shift') {\n this.shiftState = false;\n }\n this.onKeyUp.emit({\n component: this,\n nativeEvent: e,\n });\n }\n protected keyPressHandler(e: KeyboardEvent) {\n if (e.key === 'Enter' && !this.shiftState) {\n e.preventDefault();\n this.onEnterPressed.emit({ component: this });\n }\n this.onKeyPress.emit({\n component: this,\n nativeEvent: e,\n });\n }\n /**\n * Opens the file picker for attachment.\n * @ignore\n */\n protected handleAttachClick() {\n this.inputFile.nativeElement.click();\n }\n\n /**\n * Emits the selected files when the file input changes.\n * @ignore\n */\n protected handleChangeFile(event: Event) {\n this.onSendClick.emit({\n component: this,\n data: { value: (event.target as HTMLInputElement).files, type: 'file' },\n });\n }\n\n /**\n * Emits the text value and optional replyChat when the send button is clicked.\n * @ignore\n */\n protected handleSendClick() {\n this.onSendClick.emit({\n component: this,\n data: { value: this.value, replyChat: this.replyChat() || null, type: 'text' },\n isUserInteraction: true,\n });\n this.conversationService.replyId.set('');\n }\n\n /**\n * Ends recording and emits the recorded voice data when the send voice button is clicked.\n * @ignore\n */\n protected handleSendVoiceClick() {\n this.recordingService.endRecording().then((c) => {\n this.recording.set(false);\n this.onSendClick.emit({\n component: this,\n data: { value: c, type: 'voice' },\n isUserInteraction: true,\n });\n });\n }\n\n /**\n * Clears the reply ID when closing a reply.\n * @ignore\n */\n protected closeReplyHandler() {\n this.conversationService.replyId.set('');\n }\n}\n","@if (replyChat()) {\n <div class=\"ax-editor-reply-container ax-editor-container ax-{{ look }}\">\n <div class=\"ax-reply-start\">\n <i class=\"fa-solid fa-reply\"></i>\n @switch (replyChat().type) {\n @case ('text') {\n <p>\n {{ replyChat().content }}\n </p>\n }\n @case ('image') {\n <div class=\"ax-reply-types\">\n <img src=\"{{ replyChat().content }}\" alt=\"\" />\n {{ replyChat().type }}\n </div>\n }\n @case ('video') {\n <div class=\"ax-reply-types\">\n <video src=\"{{ replyChat().content }}\" alt=\"\"></video>\n {{ replyChat().type }}\n </div>\n }\n @case ('file') {\n <div class=\"ax-reply-types\">\n <i class=\"fa-regular fa-folder-open\"></i>\n {{ replyChat().name }}\n </div>\n }\n @default {\n <p>\n {{ replyChat().type }}\n </p>\n }\n }\n </div>\n <i (click)=\"closeReplyHandler()\" class=\"fa-solid fa-xmark ax-cursor-pointer\"></i>\n </div>\n}\n\n<div class=\"ax-conversation-input ax-editor-container ax-{{ look }}\" [class.ax-state-recording]=\"recording()\">\n @if (recording()) {\n <div class=\"ax-conversation-input-start-side\">\n <span class=\"ax-record-dot\"></span>\n <span>{{ recordingService.timer() }}</span>\n </div>\n <div class=\"ax-conversation-input-main-side\">\n <ax-button\n class=\"ax-sm\"\n look=\"blank\"\n color=\"primary\"\n [text]=\"'cancel' | translate | async\"\n (onClick)=\"handleCancelRecordingClick()\"\n ></ax-button>\n </div>\n <div class=\"ax-conversation-input-end-side\">\n <ax-button look=\"solid\" color=\"danger\" class=\"ax-blob ax-sm\" (onClick)=\"handleSendVoiceClick()\">\n <ax-icon>\n <i class=\"ax-icon ax-icon-send\"></i>\n </ax-icon>\n </ax-button>\n </div>\n } @else {\n @if (hasEmoji()) {\n <div class=\"ax-conversation-input-start-side\">\n <ax-button look=\"blank\" class=\"ax-sm\">\n <ax-icon>\n <i class=\"ax-icon ax-icon-emoji\"></i>\n </ax-icon>\n <ax-dropdown-panel>\n <ng-container>\n <div class=\"ax-emoji-container\">\n <div>⚠️</div>\n <div>➡️</div>\n <div>🔃</div>\n <div>🔷</div>\n <div>🤚</div>\n <div>😂</div>\n <div>😊</div>\n </div>\n </ng-container>\n </ax-dropdown-panel>\n </ax-button>\n </div>\n }\n\n <textarea\n class=\"ax-conversation-input-main-side\"\n oninput='this.style.height = \"\";this.style.height = this.scrollHeight + \"px\"'\n type=\"text\"\n rows=\"1\"\n [id]=\"id\"\n [name]=\"name\"\n [attr.placeholder]=\"placeholder\"\n [attr.maxlength]=\"maxLength()\"\n [disabled]=\"disabled\"\n [readonly]=\"readonly\"\n [tabindex]=\"tabIndex\"\n [ngModel]=\"value\"\n (ngModelChange)=\"_handleModelChange($event)\"\n [ngModelOptions]=\"{ updateOn: _updateOn }\"\n (keydown)=\"keyDownHandler($event)\"\n (keyup)=\"keyUpHandler($event)\"\n (keypress)=\"keyPressHandler($event)\"\n (focus)=\"emitOnFocusEvent($event)\"\n (blur)=\"emitOnBlurEvent($event)\"\n >\n </textarea>\n\n <div class=\"ax-conversation-input-end-side\">\n @if (!value) {\n @if (hasAttachment()) {\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"handleAttachClick()\">\n <ax-icon>\n <i class=\"ax-icon ax-icon-attach\"></i>\n </ax-icon>\n </ax-button>\n <input\n multiple\n #inputFile\n [accept]=\"acceptFileType()\"\n type=\"file\"\n class=\"ax-attach-input\"\n (change)=\"handleChangeFile($event)\"\n />\n }\n @if (hasVoice()) {\n <ax-button look=\"blank\" class=\"ax-sm\" (onClick)=\"handleRecordClick()\">\n <ax-icon>\n <i class=\"ax-icon ax-icon-mic\"></i>\n </ax-icon>\n </ax-button>\n }\n } @else {\n <ax-button [disabled]=\"isLoading()\" look=\"solid\" color=\"primary\" class=\"ax-sm\" (onClick)=\"handleSendClick()\">\n @if (isLoading()) {\n <ax-loading-spinner color=\"primary\"></ax-loading-spinner>\n } @else {\n @if (sendIcon()) {\n <ng-content select=\"ax-icon\"></ng-content>\n } @else {\n <ax-icon>\n <i class=\"ax-icon ax-icon-arrow-long-up\"></i>\n </ax-icon>\n }\n }\n </ax-button>\n }\n </div>\n }\n</div>\n","import { Injectable } from '@angular/core';\nimport { AXConversationMessageType } from '../conversation.types';\n\n@Injectable({ providedIn: 'root' })\nexport class AXConversationMessageTypeRegistryService {\n private plugins: Map<string, AXConversationMessageType> = new Map<string, AXConversationMessageType>();\n\n register(...plugins: AXConversationMessageType[]) {\n plugins.forEach((p) => this.plugins.set(p.name, p));\n }\n\n public resolve(name: string): AXConversationMessageType | undefined {\n return this.plugins.get(name);\n }\n}\n","import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXAvatarComponent } from '@acorex/components/avatar';\nimport { AXButtonComponent, AXButtonItemComponent, AXButtonItemListComponent } from '@acorex/components/button';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXFormatPipe } from '@acorex/core/format';\nimport { isBrowser } from '@acorex/core/platform';\nimport { CdkPortalOutlet, CdkPortalOutletAttachedRef, ComponentPortal } from '@angular/cdk/portal';\nimport { AsyncPipe } from '@angular/common';\nimport {\n Component,\n ComponentRef,\n HostBinding,\n ViewEncapsulation,\n computed,\n inject,\n input,\n viewChild,\n} from '@angular/core';\nimport { AXConversationMessage } from '../conversation.types';\nimport { AXConversationMessageTypeRegistryService } from '../services/conversation-message-type-registry.service';\nimport { AXConversationService } from '../services/conversation.service';\n\n/**\n * A component for displaying individual conversation messages.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-message',\n templateUrl: './conversation-message.component.html',\n styleUrls: ['./conversation-message.component.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n AXAvatarComponent,\n CdkPortalOutlet,\n AXButtonComponent,\n AXDecoratorIconComponent,\n AXPopoverComponent,\n AXDecoratorGenericComponent,\n AXButtonItemListComponent,\n AXButtonItemComponent,\n AsyncPipe,\n AXFormatPipe,\n ],\n providers: [{ provide: AXComponent, useExisting: AXConversationMessageComponent }],\n})\nexport class AXConversationMessageComponent extends MXBaseComponent {\n /**\n * @ignore\n */\n protected popover = viewChild<AXPopoverComponent>('popover');\n\n isReply = input(true);\n\n /**\n * @ignore\n */\n protected conversationService = inject(AXConversationService);\n\n /**\n * The message data to display in the conversation.\n */\n chatMessage = input<AXConversationMessage<any>>();\n\n /**\n * @ignore\n */\n protected registryService = inject(AXConversationMessageTypeRegistryService);\n\n /**\n * @ignore\n */\n protected portal = computed<ComponentPortal<any> | null>(() => {\n return new ComponentPortal(this.registryService.resolve(this.chatMessage().type).component);\n });\n\n protected messageType = computed(() => {\n return this.chatMessage().type;\n });\n\n /**\n * @ignore\n */\n protected get isOwn(): boolean {\n return !this.chatMessage().fromId;\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n get __hostClass(): string {\n return `${this.isOwn ? 'ax-state-own' : ''} ${!this.isOwn ? 'ax-state-other' : ''}`;\n }\n\n /**\n * @ignore\n */\n protected _handleAttached(ref: CdkPortalOutletAttachedRef) {\n ref = ref as ComponentRef<unknown>;\n if (ref.instance && isBrowser()) {\n Object.assign(ref.instance, { message: this.chatMessage() });\n\n const prefixContainer = this.getHostElement().querySelector('.ax-message-prefix');\n const suffixContainer = this.getHostElement().querySelector('.ax-message-suffix');\n prefixContainer.innerHTML = '';\n suffixContainer.innerHTML = '';\n\n const prefix = this.getHostElement().querySelector('ax-prefix') as HTMLDivElement;\n const suffix = this.getHostElement().querySelector('ax-suffix') as HTMLDivElement;\n\n if (prefix && prefixContainer) {\n prefix.style.display = 'flex';\n prefixContainer.append(prefix);\n }\n if (suffix && suffixContainer) {\n suffix.style.display = 'flex';\n suffixContainer.append(suffix);\n }\n }\n }\n\n /**\n * @ignore\n */\n protected handleResendClick() {\n this.popover()?.close();\n this.chatMessage().onResendClick();\n }\n\n /**\n * @ignore\n */\n protected handleDeleteClick() {\n this.popover()?.close();\n this.chatMessage().onDeleteClick();\n }\n\n /**\n * @ignore\n */\n protected replyHandler(e) {\n this.conversationService.replyId.set(e);\n }\n}\n","@if (chatMessage().fromId) {\n <ax-avatar color=\"primary\" [size]=\"36\"> </ax-avatar>\n}\n\n@if (isOwn && isReply()) {\n <i (click)=\"replyHandler(chatMessage().id)\" class=\"fa-solid fa-reply ax-cursor-pointer\"></i>\n}\n\n<div class=\"ax-message-content\" [class]=\"'ax-type-' + messageType()\" [class.ax-state-own]=\"!chatMessage().fromId\" [class.ax-state-other]=\"chatMessage().fromId\">\n <ng-template [cdkPortalOutlet]=\"portal()\" (attached)=\"_handleAttached($event)\"></ng-template>\n\n <div class=\"ax-chat-message-status\">\n <div class=\"ax-message-prefix\"></div>\n <div>\n <div class=\"ax-message-suffix\"></div>\n <span>\n {{ chatMessage().sendTime | format: 'datetime' : 'HH:mm' | async }}\n </span>\n <span>\n @if (isOwn) {\n @if (chatMessage().deliverTime && chatMessage().sendTime) {\n <i class=\"ax-icon ax-icon-check ax-message-status\"></i>\n }\n @if (chatMessage().readTime && chatMessage().sendTime) {\n <i class=\"ax-icon ax-icon-dobble-check ax-message-status\"></i>\n }\n }\n </span>\n </div>\n </div>\n</div>\n\n@if (!chatMessage().sendTime) {\n <ax-button class=\"ax-resend-button ax-xs\" color=\"danger\" #b>\n <ax-icon class=\"ax-icon ax-icon-error\"></ax-icon>\n\n <ax-popover [target]=\"b\" placement=\"bottom-end\" #popover>\n <div class=\"ax-overlay-pane\">\n <ax-content> </ax-content>\n <ax-button-item-list>\n @if (chatMessage().onResendClick) {\n <ax-button-item text=\"Resend\" (onClick)=\"handleResendClick()\">\n <ax-icon class=\"ax-icon ax-icon-reload ax-bold\"></ax-icon>\n </ax-button-item>\n }\n @if (chatMessage().onDeleteClick) {\n <ax-button-item text=\"Delete\" color=\"danger\" (onClick)=\"handleDeleteClick()\">\n <ax-icon class=\"ax-icon ax-icon-clear ax-bold\"></ax-icon>\n </ax-button-item>\n }\n </ax-button-item-list>\n </div>\n </ax-popover>\n </ax-button>\n}\n","import { Injectable, Type } from '@angular/core';\n\nexport interface AXConversationMessageType {\n name: string;\n component: Type<any>;\n}\n\nexport interface AXConversationMessage<T> {\n id: string;\n type: string;\n sendTime: Date | null;\n deliverTime?: Date;\n readTime?: Date;\n replyTo?: AXConversationMessage<T>;\n content: any;\n fromId?: string;\n name: string;\n onResendClick?: () => void;\n onDeleteClick?: () => void;\n onDownloadClick?: () => void;\n onCancelClick?: () => void;\n}\n\n@Injectable()\nexport class AXConversationMessageBaseComponent<T> {\n message: AXConversationMessage<T>;\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXRangeSliderComponent } from '@acorex/components/range-slider';\nimport { AXFormatPipe } from '@acorex/core/format';\nimport { AsyncPipe } from '@angular/common';\nimport { Component, OnDestroy, Renderer2, ViewEncapsulation, afterNextRender, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\n\n/**\n * Component for displaying audio messages in a conversation.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-message-audio',\n templateUrl: './conversation-message-audio.component.html',\n styleUrls: ['./conversation-message-audio.component.scss'],\n encapsulation: ViewEncapsulation.None,\n imports: [\n AXDecoratorGenericComponent,\n AXButtonComponent,\n AXRangeSliderComponent,\n FormsModule,\n AsyncPipe,\n AXFormatPipe,\n ],\n providers: [{ provide: AXComponent, useExisting: AXConversationMessageAudioComponent }],\n})\nexport class AXConversationMessageAudioComponent\n extends AXConversationMessageBaseComponent<string>\n implements OnDestroy\n{\n rendrer = inject(Renderer2);\n /**\n * @ignore\n */\n protected audioState = signal<'playing' | 'paused'>('paused');\n\n /**\n * @ignore\n */\n // audioTag = viewChild<ElementRef<HTMLAudioElement>>('a');\n protected audioTag = signal(new Audio());\n\n /**\n * @ignore\n */\n protected audioRate = signal(1);\n\n /**\n * @ignore\n */\n protected currentTime = signal(0);\n\n /**\n * @ignore\n */\n protected duration = signal(0);\n\n /**\n * @ignore\n */\n protected currentTimeFormat = signal(0);\n\n /**\n * @ignore\n */\n protected durationFormat = signal(0);\n\n /**\n * @ignore\n */\n protected endedEvent;\n\n /**\n * @ignore\n */\n protected durationchangeEvent;\n\n /**\n * @ignore\n */\n protected timeupdateEvent;\n\n /**\n * @ignore\n */\n constructor() {\n super();\n afterNextRender(() => {\n this.audioTag().autoplay = false;\n this.audioTag().src = this.message.content;\n this.rendrer.listen(this.audioTag(), 'ended', this.endedFunction.bind(this));\n this.rendrer.listen(this.audioTag(), 'durationchange', this.durationchangeFunction.bind(this));\n this.rendrer.listen(this.audioTag(), 'timeupdate', this.timeupdateFunction.bind(this));\n });\n }\n\n /**\n * @ignore\n */\n ngOnDestroy(): void {\n if (this.endedEvent) {\n this.endedEvent();\n }\n if (this.durationchangeEvent) {\n this.durationchangeEvent();\n }\n if (this.timeupdateEvent) {\n this.timeupdateEvent();\n }\n }\n\n /**\n * @ignore\n */\n protected endedFunction() {\n this.audioState.set('paused');\n this.audioTag().pause();\n this.audioTag().currentTime = 0;\n this.currentTime.set(0);\n }\n\n /**\n * @ignore\n */\n protected durationchangeFunction() {\n if (this.audioTag().duration === Infinity) return;\n this.duration.set(this.audioTag().duration);\n this.durationFormat.set(Math.ceil(this.audioTag().duration) * 1000);\n }\n\n /**\n * @ignore\n */\n protected timeupdateFunction() {\n this.currentTime.set(this.audioTag().currentTime);\n this.currentTimeFormat.set(Math.ceil(this.audioTag().currentTime * 1000));\n }\n /**\n * Seeks to the specified time and resumes audio playback.\n *\n * @param e - Time in seconds to seek to.\n * @ignore\n */\n protected clickHandler(e: any) {\n this.audioTag().currentTime = e as number;\n }\n\n /**\n * Pauses the audio and updates the state to 'paused'.\n * @ignore\n */\n protected handlePauseClick() {\n this.audioState.set('paused');\n this.audioTag().pause();\n }\n\n /**\n * Plays the audio and updates the state to 'playing'.\\\n * @ignore\n */\n protected handlePlayClick() {\n this.audioState.set('playing');\n this.audioTag().play();\n }\n\n /**\n * Toggles the playback rate of the audio between 1x, 1.5x, and 2x.\n * @ignore\n */\n protected handleRateClick() {\n if (this.audioRate() === 1) {\n this.audioRate.set(1.5);\n this.audioTag().playbackRate = 1.5;\n } else if (this.audioRate() === 1.5) {\n this.audioRate.set(2);\n this.audioTag().playbackRate = 2;\n } else if (this.audioRate() === 2) {\n this.audioRate.set(1);\n this.audioTag().playbackRate = 1;\n }\n }\n}\n","<ax-prefix>\n <div class=\"ax-time-rate\">\n @switch (audioState()) {\n @case ('paused') {\n {{ currentTimeFormat() | format: 'time-duration' | async }}\n }\n @case ('playing') {\n {{ currentTimeFormat() | format: 'time-duration' | async }}\n }\n @default {\n {{ durationFormat() | format: 'time-duration' | async }}\n }\n }\n <ax-button color=\"primary\" look=\"solid\" text=\"{{ audioRate() }}X\" class=\"ax-audio-speed\" (click)=\"handleRateClick()\"></ax-button>\n </div>\n</ax-prefix>\n<div class=\"ax-conversation-controller\">\n @switch (audioState()) {\n @case ('playing') {\n <button (click)=\"handlePauseClick()\">\n <i class=\"ax-icon ax-icon-pause\"></i>\n </button>\n }\n @case ('paused') {\n <button (click)=\"handlePlayClick()\">\n <i class=\"ax-icon ax-icon-play\"></i>\n </button>\n }\n }\n</div>\n<ax-range-slider\n class=\"ax-modify-bgSlider\"\n (ngModelChange)=\"clickHandler($event)\"\n [max]=\"duration()\"\n [min]=\"0\"\n mode=\"single\"\n [ngModel]=\"currentTime()\"\n color=\"primary\"\n>\n</ax-range-slider>\n","import { AXComponent, AXEvent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXVirtualScrollingContainerDirective, AXVirtualScrollingItemDirective } from '@acorex/cdk/virtual-scroll';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation, inject, input, output } from '@angular/core';\nimport { AXConversationActionEvent } from '../classes/events.interface';\nimport { AXConversationMessageComponent } from '../conversation-message/conversation-message.component';\nimport { AXConversationService } from '../services/conversation.service';\n\n/**\n * Displays the conversation view with messages and interactions.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-view',\n templateUrl: './conversation-view.component.html',\n styleUrls: ['./conversation-view.component.scss'],\n changeDetection: ChangeDetectionStrategy.OnPush,\n encapsulation: ViewEncapsulation.None,\n imports: [AXVirtualScrollingContainerDirective, AXConversationMessageComponent, AXVirtualScrollingItemDirective],\n providers: [{ provide: AXComponent, useExisting: AXConversationViewComponent }],\n})\nexport class AXConversationViewComponent extends MXBaseComponent {\n /** @ignore */\n protected conversationService = inject(AXConversationService);\n\n onScrollEnd = output<AXEvent>();\n\n height = input<string>('30vh');\n\n isReply = input(true);\n\n /**\n * Emits an event when an action is performed within the conversation view.\n *\n * @event\n */\n onAction = output<AXConversationActionEvent>();\n\n updatePrevItems(item: any[]) {\n this.conversationService.chats.update((prev) => [...item, ...prev]);\n }\n\n callForUpdate() {\n this.onScrollEnd.emit({ component: this });\n }\n\n addNewItem(item: any) {\n this.conversationService.chats.update((prev) => [...prev, item]);\n }\n}\n","<div axVirtualScrollingContainer (ScrollEnd)=\"callForUpdate()\" [height]=\"height()\">\n @for (item of conversationService.chats(); track item.id) {\n <ax-conversation-message\n [isReply]=\"isReply()\"\n axVirtualScrollingItem\n [chatMessage]=\"item\"\n ></ax-conversation-message>\n }\n</div>\n","/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { AXComponent } from '@acorex/cdk/common';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXLoadingSpinnerComponent } from '@acorex/components/loading';\nimport { AXFileService } from '@acorex/core/file';\nimport { AXFormatPipe } from '@acorex/core/format';\nimport { AsyncPipe } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport { Component, ViewEncapsulation, WritableSignal, afterNextRender, inject, signal } from '@angular/core';\nimport { AXConversationViewComponent } from '../../conversation-view/conversation-view.component';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\n\n/**\n * Component for displaying file messages in a conversation.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-message-file',\n templateUrl: './conversation-message-file.component.html',\n styleUrl: './conversation-message-file.component.scss',\n encapsulation: ViewEncapsulation.None,\n imports: [AXDecoratorGenericComponent, AXLoadingSpinnerComponent, AsyncPipe, AXFormatPipe],\n providers: [{ provide: AXComponent, useExisting: AXConversationFileMessageComponent }],\n})\nexport class AXConversationFileMessageComponent extends AXConversationMessageBaseComponent<string> {\n /**\n * @ignore\n */\n fileState: WritableSignal<'loading' | 'ready' | 'error'> = signal('ready');\n /**\n * @ignore\n */\n fileSize: WritableSignal<number> = signal(null);\n /**\n * @ignore\n */\n fileName: WritableSignal<string> = signal('');\n\n /**\n * @ignore\n */\n fileService = inject(AXFileService);\n /**\n * @ignore\n */\n http = inject(HttpClient);\n /**\n * @ignore\n */\n parent = inject(AXConversationViewComponent);\n\n /**\n * @ignore\n */\n constructor() {\n super();\n afterNextRender(() => {\n if (this.message.name) {\n this.fileName.set(this.message.name);\n this.fileSize.set(this.fileService.getSize(this.message.content) as number);\n } else {\n this.fileName.set(this.message.content[0].name);\n this.fileSize.set(this.message.content[0].size);\n }\n });\n }\n\n /**\n * Emits a download action event for the file.\n * @ignore\n */\n handleDownloadFile() {\n this.parent.onAction.emit({ component: this, data: this.message, isUserInteraction: true });\n }\n\n /**\n * Emits a cancel action event for the file loading.\n * @ignore\n */\n handleCancelLoading() {\n this.parent.onAction.emit({ component: this, data: this.message, isUserInteraction: true });\n }\n}\n","<ax-prefix>\n {{ fileSize() | format: 'filesize' | async }}\n</ax-prefix>\n<div class=\"ax-file-container\">\n <div class=\"ax-conversation-controller\">\n @switch (fileState()) {\n @case ('ready') {\n <button (click)=\"handleDownloadFile()\">\n <i class=\"ax-icon ax-icon-download\"></i>\n </button>\n }\n\n @default {\n <button (click)=\"handleCancelLoading()\">\n <ax-loading-spinner\n [size]=\"24\"\n [stroke]=\"2\"\n [color]=\"message.fromId ? 'white' : 'warning'\"\n ></ax-loading-spinner>\n </button>\n }\n }\n </div>\n\n <div class=\"ax-file-name\">{{ fileName() }}</div>\n</div>\n","import { AXComponent } from '@acorex/cdk/common';\nimport { afterNextRender, Component, ViewEncapsulation } from '@angular/core';\n\n/**\n * A popup component for displaying an image in full view.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-message-image-popup',\n template: `<img class=\"ax-image-popup\" [src]=\"url\" alt=\"\" />`,\n styleUrl: './conversation-message-image-popup.component.scss',\n encapsulation: ViewEncapsulation.None,\n providers: [{ provide: AXComponent, useExisting: ConversationMessageImagePopupComponent }],\n})\nexport class ConversationMessageImagePopupComponent {\n /**\n * @ignore\n */\n protected url: string;\n\n /**\n * @ignore\n */\n constructor() {\n afterNextRender(() => {\n console.log(this.url);\n });\n }\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { AXPopupService, AXPopupSizeType } from '@acorex/components/popup';\nimport { Component, afterNextRender, inject, signal } from '@angular/core';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\nimport { ConversationMessageImagePopupComponent } from '../conversation-message-image-popup/conversation-message-image-popup.component';\n\n/**\n * A component for displaying an image within a conversation message.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-message-image',\n template: `<img (click)=\"openPopup()\" [src]=\"_imageUrl()\" alt=\"\" /> `,\n styles: `\n img {\n cursor: pointer;\n width: 100%;\n height: 100%;\n }\n `,\n inputs: ['message'],\n providers: [{ provide: AXComponent, useExisting: AXConversationMessageImageComponent }],\n})\nexport class AXConversationMessageImageComponent extends AXConversationMessageBaseComponent<string> {\n /**\n * @ignore\n */\n protected _imageUrl = signal('');\n\n /**\n * @ignore\n */\n private popup: AXPopupService = inject(AXPopupService);\n\n /**\n * @ignore\n */\n protected _options = {\n header: true,\n footer: false,\n size: 'md',\n draggable: true,\n hasBackdrop: true,\n closeButton: true,\n closeOnBackdropClick: false,\n };\n\n /**\n * @ignore\n */\n constructor() {\n super();\n afterNextRender(() => {\n this._imageUrl.set(this.message?.content);\n });\n }\n\n /**\n * Opens a popup displaying the image with options for draggable, size, and backdrop.\n * @ignore\n */\n openPopup() {\n this.popup\n .open(ConversationMessageImagePopupComponent, {\n draggable: this._options.draggable,\n header: this._options.header,\n size: this._options.size as AXPopupSizeType,\n hasBackdrop: this._options.hasBackdrop,\n closeButton: this._options.closeButton,\n closeOnBackdropClick: this._options.closeOnBackdropClick,\n data: {\n url: this._imageUrl(),\n },\n })\n .then((c) => {\n console.log(c);\n });\n }\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { Component, OnInit, ViewEncapsulation, signal } from '@angular/core';\nimport { AXConversationMessage, AXConversationMessageBaseComponent } from '../../conversation.types';\n\n/**\n * A component for displaying a text message with optional reply content, including text, images, videos, files, and audio.\n *\n * @category Components\n */\n@Component({\n template: `\n @if (replyText()) {\n <div class=\"ax-message-reply-container\">{{ replyText().content }}</div>\n }\n\n @if (replyImage()) {\n <div class=\"ax-message-reply-container\"><img [src]=\"replyImage()\" alt=\"\" /></div>\n }\n\n @if (replyVideo()) {\n <div class=\"ax-message-reply-container\"><video [src]=\"replyVideo()\"></video></div>\n }\n\n @if (replyFile()) {\n <div class=\"ax-message-reply-container\">\n <div class=\"file\">\n <i class=\"fa-regular fa-folder-open\"></i>\n {{ replyFile().name }}\n </div>\n </div>\n }\n\n @if (replyAudio() || replyVoice()) {\n <div class=\"ax-message-reply-container\">{{ replyAudio().type }}</div>\n }\n\n <div class=\"ax-text-message\" [innerHtml]=\"_text()\"></div>\n `,\n styleUrl: './conversation-message-text.component.scss',\n encapsulation: ViewEncapsulation.None,\n inputs: ['message'],\n providers: [{ provide: AXComponent, useExisting: AXConversationTextMessageComponent }],\n})\nexport class AXConversationTextMessageComponent extends AXConversationMessageBaseComponent<string> implements OnInit {\n /**\n * @ignore\n */\n protected _text = signal('');\n\n /**\n * @ignore\n */\n protected replyText = signal<AXConversationMessage<string> | null>(null);\n\n /**\n * @ignore\n */\n protected replyImage = signal<AXConversationMessage<string> | null>(null);\n\n /**\n * @ignore\n */\n protected replyVideo = signal<AXConversationMessage<string> | null>(null);\n\n /**\n * @ignore\n */\n protected replyAudio = signal<AXConversationMessage<string> | null>(null);\n\n /**\n * @ignore\n */\n protected replyVoice = signal<AXConversationMessage<string> | null>(null);\n\n /**\n * @ignore\n */\n protected replyFile = signal<AXConversationMessage<string> | null>(null);\n\n /**\n * @ignore\n */\n ngOnInit(): void {\n this._text.set(this.message?.content);\n\n if (!this.message?.replyTo) return;\n\n switch (this.message.replyTo.type) {\n case 'text':\n this.replyText.set(this.message?.replyTo);\n break;\n case 'image':\n this.replyImage.set(this.message?.replyTo);\n break;\n case 'video':\n this.replyVideo.set(this.message?.replyTo);\n break;\n case 'audio':\n this.replyAudio.set(this.message?.replyTo);\n break;\n case 'voice':\n this.replyVoice.set(this.message?.replyTo);\n break;\n case 'file':\n this.replyFile.set(this.message?.replyTo);\n break;\n }\n }\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { Component, OnInit, signal } from '@angular/core';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\n\n/**\n * A component for displaying a video message with playback controls.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-message-video',\n template: `<video controls [src]=\"_videoUrl()\"></video>`,\n styles: `\n video {\n width: 100%;\n height: 100%;\n }\n `,\n providers: [{ provide: AXComponent, useExisting: AXConversationMessageVideoComponent }],\n})\nexport class AXConversationMessageVideoComponent extends AXConversationMessageBaseComponent<string> implements OnInit {\n /**\n * @ignore\n */\n protected _videoUrl = signal('');\n\n /**\n * @ignore\n */\n ngOnInit(): void {\n this._videoUrl.set(this.message?.content);\n console.log(this._videoUrl());\n }\n}\n","import { AXComponent } from '@acorex/cdk/common';\nimport { AXAudioWaveChangeEvent, AXAudioWaveComponent, AXWaveConfig } from '@acorex/components/audio-wave';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXLoadingSpinnerComponent } from '@acorex/components/loading';\nimport { AXFormatPipe } from '@acorex/core/format';\nimport { AsyncPipe, isPlatformBrowser } from '@angular/common';\nimport {\n Component,\n HostBinding,\n PLATFORM_ID,\n ViewChild,\n ViewEncapsulation,\n WritableSignal,\n afterNextRender,\n inject,\n signal,\n} from '@angular/core';\nimport { AXConversationViewComponent } from '../../conversation-view/conversation-view.component';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\n\n/**\n * A component for displaying and handling audio messages in a conversation.\n *\n * @category Components\n */\n@Component({\n selector: 'ax-conversation-message-audio',\n templateUrl: './conversation-message-voice.component.html',\n styleUrl: `./conversation-message-voice.component.scss`,\n encapsulation: ViewEncapsulation.None,\n inputs: ['message'],\n imports: [AXDecoratorGenericComponent, AXLoadingSpinnerComponent, AXAudioWaveComponent, AsyncPipe, AXFormatPipe],\n providers: [{ provide: AXComponent, useExisting: AXConversationVoiceMessageComponent }],\n})\nexport class AXConversationVoiceMessageComponent extends AXConversationMessageBaseComponent<string> {\n /**\n * @ignore\n */\n @ViewChild('a') audio: AXAudioWaveComponent;\n\n /**\n * @ignore\n */\n config: AXWaveConfig = { url: '' };\n\n /**\n * @ignore\n */\n audioState: WritableSignal<'playing' | 'paused' | 'loading' | 'ready' | 'error'> = signal('paused');\n\n /**\n * @ignore\n */\n parent = inject(AXConversationViewComponent);\n private platformID = inject(PLATFORM_ID);\n\n /**\n * @ignore\n */\n selectedRate = signal(1);\n\n /**\n * @ignore\n */\n selectedRateIndex = signal(1);\n\n /**\n * @ignore\n */\n protected audioProgress = signal(0);\n\n /**\n * @ignore\n */\n protected timeLeft = signal(0);\n\n /**\n * @ignore\n */\n protected currentTime = signal(0);\n\n /**\n * @ignore\n */\n protected duration = signal(0);\n\n /**\n * @ignore\n */\n constructor() {\n super();\n afterNextRender(() => {\n this.config.url = this.message?.content;\n this.config.audioRate = 0.25;\n this.setWaveColor();\n this.audio.onStatusChanged.subscribe((c) => {\n this.parent.onAction.emit(c);\n });\n this.handleLoadingProgress();\n });\n }\n /**\n * @ignore\n */\n setWaveColor() {\n let waveColor = '';\n let progressColor = '';\n if (isPlatformBrowser(this.platformID)) {\n if (this.message.fromId) {\n waveColor = getComputedStyle(document.body).getPropertyValue('--ax-message-other-bar-color');\n progressColor = getComputedStyle(document.body).getPropertyValue('--ax-message-other-progress-color');\n } else {\n waveColor = getComputedStyle(document.body).getPropertyValue('--ax-message-own-bar-color');\n progressColor = getComputedStyle(document.body).getPropertyValue('--ax-message-own-progress-color');\n }\n }\n this.config.waveColor = waveColor;\n this.config.progressColor = progressColor;\n }\n\n /**\n * Pauses the audio playback and updates the audio state to 'paused'.\n * @ignore\n */\n handlePauseClick() {\n this.audio?.pause();\n this.audioState.set('paused');\n }\n\n /**\n * Plays the audio and updates the audio state to 'playing'.\n * @ignore\n */\n handlePlayClick() {\n this.audio?.play()?.then(() => {\n this.audioState.set('playing');\n });\n }\n\n /**\n * Updates audio state and progress based on status changes from the audio wave.\n * @param e - The event containing status and data related to the audio.\n * @ignore\n */\n handleOnStatusChanged(e: AXAudioWaveChangeEvent) {\n if (e.status === 'load' || e.status === 'loading') {\n this.audioState.set('loading');\n }\n if (e.status === 'loading') {\n this.audioProgress.set(e.data.percent);\n this.duration.set(Math.ceil(e.data.duration * 1000));\n }\n if (e.status === 'ready') {\n this.audioState.set('ready');\n this.duration.set(Math.ceil(e.data.duration * 1000));\n }\n if (e.status === 'finish') {\n this.audioState.set('paused');\n }\n if (e.status === 'timeupdate') {\n this.timeLeft.set(this.duration() - e.data.currentTime * 1000);\n this.currentTime.set(e.data.currentTime * 1000);\n }\n if (e.status === 'error') {\n this.audioState.set('error');\n }\n }\n\n /**\n * @ignore\n */\n handleLoadingProgress() {\n // this.audioLoaderProgress?.nativeElement.style.cssText = `--ax-audio-progress: ${this.audioProgress()}`;\n }\n\n /**\n * Handles the cancellation of a loading operation.\n * @ignore\n */\n handleCancelLoading() {\n //\n }\n\n /**\n * Reloads the audio and updates the state to 'loading'.\n * @ignore\n */\n handleReloadClick() {\n //\n this.audioState.set('loading');\n this.audio.load();\n }\n\n /**\n * Cycles through predefined audio playback rates and updates the rate.\n * @ignore\n */\n handleRateClick() {\n const rates = [0.5, 1, 2, 4];\n if (this.selectedRateIndex() == rates.length - 1) {\n this.selectedRateIndex.set(0);\n } else {\n this.selectedRateIndex.set(this.selectedRateIndex() + 1);\n }\n this.selectedRate.set(rates[this.selectedRateIndex()]);\n this.audio.setRate(this.selectedRate());\n }\n\n /**\n * @ignore\n */\n @HostBinding('class')\n get __hostClass(): string {\n return `${this.message.fromId ? 'ax-state-other' : 'ax-state-own'}`;\n }\n}\n","<ax-prefix>\n @switch (audioState()) {\n @case ('paused') {\n {{ currentTime() | format: 'time-duration' | async }}\n }\n @case ('playing') {\n {{ currentTime() | format: 'time-duration' | async }}\n }\n @default {\n {{ duration() | format: 'time-duration' | async }}\n }\n }\n <button class=\"ax-audio-speed\" (click)=\"handleRateClick()\"></button>\n</ax-prefix>\n<div class=\"ax-conversation-controller\">\n @switch (audioState()) {\n @case ('playing') {\n <button (click)=\"handlePauseClick()\">\n <i class=\"ax-icon ax-icon-pause\"></i>\n </button>\n }\n\n @case ('ready') {\n <button (click)=\"handlePlayClick()\">\n <i class=\"ax-icon ax-icon-play\"></i>\n </button>\n }\n\n @case ('paused') {\n <button (click)=\"handlePlayClick()\">\n <i class=\"ax-icon ax-icon-play\"></i>\n </button>\n }\n\n @case ('error') {\n <button class=\"ax-state-error\" (click)=\"handleReloadClick()\">\n <i class=\"ax-icon ax-icon-reload\"></i>\n </button>\n }\n\n @default {\n <button (click)=\"handleCancelLoading()\">\n <ax-loading-spinner\n [size]=\"24\"\n [stroke]=\"2\"\n [color]=\"message.fromId ? 'white' : 'warning'\"\n ></ax-loading-spinner>\n </button>\n }\n }\n</div>\n<ax-audio-wave #a [config]=\"config\" (onStatusChanged)=\"handleOnStatusChanged($event)\"></ax-audio-wave>\n<ax-suffix>\n <div class=\"ax-audio-rate-button\" [class.ax-state-own]=\"!message?.fromId\" (click)=\"handleRateClick()\">\n {{ selectedRate() }}X\n </div>\n</ax-suffix>\n","import { AXRippleDirective } from '@acorex/cdk/common';\nimport { AXVirtualScrollModule } from '@acorex/cdk/virtual-scroll';\nimport { AXAudioWaveModule } from '@acorex/components/audio-wave';\nimport { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXCircularProgressModule } from '@acorex/components/circular-progress';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXRangeSliderModule } from '@acorex/components/range-slider';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXFileModule } from '@acorex/core/file';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CdkPortalOutlet } from '@angular/cdk/portal';\nimport { AsyncPipe, CommonModule } from '@angular/common';\nimport { Inject, ModuleWithProviders, NgModule, Optional } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXConversationContainerComponent } from './conversation-container/conversation-container.component';\nimport { AXConversationInputComponent } from './conversation-input/conversation-input.component';\nimport { AXConversationMessageComponent } from './conversation-message/conversation-message.component';\nimport { AXConversationMessageAudioComponent } from './conversation-messages/conversation-message-audio/conversation-message-audio.component';\nimport { AXConversationFileMessageComponent } from './conversation-messages/conversation-message-file/conversation-message-file.component';\nimport { AXConversationMessageImageComponent } from './conversation-messages/conversation-message-image/conversation-message-image.component';\nimport { AXConversationTextMessageComponent } from './conversation-messages/conversation-message-text/conversation-message-text.component';\nimport { AXConversationMessageVideoComponent } from './conversation-messages/conversation-message-video/conversation-message-video.component';\nimport { AXConversationVoiceMessageComponent } from './conversation-messages/conversation-message-voice/conversation-message-voice.component';\nimport { AXConversationViewComponent } from './conversation-view/conversation-view.component';\nimport { AXConversationMessageType } from './conversation.types';\nimport { AXConversationMessageTypeRegistryService } from './services/conversation-message-type-registry.service';\nimport { AXConversationService } from './services/conversation.service';\nimport { AXRecordingService } from './services/recording.service';\n\nexport interface AXChatModuleConfig {\n types: AXConversationMessageType[];\n}\n\nconst COMPONENT = [\n AXConversationViewComponent,\n AXConversationInputComponent,\n AXConversationMessageComponent,\n AXConversationTextMessageComponent,\n AXConversationVoiceMessageComponent,\n AXConversationFileMessageComponent,\n AXConversationContainerComponent,\n AXConversationMessageAudioComponent,\n AXConversationMessageImageComponent,\n AXConversationMessageVideoComponent,\n];\nconst MODULES = [\n CommonModule,\n FormsModule,\n AsyncPipe,\n AXRippleDirective,\n AXButtonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXDropdownModule,\n AXFormatModule,\n AXAudioWaveModule,\n AXCircularProgressModule,\n AXDateTimeModule,\n CdkPortalOutlet,\n AXLoadingModule,\n AXAvatarModule,\n AXPopoverModule,\n AXFileModule,\n AXRangeSliderModule,\n AXVirtualScrollModule,\n];\n\n@NgModule({\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [AXRecordingService, AXConversationService, AXPopupService],\n})\nexport class AXConversationModule {\n static forRoot(config?: AXChatModuleConfig): ModuleWithProviders<AXConversationModule> {\n return {\n ngModule: AXConversationModule,\n providers: [\n {\n provide: 'AXChatModuleFactory',\n useFactory: (registry: AXConversationMessageTypeRegistryService) => () => {\n if (config?.types?.length) {\n registry.register(...config.types);\n }\n registry.register({\n name: 'text',\n component: AXConversationTextMessageComponent,\n });\n registry.register({\n name: 'voice',\n component: AXConversationVoiceMessageComponent,\n });\n registry.register({\n name: 'file',\n component: AXConversationFileMessageComponent,\n });\n registry.register({\n name: 'audio',\n component: AXConversationMessageAudioComponent,\n });\n registry.register({\n name: 'image',\n component: AXConversationMessageImageComponent,\n });\n registry.register({\n name: 'video',\n component: AXConversationMessageVideoComponent,\n });\n },\n deps: [AXConversationMessageTypeRegistryService],\n multi: true,\n },\n ],\n };\n }\n\n static forChild(config?: AXChatModuleConfig): ModuleWithProviders<AXConversationModule> {\n return {\n ngModule: AXConversationModule,\n providers: [\n {\n provide: 'AXChatModuleFactory',\n useFactory: (registry: AXConversationMessageTypeRegistryService) => () => {\n if (config?.types?.length) {\n registry.register(...config.types);\n }\n },\n deps: [AXConversationMessageTypeRegistryService],\n multi: true,\n },\n ],\n };\n }\n\n /**\n * @ignore\n */\n constructor(@Optional() @Inject('AXChatModuleFactory') instances: any[]) {\n instances?.forEach((f) => {\n f();\n });\n }\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"acorex-components-conversation.mjs","sources":["../tmp-esm2022/conversation/lib/classes/events.interface.js","../tmp-esm2022/conversation/lib/services/conversation.service.js","../tmp-esm2022/conversation/lib/services/recording.service.js","../tmp-esm2022/conversation/lib/conversation-container/conversation-container.component.js","../tmp-esm2022/conversation/lib/conversation-input/conversation-input.component.js","../tmp-esm2022/conversation/lib/services/conversation-message-type-registry.service.js","../tmp-esm2022/conversation/lib/conversation-message/conversation-message.component.js","../tmp-esm2022/conversation/lib/conversation.types.js","../tmp-esm2022/conversation/lib/conversation-messages/conversation-message-audio/conversation-message-audio.component.js","../tmp-esm2022/conversation/lib/conversation-view/conversation-view.component.js","../tmp-esm2022/conversation/lib/conversation-messages/conversation-message-file/conversation-message-file.component.js","../tmp-esm2022/conversation/lib/conversation-messages/conversation-message-image-popup/conversation-message-image-popup.component.js","../tmp-esm2022/conversation/lib/conversation-messages/conversation-message-image/conversation-message-image.component.js","../tmp-esm2022/conversation/lib/conversation-messages/conversation-message-text/conversation-message-text.component.js","../tmp-esm2022/conversation/lib/conversation-messages/conversation-message-video/conversation-message-video.component.js","../tmp-esm2022/conversation/lib/conversation-messages/conversation-message-voice/conversation-message-voice.component.js","../tmp-esm2022/conversation/lib/conversation.module.js","../tmp-esm2022/conversation/acorex-components-conversation.js"],"sourcesContent":["import { AXEvent } from '@acorex/cdk/common';\nexport class AXConversationActionEvent extends AXEvent {\n}\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29udmVyc2F0aW9uL3NyYy9saWIvY2xhc3Nlcy9ldmVudHMuaW50ZXJmYWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxPQUFPLEVBQWUsTUFBTSxvQkFBb0IsQ0FBQztBQUsxRCxNQUFNLE9BQU8seUJBQTBCLFNBQVEsT0FBTztDQUVyRCIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYRXZlbnQsIEFYSHRtbEV2ZW50IH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcblxuZXhwb3J0IGludGVyZmFjZSBBWElucHV0RmlsZUNoYW5nZSBleHRlbmRzIEFYSHRtbEV2ZW50PE1vdXNlRXZlbnQ+IHtcbiAgZGF0YT86IGFueTtcbn1cbmV4cG9ydCBjbGFzcyBBWENvbnZlcnNhdGlvbkFjdGlvbkV2ZW50IGV4dGVuZHMgQVhFdmVudCB7XG4gIGRhdGE6IGFueTtcbn1cbiJdfQ==","import { Injectable, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXConversationService {\n constructor() {\n this.replyId = signal('');\n this.chats = signal([]);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationService }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL3NlcnZpY2VzL2NvbnZlcnNhdGlvbi5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUluRCxNQUFNLE9BQU8scUJBQXFCO0lBRGxDO1FBRUUsWUFBTyxHQUFHLE1BQU0sQ0FBQyxFQUFFLENBQUMsQ0FBQztRQUNyQixVQUFLLEdBQUcsTUFBTSxDQUEwQixFQUFFLENBQUMsQ0FBQztLQUM3Qzs4R0FIWSxxQkFBcUI7a0hBQXJCLHFCQUFxQjs7MkZBQXJCLHFCQUFxQjtrQkFEakMsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlIH0gZnJvbSAnLi4vY29udmVyc2F0aW9uLnR5cGVzJztcblxuQEluamVjdGFibGUoKVxuZXhwb3J0IGNsYXNzIEFYQ29udmVyc2F0aW9uU2VydmljZSB7XG4gIHJlcGx5SWQgPSBzaWduYWwoJycpO1xuICBjaGF0cyA9IHNpZ25hbDxBWENvbnZlcnNhdGlvbk1lc3NhZ2VbXT4oW10pO1xufVxuIl19","import { Injectable, signal } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXRecordingService {\n constructor() {\n this.audioBlobs = [];\n this.streamBeingCaptured = null;\n this.timer = signal('00:0');\n this.time = {\n seconds: 0,\n minutes: 0,\n hours: 0,\n };\n }\n startRecording() {\n if (!(navigator.mediaDevices && navigator.mediaDevices.getUserMedia)) {\n return Promise.reject(new Error('mediaDevices API or getUserMedia method is not supported in this browser.'));\n }\n else {\n return navigator.mediaDevices.getUserMedia({ audio: true }).then((stream) => {\n this.streamBeingCaptured = stream;\n this.mediaRecorder = new MediaRecorder(stream);\n this.audioBlobs = [];\n this.mediaRecorder.addEventListener('dataavailable', (event) => {\n this.audioBlobs.push(event.data);\n });\n this.mediaRecorder.start();\n this.timerInterval = setInterval(() => {\n this.calculateTime();\n }, 1000);\n });\n }\n }\n endRecording() {\n return new Promise((resolve) => {\n const mimeType = this.mediaRecorder?.mimeType;\n this.mediaRecorder?.addEventListener('stop', () => {\n const audioBlob = new Blob(this.audioBlobs, { type: mimeType });\n resolve(audioBlob);\n });\n this.mediaRecorder?.stop();\n this.streamBeingCaptured.getTracks().forEach((track) => track.stop());\n this.mediaRecorder = null;\n this.streamBeingCaptured = null;\n this.resetTimer();\n });\n }\n calculateTime() {\n this.time.seconds++;\n if (this.time.seconds >= 60) {\n this.time.seconds = 0;\n this.time.minutes++;\n if (this.time.minutes >= 60) {\n this.time.minutes = 0;\n this.time.hours++;\n }\n }\n const formattedTime = (this.time.hours > 0 ? this.time.hours + ':' : '') +\n (this.time.minutes < 10 ? '0' + this.time.minutes : this.time.minutes) +\n ':' +\n (this.time.seconds < 10 ? '0' + this.time.seconds : this.time.seconds);\n this.timer.set(formattedTime);\n }\n resetTimer() {\n clearInterval(this.timerInterval);\n this.time.seconds = 0;\n this.time.minutes = 0;\n this.time.hours = 0;\n this.timer.set('00:0');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXRecordingService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXRecordingService }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXRecordingService, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjb3JkaW5nLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL3NlcnZpY2VzL3JlY29yZGluZy5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQWtCLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFHbkUsTUFBTSxPQUFPLGtCQUFrQjtJQUQvQjtRQUVFLGVBQVUsR0FBVSxFQUFFLENBQUM7UUFFdkIsd0JBQW1CLEdBQVEsSUFBSSxDQUFDO1FBRWhDLFVBQUssR0FBMkIsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1FBRXJDLFNBQUksR0FBRztZQUNmLE9BQU8sRUFBRSxDQUFDO1lBQ1YsT0FBTyxFQUFFLENBQUM7WUFDVixLQUFLLEVBQUUsQ0FBQztTQUNULENBQUM7S0FpRUg7SUE3REMsY0FBYztRQUNaLElBQUksQ0FBQyxDQUFDLFNBQVMsQ0FBQyxZQUFZLElBQUksU0FBUyxDQUFDLFlBQVksQ0FBQyxZQUFZLENBQUMsRUFBRSxDQUFDO1lBQ3JFLE9BQU8sT0FBTyxDQUFDLE1BQU0sQ0FBQyxJQUFJLEtBQUssQ0FBQywyRUFBMkUsQ0FBQyxDQUFDLENBQUM7UUFDaEgsQ0FBQzthQUFNLENBQUM7WUFDTixPQUFPLFNBQVMsQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxFQUFFLEVBQUU7Z0JBQzFFLElBQUksQ0FBQyxtQkFBbUIsR0FBRyxNQUFNLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxhQUFhLEdBQUcsSUFBSSxhQUFhLENBQUMsTUFBTSxDQUFDLENBQUM7Z0JBQy9DLElBQUksQ0FBQyxVQUFVLEdBQUcsRUFBRSxDQUFDO2dCQUNyQixJQUFJLENBQUMsYUFBYSxDQUFD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LGFBQWEsQ0FBQyxDQUFDO1FBQ2xDLElBQUksQ0FBQyxJQUFJLENBQUMsT0FBTyxHQUFHLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsSUFBSSxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUM7UUFDdEIsSUFBSSxDQUFDLElBQUksQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO1FBQ3BCLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLE1BQU0sQ0FBQyxDQUFDO0lBQ3pCLENBQUM7OEdBM0VVLGtCQUFrQjtrSEFBbEIsa0JBQWtCOzsyRkFBbEIsa0JBQWtCO2tCQUQ5QixVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgV3JpdGFibGVTaWduYWwsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhSZWNvcmRpbmdTZXJ2aWNlIHtcbiAgYXVkaW9CbG9iczogYW55W10gPSBbXTtcbiAgbWVkaWFSZWNvcmRlcjogTWVkaWFSZWNvcmRlciB8IG51bGw7XG4gIHN0cmVhbUJlaW5nQ2FwdHVyZWQ6IGFueSA9IG51bGw7XG5cbiAgdGltZXI6IFdyaXRhYmxlU2lnbmFsPHN0cmluZz4gPSBzaWduYWwoJzAwOjAnKTtcblxuICBwcm90ZWN0ZWQgdGltZSA9IHtcbiAgICBzZWNvbmRzOiAwLFxuICAgIG1pbnV0ZXM6IDAsXG4gICAgaG91cnM6IDAsXG4gIH07XG5cbiAgcHJvdGVjdGVkIHRpbWVySW50ZXJ2YWw7XG5cbiAgc3RhcnRSZWNvcmRpbmcoKSB7XG4gICAgaWYgKCEobmF2aWdhdG9yLm1lZGlhRGV2aWNlcyAmJiBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSkpIHtcbiAgICAgIHJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoJ21lZGlhRGV2aWNlcyBBUEkgb3IgZ2V0VXNlck1lZGlhIG1ldGhvZCBpcyBub3Qgc3VwcG9ydGVkIGluIHRoaXMgYnJvd3Nlci4nKSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIHJldHVybiBuYXZpZ2F0b3IubWVkaWFEZXZpY2VzLmdldFVzZXJNZWRpYSh7IGF1ZGlvOiB0cnVlIH0pLnRoZW4oKHN0cmVhbSkgPT4ge1xuICAgICAgICB0aGlzLnN0cmVhbUJlaW5nQ2FwdHVyZWQgPSBzdHJlYW07XG4gICAgICAgIHRoaXMubWVkaWFSZWNvcmRlciA9IG5ldyBNZWRpYVJlY29yZGVyKHN0cmVhbSk7XG4gICAgICAgIHRoaXMuYXVkaW9CbG9icyA9IFtdO1xuICAgICAgICB0aGlzLm1lZGlhUmVjb3JkZXIuYWRkRXZlbnRMaXN0ZW5lcignZGF0YWF2YWlsYWJsZScsIChldmVudCkgPT4ge1xuICAgICAgICAgIHRoaXMuYXVkaW9CbG9icy5wdXNoKGV2ZW50LmRhdGEpO1xuICAgICAgICB9KTtcbiAgICAgICAgdGhpcy5tZWRpYVJlY29yZGVyLnN0YXJ0KCk7XG4gICAgICAgIHRoaXMudGltZXJJbnRlcnZhbCA9IHNldEludGVydmFsKCgpID0+IHtcbiAgICAgICAgICB0aGlzLmNhbGN1bGF0ZVRpbWUoKTtcbiAgICAgICAgfSwgMTAwMCk7XG4gICAgICB9KTtcbiAgICB9XG4gIH1cblxuICBlbmRSZWNvcmRpbmcoKSB7XG4gICAgcmV0dXJuIG5ldyBQcm9taXNlKChyZXNvbHZlKSA9PiB7XG4gICAgICBjb25zdCBtaW1lVHlwZSA9IHRoaXMubWVkaWFSZWNvcmRlcj8ubWltZVR5cGU7XG4gICAgICB0aGlzLm1lZGlhUmVjb3JkZXI/LmFkZEV2ZW50TGlzdGVuZXIoJ3N0b3AnLCAoKSA9PiB7XG4gICAgICAgIGNvbnN0IGF1ZGlvQmxvYiA9IG5ldyBCbG9iKHRoaXMuYXVkaW9CbG9icywgeyB0eXBlOiBtaW1lVHlwZSB9KTtcbiAgICAgICAgcmVzb2x2ZShhdWRpb0Jsb2IpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLm1lZGlhUmVjb3JkZXI/LnN0b3AoKTtcbiAgICAgIHRoaXMuc3RyZWFtQmVpbmdDYXB0dXJlZC5nZXRUcmFja3MoKS5mb3JFYWNoKCh0cmFjaykgPT4gdHJhY2suc3RvcCgpKTtcbiAgICAgIHRoaXMubWVkaWFSZWNvcmRlciA9IG51bGw7XG4gICAgICB0aGlzLnN0cmVhbUJlaW5nQ2FwdHVyZWQgPSBudWxsO1xuICAgICAgdGhpcy5yZXNldFRpbWVyKCk7XG4gICAgfSk7XG4gIH1cblxuICBjYWxjdWxhdGVUaW1lKCkge1xuICAgIHRoaXMudGltZS5zZWNvbmRzKys7XG4gICAgaWYgKHRoaXMudGltZS5zZWNvbmRzID49IDYwKSB7XG4gICAgICB0aGlzLnRpbWUuc2Vjb25kcyA9IDA7XG4gICAgICB0aGlzLnRpbWUubWludXRlcysrO1xuICAgICAgaWYgKHRoaXMudGltZS5taW51dGVzID49IDYwKSB7XG4gICAgICAgIHRoaXMudGltZS5taW51dGVzID0gMDtcbiAgICAgICAgdGhpcy50aW1lLmhvdXJzKys7XG4gICAgICB9XG4gICAgfVxuXG4gICAgY29uc3QgZm9ybWF0dGVkVGltZSA9XG4gICAgICAodGhpcy50aW1lLmhvdXJzID4gMCA/IHRoaXMudGltZS5ob3VycyArICc6JyA6ICcnKSArXG4gICAgICAodGhpcy50aW1lLm1pbnV0ZXMgPCAxMCA/ICcwJyArIHRoaXMudGltZS5taW51dGVzIDogdGhpcy50aW1lLm1pbnV0ZXMpICtcbiAgICAgICc6JyArXG4gICAgICAodGhpcy50aW1lLnNlY29uZHMgPCAxMCA/ICcwJyArIHRoaXMudGltZS5zZWNvbmRzIDogdGhpcy50aW1lLnNlY29uZHMpO1xuXG4gICAgdGhpcy50aW1lci5zZXQoZm9ybWF0dGVkVGltZSk7XG4gIH1cblxuICByZXNldFRpbWVyKCkge1xuICAgIGNsZWFySW50ZXJ2YWwodGhpcy50aW1lckludGVydmFsKTtcbiAgICB0aGlzLnRpbWUuc2Vjb25kcyA9IDA7XG4gICAgdGhpcy50aW1lLm1pbnV0ZXMgPSAwO1xuICAgIHRoaXMudGltZS5ob3VycyA9IDA7XG4gICAgdGhpcy50aW1lci5zZXQoJzAwOjAnKTtcbiAgfVxufVxuIl19","import { AXComponent, AXFocusableComponent, AXValuableComponent } from '@acorex/cdk/common';\nimport { Component, effect, forwardRef, inject, input, ViewEncapsulation } from '@angular/core';\nimport { NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { AXConversationService } from '../services/conversation.service';\nimport { AXRecordingService } from '../services/recording.service';\nimport * as i0 from \"@angular/core\";\n/**\n * A container for displaying and managing conversations.\n * @category Components\n */\nexport class AXConversationContainerComponent {\n constructor() {\n this.chatData = input([]);\n this.conversationService = inject(AXConversationService);\n this.#init = effect(() => {\n this.conversationService.chats.set(this.chatData());\n });\n }\n #init;\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.1.0\", version: \"20.0.3\", type: AXConversationContainerComponent, isStandalone: true, selector: \"ax-conversation-container\", inputs: { chatData: { classPropertyName: \"chatData\", publicName: \"chatData\", isSignal: true, isRequired: false, transformFunction: null } }, providers: [\n { provide: AXComponent, useExisting: AXConversationContainerComponent },\n { provide: AXFocusableComponent, useExisting: AXConversationContainerComponent },\n { provide: AXValuableComponent, useExisting: AXConversationContainerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXConversationContainerComponent),\n multi: true,\n },\n AXConversationService,\n AXRecordingService,\n ], ngImport: i0, template: \"<div class=\\\"ax-conversation-container\\\">\\n <ng-content> </ng-content>\\n</div>\\n\", styles: [\"ax-conversation-container{--ax-comp-conversation-other-color: var(--ax-sys-color-surface);--ax-comp-conversation-other-color-fore: var(--ax-sys-color-on-surface);--ax-comp-conversation-status-color: var(--ax-sys-color-on-primary-lightest-surface);--ax-comp-conversation-other-bar-color: var(--ax-sys-color-primary-light-surface);--ax-comp-conversation-other-progress-color: var(--ax-sys-color-on-primary-light-surface);--ax-comp-conversation-own-color: var(--ax-sys-color-primary-lightest-surface);--ax-comp-conversation-own-color-fore: var(--ax-sys-color-primary-darkest-surface);--ax-comp-conversation-own-reply-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-conversation-own-reply-color-fore: var(--ax-sys-color-on-primary-dark-surface);--ax-comp-conversation-other-reply-color: var(--ax-sys-color-primary-lighter-surface);--ax-comp-conversation-other-reply-color-fore: var(--ax-sys-color-on-primary-lighter-surface);--ax-comp-conversation-border-color: var(--ax-sys-color-primary-darkest-surface);--ax-comp-conversation-own-bar-color: var(--ax-sys-color-primary-light-surface);--ax-comp-conversation-own-progress-color: var(--ax-sys-color-on-primary-light-surface)}ax-conversation-container{width:100%;display:block}ax-conversation-container>.ax-editor-container{display:block;height:100%!important}\\n\"], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationContainerComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-container', encapsulation: ViewEncapsulation.None, providers: [\n { provide: AXComponent, useExisting: AXConversationContainerComponent },\n { provide: AXFocusableComponent, useExisting: AXConversationContainerComponent },\n { provide: AXValuableComponent, useExisting: AXConversationContainerComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXConversationContainerComponent),\n multi: true,\n },\n AXConversationService,\n AXRecordingService,\n ], template: \"<div class=\\\"ax-conversation-container\\\">\\n <ng-content> </ng-content>\\n</div>\\n\", styles: [\"ax-conversation-container{--ax-comp-conversation-other-color: var(--ax-sys-color-surface);--ax-comp-conversation-other-color-fore: var(--ax-sys-color-on-surface);--ax-comp-conversation-status-color: var(--ax-sys-color-on-primary-lightest-surface);--ax-comp-conversation-other-bar-color: var(--ax-sys-color-primary-light-surface);--ax-comp-conversation-other-progress-color: var(--ax-sys-color-on-primary-light-surface);--ax-comp-conversation-own-color: var(--ax-sys-color-primary-lightest-surface);--ax-comp-conversation-own-color-fore: var(--ax-sys-color-primary-darkest-surface);--ax-comp-conversation-own-reply-color: var(--ax-sys-color-primary-dark-surface);--ax-comp-conversation-own-reply-color-fore: var(--ax-sys-color-on-primary-dark-surface);--ax-comp-conversation-other-reply-color: var(--ax-sys-color-primary-lighter-surface);--ax-comp-conversation-other-reply-color-fore: var(--ax-sys-color-on-primary-lighter-surface);--ax-comp-conversation-border-color: var(--ax-sys-color-primary-darkest-surface);--ax-comp-conversation-own-bar-color: var(--ax-sys-color-primary-light-surface);--ax-comp-conversation-own-progress-color: var(--ax-sys-color-on-primary-light-surface)}ax-conversation-container{width:100%;display:block}ax-conversation-container>.ax-editor-container{display:block;height:100%!important}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLWNvbnRhaW5lci5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL2NvbnZlcnNhdGlvbi1jb250YWluZXIvY29udmVyc2F0aW9uLWNvbnRhaW5lci5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL2NvbnZlcnNhdGlvbi1jb250YWluZXIvY29udmVyc2F0aW9uLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsV0FBVyxFQUFFLG9CQUFvQixFQUFFLG1CQUFtQixFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDNUYsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDaEcsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JBQWdCLENBQUM7QUFFbkQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLE1BQU0sa0NBQWtDLENBQUM7QUFDekUsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sK0JBQStCLENBQUM7O0FBRW5FOzs7R0FHRztBQW1CSCxNQUFNLE9BQU8sZ0NBQWdDO0lBbEI3QztRQW1CRSxhQUFRLEdBQUcsS0FBSyxDQUEwQixFQUFFLENBQUMsQ0FBQztRQUN0Qyx3QkFBbUIsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUU1RCxVQUFLLEdBQUcsTUFBTSxDQUFDLEdBQUcsRUFBRTtZQUNsQixJQUFJLENBQUMsbUJBQW1CLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUN0RCxDQUFDLENBQUMsQ0FBQztLQUNKO0lBSEMsS0FBSyxDQUVGOzhHQU5RLGdDQUFnQztrR0FBaEMsZ0NBQWdDLHFOQWJoQztZQUNULEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsZ0NBQWdDLEVBQUU7WUFDdkUsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxFQUFFLGdDQUFnQyxFQUFFO1lBQ2hGLEVBQUUsT0FBTyxFQUFFLG1CQUFtQixFQUFFLFdBQVcsRUFBRSxnQ0FBZ0MsRUFBRTtZQUMvRTtnQkFDRSxPQUFPLEVBQUUsaUJBQWlCO2dCQUMxQixXQUFXLEVBQUUsVUFBVSxDQUFDLEdBQUcsRUFBRSxDQUFDLGdDQUFnQyxDQUFDO2dCQUMvRCxLQUFLLEVBQUUsSUFBSTthQUNaO1lBQ0QscUJBQXFCO1lBQ3JCLGtCQUFrQjtTQUNuQiwwQkMzQkgsbUZBR0E7OzJGRDBCYSxnQ0FBZ0M7a0JBbEI1QyxTQUFTOytCQUNFLDJCQUEyQixpQkFHdEIsaUJBQWlCLENBQUMsSUFBSSxhQUMxQjt3QkFDVCxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxrQ0FBa0MsRUFBRTt3QkFDdkUsRUFBRSxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsV0FBVyxrQ0FBa0MsRUFBRTt3QkFDaEYsRUFBRSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsV0FBVyxrQ0FBa0MsRUFBRTt3QkFDL0U7NEJBQ0UsT0FBTyxFQUFFLGlCQUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsaUNBQWlDLENBQUM7NEJBQy9ELEtBQUssRUFBRSxJQUFJO3lCQUNaO3dCQUNELHFCQUFxQjt3QkFDckIsa0JBQWtCO3FCQUNuQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFYQ29tcG9uZW50LCBBWEZvY3VzYWJsZUNvbXBvbmVudCwgQVhWYWx1YWJsZUNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIGVmZmVjdCwgZm9yd2FyZFJlZiwgaW5qZWN0LCBpbnB1dCwgVmlld0VuY2Fwc3VsYXRpb24gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IE5HX1ZBTFVFX0FDQ0VTU09SIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlIH0gZnJvbSAnLi4vY29udmVyc2F0aW9uLnR5cGVzJztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbnZlcnNhdGlvbi5zZXJ2aWNlJztcbmltcG9ydCB7IEFYUmVjb3JkaW5nU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL3JlY29yZGluZy5zZXJ2aWNlJztcblxuLyoqXG4gKiBBIGNvbnRhaW5lciBmb3IgZGlzcGxheWluZyBhbmQgbWFuYWdpbmcgY29udmVyc2F0aW9ucy5cbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWNvbnZlcnNhdGlvbi1jb250YWluZXInLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udmVyc2F0aW9uLWNvbnRhaW5lci5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jb252ZXJzYXRpb24tY29udGFpbmVyLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgcHJvdmlkZXJzOiBbXG4gICAgeyBwcm92aWRlOiBBWENvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYQ29udmVyc2F0aW9uQ29udGFpbmVyQ29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWEZvY3VzYWJsZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYQ29udmVyc2F0aW9uQ29udGFpbmVyQ29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWFZhbHVhYmxlQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhDb252ZXJzYXRpb25Db250YWluZXJDb21wb25lbnQgfSxcbiAgICB7XG4gICAgICBwcm92aWRlOiBOR19WQUxVRV9BQ0NFU1NPUixcbiAgICAgIHVzZUV4aXN0aW5nOiBmb3J3YXJkUmVmKCgpID0+IEFYQ29udmVyc2F0aW9uQ29udGFpbmVyQ29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gICAgQVhDb252ZXJzYXRpb25TZXJ2aWNlLFxuICAgIEFYUmVjb3JkaW5nU2VydmljZSxcbiAgXSxcbn0pXG5leHBvcnQgY2xhc3MgQVhDb252ZXJzYXRpb25Db250YWluZXJDb21wb25lbnQge1xuICBjaGF0RGF0YSA9IGlucHV0PEFYQ29udmVyc2F0aW9uTWVzc2FnZVtdPihbXSk7XG4gIHByaXZhdGUgY29udmVyc2F0aW9uU2VydmljZSA9IGluamVjdChBWENvbnZlcnNhdGlvblNlcnZpY2UpO1xuXG4gICNpbml0ID0gZWZmZWN0KCgpID0+IHtcbiAgICB0aGlzLmNvbnZlcnNhdGlvblNlcnZpY2UuY2hhdHMuc2V0KHRoaXMuY2hhdERhdGEoKSk7XG4gIH0pO1xufVxuIiwiPGRpdiBjbGFzcz1cImF4LWNvbnZlcnNhdGlvbi1jb250YWluZXJcIj5cbiAgPG5nLWNvbnRlbnQ+IDwvbmctY29udGVudD5cbjwvZGl2PlxuIl19","import { AXComponent, AXFocusableComponent, AXValuableComponent, MXInputBaseValueComponent, MXLookComponent, } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXDropdownPanelComponent } from '@acorex/components/dropdown';\nimport { AXLoadingSpinnerComponent } from '@acorex/components/loading';\nimport { AXTranslatorPipe } from '@acorex/core/translation';\nimport { AsyncPipe } from '@angular/common';\nimport { ChangeDetectionStrategy, Component, ElementRef, ViewChild, ViewEncapsulation, computed, contentChild, forwardRef, inject, input, output, signal, } from '@angular/core';\nimport { FormsModule, NG_VALUE_ACCESSOR } from '@angular/forms';\nimport { classes } from 'polytype';\nimport { AXConversationService } from '../services/conversation.service';\nimport { AXRecordingService } from '../services/recording.service';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\n/**\n * An input component for entering conversation messages.\n *\n * @category Components\n */\nexport class AXConversationInputComponent extends classes((MXInputBaseValueComponent), MXLookComponent) {\n constructor() {\n super(...arguments);\n /**\n * @ignore\n */\n this.sendIcon = contentChild('ax-icon');\n /**\n * @ignore\n */\n this.conversationService = inject(AXConversationService);\n /**\n * @ignore\n */\n this.chats = computed(() => {\n return this.conversationService.chats();\n });\n /**\n * @ignore\n */\n this.replyChat = computed(() => {\n const findMessage = this.chats().find((item) => item.id === this.conversationService.replyId());\n return findMessage;\n });\n /** Maximum length of input text */\n this.maxLength = input();\n /** Indicates if an attachment is present */\n this.hasAttachment = input(true);\n /** Indicates if voice recording is enabled */\n this.hasVoice = input(true);\n this.hasEmoji = input(true);\n this.isLoading = input(false);\n /** Acceptable file types for attachment */\n this.acceptFileType = input('*');\n /**\n * Emitted when the send button is clicked.\n *\n * @event\n */\n this.onSendClick = output();\n /**\n * Emitted when recording starts.\n *\n * @event\n */\n this.onStartRecording = output();\n /**\n * Emitted when recording is canceled.\n *\n * @event\n */\n this.onCancelRecording = output();\n this.onEnterPressed = output();\n /**\n * @ignore\n */\n this.recording = signal(false);\n /**\n * @ignore\n */\n this.recordingService = inject(AXRecordingService);\n /**\n * @ignore\n */\n this._updateOn = 'change';\n this.shiftState = false;\n }\n /**\n * @ignore\n */\n _handleModelChange(value) {\n this.commitValue(value, true);\n }\n /**\n * Initiates recording when the record button is clicked.\n * Emits an event when recording starts.\n * @ignore\n */\n handleRecordClick() {\n this.recording.set(true);\n this.recordingService\n ?.startRecording()\n .then(() => {\n this.onStartRecording.emit({\n component: this,\n data: { recording: true },\n isUserInteraction: true,\n });\n })\n .catch((e) => {\n throw e;\n });\n }\n /**\n * Cancels the recording and emits an event to indicate cancellation.\n * @ignore\n */\n handleCancelRecordingClick() {\n this.recording.set(false);\n this.onCancelRecording.emit({\n component: this,\n data: { value: null },\n });\n }\n keyDownHandler(e) {\n if (e.key === 'Shift') {\n this.shiftState = true;\n }\n this.onKeyDown.emit({\n component: this,\n nativeEvent: e,\n });\n }\n keyUpHandler(e) {\n if (e.key === 'Shift') {\n this.shiftState = false;\n }\n this.onKeyUp.emit({\n component: this,\n nativeEvent: e,\n });\n }\n keyPressHandler(e) {\n if (e.key === 'Enter' && !this.shiftState) {\n e.preventDefault();\n this.onEnterPressed.emit({ component: this });\n }\n this.onKeyPress.emit({\n component: this,\n nativeEvent: e,\n });\n }\n /**\n * Opens the file picker for attachment.\n * @ignore\n */\n handleAttachClick() {\n this.inputFile.nativeElement.click();\n }\n /**\n * Emits the selected files when the file input changes.\n * @ignore\n */\n handleChangeFile(event) {\n this.onSendClick.emit({\n component: this,\n data: { value: event.target.files, type: 'file' },\n });\n }\n /**\n * Emits the text value and optional replyChat when the send button is clicked.\n * @ignore\n */\n handleSendClick() {\n this.onSendClick.emit({\n component: this,\n data: { value: this.value, replyChat: this.replyChat() || null, type: 'text' },\n isUserInteraction: true,\n });\n this.conversationService.replyId.set('');\n }\n /**\n * Ends recording and emits the recorded voice data when the send voice button is clicked.\n * @ignore\n */\n handleSendVoiceClick() {\n this.recordingService.endRecording().then((c) => {\n this.recording.set(false);\n this.onSendClick.emit({\n component: this,\n data: { value: c, type: 'voice' },\n isUserInteraction: true,\n });\n });\n }\n /**\n * Clears the reply ID when closing a reply.\n * @ignore\n */\n closeReplyHandler() {\n this.conversationService.replyId.set('');\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationInputComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: AXConversationInputComponent, isStandalone: true, selector: \"ax-conversation-input\", inputs: { look: { classPropertyName: \"look\", publicName: \"look\", isSignal: false, isRequired: false, transformFunction: null }, placeholder: { classPropertyName: \"placeholder\", publicName: \"placeholder\", isSignal: false, isRequired: false, transformFunction: null }, maxLength: { classPropertyName: \"maxLength\", publicName: \"maxLength\", isSignal: true, isRequired: false, transformFunction: null }, hasAttachment: { classPropertyName: \"hasAttachment\", publicName: \"hasAttachment\", isSignal: true, isRequired: false, transformFunction: null }, hasVoice: { classPropertyName: \"hasVoice\", publicName: \"hasVoice\", isSignal: true, isRequired: false, transformFunction: null }, hasEmoji: { classPropertyName: \"hasEmoji\", publicName: \"hasEmoji\", isSignal: true, isRequired: false, transformFunction: null }, isLoading: { classPropertyName: \"isLoading\", publicName: \"isLoading\", isSignal: true, isRequired: false, transformFunction: null }, acceptFileType: { classPropertyName: \"acceptFileType\", publicName: \"acceptFileType\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onSendClick: \"onSendClick\", onStartRecording: \"onStartRecording\", onCancelRecording: \"onCancelRecording\", onEnterPressed: \"onEnterPressed\" }, providers: [\n { provide: AXComponent, useExisting: AXConversationInputComponent },\n { provide: AXFocusableComponent, useExisting: AXConversationInputComponent },\n { provide: AXValuableComponent, useExisting: AXConversationInputComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXConversationInputComponent),\n multi: true,\n },\n ], queries: [{ propertyName: \"sendIcon\", first: true, predicate: [\"ax-icon\"], descendants: true, isSignal: true }], viewQueries: [{ propertyName: \"inputFile\", first: true, predicate: [\"inputFile\"], descendants: true }], usesInheritance: true, ngImport: i0, template: \"@if (replyChat()) {\\n <div class=\\\"ax-editor-reply-container ax-editor-container ax-{{ look }}\\\">\\n <div class=\\\"ax-reply-start\\\">\\n <i class=\\\"fa-solid fa-reply\\\"></i>\\n @switch (replyChat().type) {\\n @case ('text') {\\n <p>\\n {{ replyChat().content }}\\n </p>\\n }\\n @case ('image') {\\n <div class=\\\"ax-reply-types\\\">\\n <img src=\\\"{{ replyChat().content }}\\\" alt=\\\"\\\" />\\n {{ replyChat().type }}\\n </div>\\n }\\n @case ('video') {\\n <div class=\\\"ax-reply-types\\\">\\n <video src=\\\"{{ replyChat().content }}\\\" alt=\\\"\\\"></video>\\n {{ replyChat().type }}\\n </div>\\n }\\n @case ('file') {\\n <div class=\\\"ax-reply-types\\\">\\n <i class=\\\"fa-regular fa-folder-open\\\"></i>\\n {{ replyChat().name }}\\n </div>\\n }\\n @default {\\n <p>\\n {{ replyChat().type }}\\n </p>\\n }\\n }\\n </div>\\n <i (click)=\\\"closeReplyHandler()\\\" class=\\\"fa-solid fa-xmark ax-cursor-pointer\\\"></i>\\n </div>\\n}\\n\\n<div class=\\\"ax-conversation-input ax-editor-container ax-{{ look }}\\\" [class.ax-state-recording]=\\\"recording()\\\">\\n @if (recording()) {\\n <div class=\\\"ax-conversation-input-start-side\\\">\\n <span class=\\\"ax-record-dot\\\"></span>\\n <span>{{ recordingService.timer() }}</span>\\n </div>\\n <div class=\\\"ax-conversation-input-main-side\\\">\\n <ax-button\\n class=\\\"ax-sm\\\"\\n look=\\\"blank\\\"\\n color=\\\"primary\\\"\\n [text]=\\\"'cancel' | translate | async\\\"\\n (onClick)=\\\"handleCancelRecordingClick()\\\"\\n ></ax-button>\\n </div>\\n <div class=\\\"ax-conversation-input-end-side\\\">\\n <ax-button look=\\\"solid\\\" color=\\\"danger\\\" class=\\\"ax-blob ax-sm\\\" (onClick)=\\\"handleSendVoiceClick()\\\">\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-send\\\"></i>\\n </ax-icon>\\n </ax-button>\\n </div>\\n } @else {\\n @if (hasEmoji()) {\\n <div class=\\\"ax-conversation-input-start-side\\\">\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\">\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-emoji\\\"></i>\\n </ax-icon>\\n <ax-dropdown-panel>\\n <ng-container>\\n <div class=\\\"ax-emoji-container\\\">\\n <div>\\u26A0\\uFE0F</div>\\n <div>\\u27A1\\uFE0F</div>\\n <div>\\uD83D\\uDD03</div>\\n <div>\\uD83D\\uDD37</div>\\n <div>\\uD83E\\uDD1A</div>\\n <div>\\uD83D\\uDE02</div>\\n <div>\\uD83D\\uDE0A</div>\\n </div>\\n </ng-container>\\n </ax-dropdown-panel>\\n </ax-button>\\n </div>\\n }\\n\\n <textarea\\n class=\\\"ax-conversation-input-main-side\\\"\\n oninput='this.style.height = \\\"\\\";this.style.height = this.scrollHeight + \\\"px\\\"'\\n type=\\\"text\\\"\\n rows=\\\"1\\\"\\n [id]=\\\"id\\\"\\n [name]=\\\"name\\\"\\n [attr.placeholder]=\\\"placeholder\\\"\\n [attr.maxlength]=\\\"maxLength()\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [tabindex]=\\\"tabIndex\\\"\\n [ngModel]=\\\"value\\\"\\n (ngModelChange)=\\\"_handleModelChange($event)\\\"\\n [ngModelOptions]=\\\"{ updateOn: _updateOn }\\\"\\n (keydown)=\\\"keyDownHandler($event)\\\"\\n (keyup)=\\\"keyUpHandler($event)\\\"\\n (keypress)=\\\"keyPressHandler($event)\\\"\\n (focus)=\\\"emitOnFocusEvent($event)\\\"\\n (blur)=\\\"emitOnBlurEvent($event)\\\"\\n >\\n </textarea>\\n\\n <div class=\\\"ax-conversation-input-end-side\\\">\\n @if (!value) {\\n @if (hasAttachment()) {\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\" (onClick)=\\\"handleAttachClick()\\\">\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-attach\\\"></i>\\n </ax-icon>\\n </ax-button>\\n <input\\n multiple\\n #inputFile\\n [accept]=\\\"acceptFileType()\\\"\\n type=\\\"file\\\"\\n class=\\\"ax-attach-input\\\"\\n (change)=\\\"handleChangeFile($event)\\\"\\n />\\n }\\n @if (hasVoice()) {\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\" (onClick)=\\\"handleRecordClick()\\\">\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-mic\\\"></i>\\n </ax-icon>\\n </ax-button>\\n }\\n } @else {\\n <ax-button [disabled]=\\\"isLoading()\\\" look=\\\"solid\\\" color=\\\"primary\\\" class=\\\"ax-sm\\\" (onClick)=\\\"handleSendClick()\\\">\\n @if (isLoading()) {\\n <ax-loading-spinner color=\\\"primary\\\"></ax-loading-spinner>\\n } @else {\\n @if (sendIcon()) {\\n <ng-content select=\\\"ax-icon\\\"></ng-content>\\n } @else {\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-arrow-long-up\\\"></i>\\n </ax-icon>\\n }\\n }\\n </ax-button>\\n }\\n </div>\\n }\\n</div>\\n\", styles: [\".ax-action-list{display:flex;gap:.25rem}.ax-action-list.ax-action-list-horizontal{flex-direction:row}.ax-action-list.ax-action-list-horizontal ax-divider{width:0px;height:auto;border-inline-end:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}.ax-action-list.ax-action-list-vertical{flex-direction:column}.ax-action-list.ax-action-list-vertical .ax-action-item>div.ax-action-item-prefix ax-prefix{min-width:1rem}.ax-action-list.ax-action-list-vertical ax-divider{height:1px;width:100%}.ax-action-list ax-title{opacity:.5;display:block;font-size:.75rem;line-height:1rem;font-weight:bolder;text-transform:uppercase;padding-block:var(--ax-comp-action-item-padding-block, .25rem);padding-inline:var(--ax-comp-action-item-padding-inline, calc(var(--ax-comp-action-item-padding-inline, .875rem) / 3 * 2))}.ax-action-list ax-divider{display:block;background-color:rgba(var(--ax-sys-color-border-lightest-surface))}.ax-action-list ax-text{white-space:nowrap}.ax-action-list .ax-action-item{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;line-height:1.25rem;height:2.25rem;width:100%;cursor:pointer;padding-inline:var(--ax-comp-action-item-padding-inline, .875rem)}.ax-action-list .ax-action-item.ax-state-disabled{cursor:not-allowed;opacity:.5}.ax-action-list .ax-action-item:hover:not(.ax-action-list .ax-action-item:hover.ax-state-disabled,.ax-action-list .ax-action-item:hover.ax-state-selected){background-color:rgba(var(--ax-sys-color-surface))}.ax-action-list .ax-action-item:hover:not(.ax-action-list .ax-action-item:hover.ax-state-disabled,.ax-action-list .ax-action-item:hover.ax-state-selected) ax-prefix,.ax-action-list .ax-action-item:hover:not(.ax-action-list .ax-action-item:hover.ax-state-disabled,.ax-action-list .ax-action-item:hover.ax-state-selected) ax-suffix{opacity:1}.ax-action-list .ax-action-item>div{display:flex;align-items:center;justify-content:center}.ax-action-list .ax-action-item>div.ax-action-item-prefix,.ax-action-list .ax-action-item>div.ax-action-item-suffix{gap:.5rem}.ax-action-list .ax-action-item ax-prefix{display:flex;gap:.5rem}.ax-action-list .ax-action-item ax-suffix ax-text{color:rgba(var(--ax-sys-body-text-color));opacity:.5;font-weight:lighter}.ax-action-sheet-panel{--ax-comp-action-sheet-border-radius-size: var(--ax-sys-border-radius);overflow:hidden;border-top-left-radius:var(--ax-comp-action-sheet-border-radius-size);border-top-right-radius:var(--ax-comp-action-sheet-border-radius-size);background-color:rgba(var(--ax-sys-color-surface-lowest));--ax-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--ax-shadow-colored: 0 10px 15px -3px var(--ax-shadow-color), 0 4px 6px -4px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow);animation:1s both ax-fadeInUp;animation-duration:var(--ax-sys-transition-duration)}@keyframes ax-fadeInUp{0%{transform:translate3d(0,100%,0);opacity:0}}@-moz-document url-prefix(){*{scrollbar-color:var(--ax-sys-scroller-thumb-color) var(--ax-sys-scroller-track-color)}}.ax-checkbox{margin:0;height:1rem;min-width:1rem;cursor:pointer;-webkit-appearance:none;appearance:none;border-radius:.25rem;border-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-input-surface));vertical-align:middle;outline:2px solid transparent;outline-offset:2px}.ax-checkbox:checked,.ax-checkbox:indeterminate{border-color:rgba(var(--ax-sys-color-primary-500))!important;background-color:rgba(var(--ax-sys-color-primary-500))!important;background-size:contain;background-repeat:no-repeat}.ax-checkbox:checked{background-image:url(\\\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\\\")}.ax-checkbox:indeterminate{background-image:url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9PC9zdHlsZT48L2RlZnM+PHJlY3QgY2xhc3M9ImNscy0xIiB4PSIzIiB5PSI3IiB3aWR0aD0iMTAiIGhlaWdodD0iMiIvPjwvc3ZnPg==)}.ax-checkbox:focus-visible,.ax-checkbox:focus{box-shadow:0 0 0 2px rgba(var(--ax-sys-color-surface)),0 0 0 4px rgba(var(--ax-sys-color-primary-500))}.ax-checkbox:disabled{cursor:not-allowed;opacity:.5}.ax-drop-down{display:contents}.ax-drop-down .ax-dropdown-content{display:flex;flex:1 1 0%;align-items:center;overflow-x:auto;overflow-y:hidden;font-size:.875rem;line-height:1.25rem;text-transform:capitalize}.ax-drop-down .ax-dropdown-content.ax-state-disabled{cursor:not-allowed;opacity:.5}.ax-overlay-pane{margin:.25rem 0;min-width:10rem;height:fit-content;overflow:hidden;border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-lightest-surface));--ax-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ax-shadow-colored: 0 4px 6px -1px var(--ax-shadow-color), 0 2px 4px -2px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow);border-top-left-radius:var(--ax-comp-drop-down-border-top-left-radius, var(--ax-sys-border-radius));border-top-right-radius:var(--ax-comp-drop-down-border-top-right-radius, var(--ax-sys-border-radius));border-bottom-left-radius:var(--ax-comp-drop-down-border-bottom-left-radius, var(--ax-sys-border-radius));border-bottom-right-radius:var(--ax-comp-drop-down-border-bottom-right-radius, var(--ax-sys-border-radius))}@media (min-width: 320px) and (max-width: 640px){.ax-overlay-pane{margin:0}}.ax-overlay-pane ax-header,.ax-overlay-pane ax-footer{background-color:rgba(var(--ax-sys-color-lightest-surface));padding:.75rem}.ax-overlay-pane.ax-overlay-center{height:fit-content;width:80vw;max-width:90vh}.ax-overlay-pane.ax-overlay-actionsheet{height:auto;max-height:85vh;width:100%;background-color:rgba(var(--ax-sys-color-lightest-surface))}.ax-overlay-pane.ax-overlay-actionsheet.ax-full{height:95vh;max-height:95vh}.ax-overlay-pane.ax-overlay-full{width:100vw;height:100vh}.ax-dark .ax-overlay-pane{background-color:rgba(var(--ax-sys-color-darker-surface));border-color:rgba(var(--ax-sys-color-border-darker-surface))}:root,.ax-editor-container{--ax-comp-editor-font-size: .875rem;--ax-comp-editor-gap: .5rem;--ax-comp-editor-space-start-size: .5rem;--ax-comp-editor-space-end-size: .5rem;--ax-comp-editor-space-block-size: .5rem;--ax-comp-editor-height: var(--ax-sys-size-base);--ax-comp-editor-placeholder-space-x: .75rem;--ax-comp-editor-error-bg-color: var(--ax-sys-color-danger-light-surface);--ax-comp-editor-error-text-color: var(--ax-sys-color-danger-surface);--ax-comp-editor-error-border-color: var(--ax-sys-color-border-danger-surface);--ax-comp-editor-error-box-shadow-color: var(--ax-sys-color-danger-surface);--ax-comp-editor-text-color: var(--ax-sys-color-on-surface);--ax-comp-editor-border-color: var(--ax-sys-color-border-surface);--ax-comp-editor-border-radius: var(--ax-sys-border-radius);--ax-comp-editor-box-outline-width: 1px;--ax-comp-editor-box-outline-color: var(--ax-sys-color-primary-surface);--ax-comp-editor-placeholder-opacity: .5;--ax-comp-editor-focused-border-color: var(--ax-sys-color-border-primary-surface);--ax-comp-editor-focused-box-shadow-color: var(--ax-sys-color-primary-surface);--ax-comp-editor-border-width: 0px}.ax-editor-container{display:flex;align-items:center;overflow:hidden;width:100%;height:var(--ax-comp-editor-height);font-size:var(--ax-comp-editor-font-size);border-radius:var(--ax-comp-editor-border-radius);border-width:var(--ax-comp-editor-border-width);border-color:rgba(var(--ax-comp-editor-border-color));background-color:rgba(var(--ax-comp-editor-bg-color));color:rgba(var(--ax-comp-editor-text-color));position:relative;gap:var(--ax-comp-editor-gap);padding-inline-end:var(--ax-comp-editor-space-end-size);padding-inline-start:var(--ax-comp-editor-space-start-size)}.ax-editor-container .ax-icon{font-size:var(--ax-comp-editor-icon-font-size)}.ax-editor-container:has(>ax-prefix){padding-inline-start:0}.ax-editor-container:has(>ax-prefix)>ax-prefix{padding-inline-start:var(--ax-comp-editor-space-start-size)}.ax-editor-container:has(>ax-prefix)>ax-prefix:has(ax-button,.ax-editor-container){--ax-comp-editor-space-start-size: 0px}.ax-editor-container:has(>ax-suffix){padding-inline-end:0}.ax-editor-container:has(>ax-suffix)>ax-suffix{padding-inline-end:var(--ax-comp-editor-space-end-size)}.ax-editor-container:has(>ax-suffix)>ax-suffix:has(ax-button,.ax-editor-container){--ax-comp-editor-space-end-size: 0px}.ax-editor-container:focus-within{border-color:rgba(var(--ax-comp-editor-focused-border-color));outline-width:var(--ax-comp-editor-box-outline-width);outline-style:solid;outline-color:rgba(var(--ax-comp-editor-focused-border-color))}.ax-editor-container.ax-state-error{border-color:rgba(var(--ax-comp-editor-error-border-color));outline-width:var(--ax-comp-editor-box-outline-width);outline-color:rgba(var(--ax-comp-editor-error-border-color));outline-style:solid}.ax-editor-container.ax-state-error:focus-within{border-color:rgba(var(--ax-comp-editor-error-border-color))}.ax-editor-container.ax-state-error .ax-input .ax-placeholder,.ax-editor-container.ax-state-error .ax-input::placeholder{color:rgba(var(--ax-comp-editor-error-text-color),var(--ax-comp-editor-placeholder-opacity))}.ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-editor-border-width: 1px}.ax-editor-container.ax-outline{--ax-comp-editor-bg-color: 0, 0, 0, 0;--ax-comp-editor-border-width: 1px}.ax-editor-container.ax-flat{--ax-comp-editor-border-width: 2px;--ax-comp-editor-border-radius: 0px;--ax-comp-editor-box-outline-width: 0px;border-width:0px!important;border-bottom-width:var(--ax-comp-editor-border-width)!important}.ax-editor-container.ax-fill{--ax-comp-editor-box-outline-width: 2px;--ax-comp-editor-border-width: 0px;--ax-comp-editor-bg-color: var(--ax-sys-color-surface);--ax-comp-editor-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-editor-border-color: var(--ax-sys-color-border-lighter-surface)}.ax-editor-container.ax-none{--ax-comp-editor-border-radius: 0px;--ax-comp-editor-box-outline-width: 0px;--ax-comp-editor-border-width: 0px;--ax-comp-editor-bg-color: 0, 0, 0, 0;--ax-comp-editor-border-color: 0, 0, 0, 0;--ax-comp-editor-text-color: var(--ax-sys-color-on-lighter-surface)}.ax-editor-container .ax-editor-input{height:100%;flex:1 1 0%}.ax-editor-container .ax-editor-input .ax-input{height:100%}.ax-editor-container .ax-input{font-size:var(--ax-comp-editor-font-size);line-height:var(--ax-comp-editor-font-size);color:rgba(var(--ax-comp-editor-text-color));cursor:inherit}.ax-editor-container .ax-input .ax-placeholder,.ax-editor-container .ax-input::placeholder{font-size:inherit;font-weight:400;color:rgb(var(--ax-comp-editor-text-color),var(--ax-comp-editor-placeholder-opacity))}.ax-editor-container .ax-input:focus,.ax-editor-container .ax-input:focus-visible,.ax-editor-container .ax-input:focus-within{outline:none}.ax-editor-container.ax-state-disabled{opacity:.5;cursor:not-allowed}.ax-editor-container .ax-editor-control{display:flex;height:100%;align-items:center;justify-content:center;padding-inline-start:.5rem;font-size:1.125rem;line-height:1.75rem;color:rgba(var(--ax-comp-editor-text-color))}.ax-editor-container.ax-button-icon{padding:0 .5rem}.ax-editor-container .ax-input,.ax-editor-container .ax-text-area{text-align:inherit;font-family:inherit;font-size:inherit;line-height:inherit;height:100%;width:100%;flex:1 1 0%;background-color:transparent;font-weight:inherit}.ax-editor-container .ax-input:focus,.ax-editor-container .ax-text-area:focus{box-shadow:none}.ax-editor-container .ax-editor-button{font-size:var(--ax-comp-editor-button-font-size, var(--ax-comp-editor-font-size));height:var(--ax-comp-editor-button-height, 100%)}.ax-editor-container>ax-prefix,.ax-editor-container>ax-suffix{height:100%;max-width:fit-content}.ax-editor-container>ax-prefix ax-button,.ax-editor-container>ax-prefix ax-text,.ax-editor-container>ax-prefix ax-icon,.ax-editor-container>ax-prefix .ax-editor-container,.ax-editor-container>ax-suffix ax-button,.ax-editor-container>ax-suffix ax-text,.ax-editor-container>ax-suffix ax-icon,.ax-editor-container>ax-suffix .ax-editor-container{display:flex;height:100%;align-items:center;justify-content:center;border-radius:0}.ax-editor-container>ax-prefix ax-title,.ax-editor-container>ax-suffix ax-title{padding-left:1rem;padding-right:1rem}.ax-editor-container>ax-prefix>ax-text,.ax-editor-container>ax-suffix>ax-text{display:flex;align-items:center;justify-content:center}.ax-editor-container .ax-button{height:100%!important;border-radius:0!important}.ax-editor-container .ax-button.ax-button-icon{height:100%;width:var(--ax-comp-editor-height)}.ax-editor-container ax-popover{position:absolute}.ax-xs .ax-editor-container,.ax-editor-container.ax-xs{--ax-comp-editor-font-size: .75rem;--ax-comp-editor-space-start-size: .25rem;--ax-comp-editor-space-end-size: .25rem;--ax-comp-editor-button-font-size: .625rem;--ax-comp-editor-gap: .25rem;--ax-comp-editor-icon-font-size: .75rem}.ax-sm .ax-editor-container,.ax-editor-container.ax-sm{--ax-comp-editor-font-size: .875rem;--ax-comp-editor-space-start-size: .5rem;--ax-comp-editor-space-end-size: .5rem;--ax-comp-editor-button-font-size: .75rem;--ax-comp-editor-gap: .375rem;--ax-comp-editor-icon-font-size: .875rem}.ax-md .ax-editor-container,.ax-editor-container,.ax-editor-container.ax-md{--ax-comp-editor-space-start-size: .75rem;--ax-comp-editor-space-end-size: .75rem;--ax-comp-editor-button-font-size: .875rem;--ax-comp-editor-gap: .5rem;--ax-comp-editor-icon-font-size: 1rem}.ax-lg .ax-editor-container,.ax-editor-container.ax-lg{--ax-comp-editor-font-size: 1.125rem;--ax-comp-editor-space-start-size: 1.125rem;--ax-comp-editor-space-end-size: 1.125rem;--ax-comp-editor-button-font-size: .875rem;--ax-comp-editor-gap: .625rem;--ax-comp-editor-icon-font-size: 1.25rem}.ax-xl .ax-editor-container,.ax-editor-container.ax-xl{--ax-comp-editor-font-size: 1.5rem;--ax-comp-editor-space-start-size: 1.5rem;--ax-comp-editor-space-end-size: 1.5rem;--ax-comp-editor-button-font-size: 1rem;--ax-comp-editor-gap: .75rem;--ax-comp-editor-icon-font-size: 1.5rem}ax-validation-rule{position:absolute}.ax-general-button{display:inline-flex;height:var(--ax-sys-size-base);cursor:pointer;align-items:center;justify-content:center;border-radius:var(--ax-sys-border-radius);padding-left:var(--ax-comp-general-button-padding-left, 1rem);padding-right:var(--ax-comp-general-button-padding-right, 1rem);font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface),.75)}.ax-general-button:hover:not(.ax-general-button:hover:disabled,.ax-state-disabled){color:rgba(var(--ax-sys-color-primary-500),var(--tw-text-opacity))}.ax-general-button:focus:not(.ax-general-button:focus:disabled,.ax-state-disabled,.ax-general-button:focus-visible:disabled),.ax-general-button:focus-visible:not(.ax-general-button:focus:disabled,.ax-state-disabled,.ax-general-button:focus-visible:disabled){color:rgba(var(--ax-sys-color-primary-700),var(--tw-text-opacity))}.ax-general-button:active:not(.ax-general-button:active:disabled,.ax-state-disabled){color:rgba(var(--ax-sys-color-primary-300),var(--tw-text-opacity))}.ax-general-button.ax-button-icon{padding-left:var(--ax-comp-general-button-padding-left, .5rem);padding-right:var(--ax-comp-general-button-padding-right, .5rem);font-size:100%}.ax-general-button.ax-button-icon>button{display:flex}.ax-general-button.ax-button-rounded{border-radius:var(--ax-sys-border-radius)}.ax-general-button:disabled,.ax-general-button.ax-state-disabled{cursor:not-allowed;opacity:.5}.ax-clear-button{display:inline-flex;height:var(--ax-sys-size-base);align-items:center;justify-content:center;margin-left:.25rem;margin-right:.25rem;font-size:1rem;line-height:1.5rem;color:rgb(var(--ax-sys-color-on-surface),.75)}.ax-clear-button>button{display:flex}.ax-clear-button:hover:not(.ax-clear-button:hover:disabled,.ax-state-disabled){color:rgb(var(--ax-sys-color-on-surface),.5)}.ax-clear-button:focus:not(.ax-clear-button:focus:disabled,.ax-state-disabled,.ax-clear-button:focus-visible:disabled),.ax-clear-button:focus-visible:not(.ax-clear-button:focus:disabled,.ax-state-disabled,.ax-clear-button:focus-visible:disabled){color:rgb(var(--ax-sys-color-on-surface))}.ax-dark .ax-list-item.ax-state-selected{background-color:rgba(var(--ax-sys-color-primary-800))!important;color:rgba(var(--ax-sys-color-on-primary))!important}.ax-list{display:flex;height:100%;flex-direction:column;overflow:hidden;background-color:rgba(var(--ax-sys-color-surface));font-size:.875rem;line-height:1.25rem}@media (min-width: 768px){.ax-list{max-height:20rem}}.ax-list ax-header,.ax-list ax-footer{display:flex;align-items:center;justify-content:space-between;border-color:rgba(var(--ax-sys-color-border-lightest-surface),var(--tw-border-opacity));background-color:rgba(var(--ax-color-surface),var(--tw-bg-opacity))}.ax-list ax-header{border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface),var(--tw-border-opacity));padding:1rem;font-size:1rem;line-height:1.5rem;font-weight:500}@media (min-width: 768px){.ax-list ax-header{font-size:1.125rem;line-height:1.75rem}}.ax-list ax-header ax-prefix,.ax-list ax-header ax-suffix{display:flex;flex-direction:column;justify-items:start}.ax-list ax-header ax-prefix{align-items:flex-start}.ax-list ax-header ax-suffix{align-items:flex-end}.ax-list ax-footer{border-top-width:1px}.ax-list .ax-content{flex:1 1 0%;overflow-y:auto;overflow-x:hidden}.ax-list .ax-content.ax-list-items-container{height:100%;overflow-y:auto;padding-top:.5rem;padding-bottom:.5rem}.ax-list .ax-content.ax-list-items-container.ax-vertical{display:grid;grid-template-columns:repeat(1,minmax(0,1fr))}.ax-list .ax-content.ax-list-items-container.ax-vertical.ax-divide{border-top-width:1px;border-bottom-width:1px}.ax-list .ax-content.ax-list-items-container.ax-default{cursor:pointer}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item-group>span{display:flex;align-items:center;padding:.75rem;font-weight:500}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item-group>ul{padding-left:.75rem;padding-right:.75rem}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item-group .ax-list-item{margin-bottom:.25rem;border-radius:var(--ax-sys-border-radius)}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item{position:relative;display:flex;height:var(--ax-sys-size-base);-webkit-user-select:none;user-select:none;align-items:center;justify-content:space-between;padding-inline-end:1rem;padding-inline-start:.75rem;font-size:1rem;line-height:1.5rem}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item:focus,.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item:focus-visible{outline-width:2px;outline-offset:2px}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item.ax-state-checkbox .ax-checkbox-label{margin-inline-start:.5rem}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item.ax-state-selected{background-color:rgba(var(--ax-sys-color-primary-500),var(--tw-bg-opacity))!important;color:rgba(var(--ax-sys-color-on-primary),var(--tw-text-opacity))!important}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item.ax-state-disabled{cursor:not-allowed;opacity:.5}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item:focus-visible,.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item:hover{background-color:rgba(var(--ax-sys-color-surface))}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item.ax-state-focus{background-color:rgba(var(--ax-sys-color-surface))}.ax-list .ax-content.ax-list-items-container .ax-list-loading-container{display:flex;justify-content:center;padding:.5rem}.ax-list .ax-search-box-container{padding:.5rem}.ax-list .ax-search-box-container.ax-state-hidden{display:none}.ax-radio{margin:0;height:1rem;min-height:1rem;min-width:1rem;width:1rem;cursor:pointer;-webkit-appearance:none;appearance:none;border-radius:9999px;border-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-input-surface));vertical-align:middle;outline:2px solid transparent;outline-offset:2px}.ax-radio:checked{border-color:rgba(var(--ax-sys-color-primary-500))!important;background-color:rgba(var(--ax-sys-color-primary-500))!important;background-size:contain;background-repeat:no-repeat}.ax-radio:checked{background-image:url(\\\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\\\")}.ax-radio:focus-visible,.ax-radio:focus{box-shadow:0 0 0 2px rgba(var(--ax-sys-color-surface)),0 0 0 4px rgba(var(--ax-sys-color-primary-500))}.ax-radio:disabled{cursor:not-allowed;opacity:.5}.ax-ripple{transform:scale(0);animation:ripple .5s linear;position:absolute;border-radius:9999rem!important}@keyframes ripple{to{transform:scale(4);opacity:0}}.ax-dark .ax-table thead{background-color:rgba(var(--ax-sys-color-surface))}.ax-table{width:100%;border-collapse:collapse;border-spacing:0;overflow:hidden;border-radius:var(--ax-sys-border-radius);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));font-size:.875rem;line-height:1.25rem}.ax-table td{border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:.75rem 1rem}.ax-table thead{border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface))}.ax-table thead th{padding:.875rem 1rem;text-align:start;font-weight:500;text-transform:uppercase}.ax-table.ax-table-alternate tbody tr:nth-child(2n){background-color:rgba(var(--ax-sys-color-lighter-surface))}.ax-table.ax-table-bordered thead th{border-top-width:0px!important}.ax-table.ax-table-bordered tbody tr:last-child td{border-bottom-width:0px!important}.ax-table.ax-table-bordered tbody tr td:last-child{border-bottom-width:0px!important}.ax-table.ax-table-bordered td,.ax-table.ax-table-bordered th{border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface))}.ax-table.ax-table-bordered td:first-child,.ax-table.ax-table-bordered th:first-child{border-inline-start-width:0px}.ax-table.ax-table-bordered td:last-child,.ax-table.ax-table-bordered th:last-child{border-inline-end-width:0px}@media screen and (max-width: 640px){.ax-table.ax-table-responsive{display:block;overflow-wrap:break-word;border-width:0px}.ax-table.ax-table-responsive thead{position:absolute;inset-inline-start:-100%;top:-100%}.ax-table.ax-table-responsive td{float:inline-start;clear:both;box-sizing:border-box;display:block;width:100%;padding:.375rem .625rem}.ax-table.ax-table-responsive td:last-child{border-width:0px}.ax-table.ax-table-responsive td:before{content:attr(data-label);display:block;font-weight:700}.ax-table.ax-table-responsive tr{border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface))}.ax-table.ax-table-responsive tr,.ax-table.ax-table-responsive tbody{float:inline-start;margin-bottom:.625rem;width:100%}}.ax-uploader-overlay-state{border-radius:inherit;pointer-events:none;position:absolute;inset-inline-start:0px;top:0;z-index:10;display:flex;height:100%;width:100%;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background-color:rgba(var(--ax-sys-color-primary-200),.75);font-size:.875rem;line-height:1.25rem;color:rgba(var(--ax-sys-color-on-primary-tint));outline-style:dashed;outline-offset:-4px;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ax-drop-zone>input{position:absolute;height:100%;width:100%;cursor:pointer;opacity:0}.ax-dark .ax-uploader-overlay-state{background-color:rgba(var(--ax-sys-color-primary-800),.75);color:rgba(var(--ax-sys-color-on-primary));outline-color:rgba(var(--ax-sys-color-on-primary))}ax-conversation-input{width:100%;display:block}ax-conversation-input .ax-conversation-input{display:flex;align-items:center;position:relative;resize:vertical;height:auto;padding:.5rem;font-size:.875rem}ax-conversation-input .ax-conversation-input.ax-state-recording{align-items:center;display:grid;grid-template-columns:repeat(3,1fr)}ax-conversation-input .ax-conversation-input.ax-state-recording .ax-conversation-input-start-side{justify-content:flex-start}ax-conversation-input .ax-conversation-input.ax-state-recording .ax-conversation-input-end-side{justify-content:flex-end}ax-conversation-input .ax-conversation-input>textarea{font-size:.875rem;background-color:transparent;max-height:10rem;min-height:1.5rem;line-height:2rem;flex:1 1 auto;height:auto;resize:none}ax-conversation-input .ax-conversation-input>textarea:focus,ax-conversation-input .ax-conversation-input>textarea:focus-visible{outline:unset}ax-conversation-input .ax-conversation-input .ax-conversation-input-start-side,ax-conversation-input .ax-conversation-input .ax-conversation-input-end-side{display:flex;align-items:center;justify-content:center}ax-conversation-input .ax-conversation-input .ax-conversation-input-start-side{padding-inline-end:.75rem}ax-conversation-input .ax-conversation-input .ax-conversation-input-main-side{flex:1 1 auto;display:flex;align-items:center;justify-content:center;line-height:2.5rem}ax-conversation-input .ax-conversation-input .ax-conversation-input-main-side::placeholder{font-size:1rem;line-height:2.5rem}ax-conversation-input .ax-conversation-input .ax-conversation-input-end-side{padding-inline-start:.75rem;gap:.5rem}ax-conversation-input .ax-conversation-input .ax-record-dot{display:inline-flex;width:.5rem;height:.5rem;background-color:rgba(var(--ax-sys-color-danger-surface));border-radius:999rem;margin-inline-end:.5rem}ax-conversation-input .ax-conversation-input .ax-blob{animation:pulse .75s infinite}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 rgba(var(--ax-sys-color-danger-surface),.7)}70%{transform:scale(1);box-shadow:0 0 0 10px rgba(var(--ax-sys-color-danger-surface),0)}to{transform:scale(1);box-shadow:0 0 rgba(var(--ax-sys-color-danger-surface),0)}}ax-conversation-input .ax-conversation-input .ax-attach-input{opacity:0;width:0;height:0;position:absolute}ax-conversation-input .ax-emoji-container{padding:.75rem;gap:.5rem;display:grid;grid-template-columns:repeat(7,1fr)}ax-conversation-input .ax-emoji-container>div{padding:.25rem;cursor:pointer;border-radius:var(--ax-sys-border-radius)}ax-conversation-input .ax-emoji-container>div:hover{background-color:rgba(var(--ax-sys-color-surface))}ax-conversation-input .ax-editor-reply-container{display:flex;padding:.75rem;justify-content:space-between}ax-conversation-input .ax-reply-start{display:flex;align-items:center}ax-conversation-input .ax-cursor-pointer{cursor:pointer}ax-conversation-input .ax-reply-types{display:flex;align-items:center}ax-conversation-input .ax-reply-start i{margin-inline-end:1rem}ax-conversation-input .ax-reply-start img,ax-conversation-input .ax-reply-start video{margin-inline-end:.5rem;height:1.75rem;width:1.75rem}\\n\"], dependencies: [{ kind: \"component\", type: AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"component\", type: AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: AXDropdownPanelComponent, selector: \"ax-dropdown-panel\", inputs: [\"isOpen\", \"fitParent\", \"dropdownWidth\", \"position\", \"placement\", \"_target\", \"adaptivityEnabled\"], outputs: [\"onOpened\", \"onClosed\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.DefaultValueAccessor, selector: \"input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]\" }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"component\", type: AXLoadingSpinnerComponent, selector: \"ax-loading-spinner\", inputs: [\"text\", \"color\", \"size\", \"stroke\"] }, { kind: \"pipe\", type: AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: AXTranslatorPipe, name: \"translate\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationInputComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-input', inputs: ['look', 'placeholder'], changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, providers: [\n { provide: AXComponent, useExisting: AXConversationInputComponent },\n { provide: AXFocusableComponent, useExisting: AXConversationInputComponent },\n { provide: AXValuableComponent, useExisting: AXConversationInputComponent },\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => AXConversationInputComponent),\n multi: true,\n },\n ], imports: [\n AXButtonComponent,\n AXDecoratorIconComponent,\n AXDropdownPanelComponent,\n FormsModule,\n AXLoadingSpinnerComponent,\n AsyncPipe,\n AXTranslatorPipe,\n ], template: \"@if (replyChat()) {\\n <div class=\\\"ax-editor-reply-container ax-editor-container ax-{{ look }}\\\">\\n <div class=\\\"ax-reply-start\\\">\\n <i class=\\\"fa-solid fa-reply\\\"></i>\\n @switch (replyChat().type) {\\n @case ('text') {\\n <p>\\n {{ replyChat().content }}\\n </p>\\n }\\n @case ('image') {\\n <div class=\\\"ax-reply-types\\\">\\n <img src=\\\"{{ replyChat().content }}\\\" alt=\\\"\\\" />\\n {{ replyChat().type }}\\n </div>\\n }\\n @case ('video') {\\n <div class=\\\"ax-reply-types\\\">\\n <video src=\\\"{{ replyChat().content }}\\\" alt=\\\"\\\"></video>\\n {{ replyChat().type }}\\n </div>\\n }\\n @case ('file') {\\n <div class=\\\"ax-reply-types\\\">\\n <i class=\\\"fa-regular fa-folder-open\\\"></i>\\n {{ replyChat().name }}\\n </div>\\n }\\n @default {\\n <p>\\n {{ replyChat().type }}\\n </p>\\n }\\n }\\n </div>\\n <i (click)=\\\"closeReplyHandler()\\\" class=\\\"fa-solid fa-xmark ax-cursor-pointer\\\"></i>\\n </div>\\n}\\n\\n<div class=\\\"ax-conversation-input ax-editor-container ax-{{ look }}\\\" [class.ax-state-recording]=\\\"recording()\\\">\\n @if (recording()) {\\n <div class=\\\"ax-conversation-input-start-side\\\">\\n <span class=\\\"ax-record-dot\\\"></span>\\n <span>{{ recordingService.timer() }}</span>\\n </div>\\n <div class=\\\"ax-conversation-input-main-side\\\">\\n <ax-button\\n class=\\\"ax-sm\\\"\\n look=\\\"blank\\\"\\n color=\\\"primary\\\"\\n [text]=\\\"'cancel' | translate | async\\\"\\n (onClick)=\\\"handleCancelRecordingClick()\\\"\\n ></ax-button>\\n </div>\\n <div class=\\\"ax-conversation-input-end-side\\\">\\n <ax-button look=\\\"solid\\\" color=\\\"danger\\\" class=\\\"ax-blob ax-sm\\\" (onClick)=\\\"handleSendVoiceClick()\\\">\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-send\\\"></i>\\n </ax-icon>\\n </ax-button>\\n </div>\\n } @else {\\n @if (hasEmoji()) {\\n <div class=\\\"ax-conversation-input-start-side\\\">\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\">\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-emoji\\\"></i>\\n </ax-icon>\\n <ax-dropdown-panel>\\n <ng-container>\\n <div class=\\\"ax-emoji-container\\\">\\n <div>\\u26A0\\uFE0F</div>\\n <div>\\u27A1\\uFE0F</div>\\n <div>\\uD83D\\uDD03</div>\\n <div>\\uD83D\\uDD37</div>\\n <div>\\uD83E\\uDD1A</div>\\n <div>\\uD83D\\uDE02</div>\\n <div>\\uD83D\\uDE0A</div>\\n </div>\\n </ng-container>\\n </ax-dropdown-panel>\\n </ax-button>\\n </div>\\n }\\n\\n <textarea\\n class=\\\"ax-conversation-input-main-side\\\"\\n oninput='this.style.height = \\\"\\\";this.style.height = this.scrollHeight + \\\"px\\\"'\\n type=\\\"text\\\"\\n rows=\\\"1\\\"\\n [id]=\\\"id\\\"\\n [name]=\\\"name\\\"\\n [attr.placeholder]=\\\"placeholder\\\"\\n [attr.maxlength]=\\\"maxLength()\\\"\\n [disabled]=\\\"disabled\\\"\\n [readonly]=\\\"readonly\\\"\\n [tabindex]=\\\"tabIndex\\\"\\n [ngModel]=\\\"value\\\"\\n (ngModelChange)=\\\"_handleModelChange($event)\\\"\\n [ngModelOptions]=\\\"{ updateOn: _updateOn }\\\"\\n (keydown)=\\\"keyDownHandler($event)\\\"\\n (keyup)=\\\"keyUpHandler($event)\\\"\\n (keypress)=\\\"keyPressHandler($event)\\\"\\n (focus)=\\\"emitOnFocusEvent($event)\\\"\\n (blur)=\\\"emitOnBlurEvent($event)\\\"\\n >\\n </textarea>\\n\\n <div class=\\\"ax-conversation-input-end-side\\\">\\n @if (!value) {\\n @if (hasAttachment()) {\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\" (onClick)=\\\"handleAttachClick()\\\">\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-attach\\\"></i>\\n </ax-icon>\\n </ax-button>\\n <input\\n multiple\\n #inputFile\\n [accept]=\\\"acceptFileType()\\\"\\n type=\\\"file\\\"\\n class=\\\"ax-attach-input\\\"\\n (change)=\\\"handleChangeFile($event)\\\"\\n />\\n }\\n @if (hasVoice()) {\\n <ax-button look=\\\"blank\\\" class=\\\"ax-sm\\\" (onClick)=\\\"handleRecordClick()\\\">\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-mic\\\"></i>\\n </ax-icon>\\n </ax-button>\\n }\\n } @else {\\n <ax-button [disabled]=\\\"isLoading()\\\" look=\\\"solid\\\" color=\\\"primary\\\" class=\\\"ax-sm\\\" (onClick)=\\\"handleSendClick()\\\">\\n @if (isLoading()) {\\n <ax-loading-spinner color=\\\"primary\\\"></ax-loading-spinner>\\n } @else {\\n @if (sendIcon()) {\\n <ng-content select=\\\"ax-icon\\\"></ng-content>\\n } @else {\\n <ax-icon>\\n <i class=\\\"ax-icon ax-icon-arrow-long-up\\\"></i>\\n </ax-icon>\\n }\\n }\\n </ax-button>\\n }\\n </div>\\n }\\n</div>\\n\", styles: [\".ax-action-list{display:flex;gap:.25rem}.ax-action-list.ax-action-list-horizontal{flex-direction:row}.ax-action-list.ax-action-list-horizontal ax-divider{width:0px;height:auto;border-inline-end:1px solid rgba(var(--ax-sys-color-border-lightest-surface))}.ax-action-list.ax-action-list-vertical{flex-direction:column}.ax-action-list.ax-action-list-vertical .ax-action-item>div.ax-action-item-prefix ax-prefix{min-width:1rem}.ax-action-list.ax-action-list-vertical ax-divider{height:1px;width:100%}.ax-action-list ax-title{opacity:.5;display:block;font-size:.75rem;line-height:1rem;font-weight:bolder;text-transform:uppercase;padding-block:var(--ax-comp-action-item-padding-block, .25rem);padding-inline:var(--ax-comp-action-item-padding-inline, calc(var(--ax-comp-action-item-padding-inline, .875rem) / 3 * 2))}.ax-action-list ax-divider{display:block;background-color:rgba(var(--ax-sys-color-border-lightest-surface))}.ax-action-list ax-text{white-space:nowrap}.ax-action-list .ax-action-item{display:flex;align-items:center;justify-content:space-between;font-size:.875rem;line-height:1.25rem;height:2.25rem;width:100%;cursor:pointer;padding-inline:var(--ax-comp-action-item-padding-inline, .875rem)}.ax-action-list .ax-action-item.ax-state-disabled{cursor:not-allowed;opacity:.5}.ax-action-list .ax-action-item:hover:not(.ax-action-list .ax-action-item:hover.ax-state-disabled,.ax-action-list .ax-action-item:hover.ax-state-selected){background-color:rgba(var(--ax-sys-color-surface))}.ax-action-list .ax-action-item:hover:not(.ax-action-list .ax-action-item:hover.ax-state-disabled,.ax-action-list .ax-action-item:hover.ax-state-selected) ax-prefix,.ax-action-list .ax-action-item:hover:not(.ax-action-list .ax-action-item:hover.ax-state-disabled,.ax-action-list .ax-action-item:hover.ax-state-selected) ax-suffix{opacity:1}.ax-action-list .ax-action-item>div{display:flex;align-items:center;justify-content:center}.ax-action-list .ax-action-item>div.ax-action-item-prefix,.ax-action-list .ax-action-item>div.ax-action-item-suffix{gap:.5rem}.ax-action-list .ax-action-item ax-prefix{display:flex;gap:.5rem}.ax-action-list .ax-action-item ax-suffix ax-text{color:rgba(var(--ax-sys-body-text-color));opacity:.5;font-weight:lighter}.ax-action-sheet-panel{--ax-comp-action-sheet-border-radius-size: var(--ax-sys-border-radius);overflow:hidden;border-top-left-radius:var(--ax-comp-action-sheet-border-radius-size);border-top-right-radius:var(--ax-comp-action-sheet-border-radius-size);background-color:rgba(var(--ax-sys-color-surface-lowest));--ax-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--ax-shadow-colored: 0 10px 15px -3px var(--ax-shadow-color), 0 4px 6px -4px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow);animation:1s both ax-fadeInUp;animation-duration:var(--ax-sys-transition-duration)}@keyframes ax-fadeInUp{0%{transform:translate3d(0,100%,0);opacity:0}}@-moz-document url-prefix(){*{scrollbar-color:var(--ax-sys-scroller-thumb-color) var(--ax-sys-scroller-track-color)}}.ax-checkbox{margin:0;height:1rem;min-width:1rem;cursor:pointer;-webkit-appearance:none;appearance:none;border-radius:.25rem;border-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-input-surface));vertical-align:middle;outline:2px solid transparent;outline-offset:2px}.ax-checkbox:checked,.ax-checkbox:indeterminate{border-color:rgba(var(--ax-sys-color-primary-500))!important;background-color:rgba(var(--ax-sys-color-primary-500))!important;background-size:contain;background-repeat:no-repeat}.ax-checkbox:checked{background-image:url(\\\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3cpath d='M12.207 4.793a1 1 0 010 1.414l-5 5a1 1 0 01-1.414 0l-2-2a1 1 0 011.414-1.414L6.5 9.086l4.293-4.293a1 1 0 011.414 0z'/%3e%3c/svg%3e\\\")}.ax-checkbox:indeterminate{background-image:url(data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij48ZGVmcz48c3R5bGU+LmNscy0xe2ZpbGw6I2ZmZjt9PC9zdHlsZT48L2RlZnM+PHJlY3QgY2xhc3M9ImNscy0xIiB4PSIzIiB5PSI3IiB3aWR0aD0iMTAiIGhlaWdodD0iMiIvPjwvc3ZnPg==)}.ax-checkbox:focus-visible,.ax-checkbox:focus{box-shadow:0 0 0 2px rgba(var(--ax-sys-color-surface)),0 0 0 4px rgba(var(--ax-sys-color-primary-500))}.ax-checkbox:disabled{cursor:not-allowed;opacity:.5}.ax-drop-down{display:contents}.ax-drop-down .ax-dropdown-content{display:flex;flex:1 1 0%;align-items:center;overflow-x:auto;overflow-y:hidden;font-size:.875rem;line-height:1.25rem;text-transform:capitalize}.ax-drop-down .ax-dropdown-content.ax-state-disabled{cursor:not-allowed;opacity:.5}.ax-overlay-pane{margin:.25rem 0;min-width:10rem;height:fit-content;overflow:hidden;border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-lightest-surface));--ax-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--ax-shadow-colored: 0 4px 6px -1px var(--ax-shadow-color), 0 2px 4px -2px var(--ax-shadow-color);box-shadow:var(--ax-ring-offset-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-ring-shadow, 0 0 rgba(0, 0, 0, 0)),var(--ax-shadow);border-top-left-radius:var(--ax-comp-drop-down-border-top-left-radius, var(--ax-sys-border-radius));border-top-right-radius:var(--ax-comp-drop-down-border-top-right-radius, var(--ax-sys-border-radius));border-bottom-left-radius:var(--ax-comp-drop-down-border-bottom-left-radius, var(--ax-sys-border-radius));border-bottom-right-radius:var(--ax-comp-drop-down-border-bottom-right-radius, var(--ax-sys-border-radius))}@media (min-width: 320px) and (max-width: 640px){.ax-overlay-pane{margin:0}}.ax-overlay-pane ax-header,.ax-overlay-pane ax-footer{background-color:rgba(var(--ax-sys-color-lightest-surface));padding:.75rem}.ax-overlay-pane.ax-overlay-center{height:fit-content;width:80vw;max-width:90vh}.ax-overlay-pane.ax-overlay-actionsheet{height:auto;max-height:85vh;width:100%;background-color:rgba(var(--ax-sys-color-lightest-surface))}.ax-overlay-pane.ax-overlay-actionsheet.ax-full{height:95vh;max-height:95vh}.ax-overlay-pane.ax-overlay-full{width:100vw;height:100vh}.ax-dark .ax-overlay-pane{background-color:rgba(var(--ax-sys-color-darker-surface));border-color:rgba(var(--ax-sys-color-border-darker-surface))}:root,.ax-editor-container{--ax-comp-editor-font-size: .875rem;--ax-comp-editor-gap: .5rem;--ax-comp-editor-space-start-size: .5rem;--ax-comp-editor-space-end-size: .5rem;--ax-comp-editor-space-block-size: .5rem;--ax-comp-editor-height: var(--ax-sys-size-base);--ax-comp-editor-placeholder-space-x: .75rem;--ax-comp-editor-error-bg-color: var(--ax-sys-color-danger-light-surface);--ax-comp-editor-error-text-color: var(--ax-sys-color-danger-surface);--ax-comp-editor-error-border-color: var(--ax-sys-color-border-danger-surface);--ax-comp-editor-error-box-shadow-color: var(--ax-sys-color-danger-surface);--ax-comp-editor-text-color: var(--ax-sys-color-on-surface);--ax-comp-editor-border-color: var(--ax-sys-color-border-surface);--ax-comp-editor-border-radius: var(--ax-sys-border-radius);--ax-comp-editor-box-outline-width: 1px;--ax-comp-editor-box-outline-color: var(--ax-sys-color-primary-surface);--ax-comp-editor-placeholder-opacity: .5;--ax-comp-editor-focused-border-color: var(--ax-sys-color-border-primary-surface);--ax-comp-editor-focused-box-shadow-color: var(--ax-sys-color-primary-surface);--ax-comp-editor-border-width: 0px}.ax-editor-container{display:flex;align-items:center;overflow:hidden;width:100%;height:var(--ax-comp-editor-height);font-size:var(--ax-comp-editor-font-size);border-radius:var(--ax-comp-editor-border-radius);border-width:var(--ax-comp-editor-border-width);border-color:rgba(var(--ax-comp-editor-border-color));background-color:rgba(var(--ax-comp-editor-bg-color));color:rgba(var(--ax-comp-editor-text-color));position:relative;gap:var(--ax-comp-editor-gap);padding-inline-end:var(--ax-comp-editor-space-end-size);padding-inline-start:var(--ax-comp-editor-space-start-size)}.ax-editor-container .ax-icon{font-size:var(--ax-comp-editor-icon-font-size)}.ax-editor-container:has(>ax-prefix){padding-inline-start:0}.ax-editor-container:has(>ax-prefix)>ax-prefix{padding-inline-start:var(--ax-comp-editor-space-start-size)}.ax-editor-container:has(>ax-prefix)>ax-prefix:has(ax-button,.ax-editor-container){--ax-comp-editor-space-start-size: 0px}.ax-editor-container:has(>ax-suffix){padding-inline-end:0}.ax-editor-container:has(>ax-suffix)>ax-suffix{padding-inline-end:var(--ax-comp-editor-space-end-size)}.ax-editor-container:has(>ax-suffix)>ax-suffix:has(ax-button,.ax-editor-container){--ax-comp-editor-space-end-size: 0px}.ax-editor-container:focus-within{border-color:rgba(var(--ax-comp-editor-focused-border-color));outline-width:var(--ax-comp-editor-box-outline-width);outline-style:solid;outline-color:rgba(var(--ax-comp-editor-focused-border-color))}.ax-editor-container.ax-state-error{border-color:rgba(var(--ax-comp-editor-error-border-color));outline-width:var(--ax-comp-editor-box-outline-width);outline-color:rgba(var(--ax-comp-editor-error-border-color));outline-style:solid}.ax-editor-container.ax-state-error:focus-within{border-color:rgba(var(--ax-comp-editor-error-border-color))}.ax-editor-container.ax-state-error .ax-input .ax-placeholder,.ax-editor-container.ax-state-error .ax-input::placeholder{color:rgba(var(--ax-comp-editor-error-text-color),var(--ax-comp-editor-placeholder-opacity))}.ax-editor-container.ax-solid{--ax-comp-editor-bg-color: var(--ax-sys-color-lightest-surface);--ax-comp-editor-border-width: 1px}.ax-editor-container.ax-outline{--ax-comp-editor-bg-color: 0, 0, 0, 0;--ax-comp-editor-border-width: 1px}.ax-editor-container.ax-flat{--ax-comp-editor-border-width: 2px;--ax-comp-editor-border-radius: 0px;--ax-comp-editor-box-outline-width: 0px;border-width:0px!important;border-bottom-width:var(--ax-comp-editor-border-width)!important}.ax-editor-container.ax-fill{--ax-comp-editor-box-outline-width: 2px;--ax-comp-editor-border-width: 0px;--ax-comp-editor-bg-color: var(--ax-sys-color-surface);--ax-comp-editor-text-color: var(--ax-sys-color-on-lighter-surface);--ax-comp-editor-border-color: var(--ax-sys-color-border-lighter-surface)}.ax-editor-container.ax-none{--ax-comp-editor-border-radius: 0px;--ax-comp-editor-box-outline-width: 0px;--ax-comp-editor-border-width: 0px;--ax-comp-editor-bg-color: 0, 0, 0, 0;--ax-comp-editor-border-color: 0, 0, 0, 0;--ax-comp-editor-text-color: var(--ax-sys-color-on-lighter-surface)}.ax-editor-container .ax-editor-input{height:100%;flex:1 1 0%}.ax-editor-container .ax-editor-input .ax-input{height:100%}.ax-editor-container .ax-input{font-size:var(--ax-comp-editor-font-size);line-height:var(--ax-comp-editor-font-size);color:rgba(var(--ax-comp-editor-text-color));cursor:inherit}.ax-editor-container .ax-input .ax-placeholder,.ax-editor-container .ax-input::placeholder{font-size:inherit;font-weight:400;color:rgb(var(--ax-comp-editor-text-color),var(--ax-comp-editor-placeholder-opacity))}.ax-editor-container .ax-input:focus,.ax-editor-container .ax-input:focus-visible,.ax-editor-container .ax-input:focus-within{outline:none}.ax-editor-container.ax-state-disabled{opacity:.5;cursor:not-allowed}.ax-editor-container .ax-editor-control{display:flex;height:100%;align-items:center;justify-content:center;padding-inline-start:.5rem;font-size:1.125rem;line-height:1.75rem;color:rgba(var(--ax-comp-editor-text-color))}.ax-editor-container.ax-button-icon{padding:0 .5rem}.ax-editor-container .ax-input,.ax-editor-container .ax-text-area{text-align:inherit;font-family:inherit;font-size:inherit;line-height:inherit;height:100%;width:100%;flex:1 1 0%;background-color:transparent;font-weight:inherit}.ax-editor-container .ax-input:focus,.ax-editor-container .ax-text-area:focus{box-shadow:none}.ax-editor-container .ax-editor-button{font-size:var(--ax-comp-editor-button-font-size, var(--ax-comp-editor-font-size));height:var(--ax-comp-editor-button-height, 100%)}.ax-editor-container>ax-prefix,.ax-editor-container>ax-suffix{height:100%;max-width:fit-content}.ax-editor-container>ax-prefix ax-button,.ax-editor-container>ax-prefix ax-text,.ax-editor-container>ax-prefix ax-icon,.ax-editor-container>ax-prefix .ax-editor-container,.ax-editor-container>ax-suffix ax-button,.ax-editor-container>ax-suffix ax-text,.ax-editor-container>ax-suffix ax-icon,.ax-editor-container>ax-suffix .ax-editor-container{display:flex;height:100%;align-items:center;justify-content:center;border-radius:0}.ax-editor-container>ax-prefix ax-title,.ax-editor-container>ax-suffix ax-title{padding-left:1rem;padding-right:1rem}.ax-editor-container>ax-prefix>ax-text,.ax-editor-container>ax-suffix>ax-text{display:flex;align-items:center;justify-content:center}.ax-editor-container .ax-button{height:100%!important;border-radius:0!important}.ax-editor-container .ax-button.ax-button-icon{height:100%;width:var(--ax-comp-editor-height)}.ax-editor-container ax-popover{position:absolute}.ax-xs .ax-editor-container,.ax-editor-container.ax-xs{--ax-comp-editor-font-size: .75rem;--ax-comp-editor-space-start-size: .25rem;--ax-comp-editor-space-end-size: .25rem;--ax-comp-editor-button-font-size: .625rem;--ax-comp-editor-gap: .25rem;--ax-comp-editor-icon-font-size: .75rem}.ax-sm .ax-editor-container,.ax-editor-container.ax-sm{--ax-comp-editor-font-size: .875rem;--ax-comp-editor-space-start-size: .5rem;--ax-comp-editor-space-end-size: .5rem;--ax-comp-editor-button-font-size: .75rem;--ax-comp-editor-gap: .375rem;--ax-comp-editor-icon-font-size: .875rem}.ax-md .ax-editor-container,.ax-editor-container,.ax-editor-container.ax-md{--ax-comp-editor-space-start-size: .75rem;--ax-comp-editor-space-end-size: .75rem;--ax-comp-editor-button-font-size: .875rem;--ax-comp-editor-gap: .5rem;--ax-comp-editor-icon-font-size: 1rem}.ax-lg .ax-editor-container,.ax-editor-container.ax-lg{--ax-comp-editor-font-size: 1.125rem;--ax-comp-editor-space-start-size: 1.125rem;--ax-comp-editor-space-end-size: 1.125rem;--ax-comp-editor-button-font-size: .875rem;--ax-comp-editor-gap: .625rem;--ax-comp-editor-icon-font-size: 1.25rem}.ax-xl .ax-editor-container,.ax-editor-container.ax-xl{--ax-comp-editor-font-size: 1.5rem;--ax-comp-editor-space-start-size: 1.5rem;--ax-comp-editor-space-end-size: 1.5rem;--ax-comp-editor-button-font-size: 1rem;--ax-comp-editor-gap: .75rem;--ax-comp-editor-icon-font-size: 1.5rem}ax-validation-rule{position:absolute}.ax-general-button{display:inline-flex;height:var(--ax-sys-size-base);cursor:pointer;align-items:center;justify-content:center;border-radius:var(--ax-sys-border-radius);padding-left:var(--ax-comp-general-button-padding-left, 1rem);padding-right:var(--ax-comp-general-button-padding-right, 1rem);font-size:.875rem;line-height:1.25rem;color:rgb(var(--ax-sys-color-on-surface),.75)}.ax-general-button:hover:not(.ax-general-button:hover:disabled,.ax-state-disabled){color:rgba(var(--ax-sys-color-primary-500),var(--tw-text-opacity))}.ax-general-button:focus:not(.ax-general-button:focus:disabled,.ax-state-disabled,.ax-general-button:focus-visible:disabled),.ax-general-button:focus-visible:not(.ax-general-button:focus:disabled,.ax-state-disabled,.ax-general-button:focus-visible:disabled){color:rgba(var(--ax-sys-color-primary-700),var(--tw-text-opacity))}.ax-general-button:active:not(.ax-general-button:active:disabled,.ax-state-disabled){color:rgba(var(--ax-sys-color-primary-300),var(--tw-text-opacity))}.ax-general-button.ax-button-icon{padding-left:var(--ax-comp-general-button-padding-left, .5rem);padding-right:var(--ax-comp-general-button-padding-right, .5rem);font-size:100%}.ax-general-button.ax-button-icon>button{display:flex}.ax-general-button.ax-button-rounded{border-radius:var(--ax-sys-border-radius)}.ax-general-button:disabled,.ax-general-button.ax-state-disabled{cursor:not-allowed;opacity:.5}.ax-clear-button{display:inline-flex;height:var(--ax-sys-size-base);align-items:center;justify-content:center;margin-left:.25rem;margin-right:.25rem;font-size:1rem;line-height:1.5rem;color:rgb(var(--ax-sys-color-on-surface),.75)}.ax-clear-button>button{display:flex}.ax-clear-button:hover:not(.ax-clear-button:hover:disabled,.ax-state-disabled){color:rgb(var(--ax-sys-color-on-surface),.5)}.ax-clear-button:focus:not(.ax-clear-button:focus:disabled,.ax-state-disabled,.ax-clear-button:focus-visible:disabled),.ax-clear-button:focus-visible:not(.ax-clear-button:focus:disabled,.ax-state-disabled,.ax-clear-button:focus-visible:disabled){color:rgb(var(--ax-sys-color-on-surface))}.ax-dark .ax-list-item.ax-state-selected{background-color:rgba(var(--ax-sys-color-primary-800))!important;color:rgba(var(--ax-sys-color-on-primary))!important}.ax-list{display:flex;height:100%;flex-direction:column;overflow:hidden;background-color:rgba(var(--ax-sys-color-surface));font-size:.875rem;line-height:1.25rem}@media (min-width: 768px){.ax-list{max-height:20rem}}.ax-list ax-header,.ax-list ax-footer{display:flex;align-items:center;justify-content:space-between;border-color:rgba(var(--ax-sys-color-border-lightest-surface),var(--tw-border-opacity));background-color:rgba(var(--ax-color-surface),var(--tw-bg-opacity))}.ax-list ax-header{border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface),var(--tw-border-opacity));padding:1rem;font-size:1rem;line-height:1.5rem;font-weight:500}@media (min-width: 768px){.ax-list ax-header{font-size:1.125rem;line-height:1.75rem}}.ax-list ax-header ax-prefix,.ax-list ax-header ax-suffix{display:flex;flex-direction:column;justify-items:start}.ax-list ax-header ax-prefix{align-items:flex-start}.ax-list ax-header ax-suffix{align-items:flex-end}.ax-list ax-footer{border-top-width:1px}.ax-list .ax-content{flex:1 1 0%;overflow-y:auto;overflow-x:hidden}.ax-list .ax-content.ax-list-items-container{height:100%;overflow-y:auto;padding-top:.5rem;padding-bottom:.5rem}.ax-list .ax-content.ax-list-items-container.ax-vertical{display:grid;grid-template-columns:repeat(1,minmax(0,1fr))}.ax-list .ax-content.ax-list-items-container.ax-vertical.ax-divide{border-top-width:1px;border-bottom-width:1px}.ax-list .ax-content.ax-list-items-container.ax-default{cursor:pointer}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item-group>span{display:flex;align-items:center;padding:.75rem;font-weight:500}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item-group>ul{padding-left:.75rem;padding-right:.75rem}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item-group .ax-list-item{margin-bottom:.25rem;border-radius:var(--ax-sys-border-radius)}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item{position:relative;display:flex;height:var(--ax-sys-size-base);-webkit-user-select:none;user-select:none;align-items:center;justify-content:space-between;padding-inline-end:1rem;padding-inline-start:.75rem;font-size:1rem;line-height:1.5rem}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item:focus,.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item:focus-visible{outline-width:2px;outline-offset:2px}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item.ax-state-checkbox .ax-checkbox-label{margin-inline-start:.5rem}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item.ax-state-selected{background-color:rgba(var(--ax-sys-color-primary-500),var(--tw-bg-opacity))!important;color:rgba(var(--ax-sys-color-on-primary),var(--tw-text-opacity))!important}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item.ax-state-disabled{cursor:not-allowed;opacity:.5}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item:focus-visible,.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item:hover{background-color:rgba(var(--ax-sys-color-surface))}.ax-list .ax-content.ax-list-items-container.ax-default .ax-list-item.ax-state-focus{background-color:rgba(var(--ax-sys-color-surface))}.ax-list .ax-content.ax-list-items-container .ax-list-loading-container{display:flex;justify-content:center;padding:.5rem}.ax-list .ax-search-box-container{padding:.5rem}.ax-list .ax-search-box-container.ax-state-hidden{display:none}.ax-radio{margin:0;height:1rem;min-height:1rem;min-width:1rem;width:1rem;cursor:pointer;-webkit-appearance:none;appearance:none;border-radius:9999px;border-width:1px;border-color:rgba(var(--ax-sys-color-border-surface));background-color:rgba(var(--ax-sys-color-input-surface));vertical-align:middle;outline:2px solid transparent;outline-offset:2px}.ax-radio:checked{border-color:rgba(var(--ax-sys-color-primary-500))!important;background-color:rgba(var(--ax-sys-color-primary-500))!important;background-size:contain;background-repeat:no-repeat}.ax-radio:checked{background-image:url(\\\"data:image/svg+xml,%3csvg viewBox='0 0 16 16' fill='white' xmlns='http://www.w3.org/2000/svg'%3e%3ccircle cx='8' cy='8' r='3'/%3e%3c/svg%3e\\\")}.ax-radio:focus-visible,.ax-radio:focus{box-shadow:0 0 0 2px rgba(var(--ax-sys-color-surface)),0 0 0 4px rgba(var(--ax-sys-color-primary-500))}.ax-radio:disabled{cursor:not-allowed;opacity:.5}.ax-ripple{transform:scale(0);animation:ripple .5s linear;position:absolute;border-radius:9999rem!important}@keyframes ripple{to{transform:scale(4);opacity:0}}.ax-dark .ax-table thead{background-color:rgba(var(--ax-sys-color-surface))}.ax-table{width:100%;border-collapse:collapse;border-spacing:0;overflow:hidden;border-radius:var(--ax-sys-border-radius);border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));font-size:.875rem;line-height:1.25rem}.ax-table td{border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));padding:.75rem 1rem}.ax-table thead{border-bottom-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface));background-color:rgba(var(--ax-sys-color-surface))}.ax-table thead th{padding:.875rem 1rem;text-align:start;font-weight:500;text-transform:uppercase}.ax-table.ax-table-alternate tbody tr:nth-child(2n){background-color:rgba(var(--ax-sys-color-lighter-surface))}.ax-table.ax-table-bordered thead th{border-top-width:0px!important}.ax-table.ax-table-bordered tbody tr:last-child td{border-bottom-width:0px!important}.ax-table.ax-table-bordered tbody tr td:last-child{border-bottom-width:0px!important}.ax-table.ax-table-bordered td,.ax-table.ax-table-bordered th{border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface))}.ax-table.ax-table-bordered td:first-child,.ax-table.ax-table-bordered th:first-child{border-inline-start-width:0px}.ax-table.ax-table-bordered td:last-child,.ax-table.ax-table-bordered th:last-child{border-inline-end-width:0px}@media screen and (max-width: 640px){.ax-table.ax-table-responsive{display:block;overflow-wrap:break-word;border-width:0px}.ax-table.ax-table-responsive thead{position:absolute;inset-inline-start:-100%;top:-100%}.ax-table.ax-table-responsive td{float:inline-start;clear:both;box-sizing:border-box;display:block;width:100%;padding:.375rem .625rem}.ax-table.ax-table-responsive td:last-child{border-width:0px}.ax-table.ax-table-responsive td:before{content:attr(data-label);display:block;font-weight:700}.ax-table.ax-table-responsive tr{border-width:1px;border-color:rgba(var(--ax-sys-color-border-lightest-surface))}.ax-table.ax-table-responsive tr,.ax-table.ax-table-responsive tbody{float:inline-start;margin-bottom:.625rem;width:100%}}.ax-uploader-overlay-state{border-radius:inherit;pointer-events:none;position:absolute;inset-inline-start:0px;top:0;z-index:10;display:flex;height:100%;width:100%;cursor:pointer;flex-direction:column;align-items:center;justify-content:center;gap:.5rem;background-color:rgba(var(--ax-sys-color-primary-200),.75);font-size:.875rem;line-height:1.25rem;color:rgba(var(--ax-sys-color-on-primary-tint));outline-style:dashed;outline-offset:-4px;transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.ax-drop-zone>input{position:absolute;height:100%;width:100%;cursor:pointer;opacity:0}.ax-dark .ax-uploader-overlay-state{background-color:rgba(var(--ax-sys-color-primary-800),.75);color:rgba(var(--ax-sys-color-on-primary));outline-color:rgba(var(--ax-sys-color-on-primary))}ax-conversation-input{width:100%;display:block}ax-conversation-input .ax-conversation-input{display:flex;align-items:center;position:relative;resize:vertical;height:auto;padding:.5rem;font-size:.875rem}ax-conversation-input .ax-conversation-input.ax-state-recording{align-items:center;display:grid;grid-template-columns:repeat(3,1fr)}ax-conversation-input .ax-conversation-input.ax-state-recording .ax-conversation-input-start-side{justify-content:flex-start}ax-conversation-input .ax-conversation-input.ax-state-recording .ax-conversation-input-end-side{justify-content:flex-end}ax-conversation-input .ax-conversation-input>textarea{font-size:.875rem;background-color:transparent;max-height:10rem;min-height:1.5rem;line-height:2rem;flex:1 1 auto;height:auto;resize:none}ax-conversation-input .ax-conversation-input>textarea:focus,ax-conversation-input .ax-conversation-input>textarea:focus-visible{outline:unset}ax-conversation-input .ax-conversation-input .ax-conversation-input-start-side,ax-conversation-input .ax-conversation-input .ax-conversation-input-end-side{display:flex;align-items:center;justify-content:center}ax-conversation-input .ax-conversation-input .ax-conversation-input-start-side{padding-inline-end:.75rem}ax-conversation-input .ax-conversation-input .ax-conversation-input-main-side{flex:1 1 auto;display:flex;align-items:center;justify-content:center;line-height:2.5rem}ax-conversation-input .ax-conversation-input .ax-conversation-input-main-side::placeholder{font-size:1rem;line-height:2.5rem}ax-conversation-input .ax-conversation-input .ax-conversation-input-end-side{padding-inline-start:.75rem;gap:.5rem}ax-conversation-input .ax-conversation-input .ax-record-dot{display:inline-flex;width:.5rem;height:.5rem;background-color:rgba(var(--ax-sys-color-danger-surface));border-radius:999rem;margin-inline-end:.5rem}ax-conversation-input .ax-conversation-input .ax-blob{animation:pulse .75s infinite}@keyframes pulse{0%{transform:scale(1);box-shadow:0 0 rgba(var(--ax-sys-color-danger-surface),.7)}70%{transform:scale(1);box-shadow:0 0 0 10px rgba(var(--ax-sys-color-danger-surface),0)}to{transform:scale(1);box-shadow:0 0 rgba(var(--ax-sys-color-danger-surface),0)}}ax-conversation-input .ax-conversation-input .ax-attach-input{opacity:0;width:0;height:0;position:absolute}ax-conversation-input .ax-emoji-container{padding:.75rem;gap:.5rem;display:grid;grid-template-columns:repeat(7,1fr)}ax-conversation-input .ax-emoji-container>div{padding:.25rem;cursor:pointer;border-radius:var(--ax-sys-border-radius)}ax-conversation-input .ax-emoji-container>div:hover{background-color:rgba(var(--ax-sys-color-surface))}ax-conversation-input .ax-editor-reply-container{display:flex;padding:.75rem;justify-content:space-between}ax-conversation-input .ax-reply-start{display:flex;align-items:center}ax-conversation-input .ax-cursor-pointer{cursor:pointer}ax-conversation-input .ax-reply-types{display:flex;align-items:center}ax-conversation-input .ax-reply-start i{margin-inline-end:1rem}ax-conversation-input .ax-reply-start img,ax-conversation-input .ax-reply-start video{margin-inline-end:.5rem;height:1.75rem;width:1.75rem}\\n\"] }]\n }], propDecorators: { inputFile: [{\n type: ViewChild,\n args: ['inputFile']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLWlucHV0LmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29udmVyc2F0aW9uL3NyYy9saWIvY29udmVyc2F0aW9uLWlucHV0L2NvbnZlcnNhdGlvbi1pbnB1dC5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL2NvbnZlcnNhdGlvbi1pbnB1dC9jb252ZXJzYXRpb24taW5wdXQuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUVMLFdBQVcsRUFFWCxvQkFBb0IsRUFDcEIsbUJBQW1CLEVBQ25CLHlCQUF5QixFQUN6QixlQUFlLEdBQ2hCLE1BQU0sb0JBQW9CLENBQUM7QUFDNUIsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDekUsT0FBTyxFQUFFLHdCQUF3QixFQUFFLE1BQU0sNkJBQTZCLENBQUM7QUFDdkUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDNUQsT0FBTyxFQUFFLFNBQVMsRUFBRSxNQUFNLGlCQUFpQixDQUFDO0FBQzVDLE9BQU8sRUFDTCx1QkFBdUIsRUFDdkIsU0FBUyxFQUNULFVBQVUsRUFFVixTQUFTLEVBQ1QsaUJBQWlCLEVBRWpCLFFBQVEsRUFDUixZQUFZLEVBQ1osVUFBVSxFQUNWLE1BQU0sRUFDTixLQUFLLEVBQ0wsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsV0FBVyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZ0JB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QUFpQjs0QkFDMUIsV0FBVyxFQUFFLFVBQVUsQ0FBQyxHQUFHLEVBQUUsNkJBQTZCLENBQUM7NEJBQzNELEtBQUssRUFBRSxJQUFJO3lCQUNaO3FCQUNGLFdBQ1E7d0JBQ1AsaUJBQWlCO3dCQUNqQix3QkFBd0I7d0JBQ3hCLHdCQUF3Qjt3QkFDeEIsV0FBVzt3QkFDWCx5QkFBeUI7d0JBQ3pCLFNBQVM7d0JBQ1QsZ0JBQWdCO3FCQUNqQjs4QkFNaUMsU0FBUztzQkFBMUMsU0FBUzt1QkFBQyxXQUFXIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcbiAgQVhDbGlja0V2ZW50LFxuICBBWENvbXBvbmVudCxcbiAgQVhFdmVudCxcbiAgQVhGb2N1c2FibGVDb21wb25lbnQsXG4gIEFYVmFsdWFibGVDb21wb25lbnQsXG4gIE1YSW5wdXRCYXNlVmFsdWVDb21wb25lbnQsXG4gIE1YTG9va0NvbXBvbmVudCxcbn0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IEFYQnV0dG9uQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2J1dHRvbic7XG5pbXBvcnQgeyBBWERlY29yYXRvckljb25Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWERyb3Bkb3duUGFuZWxDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZHJvcGRvd24nO1xuaW1wb3J0IHsgQVhMb2FkaW5nU3Bpbm5lckNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9sb2FkaW5nJztcbmltcG9ydCB7IEFYVHJhbnNsYXRvclBpcGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvdHJhbnNsYXRpb24nO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7XG4gIENoYW5nZURldGVjdGlvblN0cmF0ZWd5LFxuICBDb21wb25lbnQsXG4gIEVsZW1lbnRSZWYsXG4gIFNpZ25hbCxcbiAgVmlld0NoaWxkLFxuICBWaWV3RW5jYXBzdWxhdGlvbixcbiAgV3JpdGFibGVTaWduYWwsXG4gIGNvbXB1dGVkLFxuICBjb250ZW50Q2hpbGQsXG4gIGZvcndhcmRSZWYsXG4gIGluamVjdCxcbiAgaW5wdXQsXG4gIG91dHB1dCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlLCBOR19WQUxVRV9BQ0NFU1NPUiB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IGNsYXNzZXMgfSBmcm9tICdwb2x5dHlwZSc7XG5pbXBvcnQgeyBBWENvbnZlcnNhdGlvbk1lc3NhZ2UgfSBmcm9tICcuLi9jb252ZXJzYXRpb24udHlwZXMnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY29udmVyc2F0aW9uLnNlcnZpY2UnO1xuaW1wb3J0IHsgQVhSZWNvcmRpbmdTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvcmVjb3JkaW5nLnNlcnZpY2UnO1xuXG4vKipcbiAqIEFuIGlucHV0IGNvbXBvbmVudCBmb3IgZW50ZXJpbmcgY29udmVyc2F0aW9uIG1lc3NhZ2VzLlxuICpcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWNvbnZlcnNhdGlvbi1pbnB1dCcsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb252ZXJzYXRpb24taW5wdXQuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybHM6IFsnLi9jb252ZXJzYXRpb24taW5wdXQuY29tcG9uZW50LnNjc3MnXSxcbiAgaW5wdXRzOiBbJ2xvb2snLCAncGxhY2Vob2xkZXInXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByb3ZpZGVyczogW1xuICAgIHsgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWENvbnZlcnNhdGlvbklucHV0Q29tcG9uZW50IH0sXG4gICAgeyBwcm92aWRlOiBBWEZvY3VzYWJsZUNvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYQ29udmVyc2F0aW9uSW5wdXRDb21wb25lbnQgfSxcbiAgICB7IHByb3ZpZGU6IEFYVmFsdWFibGVDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWENvbnZlcnNhdGlvbklucHV0Q29tcG9uZW50IH0sXG4gICAge1xuICAgICAgcHJvdmlkZTogTkdfVkFMVUVfQUNDRVNTT1IsXG4gICAgICB1c2VFeGlzdGluZzogZm9yd2FyZFJlZigoKSA9PiBBWENvbnZlcnNhdGlvbklucHV0Q29tcG9uZW50KSxcbiAgICAgIG11bHRpOiB0cnVlLFxuICAgIH0sXG4gIF0sXG4gIGltcG9ydHM6IFtcbiAgICBBWEJ1dHRvbkNvbXBvbmVudCxcbiAgICBBWERlY29yYXRvckljb25Db21wb25lbnQsXG4gICAgQVhEcm9wZG93blBhbmVsQ29tcG9uZW50LFxuICAgIEZvcm1zTW9kdWxlLFxuICAgIEFYTG9hZGluZ1NwaW5uZXJDb21wb25lbnQsXG4gICAgQXN5bmNQaXBlLFxuICAgIEFYVHJhbnNsYXRvclBpcGUsXG4gIF0sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29udmVyc2F0aW9uSW5wdXRDb21wb25lbnQgZXh0ZW5kcyBjbGFzc2VzKE1YSW5wdXRCYXNlVmFsdWVDb21wb25lbnQ8c3RyaW5nPiwgTVhMb29rQ29tcG9uZW50KSB7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgQFZpZXdDaGlsZCgnaW5wdXRGaWxlJykgcHJvdGVjdGVkIGlucHV0RmlsZTogRWxlbWVudFJlZjxIVE1MSW5wdXRFbGVtZW50PjtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBzZW5kSWNvbiA9IGNvbnRlbnRDaGlsZCgnYXgtaWNvbicpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGNvbnZlcnNhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhDb252ZXJzYXRpb25TZXJ2aWNlKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBjaGF0czogU2lnbmFsPEFYQ29udmVyc2F0aW9uTWVzc2FnZVtdPiA9IGNvbXB1dGVkKCgpID0+IHtcbiAgICByZXR1cm4gdGhpcy5jb252ZXJzYXRpb25TZXJ2aWNlLmNoYXRzKCk7XG4gIH0pO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIHJlcGx5Q2hhdDogU2lnbmFsPEFYQ29udmVyc2F0aW9uTWVzc2FnZT4gPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgY29uc3QgZmluZE1lc3NhZ2UgPSB0aGlzLmNoYXRzKCkuZmluZCgoaXRlbSkgPT4gaXRlbS5pZCA9PT0gdGhpcy5jb252ZXJzYXRpb25TZXJ2aWNlLnJlcGx5SWQoKSk7XG4gICAgcmV0dXJuIGZpbmRNZXNzYWdlO1xuICB9KTtcblxuICAvKiogTWF4aW11bSBsZW5ndGggb2YgaW5wdXQgdGV4dCAqL1xuICBtYXhMZW5ndGggPSBpbnB1dDxudW1iZXI+KCk7XG5cbiAgLyoqIEluZGljYXRlcyBpZiBhbiBhdHRhY2htZW50IGlzIHByZXNlbnQgKi9cbiAgaGFzQXR0YWNobWVudCA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG4gIC8qKiBJbmRpY2F0ZXMgaWYgdm9pY2UgcmVjb3JkaW5nIGlzIGVuYWJsZWQgKi9cbiAgaGFzVm9pY2UgPSBpbnB1dDxib29sZWFuPih0cnVlKTtcblxuICBoYXNFbW9qaSA9IGlucHV0PGJvb2xlYW4+KHRydWUpO1xuXG4gIGlzTG9hZGluZyA9IGlucHV0PGJvb2xlYW4+KGZhbHNlKTtcblxuICAvKiogQWNjZXB0YWJsZSBmaWxlIHR5cGVzIGZvciBhdHRhY2htZW50ICovXG4gIGFjY2VwdEZpbGVUeXBlID0gaW5wdXQ8c3RyaW5nPignKicpO1xuXG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gdGhlIHNlbmQgYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAqXG4gICAqIEBldmVudFxuICAgKi9cbiAgb25TZW5kQ2xpY2sgPSBvdXRwdXQ8QVhDbGlja0V2ZW50PigpO1xuXG4gIC8qKlxuICAgKiBFbWl0dGVkIHdoZW4gcmVjb3JkaW5nIHN0YXJ0cy5cbiAgICpcbiAgICogQGV2ZW50XG4gICAqL1xuICBvblN0YXJ0UmVjb3JkaW5nID0gb3V0cHV0PEFYQ2xpY2tFdmVudD4oKTtcblxuICAvKipcbiAgICogRW1pdHRlZCB3aGVuIHJlY29yZGluZyBpcyBjYW5jZWxlZC5cbiAgICpcbiAgICogQGV2ZW50XG4gICAqL1xuICBvbkNhbmNlbFJlY29yZGluZyA9IG91dHB1dDxBWENsaWNrRXZlbnQ+KCk7XG5cbiAgb25FbnRlclByZXNzZWQgPSBvdXRwdXQ8QVhFdmVudD4oKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCByZWNvcmRpbmc6IFdyaXRhYmxlU2lnbmFsPGJvb2xlYW4+ID0gc2lnbmFsKGZhbHNlKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCByZWNvcmRpbmdTZXJ2aWNlOiBBWFJlY29yZGluZ1NlcnZpY2UgPSBpbmplY3QoQVhSZWNvcmRpbmdTZXJ2aWNlKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBfdXBkYXRlT246ICdjaGFuZ2UnIHwgJ2JsdXInIHwgJ3N1Ym1pdCcgPSAnY2hhbmdlJztcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBfaGFuZGxlTW9kZWxDaGFuZ2UodmFsdWU6IHN0cmluZykge1xuICAgIHRoaXMuY29tbWl0VmFsdWUodmFsdWUsIHRydWUpO1xuICB9XG5cbiAgLyoqXG4gICAqIEluaXRpYXRlcyByZWNvcmRpbmcgd2hlbiB0aGUgcmVjb3JkIGJ1dHRvbiBpcyBjbGlja2VkLlxuICAgKiBFbWl0cyBhbiBldmVudCB3aGVuIHJlY29yZGluZyBzdGFydHMuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVSZWNvcmRDbGljaygpIHtcbiAgICB0aGlzLnJlY29yZGluZy5zZXQodHJ1ZSk7XG4gICAgdGhpcy5yZWNvcmRpbmdTZXJ2aWNlXG4gICAgICA/LnN0YXJ0UmVjb3JkaW5nKClcbiAgICAgIC50aGVuKCgpID0+IHtcbiAgICAgICAgdGhpcy5vblN0YXJ0UmVjb3JkaW5nLmVtaXQoe1xuICAgICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgICBkYXRhOiB7IHJlY29yZGluZzogdHJ1ZSB9LFxuICAgICAgICAgIGlzVXNlckludGVyYWN0aW9uOiB0cnVlLFxuICAgICAgICB9KTtcbiAgICAgIH0pXG4gICAgICAuY2F0Y2goKGUpID0+IHtcbiAgICAgICAgdGhyb3cgZTtcbiAgICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENhbmNlbHMgdGhlIHJlY29yZGluZyBhbmQgZW1pdHMgYW4gZXZlbnQgdG8gaW5kaWNhdGUgY2FuY2VsbGF0aW9uLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlQ2FuY2VsUmVjb3JkaW5nQ2xpY2soKSB7XG4gICAgdGhpcy5yZWNvcmRpbmcuc2V0KGZhbHNlKTtcblxuICAgIHRoaXMub25DYW5jZWxSZWNvcmRpbmcuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBkYXRhOiB7IHZhbHVlOiBudWxsIH0sXG4gICAgfSk7XG4gIH1cblxuICBwcm90ZWN0ZWQgc2hpZnRTdGF0ZSA9IGZhbHNlO1xuICBwcm90ZWN0ZWQga2V5RG93bkhhbmRsZXIoZTogS2V5Ym9hcmRFdmVudCkge1xuICAgIGlmIChlLmtleSA9PT0gJ1NoaWZ0Jykge1xuICAgICAgdGhpcy5zaGlmdFN0YXRlID0gdHJ1ZTtcbiAgICB9XG4gICAgdGhpcy5vbktleURvd24uZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBuYXRpdmVFdmVudDogZSxcbiAgICB9KTtcbiAgfVxuICBwcm90ZWN0ZWQga2V5VXBIYW5kbGVyKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZS5rZXkgPT09ICdTaGlmdCcpIHtcbiAgICAgIHRoaXMuc2hpZnRTdGF0ZSA9IGZhbHNlO1xuICAgIH1cbiAgICB0aGlzLm9uS2V5VXAuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBuYXRpdmVFdmVudDogZSxcbiAgICB9KTtcbiAgfVxuICBwcm90ZWN0ZWQga2V5UHJlc3NIYW5kbGVyKGU6IEtleWJvYXJkRXZlbnQpIHtcbiAgICBpZiAoZS5rZXkgPT09ICdFbnRlcicgJiYgIXRoaXMuc2hpZnRTdGF0ZSkge1xuICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgdGhpcy5vbkVudGVyUHJlc3NlZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzIH0pO1xuICAgIH1cbiAgICB0aGlzLm9uS2V5UHJlc3MuZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBuYXRpdmVFdmVudDogZSxcbiAgICB9KTtcbiAgfVxuICAvKipcbiAgICogT3BlbnMgdGhlIGZpbGUgcGlja2VyIGZvciBhdHRhY2htZW50LlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgaGFuZGxlQXR0YWNoQ2xpY2soKSB7XG4gICAgdGhpcy5pbnB1dEZpbGUubmF0aXZlRWxlbWVudC5jbGljaygpO1xuICB9XG5cbiAgLyoqXG4gICAqIEVtaXRzIHRoZSBzZWxlY3RlZCBmaWxlcyB3aGVuIHRoZSBmaWxlIGlucHV0IGNoYW5nZXMuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVDaGFuZ2VGaWxlKGV2ZW50OiBFdmVudCkge1xuICAgIHRoaXMub25TZW5kQ2xpY2suZW1pdCh7XG4gICAgICBjb21wb25lbnQ6IHRoaXMsXG4gICAgICBkYXRhOiB7IHZhbHVlOiAoZXZlbnQudGFyZ2V0IGFzIEhUTUxJbnB1dEVsZW1lbnQpLmZpbGVzLCB0eXBlOiAnZmlsZScgfSxcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0cyB0aGUgdGV4dCB2YWx1ZSBhbmQgb3B0aW9uYWwgcmVwbHlDaGF0IHdoZW4gdGhlIHNlbmQgYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVTZW5kQ2xpY2soKSB7XG4gICAgdGhpcy5vblNlbmRDbGljay5lbWl0KHtcbiAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgIGRhdGE6IHsgdmFsdWU6IHRoaXMudmFsdWUsIHJlcGx5Q2hhdDogdGhpcy5yZXBseUNoYXQoKSB8fCBudWxsLCB0eXBlOiAndGV4dCcgfSxcbiAgICAgIGlzVXNlckludGVyYWN0aW9uOiB0cnVlLFxuICAgIH0pO1xuICAgIHRoaXMuY29udmVyc2F0aW9uU2VydmljZS5yZXBseUlkLnNldCgnJyk7XG4gIH1cblxuICAvKipcbiAgICogRW5kcyByZWNvcmRpbmcgYW5kIGVtaXRzIHRoZSByZWNvcmRlZCB2b2ljZSBkYXRhIHdoZW4gdGhlIHNlbmQgdm9pY2UgYnV0dG9uIGlzIGNsaWNrZWQuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVTZW5kVm9pY2VDbGljaygpIHtcbiAgICB0aGlzLnJlY29yZGluZ1NlcnZpY2UuZW5kUmVjb3JkaW5nKCkudGhlbigoYykgPT4ge1xuICAgICAgdGhpcy5yZWNvcmRpbmcuc2V0KGZhbHNlKTtcbiAgICAgIHRoaXMub25TZW5kQ2xpY2suZW1pdCh7XG4gICAgICAgIGNvbXBvbmVudDogdGhpcyxcbiAgICAgICAgZGF0YTogeyB2YWx1ZTogYywgdHlwZTogJ3ZvaWNlJyB9LFxuICAgICAgICBpc1VzZXJJbnRlcmFjdGlvbjogdHJ1ZSxcbiAgICAgIH0pO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIENsZWFycyB0aGUgcmVwbHkgSUQgd2hlbiBjbG9zaW5nIGEgcmVwbHkuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBjbG9zZVJlcGx5SGFuZGxlcigpIHtcbiAgICB0aGlzLmNvbnZlcnNhdGlvblNlcnZpY2UucmVwbHlJZC5zZXQoJycpO1xuICB9XG59XG4iLCJAaWYgKHJlcGx5Q2hhdCgpKSB7XG4gIDxkaXYgY2xhc3M9XCJheC1lZGl0b3ItcmVwbHktY29udGFpbmVyIGF4LWVkaXRvci1jb250YWluZXIgYXgte3sgbG9vayB9fVwiPlxuICAgIDxkaXYgY2xhc3M9XCJheC1yZXBseS1zdGFydFwiPlxuICAgICAgPGkgY2xhc3M9XCJmYS1zb2xpZCBmYS1yZXBseVwiPjwvaT5cbiAgICAgIEBzd2l0Y2ggKHJlcGx5Q2hhdCgpLnR5cGUpIHtcbiAgICAgICAgQGNhc2UgKCd0ZXh0Jykge1xuICAgICAgICAgIDxwPlxuICAgICAgICAgICAge3sgcmVwbHlDaGF0KCkuY29udGVudCB9fVxuICAgICAgICAgIDwvcD5cbiAgICAgICAgfVxuICAgICAgICBAY2FzZSAoJ2ltYWdlJykge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1yZXBseS10eXBlc1wiPlxuICAgICAgICAgICAgPGltZyBzcmM9XCJ7eyByZXBseUNoYXQoKS5jb250ZW50IH19XCIgYWx0PVwiXCIgLz5cbiAgICAgICAgICAgIHt7IHJlcGx5Q2hhdCgpLnR5cGUgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAY2FzZSAoJ3ZpZGVvJykge1xuICAgICAgICAgIDxkaXYgY2xhc3M9XCJheC1yZXBseS10eXBlc1wiPlxuICAgICAgICAgICAgPHZpZGVvIHNyYz1cInt7IHJlcGx5Q2hhdCgpLmNvbnRlbnQgfX1cIiBhbHQ9XCJcIj48L3ZpZGVvPlxuICAgICAgICAgICAge3sgcmVwbHlDaGF0KCkudHlwZSB9fVxuICAgICAgICAgIDwvZGl2PlxuICAgICAgICB9XG4gICAgICAgIEBjYXNlICgnZmlsZScpIHtcbiAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtcmVwbHktdHlwZXNcIj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiZmEtcmVndWxhciBmYS1mb2xkZXItb3BlblwiPjwvaT5cbiAgICAgICAgICAgIHt7IHJlcGx5Q2hhdCgpLm5hbWUgfX1cbiAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgfVxuICAgICAgICBAZGVmYXVsdCB7XG4gICAgICAgICAgPHA+XG4gICAgICAgICAgICB7eyByZXBseUNoYXQoKS50eXBlIH19XG4gICAgICAgICAgPC9wPlxuICAgICAgICB9XG4gICAgICB9XG4gICAgPC9kaXY+XG4gICAgPGkgKGNsaWNrKT1cImNsb3NlUmVwbHlIYW5kbGVyKClcIiBjbGFzcz1cImZhLXNvbGlkIGZhLXhtYXJrIGF4LWN1cnNvci1wb2ludGVyXCI+PC9pPlxuICA8L2Rpdj5cbn1cblxuPGRpdiBjbGFzcz1cImF4LWNvbnZlcnNhdGlvbi1pbnB1dCBheC1lZGl0b3ItY29udGFpbmVyIGF4LXt7IGxvb2sgfX1cIiBbY2xhc3MuYXgtc3RhdGUtcmVjb3JkaW5nXT1cInJlY29yZGluZygpXCI+XG4gIEBpZiAocmVjb3JkaW5nKCkpIHtcbiAgICA8ZGl2IGNsYXNzPVwiYXgtY29udmVyc2F0aW9uLWlucHV0LXN0YXJ0LXNpZGVcIj5cbiAgICAgIDxzcGFuIGNsYXNzPVwiYXgtcmVjb3JkLWRvdFwiPjwvc3Bhbj5cbiAgICAgIDxzcGFuPnt7IHJlY29yZGluZ1NlcnZpY2UudGltZXIoKSB9fTwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgICA8ZGl2IGNsYXNzPVwiYXgtY29udmVyc2F0aW9uLWlucHV0LW1haW4tc2lkZVwiPlxuICAgICAgPGF4LWJ1dHRvblxuICAgICAgICBjbGFzcz1cImF4LXNtXCJcbiAgICAgICAgbG9vaz1cImJsYW5rXCJcbiAgICAgICAgY29sb3I9XCJwcmltYXJ5XCJcbiAgICAgICAgW3RleHRdPVwiJ2NhbmNlbCcgfCB0cmFuc2xhdGUgfCBhc3luY1wiXG4gICAgICAgIChvbkNsaWNrKT1cImhhbmRsZUNhbmNlbFJlY29yZGluZ0NsaWNrKClcIlxuICAgICAgPjwvYXgtYnV0dG9uPlxuICAgIDwvZGl2PlxuICAgIDxkaXYgY2xhc3M9XCJheC1jb252ZXJzYXRpb24taW5wdXQtZW5kLXNpZGVcIj5cbiAgICAgIDxheC1idXR0b24gbG9vaz1cInNvbGlkXCIgY29sb3I9XCJkYW5nZXJcIiBjbGFzcz1cImF4LWJsb2IgYXgtc21cIiAob25DbGljayk9XCJoYW5kbGVTZW5kVm9pY2VDbGljaygpXCI+XG4gICAgICAgIDxheC1pY29uPlxuICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXNlbmRcIj48L2k+XG4gICAgICAgIDwvYXgtaWNvbj5cbiAgICAgIDwvYXgtYnV0dG9uPlxuICAgIDwvZGl2PlxuICB9IEBlbHNlIHtcbiAgICBAaWYgKGhhc0Vtb2ppKCkpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJheC1jb252ZXJzYXRpb24taW5wdXQtc3RhcnQtc2lkZVwiPlxuICAgICAgICA8YXgtYnV0dG9uIGxvb2s9XCJibGFua1wiIGNsYXNzPVwiYXgtc21cIj5cbiAgICAgICAgICA8YXgtaWNvbj5cbiAgICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWVtb2ppXCI+PC9pPlxuICAgICAgICAgIDwvYXgtaWNvbj5cbiAgICAgICAgICA8YXgtZHJvcGRvd24tcGFuZWw+XG4gICAgICAgICAgICA8bmctY29udGFpbmVyPlxuICAgICAgICAgICAgICA8ZGl2IGNsYXNzPVwiYXgtZW1vamktY29udGFpbmVyXCI+XG4gICAgICAgICAgICAgICAgPGRpdj7imqDvuI88L2Rpdj5cbiAgICAgICAgICAgICAgICA8ZGl2PuKeoe+4jzwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+8J+UgzwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+8J+UtzwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+8J+kmjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+8J+YgjwvZGl2PlxuICAgICAgICAgICAgICAgIDxkaXY+8J+YijwvZGl2PlxuICAgICAgICAgICAgICA8L2Rpdj5cbiAgICAgICAgICAgIDwvbmctY29udGFpbmVyPlxuICAgICAgICAgIDwvYXgtZHJvcGRvd24tcGFuZWw+XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgPC9kaXY+XG4gICAgfVxuXG4gICAgPHRleHRhcmVhXG4gICAgICBjbGFzcz1cImF4LWNvbnZlcnNhdGlvbi1pbnB1dC1tYWluLXNpZGVcIlxuICAgICAgb25pbnB1dD0ndGhpcy5zdHlsZS5oZWlnaHQgPSBcIlwiO3RoaXMuc3R5bGUuaGVpZ2h0ID0gdGhpcy5zY3JvbGxIZWlnaHQgKyBcInB4XCInXG4gICAgICB0eXBlPVwidGV4dFwiXG4gICAgICByb3dzPVwiMVwiXG4gICAgICBbaWRdPVwiaWRcIlxuICAgICAgW25hbWVdPVwibmFtZVwiXG4gICAgICBbYXR0ci5wbGFjZWhvbGRlcl09XCJwbGFjZWhvbGRlclwiXG4gICAgICBbYXR0ci5tYXhsZW5ndGhdPVwibWF4TGVuZ3RoKClcIlxuICAgICAgW2Rpc2FibGVkXT1cImRpc2FibGVkXCJcbiAgICAgIFtyZWFkb25seV09XCJyZWFkb25seVwiXG4gICAgICBbdGFiaW5kZXhdPVwidGFiSW5kZXhcIlxuICAgICAgW25nTW9kZWxdPVwidmFsdWVcIlxuICAgICAgKG5nTW9kZWxDaGFuZ2UpPVwiX2hhbmRsZU1vZGVsQ2hhbmdlKCRldmVudClcIlxuICAgICAgW25nTW9kZWxPcHRpb25zXT1cInsgdXBkYXRlT246IF91cGRhdGVPbiB9XCJcbiAgICAgIChrZXlkb3duKT1cImtleURvd25IYW5kbGVyKCRldmVudClcIlxuICAgICAgKGtleXVwKT1cImtleVVwSGFuZGxlcigkZXZlbnQpXCJcbiAgICAgIChrZXlwcmVzcyk9XCJrZXlQcmVzc0hhbmRsZXIoJGV2ZW50KVwiXG4gICAgICAoZm9jdXMpPVwiZW1pdE9uRm9jdXNFdmVudCgkZXZlbnQpXCJcbiAgICAgIChibHVyKT1cImVtaXRPbkJsdXJFdmVudCgkZXZlbnQpXCJcbiAgICA+XG4gICAgPC90ZXh0YXJlYT5cblxuICAgIDxkaXYgY2xhc3M9XCJheC1jb252ZXJzYXRpb24taW5wdXQtZW5kLXNpZGVcIj5cbiAgICAgIEBpZiAoIXZhbHVlKSB7XG4gICAgICAgIEBpZiAoaGFzQXR0YWNobWVudCgpKSB7XG4gICAgICAgICAgPGF4LWJ1dHRvbiBsb29rPVwiYmxhbmtcIiBjbGFzcz1cImF4LXNtXCIgKG9uQ2xpY2spPVwiaGFuZGxlQXR0YWNoQ2xpY2soKVwiPlxuICAgICAgICAgICAgPGF4LWljb24+XG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWF0dGFjaFwiPjwvaT5cbiAgICAgICAgICAgIDwvYXgtaWNvbj5cbiAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgICA8aW5wdXRcbiAgICAgICAgICAgIG11bHRpcGxlXG4gICAgICAgICAgICAjaW5wdXRGaWxlXG4gICAgICAgICAgICBbYWNjZXB0XT1cImFjY2VwdEZpbGVUeXBlKClcIlxuICAgICAgICAgICAgdHlwZT1cImZpbGVcIlxuICAgICAgICAgICAgY2xhc3M9XCJheC1hdHRhY2gtaW5wdXRcIlxuICAgICAgICAgICAgKGNoYW5nZSk9XCJoYW5kbGVDaGFuZ2VGaWxlKCRldmVudClcIlxuICAgICAgICAgIC8+XG4gICAgICAgIH1cbiAgICAgICAgQGlmIChoYXNWb2ljZSgpKSB7XG4gICAgICAgICAgPGF4LWJ1dHRvbiBsb29rPVwiYmxhbmtcIiBjbGFzcz1cImF4LXNtXCIgKG9uQ2xpY2spPVwiaGFuZGxlUmVjb3JkQ2xpY2soKVwiPlxuICAgICAgICAgICAgPGF4LWljb24+XG4gICAgICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLW1pY1wiPjwvaT5cbiAgICAgICAgICAgIDwvYXgtaWNvbj5cbiAgICAgICAgICA8L2F4LWJ1dHRvbj5cbiAgICAgICAgfVxuICAgICAgfSBAZWxzZSB7XG4gICAgICAgIDxheC1idXR0b24gW2Rpc2FibGVkXT1cImlzTG9hZGluZygpXCIgbG9vaz1cInNvbGlkXCIgY29sb3I9XCJwcmltYXJ5XCIgY2xhc3M9XCJheC1zbVwiIChvbkNsaWNrKT1cImhhbmRsZVNlbmRDbGljaygpXCI+XG4gICAgICAgICAgQGlmIChpc0xvYWRpbmcoKSkge1xuICAgICAgICAgICAgPGF4LWxvYWRpbmctc3Bpbm5lciBjb2xvcj1cInByaW1hcnlcIj48L2F4LWxvYWRpbmctc3Bpbm5lcj5cbiAgICAgICAgICB9IEBlbHNlIHtcbiAgICAgICAgICAgIEBpZiAoc2VuZEljb24oKSkge1xuICAgICAgICAgICAgICA8bmctY29udGVudCBzZWxlY3Q9XCJheC1pY29uXCI+PC9uZy1jb250ZW50PlxuICAgICAgICAgICAgfSBAZWxzZSB7XG4gICAgICAgICAgICAgIDxheC1pY29uPlxuICAgICAgICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWFycm93LWxvbmctdXBcIj48L2k+XG4gICAgICAgICAgICAgIDwvYXgtaWNvbj5cbiAgICAgICAgICAgIH1cbiAgICAgICAgICB9XG4gICAgICAgIDwvYXgtYnV0dG9uPlxuICAgICAgfVxuICAgIDwvZGl2PlxuICB9XG48L2Rpdj5cbiJdfQ==","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXConversationMessageTypeRegistryService {\n constructor() {\n this.plugins = new Map();\n }\n register(...plugins) {\n plugins.forEach((p) => this.plugins.set(p.name, p));\n }\n resolve(name) {\n return this.plugins.get(name);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageTypeRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageTypeRegistryService, providedIn: 'root' }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageTypeRegistryService, decorators: [{\n type: Injectable,\n args: [{ providedIn: 'root' }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2UtdHlwZS1yZWdpc3RyeS5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9zZXJ2aWNlcy9jb252ZXJzYXRpb24tbWVzc2FnZS10eXBlLXJlZ2lzdHJ5LnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQzs7QUFJM0MsTUFBTSxPQUFPLHdDQUF3QztJQURyRDtRQUVVLFlBQU8sR0FBMkMsSUFBSSxHQUFHLEVBQXFDLENBQUM7S0FTeEc7SUFQQyxRQUFRLENBQUMsR0FBRyxPQUFvQztRQUM5QyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdEQsQ0FBQztJQUVNLE9BQU8sQ0FBQyxJQUFZO1FBQ3pCLE9BQU8sSUFBSSxDQUFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDaEMsQ0FBQzs4R0FUVSx3Q0FBd0M7a0hBQXhDLHdDQUF3QyxjQUQzQixNQUFNOzsyRkFDbkIsd0NBQXdDO2tCQURwRCxVQUFVO21CQUFDLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGUgfSBmcm9tICcuLi9jb252ZXJzYXRpb24udHlwZXMnO1xuXG5ASW5qZWN0YWJsZSh7IHByb3ZpZGVkSW46ICdyb290JyB9KVxuZXhwb3J0IGNsYXNzIEFYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2Uge1xuICBwcml2YXRlIHBsdWdpbnM6IE1hcDxzdHJpbmcsIEFYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGU+ID0gbmV3IE1hcDxzdHJpbmcsIEFYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGU+KCk7XG5cbiAgcmVnaXN0ZXIoLi4ucGx1Z2luczogQVhDb252ZXJzYXRpb25NZXNzYWdlVHlwZVtdKSB7XG4gICAgcGx1Z2lucy5mb3JFYWNoKChwKSA9PiB0aGlzLnBsdWdpbnMuc2V0KHAubmFtZSwgcCkpO1xuICB9XG5cbiAgcHVibGljIHJlc29sdmUobmFtZTogc3RyaW5nKTogQVhDb252ZXJzYXRpb25NZXNzYWdlVHlwZSB8IHVuZGVmaW5lZCB7XG4gICAgcmV0dXJuIHRoaXMucGx1Z2lucy5nZXQobmFtZSk7XG4gIH1cbn1cbiJdfQ==","import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXAvatarComponent } from '@acorex/components/avatar';\nimport { AXButtonComponent, AXButtonItemComponent, AXButtonItemListComponent } from '@acorex/components/button';\nimport { AXDecoratorGenericComponent, AXDecoratorIconComponent } from '@acorex/components/decorators';\nimport { AXPopoverComponent } from '@acorex/components/popover';\nimport { AXFormatPipe } from '@acorex/core/format';\nimport { isBrowser } from '@acorex/core/platform';\nimport { CdkPortalOutlet, ComponentPortal } from '@angular/cdk/portal';\nimport { AsyncPipe } from '@angular/common';\nimport { Component, HostBinding, ViewEncapsulation, computed, inject, input, viewChild, } from '@angular/core';\nimport { AXConversationMessageTypeRegistryService } from '../services/conversation-message-type-registry.service';\nimport { AXConversationService } from '../services/conversation.service';\nimport * as i0 from \"@angular/core\";\n/**\n * A component for displaying individual conversation messages.\n *\n * @category Components\n */\nexport class AXConversationMessageComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n this.popover = viewChild('popover');\n this.isReplyArrowShown = input(true);\n this.conversationService = inject(AXConversationService);\n this.chatMessage = input();\n this.registryService = inject(AXConversationMessageTypeRegistryService);\n this.portal = computed(() => {\n return new ComponentPortal(this.registryService.resolve(this.chatMessage().type).component);\n });\n this.messageType = computed(() => {\n return this.chatMessage().type;\n });\n }\n get isOwn() {\n return !this.chatMessage().fromId;\n }\n get __hostClass() {\n return `${this.isOwn ? 'ax-state-own' : ''} ${!this.isOwn ? 'ax-state-other' : ''}`;\n }\n _handleAttached(ref) {\n ref = ref;\n if (ref.instance && isBrowser()) {\n Object.assign(ref.instance, { message: this.chatMessage() });\n const prefixContainer = this.getHostElement().querySelector('.ax-message-prefix');\n const suffixContainer = this.getHostElement().querySelector('.ax-message-suffix');\n prefixContainer.innerHTML = '';\n suffixContainer.innerHTML = '';\n const prefix = this.getHostElement().querySelector('ax-prefix');\n const suffix = this.getHostElement().querySelector('ax-suffix');\n if (prefix && prefixContainer) {\n prefix.style.display = 'flex';\n prefixContainer.append(prefix);\n }\n if (suffix && suffixContainer) {\n suffix.style.display = 'flex';\n suffixContainer.append(suffix);\n }\n }\n }\n handleResendClick() {\n this.popover()?.close();\n this.chatMessage().onResendClick();\n }\n handleDeleteClick() {\n this.popover()?.close();\n this.chatMessage().onDeleteClick();\n }\n replyHandler(e) {\n this.conversationService.replyId.set(e);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: AXConversationMessageComponent, isStandalone: true, selector: \"ax-conversation-message\", inputs: { isReplyArrowShown: { classPropertyName: \"isReplyArrowShown\", publicName: \"isReplyArrowShown\", isSignal: true, isRequired: false, transformFunction: null }, chatMessage: { classPropertyName: \"chatMessage\", publicName: \"chatMessage\", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { \"class\": \"this.__hostClass\" } }, providers: [{ provide: AXComponent, useExisting: AXConversationMessageComponent }], viewQueries: [{ propertyName: \"popover\", first: true, predicate: [\"popover\"], descendants: true, isSignal: true }], usesInheritance: true, ngImport: i0, template: \"@if (chatMessage().fromId) {\\n <ax-avatar color=\\\"primary\\\" [size]=\\\"36\\\"> </ax-avatar>\\n}\\n\\n@if (isOwn && isReplyArrowShown()) {\\n <i (click)=\\\"replyHandler(chatMessage().id)\\\" class=\\\"fa-solid fa-reply ax-cursor-pointer\\\"></i>\\n}\\n\\n<div\\n class=\\\"ax-message-content\\\"\\n [class]=\\\"'ax-type-' + messageType()\\\"\\n [class.ax-state-own]=\\\"!chatMessage().fromId\\\"\\n [class.ax-state-other]=\\\"chatMessage().fromId\\\"\\n>\\n <ng-template [cdkPortalOutlet]=\\\"portal()\\\" (attached)=\\\"_handleAttached($event)\\\"></ng-template>\\n\\n <div class=\\\"ax-chat-message-status\\\">\\n <div class=\\\"ax-message-prefix\\\"></div>\\n <div>\\n <div class=\\\"ax-message-suffix\\\"></div>\\n <span>\\n {{ chatMessage().sendTime | format: 'datetime' : 'HH:mm' | async }}\\n </span>\\n <span>\\n @if (isOwn) {\\n @if (chatMessage().deliverTime && chatMessage().sendTime) {\\n <i class=\\\"ax-icon ax-icon-check ax-message-status\\\"></i>\\n }\\n @if (chatMessage().readTime && chatMessage().sendTime) {\\n <i class=\\\"ax-icon ax-icon-dobble-check ax-message-status\\\"></i>\\n }\\n }\\n </span>\\n </div>\\n </div>\\n</div>\\n\\n@if (!chatMessage().sendTime) {\\n <ax-button class=\\\"ax-resend-button ax-xs\\\" color=\\\"danger\\\" #b>\\n <ax-icon class=\\\"ax-icon ax-icon-error\\\"></ax-icon>\\n\\n <ax-popover [target]=\\\"b\\\" placement=\\\"bottom-end\\\" #popover>\\n <div class=\\\"ax-overlay-pane\\\">\\n <ax-content> </ax-content>\\n <ax-button-item-list>\\n @if (chatMessage().onResendClick) {\\n <ax-button-item text=\\\"Resend\\\" (onClick)=\\\"handleResendClick()\\\">\\n <ax-icon class=\\\"ax-icon ax-icon-reload ax-bold\\\"></ax-icon>\\n </ax-button-item>\\n }\\n @if (chatMessage().onDeleteClick) {\\n <ax-button-item text=\\\"Delete\\\" color=\\\"danger\\\" (onClick)=\\\"handleDeleteClick()\\\">\\n <ax-icon class=\\\"ax-icon ax-icon-clear ax-bold\\\"></ax-icon>\\n </ax-button-item>\\n }\\n </ax-button-item-list>\\n </div>\\n </ax-popover>\\n </ax-button>\\n}\\n\", styles: [\"ax-conversation-message{display:flex;align-items:flex-end;margin-bottom:.5rem}ax-conversation-message .ax-message-reply-container{padding:.75rem}ax-conversation-message .ax-message-reply-container,ax-conversation-message .ax-image-reply-container,ax-conversation-message .ax-video-reply-container{border-left:.3rem solid rgb(var(--ax-comp-conversation-border-color));border-radius:.75rem;margin-bottom:.25rem;overflow:hidden}ax-conversation-message .ax-message-reply-container .file,ax-conversation-message .ax-image-reply-container .file,ax-conversation-message .ax-video-reply-container .file{display:flex;align-items:center}ax-conversation-message .ax-message-reply-container .file i,ax-conversation-message .ax-image-reply-container .file i,ax-conversation-message .ax-video-reply-container .file i{margin-inline-end:.5rem}ax-conversation-message .ax-message-reply-container img,ax-conversation-message .ax-message-reply-container video,ax-conversation-message .ax-image-reply-container img,ax-conversation-message .ax-image-reply-container video,ax-conversation-message .ax-video-reply-container img,ax-conversation-message .ax-video-reply-container video{max-width:6rem}ax-conversation-message.ax-state-own{justify-content:flex-end}ax-conversation-message.ax-state-own .ax-conversation-controller button{background-color:rgb(var(--ax-comp-conversation-own-color-fore));color:rgb(var(--ax-comp-conversation-own-color))}ax-conversation-message.ax-state-own .ax-message-reply-container{background-color:rgb(var(--ax-comp-conversation-own-reply-color));color:rgb(var(--ax-comp-conversation-own-reply-color-fore))}ax-conversation-message.ax-state-other .ax-conversation-controller button{background-color:rgb(var(--ax-comp-conversation-other-color-fore));color:rgb(var(--ax-comp-conversation-other-color))}ax-conversation-message.ax-state-other .ax-message-reply-container{background-color:rgb(var(--ax-comp-conversation-other-reply-color));color:rgb(var(--ax-comp-conversation-other-reply-color-fore))}ax-conversation-message .ax-conversation-controller button{width:2.5rem;height:2.5rem;border-radius:999rem;display:flex;align-items:center;justify-content:center}ax-conversation-message .ax-conversation-controller button ax-loading-spinner{display:flex}ax-conversation-message .ax-conversation-controller button.ax-state-error{background-color:rgb(var(--ax-sys-color-danger-surface));color:rgb(var(--ax-sys-color-danger-fore))}ax-conversation-message .ax-conversation-controller button>i{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}ax-conversation-message .ax-message-content{display:block;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;border-radius:var(--ax-sys-border-radius);overflow:hidden;width:fit-content;max-width:50%;margin-inline-start:.5rem}ax-conversation-message .ax-message-content.ax-type-video{padding:0}ax-conversation-message .ax-message-content.ax-type-image{padding:0}ax-conversation-message .ax-message-content .ax-chat-message-status{padding:.25rem .5rem}ax-conversation-message .ax-message-content.ax-state-own{border-end-end-radius:0!important;background-color:rgb(var(--ax-comp-conversation-own-color));color:rgb(var(--ax-comp-conversation-own-color-fore));justify-content:flex-end}ax-conversation-message .ax-message-content.ax-state-own .ax-chat-message-status{color:rgb(var(--ax-comp-conversation-own-color-fore))}ax-conversation-message .ax-message-content.ax-state-other{border-end-start-radius:0!important;background-color:rgb(var(--ax-comp-conversation-other-color));color:rgb(var(--ax-comp-conversation-other-color-fore))}ax-conversation-message .ax-message-content.ax-state-other .ax-chat-message-status{color:rgb(var(--ax-comp-conversation-other-color-fore))}ax-conversation-message .ax-message-content .ax-chat-message-status{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}ax-conversation-message .ax-message-content .ax-chat-message-status>div{display:flex;gap:.125rem;align-items:center}ax-conversation-message .ax-message-content .ax-chat-message-status .ax-message-status{color:rgb(var(--ax-comp-conversation-status-color))}ax-conversation-message .ax-message-content .ax-chat-message-status .ax-icon{font-weight:700;font-size:.875rem}ax-conversation-message .ax-message-content .ax-chat-message-status .ax-icon-error{color:rgb(var(--ax-sys-color-danger-surface))}ax-conversation-message .ax-message-content ax-prefix,ax-conversation-message .ax-message-content ax-suffix{display:none}ax-conversation-message .ax-resend-button{border-radius:999rem}ax-conversation-message .ax-cursor-pointer{cursor:pointer}ax-conversation-message .ax-rounded{border-radius:.75rem}ax-conversation-message .ax-message-content p{padding:.75rem;color:rgba(var(--ax-sys-color-on-primary))}@media (min-width: 320px) and (max-width: 640px){ax-conversation-message ax-avatar{display:none!important}ax-conversation-message .ax-message-content{max-width:100%}}\\n\"], dependencies: [{ kind: \"component\", type: AXAvatarComponent, selector: \"ax-avatar\", inputs: [\"color\", \"size\", \"shape\", \"look\"], outputs: [\"sizeChange\"] }, { kind: \"directive\", type: CdkPortalOutlet, selector: \"[cdkPortalOutlet]\", inputs: [\"cdkPortalOutlet\"], outputs: [\"attached\"], exportAs: [\"cdkPortalOutlet\"] }, { kind: \"component\", type: AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"component\", type: AXDecoratorIconComponent, selector: \"ax-icon\", inputs: [\"icon\"] }, { kind: \"component\", type: AXPopoverComponent, selector: \"ax-popover\", inputs: [\"offsetX\", \"offsetY\", \"target\", \"placement\", \"content\", \"openOn\", \"closeOn\", \"hasBackdrop\", \"openAfter\", \"closeAfter\", \"backdropClass\", \"panelClass\", \"adaptivityEnabled\"], outputs: [\"onOpened\", \"onClosed\"] }, { kind: \"component\", type: AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"component\", type: AXButtonItemListComponent, selector: \"ax-button-item-list\", inputs: [\"items\"], outputs: [\"onItemClick\"] }, { kind: \"component\", type: AXButtonItemComponent, selector: \"ax-button-item\", inputs: [\"color\", \"disabled\", \"text\", \"selected\", \"divided\", \"data\", \"name\"], outputs: [\"onClick\", \"onFocus\", \"onBlur\", \"disabledChange\"] }, { kind: \"pipe\", type: AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: AXFormatPipe, name: \"format\" }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-message', encapsulation: ViewEncapsulation.None, imports: [\n AXAvatarComponent,\n CdkPortalOutlet,\n AXButtonComponent,\n AXDecoratorIconComponent,\n AXPopoverComponent,\n AXDecoratorGenericComponent,\n AXButtonItemListComponent,\n AXButtonItemComponent,\n AsyncPipe,\n AXFormatPipe,\n ], providers: [{ provide: AXComponent, useExisting: AXConversationMessageComponent }], template: \"@if (chatMessage().fromId) {\\n <ax-avatar color=\\\"primary\\\" [size]=\\\"36\\\"> </ax-avatar>\\n}\\n\\n@if (isOwn && isReplyArrowShown()) {\\n <i (click)=\\\"replyHandler(chatMessage().id)\\\" class=\\\"fa-solid fa-reply ax-cursor-pointer\\\"></i>\\n}\\n\\n<div\\n class=\\\"ax-message-content\\\"\\n [class]=\\\"'ax-type-' + messageType()\\\"\\n [class.ax-state-own]=\\\"!chatMessage().fromId\\\"\\n [class.ax-state-other]=\\\"chatMessage().fromId\\\"\\n>\\n <ng-template [cdkPortalOutlet]=\\\"portal()\\\" (attached)=\\\"_handleAttached($event)\\\"></ng-template>\\n\\n <div class=\\\"ax-chat-message-status\\\">\\n <div class=\\\"ax-message-prefix\\\"></div>\\n <div>\\n <div class=\\\"ax-message-suffix\\\"></div>\\n <span>\\n {{ chatMessage().sendTime | format: 'datetime' : 'HH:mm' | async }}\\n </span>\\n <span>\\n @if (isOwn) {\\n @if (chatMessage().deliverTime && chatMessage().sendTime) {\\n <i class=\\\"ax-icon ax-icon-check ax-message-status\\\"></i>\\n }\\n @if (chatMessage().readTime && chatMessage().sendTime) {\\n <i class=\\\"ax-icon ax-icon-dobble-check ax-message-status\\\"></i>\\n }\\n }\\n </span>\\n </div>\\n </div>\\n</div>\\n\\n@if (!chatMessage().sendTime) {\\n <ax-button class=\\\"ax-resend-button ax-xs\\\" color=\\\"danger\\\" #b>\\n <ax-icon class=\\\"ax-icon ax-icon-error\\\"></ax-icon>\\n\\n <ax-popover [target]=\\\"b\\\" placement=\\\"bottom-end\\\" #popover>\\n <div class=\\\"ax-overlay-pane\\\">\\n <ax-content> </ax-content>\\n <ax-button-item-list>\\n @if (chatMessage().onResendClick) {\\n <ax-button-item text=\\\"Resend\\\" (onClick)=\\\"handleResendClick()\\\">\\n <ax-icon class=\\\"ax-icon ax-icon-reload ax-bold\\\"></ax-icon>\\n </ax-button-item>\\n }\\n @if (chatMessage().onDeleteClick) {\\n <ax-button-item text=\\\"Delete\\\" color=\\\"danger\\\" (onClick)=\\\"handleDeleteClick()\\\">\\n <ax-icon class=\\\"ax-icon ax-icon-clear ax-bold\\\"></ax-icon>\\n </ax-button-item>\\n }\\n </ax-button-item-list>\\n </div>\\n </ax-popover>\\n </ax-button>\\n}\\n\", styles: [\"ax-conversation-message{display:flex;align-items:flex-end;margin-bottom:.5rem}ax-conversation-message .ax-message-reply-container{padding:.75rem}ax-conversation-message .ax-message-reply-container,ax-conversation-message .ax-image-reply-container,ax-conversation-message .ax-video-reply-container{border-left:.3rem solid rgb(var(--ax-comp-conversation-border-color));border-radius:.75rem;margin-bottom:.25rem;overflow:hidden}ax-conversation-message .ax-message-reply-container .file,ax-conversation-message .ax-image-reply-container .file,ax-conversation-message .ax-video-reply-container .file{display:flex;align-items:center}ax-conversation-message .ax-message-reply-container .file i,ax-conversation-message .ax-image-reply-container .file i,ax-conversation-message .ax-video-reply-container .file i{margin-inline-end:.5rem}ax-conversation-message .ax-message-reply-container img,ax-conversation-message .ax-message-reply-container video,ax-conversation-message .ax-image-reply-container img,ax-conversation-message .ax-image-reply-container video,ax-conversation-message .ax-video-reply-container img,ax-conversation-message .ax-video-reply-container video{max-width:6rem}ax-conversation-message.ax-state-own{justify-content:flex-end}ax-conversation-message.ax-state-own .ax-conversation-controller button{background-color:rgb(var(--ax-comp-conversation-own-color-fore));color:rgb(var(--ax-comp-conversation-own-color))}ax-conversation-message.ax-state-own .ax-message-reply-container{background-color:rgb(var(--ax-comp-conversation-own-reply-color));color:rgb(var(--ax-comp-conversation-own-reply-color-fore))}ax-conversation-message.ax-state-other .ax-conversation-controller button{background-color:rgb(var(--ax-comp-conversation-other-color-fore));color:rgb(var(--ax-comp-conversation-other-color))}ax-conversation-message.ax-state-other .ax-message-reply-container{background-color:rgb(var(--ax-comp-conversation-other-reply-color));color:rgb(var(--ax-comp-conversation-other-reply-color-fore))}ax-conversation-message .ax-conversation-controller button{width:2.5rem;height:2.5rem;border-radius:999rem;display:flex;align-items:center;justify-content:center}ax-conversation-message .ax-conversation-controller button ax-loading-spinner{display:flex}ax-conversation-message .ax-conversation-controller button.ax-state-error{background-color:rgb(var(--ax-sys-color-danger-surface));color:rgb(var(--ax-sys-color-danger-fore))}ax-conversation-message .ax-conversation-controller button>i{width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-size:1.25rem;font-weight:700}ax-conversation-message .ax-message-content{display:block;padding:.5rem .75rem;font-size:.875rem;line-height:1.25rem;border-radius:var(--ax-sys-border-radius);overflow:hidden;width:fit-content;max-width:50%;margin-inline-start:.5rem}ax-conversation-message .ax-message-content.ax-type-video{padding:0}ax-conversation-message .ax-message-content.ax-type-image{padding:0}ax-conversation-message .ax-message-content .ax-chat-message-status{padding:.25rem .5rem}ax-conversation-message .ax-message-content.ax-state-own{border-end-end-radius:0!important;background-color:rgb(var(--ax-comp-conversation-own-color));color:rgb(var(--ax-comp-conversation-own-color-fore));justify-content:flex-end}ax-conversation-message .ax-message-content.ax-state-own .ax-chat-message-status{color:rgb(var(--ax-comp-conversation-own-color-fore))}ax-conversation-message .ax-message-content.ax-state-other{border-end-start-radius:0!important;background-color:rgb(var(--ax-comp-conversation-other-color));color:rgb(var(--ax-comp-conversation-other-color-fore))}ax-conversation-message .ax-message-content.ax-state-other .ax-chat-message-status{color:rgb(var(--ax-comp-conversation-other-color-fore))}ax-conversation-message .ax-message-content .ax-chat-message-status{display:flex;justify-content:space-between;align-items:center;font-size:.75rem}ax-conversation-message .ax-message-content .ax-chat-message-status>div{display:flex;gap:.125rem;align-items:center}ax-conversation-message .ax-message-content .ax-chat-message-status .ax-message-status{color:rgb(var(--ax-comp-conversation-status-color))}ax-conversation-message .ax-message-content .ax-chat-message-status .ax-icon{font-weight:700;font-size:.875rem}ax-conversation-message .ax-message-content .ax-chat-message-status .ax-icon-error{color:rgb(var(--ax-sys-color-danger-surface))}ax-conversation-message .ax-message-content ax-prefix,ax-conversation-message .ax-message-content ax-suffix{display:none}ax-conversation-message .ax-resend-button{border-radius:999rem}ax-conversation-message .ax-cursor-pointer{cursor:pointer}ax-conversation-message .ax-rounded{border-radius:.75rem}ax-conversation-message .ax-message-content p{padding:.75rem;color:rgba(var(--ax-sys-color-on-primary))}@media (min-width: 320px) and (max-width: 640px){ax-conversation-message ax-avatar{display:none!important}ax-conversation-message .ax-message-content{max-width:100%}}\\n\"] }]\n }], propDecorators: { __hostClass: [{\n type: HostBinding,\n args: ['class']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZS9jb252ZXJzYXRpb24tbWVzc2FnZS5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL2NvbnZlcnNhdGlvbi1tZXNzYWdlL2NvbnZlcnNhdGlvbi1tZXNzYWdlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDbEUsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDOUQsT0FBTyxFQUFFLGlCQUFpQixFQUFFLHFCQUFxQixFQUFFLHlCQUF5QixFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDaEgsT0FBTyxFQUFFLDJCQUEyQixFQUFFLHdCQUF3QixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDdEcsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDaEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsZUFBZSxFQUE4QixlQUFlLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRyxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUNMLFNBQVMsRUFFVCxXQUFXLEVBQ1gsaUJBQWlCLEVBQ2pCLFFBQVEsRUFDUixNQUFNLEVBQ04sS0FBSyxFQUNMLFNBQVMsR0FDVixNQUFNLGVBQWUsQ0FB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LENBQUMsV0FBVyxFQUFFLENBQUMsYUFBYSxFQUFFLENBQUM7SUFDckMsQ0FBQztJQUVTLGlCQUFpQjtRQUN6QixJQUFJLENBQUMsT0FBTyxFQUFFLEVBQUUsS0FBSyxFQUFFLENBQUM7UUFDeEIsSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDLGFBQWEsRUFBRSxDQUFDO0lBQ3JDLENBQUM7SUFFUyxZQUFZLENBQUMsQ0FBQztRQUN0QixJQUFJLENBQUMsbUJBQW1CLENBQUMsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztJQUMxQyxDQUFDOzhHQWhFVSw4QkFBOEI7a0dBQTlCLDhCQUE4QiwrYUFGOUIsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLDhCQUE4QixFQUFFLENBQUMscUtDN0NwRixra0VBNERBLDg3SkQxQkksaUJBQWlCLDJIQUNqQixlQUFlLGlKQUNmLGlCQUFpQiwyVUFDakIsd0JBQXdCLHNFQUN4QixrQkFBa0IsK1FBQ2xCLDJCQUEyQix5TEFDM0IseUJBQXlCLDZHQUN6QixxQkFBcUIsaU1BQ3JCLFNBQVMseUNBQ1QsWUFBWTs7MkZBSUgsOEJBQThCO2tCQW5CMUMsU0FBUzsrQkFDRSx5QkFBeUIsaUJBR3BCLGlCQUFpQixDQUFDLElBQUksV0FDNUI7d0JBQ1AsaUJBQWlCO3dCQUNqQixlQUFlO3dCQUNmLGlCQUFpQjt3QkFDakIsd0JBQXdCO3dCQUN4QixrQkFBa0I7d0JBQ2xCLDJCQUEyQjt3QkFDM0IseUJBQXlCO3dCQUN6QixxQkFBcUI7d0JBQ3JCLFNBQVM7d0JBQ1QsWUFBWTtxQkFDYixhQUNVLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsZ0NBQWdDLEVBQUUsQ0FBQzs4QkEwQjlFLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhDb21wb25lbnQsIE1YQmFzZUNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWEF2YXRhckNvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9hdmF0YXInO1xuaW1wb3J0IHsgQVhCdXR0b25Db21wb25lbnQsIEFYQnV0dG9uSXRlbUNvbXBvbmVudCwgQVhCdXR0b25JdGVtTGlzdENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhEZWNvcmF0b3JHZW5lcmljQ29tcG9uZW50LCBBWERlY29yYXRvckljb25Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWFBvcG92ZXJDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBBWEZvcm1hdFBpcGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvZm9ybWF0JztcbmltcG9ydCB7IGlzQnJvd3NlciB9IGZyb20gJ0BhY29yZXgvY29yZS9wbGF0Zm9ybSc7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXQsIENka1BvcnRhbE91dGxldEF0dGFjaGVkUmVmLCBDb21wb25lbnRQb3J0YWwgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IEFzeW5jUGlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbic7XG5pbXBvcnQge1xuICBDb21wb25lbnQsXG4gIENvbXBvbmVudFJlZixcbiAgSG9zdEJpbmRpbmcsXG4gIFZpZXdFbmNhcHN1bGF0aW9uLFxuICBjb21wdXRlZCxcbiAgaW5qZWN0LFxuICBpbnB1dCxcbiAgdmlld0NoaWxkLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uTWVzc2FnZSB9IGZyb20gJy4uL2NvbnZlcnNhdGlvbi50eXBlcyc7XG5pbXBvcnQgeyBBWENvbnZlcnNhdGlvbk1lc3NhZ2VUeXBlUmVnaXN0cnlTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvY29udmVyc2F0aW9uLW1lc3NhZ2UtdHlwZS1yZWdpc3RyeS5zZXJ2aWNlJztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbnZlcnNhdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCBmb3IgZGlzcGxheWluZyBpbmRpdmlkdWFsIGNvbnZlcnNhdGlvbiBtZXNzYWdlcy5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1jb252ZXJzYXRpb24tbWVzc2FnZScsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb252ZXJzYXRpb24tbWVzc2FnZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnZlcnNhdGlvbi1tZXNzYWdlLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtcbiAgICBBWEF2YXRhckNvbXBvbmVudCxcbiAgICBDZGtQb3J0YWxPdXRsZXQsXG4gICAgQVhCdXR0b25Db21wb25lbnQsXG4gICAgQVhEZWNvcmF0b3JJY29uQ29tcG9uZW50LFxuICAgIEFYUG9wb3ZlckNvbXBvbmVudCxcbiAgICBBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQsXG4gICAgQVhCdXR0b25JdGVtTGlzdENvbXBvbmVudCxcbiAgICBBWEJ1dHRvbkl0ZW1Db21wb25lbnQsXG4gICAgQXN5bmNQaXBlLFxuICAgIEFYRm9ybWF0UGlwZSxcbiAgXSxcbiAgcHJvdmlkZXJzOiBbeyBwcm92aWRlOiBBWENvbXBvbmVudCwgdXNlRXhpc3Rpbmc6IEFYQ29udmVyc2F0aW9uTWVzc2FnZUNvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgQVhDb252ZXJzYXRpb25NZXNzYWdlQ29tcG9uZW50IGV4dGVuZHMgTVhCYXNlQ29tcG9uZW50IHtcbiAgcHJvdGVjdGVkIHBvcG92ZXIgPSB2aWV3Q2hpbGQ8QVhQb3BvdmVyQ29tcG9uZW50PigncG9wb3ZlcicpO1xuXG4gIGlzUmVwbHlBcnJvd1Nob3duID0gaW5wdXQodHJ1ZSk7XG5cbiAgcHJvdGVjdGVkIGNvbnZlcnNhdGlvblNlcnZpY2UgPSBpbmplY3QoQVhDb252ZXJzYXRpb25TZXJ2aWNlKTtcblxuICBjaGF0TWVzc2FnZSA9IGlucHV0PEFYQ29udmVyc2F0aW9uTWVzc2FnZT4oKTtcblxuICBwcm90ZWN0ZWQgcmVnaXN0cnlTZXJ2aWNlID0gaW5qZWN0KEFYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2UpO1xuXG4gIHByb3RlY3RlZCBwb3J0YWwgPSBjb21wdXRlZDxDb21wb25lbnRQb3J0YWw8YW55PiB8IG51bGw+KCgpID0+IHtcbiAgICByZXR1cm4gbmV3IENvbXBvbmVudFBvcnRhbCh0aGlzLnJlZ2lzdHJ5U2VydmljZS5yZXNvbHZlKHRoaXMuY2hhdE1lc3NhZ2UoKS50eXBlKS5jb21wb25lbnQpO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgbWVzc2FnZVR5cGUgPSBjb21wdXRlZCgoKSA9PiB7XG4gICAgcmV0dXJuIHRoaXMuY2hhdE1lc3NhZ2UoKS50eXBlO1xuICB9KTtcblxuICBwcm90ZWN0ZWQgZ2V0IGlzT3duKCk6IGJvb2xlYW4ge1xuICAgIHJldHVybiAhdGhpcy5jaGF0TWVzc2FnZSgpLmZyb21JZDtcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgX19ob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5pc093biA/ICdheC1zdGF0ZS1vd24nIDogJyd9ICR7IXRoaXMuaXNPd24gPyAnYXgtc3RhdGUtb3RoZXInIDogJyd9YDtcbiAgfVxuXG4gIHByb3RlY3RlZCBfaGFuZGxlQXR0YWNoZWQocmVmOiBDZGtQb3J0YWxPdXRsZXRBdHRhY2hlZFJlZikge1xuICAgIHJlZiA9IHJlZiBhcyBDb21wb25lbnRSZWY8dW5rbm93bj47XG4gICAgaWYgKHJlZi5pbnN0YW5jZSAmJiBpc0Jyb3dzZXIoKSkge1xuICAgICAgT2JqZWN0LmFzc2lnbihyZWYuaW5zdGFuY2UsIHsgbWVzc2FnZTogdGhpcy5jaGF0TWVzc2FnZSgpIH0pO1xuXG4gICAgICBjb25zdCBwcmVmaXhDb250YWluZXIgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignLmF4LW1lc3NhZ2UtcHJlZml4Jyk7XG4gICAgICBjb25zdCBzdWZmaXhDb250YWluZXIgPSB0aGlzLmdldEhvc3RFbGVtZW50KCkucXVlcnlTZWxlY3RvcignLmF4LW1lc3NhZ2Utc3VmZml4Jyk7XG4gICAgICBwcmVmaXhDb250YWluZXIuaW5uZXJIVE1MID0gJyc7XG4gICAgICBzdWZmaXhDb250YWluZXIuaW5uZXJIVE1MID0gJyc7XG5cbiAgICAgIGNvbnN0IHByZWZpeCA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yKCdheC1wcmVmaXgnKSBhcyBIVE1MRGl2RWxlbWVudDtcbiAgICAgIGNvbnN0IHN1ZmZpeCA9IHRoaXMuZ2V0SG9zdEVsZW1lbnQoKS5xdWVyeVNlbGVjdG9yKCdheC1zdWZmaXgnKSBhcyBIVE1MRGl2RWxlbWVudDtcblxuICAgICAgaWYgKHByZWZpeCAmJiBwcmVmaXhDb250YWluZXIpIHtcbiAgICAgICAgcHJlZml4LnN0eWxlLmRpc3BsYXkgPSAnZmxleCc7XG4gICAgICAgIHByZWZpeENvbnRhaW5lci5hcHBlbmQocHJlZml4KTtcbiAgICAgIH1cbiAgICAgIGlmIChzdWZmaXggJiYgc3VmZml4Q29udGFpbmVyKSB7XG4gICAgICAgIHN1ZmZpeC5zdHlsZS5kaXNwbGF5ID0gJ2ZsZXgnO1xuICAgICAgICBzdWZmaXhDb250YWluZXIuYXBwZW5kKHN1ZmZpeCk7XG4gICAgICB9XG4gICAgfVxuICB9XG5cbiAgcHJvdGVjdGVkIGhhbmRsZVJlc2VuZENsaWNrKCkge1xuICAgIHRoaXMucG9wb3ZlcigpPy5jbG9zZSgpO1xuICAgIHRoaXMuY2hhdE1lc3NhZ2UoKS5vblJlc2VuZENsaWNrKCk7XG4gIH1cblxuICBwcm90ZWN0ZWQgaGFuZGxlRGVsZXRlQ2xpY2soKSB7XG4gICAgdGhpcy5wb3BvdmVyKCk/LmNsb3NlKCk7XG4gICAgdGhpcy5jaGF0TWVzc2FnZSgpLm9uRGVsZXRlQ2xpY2soKTtcbiAgfVxuXG4gIHByb3RlY3RlZCByZXBseUhhbmRsZXIoZSkge1xuICAgIHRoaXMuY29udmVyc2F0aW9uU2VydmljZS5yZXBseUlkLnNldChlKTtcbiAgfVxufVxuIiwiQGlmIChjaGF0TWVzc2FnZSgpLmZyb21JZCkge1xuICA8YXgtYXZhdGFyIGNvbG9yPVwicHJpbWFyeVwiIFtzaXplXT1cIjM2XCI+IDwvYXgtYXZhdGFyPlxufVxuXG5AaWYgKGlzT3duICYmIGlzUmVwbHlBcnJvd1Nob3duKCkpIHtcbiAgPGkgKGNsaWNrKT1cInJlcGx5SGFuZGxlcihjaGF0TWVzc2FnZSgpLmlkKVwiIGNsYXNzPVwiZmEtc29saWQgZmEtcmVwbHkgYXgtY3Vyc29yLXBvaW50ZXJcIj48L2k+XG59XG5cbjxkaXZcbiAgY2xhc3M9XCJheC1tZXNzYWdlLWNvbnRlbnRcIlxuICBbY2xhc3NdPVwiJ2F4LXR5cGUtJyArIG1lc3NhZ2VUeXBlKClcIlxuICBbY2xhc3MuYXgtc3RhdGUtb3duXT1cIiFjaGF0TWVzc2FnZSgpLmZyb21JZFwiXG4gIFtjbGFzcy5heC1zdGF0ZS1vdGhlcl09XCJjaGF0TWVzc2FnZSgpLmZyb21JZFwiXG4+XG4gIDxuZy10ZW1wbGF0ZSBbY2RrUG9ydGFsT3V0bGV0XT1cInBvcnRhbCgpXCIgKGF0dGFjaGVkKT1cIl9oYW5kbGVBdHRhY2hlZCgkZXZlbnQpXCI+PC9uZy10ZW1wbGF0ZT5cblxuICA8ZGl2IGNsYXNzPVwiYXgtY2hhdC1tZXNzYWdlLXN0YXR1c1wiPlxuICAgIDxkaXYgY2xhc3M9XCJheC1tZXNzYWdlLXByZWZpeFwiPjwvZGl2PlxuICAgIDxkaXY+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtbWVzc2FnZS1zdWZmaXhcIj48L2Rpdj5cbiAgICAgIDxzcGFuPlxuICAgICAgICB7eyBjaGF0TWVzc2FnZSgpLnNlbmRUaW1lIHwgZm9ybWF0OiAnZGF0ZXRpbWUnIDogJ0hIOm1tJyB8IGFzeW5jIH19XG4gICAgICA8L3NwYW4+XG4gICAgICA8c3Bhbj5cbiAgICAgICAgQGlmIChpc093bikge1xuICAgICAgICAgIEBpZiAoY2hhdE1lc3NhZ2UoKS5kZWxpdmVyVGltZSAmJiBjaGF0TWVzc2FnZSgpLnNlbmRUaW1lKSB7XG4gICAgICAgICAgICA8aSBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1jaGVjayBheC1tZXNzYWdlLXN0YXR1c1wiPjwvaT5cbiAgICAgICAgICB9XG4gICAgICAgICAgQGlmIChjaGF0TWVzc2FnZSgpLnJlYWRUaW1lICYmIGNoYXRNZXNzYWdlKCkuc2VuZFRpbWUpIHtcbiAgICAgICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLWRvYmJsZS1jaGVjayBheC1tZXNzYWdlLXN0YXR1c1wiPjwvaT5cbiAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgIDwvc3Bhbj5cbiAgICA8L2Rpdj5cbiAgPC9kaXY+XG48L2Rpdj5cblxuQGlmICghY2hhdE1lc3NhZ2UoKS5zZW5kVGltZSkge1xuICA8YXgtYnV0dG9uIGNsYXNzPVwiYXgtcmVzZW5kLWJ1dHRvbiBheC14c1wiIGNvbG9yPVwiZGFuZ2VyXCIgI2I+XG4gICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tZXJyb3JcIj48L2F4LWljb24+XG5cbiAgICA8YXgtcG9wb3ZlciBbdGFyZ2V0XT1cImJcIiBwbGFjZW1lbnQ9XCJib3R0b20tZW5kXCIgI3BvcG92ZXI+XG4gICAgICA8ZGl2IGNsYXNzPVwiYXgtb3ZlcmxheS1wYW5lXCI+XG4gICAgICAgIDxheC1jb250ZW50PiA8L2F4LWNvbnRlbnQ+XG4gICAgICAgIDxheC1idXR0b24taXRlbS1saXN0PlxuICAgICAgICAgIEBpZiAoY2hhdE1lc3NhZ2UoKS5vblJlc2VuZENsaWNrKSB7XG4gICAgICAgICAgICA8YXgtYnV0dG9uLWl0ZW0gdGV4dD1cIlJlc2VuZFwiIChvbkNsaWNrKT1cImhhbmRsZVJlc2VuZENsaWNrKClcIj5cbiAgICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tcmVsb2FkIGF4LWJvbGRcIj48L2F4LWljb24+XG4gICAgICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtPlxuICAgICAgICAgIH1cbiAgICAgICAgICBAaWYgKGNoYXRNZXNzYWdlKCkub25EZWxldGVDbGljaykge1xuICAgICAgICAgICAgPGF4LWJ1dHRvbi1pdGVtIHRleHQ9XCJEZWxldGVcIiBjb2xvcj1cImRhbmdlclwiIChvbkNsaWNrKT1cImhhbmRsZURlbGV0ZUNsaWNrKClcIj5cbiAgICAgICAgICAgICAgPGF4LWljb24gY2xhc3M9XCJheC1pY29uIGF4LWljb24tY2xlYXIgYXgtYm9sZFwiPjwvYXgtaWNvbj5cbiAgICAgICAgICAgIDwvYXgtYnV0dG9uLWl0ZW0+XG4gICAgICAgICAgfVxuICAgICAgICA8L2F4LWJ1dHRvbi1pdGVtLWxpc3Q+XG4gICAgICA8L2Rpdj5cbiAgICA8L2F4LXBvcG92ZXI+XG4gIDwvYXgtYnV0dG9uPlxufVxuIl19","import { Injectable } from '@angular/core';\nimport * as i0 from \"@angular/core\";\nexport class AXConversationMessageBaseComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageBaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }\n static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageBaseComponent }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageBaseComponent, decorators: [{\n type: Injectable\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLnR5cGVzLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24udHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBUSxNQUFNLGVBQWUsQ0FBQzs7QUEwQmpELE1BQU0sT0FBTyxrQ0FBa0M7OEdBQWxDLGtDQUFrQztrSEFBbEMsa0NBQWtDOzsyRkFBbEMsa0NBQWtDO2tCQUQ5QyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgSW5qZWN0YWJsZSwgVHlwZSB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgaW50ZXJmYWNlIEFYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGUge1xuICBuYW1lOiBzdHJpbmc7XG4gIGNvbXBvbmVudDogVHlwZTxhbnk+O1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIEFYQ29udmVyc2F0aW9uTWVzc2FnZSB7XG4gIGlkOiBzdHJpbmc7XG4gIHR5cGU6IHN0cmluZztcbiAgc2VuZFRpbWU6IERhdGUgfCBudWxsO1xuICBkZWxpdmVyVGltZT86IERhdGU7XG4gIHJlYWRUaW1lPzogRGF0ZTtcbiAgcmVwbHlUbz86IHtcbiAgICBpZDogc3RyaW5nO1xuICB9O1xuICBjb250ZW50OiBhbnk7XG4gIGZyb21JZD86IHN0cmluZztcbiAgbmFtZTogc3RyaW5nO1xuICBvblJlc2VuZENsaWNrPzogKCkgPT4gdm9pZDtcbiAgb25EZWxldGVDbGljaz86ICgpID0+IHZvaWQ7XG4gIG9uRG93bmxvYWRDbGljaz86ICgpID0+IHZvaWQ7XG4gIG9uQ2FuY2VsQ2xpY2s/OiAoKSA9PiB2b2lkO1xufVxuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgQVhDb252ZXJzYXRpb25NZXNzYWdlQmFzZUNvbXBvbmVudCB7XG4gIG1lc3NhZ2U6IEFYQ29udmVyc2F0aW9uTWVzc2FnZTtcbn1cbiJdfQ==","import { AXComponent } from '@acorex/cdk/common';\nimport { AXButtonComponent } from '@acorex/components/button';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXRangeSliderComponent } from '@acorex/components/range-slider';\nimport { AXFormatPipe } from '@acorex/core/format';\nimport { AsyncPipe } from '@angular/common';\nimport { Component, Renderer2, ViewEncapsulation, afterNextRender, inject, signal } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\nimport * as i0 from \"@angular/core\";\nimport * as i1 from \"@angular/forms\";\n/**\n * Component for displaying audio messages in a conversation.\n *\n * @category Components\n */\nexport class AXConversationMessageAudioComponent extends AXConversationMessageBaseComponent {\n /**\n * @ignore\n */\n constructor() {\n super();\n this.rendrer = inject(Renderer2);\n /**\n * @ignore\n */\n this.audioState = signal('paused');\n /**\n * @ignore\n */\n // audioTag = viewChild<ElementRef<HTMLAudioElement>>('a');\n this.audioTag = signal(new Audio());\n /**\n * @ignore\n */\n this.audioRate = signal(1);\n /**\n * @ignore\n */\n this.currentTime = signal(0);\n /**\n * @ignore\n */\n this.duration = signal(0);\n /**\n * @ignore\n */\n this.currentTimeFormat = signal(0);\n /**\n * @ignore\n */\n this.durationFormat = signal(0);\n afterNextRender(() => {\n this.audioTag().autoplay = false;\n this.audioTag().src = this.message.content;\n this.rendrer.listen(this.audioTag(), 'ended', this.endedFunction.bind(this));\n this.rendrer.listen(this.audioTag(), 'durationchange', this.durationchangeFunction.bind(this));\n this.rendrer.listen(this.audioTag(), 'timeupdate', this.timeupdateFunction.bind(this));\n });\n }\n /**\n * @ignore\n */\n ngOnDestroy() {\n if (this.endedEvent) {\n this.endedEvent();\n }\n if (this.durationchangeEvent) {\n this.durationchangeEvent();\n }\n if (this.timeupdateEvent) {\n this.timeupdateEvent();\n }\n }\n /**\n * @ignore\n */\n endedFunction() {\n this.audioState.set('paused');\n this.audioTag().pause();\n this.audioTag().currentTime = 0;\n this.currentTime.set(0);\n }\n /**\n * @ignore\n */\n durationchangeFunction() {\n if (this.audioTag().duration === Infinity)\n return;\n this.duration.set(this.audioTag().duration);\n this.durationFormat.set(Math.ceil(this.audioTag().duration) * 1000);\n }\n /**\n * @ignore\n */\n timeupdateFunction() {\n this.currentTime.set(this.audioTag().currentTime);\n this.currentTimeFormat.set(Math.ceil(this.audioTag().currentTime * 1000));\n }\n /**\n * Seeks to the specified time and resumes audio playback.\n *\n * @param e - Time in seconds to seek to.\n * @ignore\n */\n clickHandler(e) {\n this.audioTag().currentTime = e;\n }\n /**\n * Pauses the audio and updates the state to 'paused'.\n * @ignore\n */\n handlePauseClick() {\n this.audioState.set('paused');\n this.audioTag().pause();\n }\n /**\n * Plays the audio and updates the state to 'playing'.\\\n * @ignore\n */\n handlePlayClick() {\n this.audioState.set('playing');\n this.audioTag().play();\n }\n /**\n * Toggles the playback rate of the audio between 1x, 1.5x, and 2x.\n * @ignore\n */\n handleRateClick() {\n if (this.audioRate() === 1) {\n this.audioRate.set(1.5);\n this.audioTag().playbackRate = 1.5;\n }\n else if (this.audioRate() === 1.5) {\n this.audioRate.set(2);\n this.audioTag().playbackRate = 2;\n }\n else if (this.audioRate() === 2) {\n this.audioRate.set(1);\n this.audioTag().playbackRate = 1;\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageAudioComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: AXConversationMessageAudioComponent, isStandalone: true, selector: \"ax-conversation-message-audio\", providers: [{ provide: AXComponent, useExisting: AXConversationMessageAudioComponent }], usesInheritance: true, ngImport: i0, template: \"<ax-prefix>\\n <div class=\\\"ax-time-rate\\\">\\n @switch (audioState()) {\\n @case ('paused') {\\n {{ currentTimeFormat() | format: 'time-duration' | async }}\\n }\\n @case ('playing') {\\n {{ currentTimeFormat() | format: 'time-duration' | async }}\\n }\\n @default {\\n {{ durationFormat() | format: 'time-duration' | async }}\\n }\\n }\\n <ax-button\\n color=\\\"primary\\\"\\n look=\\\"solid\\\"\\n text=\\\"{{ audioRate() }}X\\\"\\n class=\\\"ax-audio-speed\\\"\\n (click)=\\\"handleRateClick()\\\"\\n ></ax-button>\\n </div>\\n</ax-prefix>\\n<div class=\\\"ax-conversation-controller\\\">\\n @switch (audioState()) {\\n @case ('playing') {\\n <button (click)=\\\"handlePauseClick()\\\">\\n <i class=\\\"ax-icon ax-icon-pause\\\"></i>\\n </button>\\n }\\n @case ('paused') {\\n <button (click)=\\\"handlePlayClick()\\\">\\n <i class=\\\"ax-icon ax-icon-play\\\"></i>\\n </button>\\n }\\n }\\n</div>\\n<ax-range-slider\\n class=\\\"ax-modify-bgSlider\\\"\\n (ngModelChange)=\\\"clickHandler($event)\\\"\\n [max]=\\\"duration()\\\"\\n [min]=\\\"0\\\"\\n mode=\\\"single\\\"\\n [ngModel]=\\\"currentTime()\\\"\\n color=\\\"primary\\\"\\n>\\n</ax-range-slider>\\n\", styles: [\"ax-conversation-message-audio .ax-time-rate .ax-audio-speed{margin-inline-start:.3rem;border-radius:.2rem;min-width:2rem}ax-conversation-message-audio .ax-modify-bgSlider{width:14rem;margin:0 1rem;padding:0}.ax-time-rate{display:flex;align-items:center}.ax-audio-speed{--ax-comp-button-font-size: .6rem;--ax-comp-button-padding-x: .1rem;--ax-comp-button-padding-y: .1rem;--ax-comp-button-height: auto;--ax-comp-button-text-padding-x: .5rem;margin-inline-start:.5rem}\\n\"], dependencies: [{ kind: \"component\", type: AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"component\", type: AXButtonComponent, selector: \"ax-button\", inputs: [\"disabled\", \"size\", \"tabIndex\", \"color\", \"look\", \"text\", \"toggleable\", \"selected\", \"iconOnly\", \"type\", \"loadingText\"], outputs: [\"onBlur\", \"onFocus\", \"onClick\", \"selectedChange\", \"toggleableChange\", \"lookChange\", \"colorChange\", \"disabledChange\", \"loadingTextChange\"] }, { kind: \"component\", type: AXRangeSliderComponent, selector: \"ax-range-slider\", inputs: [\"disabled\", \"readonly\", \"orientation\", \"color\", \"values\", \"mode\", \"min\", \"max\", \"step\", \"snap\", \"tooltipMode\", \"snapMode\", \"hasStep\", \"hasSnap\", \"hasLable\", \"hasTooltip\"], outputs: [\"valuesChange\"] }, { kind: \"ngmodule\", type: FormsModule }, { kind: \"directive\", type: i1.NgControlStatus, selector: \"[formControlName],[ngModel],[formControl]\" }, { kind: \"directive\", type: i1.NgModel, selector: \"[ngModel]:not([formControlName]):not([formControl])\", inputs: [\"name\", \"disabled\", \"ngModel\", \"ngModelOptions\"], outputs: [\"ngModelChange\"], exportAs: [\"ngModel\"] }, { kind: \"pipe\", type: AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: AXFormatPipe, name: \"format\" }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageAudioComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-message-audio', encapsulation: ViewEncapsulation.None, imports: [\n AXDecoratorGenericComponent,\n AXButtonComponent,\n AXRangeSliderComponent,\n FormsModule,\n AsyncPipe,\n AXFormatPipe,\n ], providers: [{ provide: AXComponent, useExisting: AXConversationMessageAudioComponent }], template: \"<ax-prefix>\\n <div class=\\\"ax-time-rate\\\">\\n @switch (audioState()) {\\n @case ('paused') {\\n {{ currentTimeFormat() | format: 'time-duration' | async }}\\n }\\n @case ('playing') {\\n {{ currentTimeFormat() | format: 'time-duration' | async }}\\n }\\n @default {\\n {{ durationFormat() | format: 'time-duration' | async }}\\n }\\n }\\n <ax-button\\n color=\\\"primary\\\"\\n look=\\\"solid\\\"\\n text=\\\"{{ audioRate() }}X\\\"\\n class=\\\"ax-audio-speed\\\"\\n (click)=\\\"handleRateClick()\\\"\\n ></ax-button>\\n </div>\\n</ax-prefix>\\n<div class=\\\"ax-conversation-controller\\\">\\n @switch (audioState()) {\\n @case ('playing') {\\n <button (click)=\\\"handlePauseClick()\\\">\\n <i class=\\\"ax-icon ax-icon-pause\\\"></i>\\n </button>\\n }\\n @case ('paused') {\\n <button (click)=\\\"handlePlayClick()\\\">\\n <i class=\\\"ax-icon ax-icon-play\\\"></i>\\n </button>\\n }\\n }\\n</div>\\n<ax-range-slider\\n class=\\\"ax-modify-bgSlider\\\"\\n (ngModelChange)=\\\"clickHandler($event)\\\"\\n [max]=\\\"duration()\\\"\\n [min]=\\\"0\\\"\\n mode=\\\"single\\\"\\n [ngModel]=\\\"currentTime()\\\"\\n color=\\\"primary\\\"\\n>\\n</ax-range-slider>\\n\", styles: [\"ax-conversation-message-audio .ax-time-rate .ax-audio-speed{margin-inline-start:.3rem;border-radius:.2rem;min-width:2rem}ax-conversation-message-audio .ax-modify-bgSlider{width:14rem;margin:0 1rem;padding:0}.ax-time-rate{display:flex;align-items:center}.ax-audio-speed{--ax-comp-button-font-size: .6rem;--ax-comp-button-padding-x: .1rem;--ax-comp-button-padding-y: .1rem;--ax-comp-button-height: auto;--ax-comp-button-text-padding-x: .5rem;margin-inline-start:.5rem}\\n\"] }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2UtYXVkaW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZXMvY29udmVyc2F0aW9uLW1lc3NhZ2UtYXVkaW8vY29udmVyc2F0aW9uLW1lc3NhZ2UtYXVkaW8uY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZXMvY29udmVyc2F0aW9uLW1lc3NhZ2UtYXVkaW8vY29udmVyc2F0aW9uLW1lc3NhZ2UtYXVkaW8uY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzlELE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQzVFLE9BQU8sRUFBRSxzQkFBc0IsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3pFLE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFNBQVMsRUFBYSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDcEgsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLGdCQUFnQixDQUFDO0FBQzdDLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDBCQUEwQixDQUFDOzs7QUFFOUU7Ozs7R0FJRztBQWdCSCxNQUFNLE9B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Q0FBQyxRQUFRLEVBQUUsQ0FBQyxZQUFZLEdBQUcsQ0FBQyxDQUFDO1FBQ25DLENBQUM7YUFBTSxJQUFJLElBQUksQ0FBQyxTQUFTLEVBQUUsS0FBSyxDQUFDLEVBQUUsQ0FBQztZQUNsQyxJQUFJLENBQUMsU0FBUyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztZQUN0QixJQUFJLENBQUMsUUFBUSxFQUFFLENBQUMsWUFBWSxHQUFHLENBQUMsQ0FBQztRQUNuQyxDQUFDO0lBQ0gsQ0FBQzs4R0F2SlUsbUNBQW1DO2tHQUFuQyxtQ0FBbUMsNEVBRm5DLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxtQ0FBbUMsRUFBRSxDQUFDLGlEQzVCekYsMnFDQThDQSw4Z0JEekJJLDJCQUEyQix5TEFDM0IsaUJBQWlCLDJVQUNqQixzQkFBc0IsMlFBQ3RCLFdBQVcsMFZBQ1gsU0FBUyx5Q0FDVCxZQUFZOzsyRkFJSCxtQ0FBbUM7a0JBZi9DLFNBQVM7K0JBQ0UsK0JBQStCLGlCQUcxQixpQkFBaUIsQ0FBQyxJQUFJLFdBQzVCO3dCQUNQLDJCQUEyQjt3QkFDM0IsaUJBQWlCO3dCQUNqQixzQkFBc0I7d0JBQ3RCLFdBQVc7d0JBQ1gsU0FBUzt3QkFDVCxZQUFZO3FCQUNiLGFBQ1UsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxxQ0FBcUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQVhCdXR0b25Db21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvYnV0dG9uJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYUmFuZ2VTbGlkZXJDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcmFuZ2Utc2xpZGVyJztcbmltcG9ydCB7IEFYRm9ybWF0UGlwZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IENvbXBvbmVudCwgT25EZXN0cm95LCBSZW5kZXJlcjIsIFZpZXdFbmNhcHN1bGF0aW9uLCBhZnRlck5leHRSZW5kZXIsIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBGb3Jtc01vZHVsZSB9IGZyb20gJ0Bhbmd1bGFyL2Zvcm1zJztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uTWVzc2FnZUJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb252ZXJzYXRpb24udHlwZXMnO1xuXG4vKipcbiAqIENvbXBvbmVudCBmb3IgZGlzcGxheWluZyBhdWRpbyBtZXNzYWdlcyBpbiBhIGNvbnZlcnNhdGlvbi5cbiAqXG4gKiBAY2F0ZWdvcnkgQ29tcG9uZW50c1xuICovXG5AQ29tcG9uZW50KHtcbiAgc2VsZWN0b3I6ICdheC1jb252ZXJzYXRpb24tbWVzc2FnZS1hdWRpbycsXG4gIHRlbXBsYXRlVXJsOiAnLi9jb252ZXJzYXRpb24tbWVzc2FnZS1hdWRpby5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsczogWycuL2NvbnZlcnNhdGlvbi1tZXNzYWdlLWF1ZGlvLmNvbXBvbmVudC5zY3NzJ10sXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtcbiAgICBBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQsXG4gICAgQVhCdXR0b25Db21wb25lbnQsXG4gICAgQVhSYW5nZVNsaWRlckNvbXBvbmVudCxcbiAgICBGb3Jtc01vZHVsZSxcbiAgICBBc3luY1BpcGUsXG4gICAgQVhGb3JtYXRQaXBlLFxuICBdLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhDb252ZXJzYXRpb25NZXNzYWdlQXVkaW9Db21wb25lbnQgfV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29udmVyc2F0aW9uTWVzc2FnZUF1ZGlvQ29tcG9uZW50IGV4dGVuZHMgQVhDb252ZXJzYXRpb25NZXNzYWdlQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uRGVzdHJveSB7XG4gIHJlbmRyZXIgPSBpbmplY3QoUmVuZGVyZXIyKTtcbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgYXVkaW9TdGF0ZSA9IHNpZ25hbDwncGxheWluZycgfCAncGF1c2VkJz4oJ3BhdXNlZCcpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgLy8gYXVkaW9UYWcgPSB2aWV3Q2hpbGQ8RWxlbWVudFJlZjxIVE1MQXVkaW9FbGVtZW50Pj4oJ2EnKTtcbiAgcHJvdGVjdGVkIGF1ZGlvVGFnID0gc2lnbmFsKG5ldyBBdWRpbygpKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBhdWRpb1JhdGUgPSBzaWduYWwoMSk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgY3VycmVudFRpbWUgPSBzaWduYWwoMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgZHVyYXRpb24gPSBzaWduYWwoMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgY3VycmVudFRpbWVGb3JtYXQgPSBzaWduYWwoMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgZHVyYXRpb25Gb3JtYXQgPSBzaWduYWwoMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgZW5kZWRFdmVudDtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBkdXJhdGlvbmNoYW5nZUV2ZW50O1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIHRpbWV1cGRhdGVFdmVudDtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIHN1cGVyKCk7XG4gICAgYWZ0ZXJOZXh0UmVuZGVyKCgpID0+IHtcbiAgICAgIHRoaXMuYXVkaW9UYWcoKS5hdXRvcGxheSA9IGZhbHNlO1xuICAgICAgdGhpcy5hdWRpb1RhZygpLnNyYyA9IHRoaXMubWVzc2FnZS5jb250ZW50O1xuICAgICAgdGhpcy5yZW5kcmVyLmxpc3Rlbih0aGlzLmF1ZGlvVGFnKCksICdlbmRlZCcsIHRoaXMuZW5kZWRGdW5jdGlvbi5iaW5kKHRoaXMpKTtcbiAgICAgIHRoaXMucmVuZHJlci5saXN0ZW4odGhpcy5hdWRpb1RhZygpLCAnZHVyYXRpb25jaGFuZ2UnLCB0aGlzLmR1cmF0aW9uY2hhbmdlRnVuY3Rpb24uYmluZCh0aGlzKSk7XG4gICAgICB0aGlzLnJlbmRyZXIubGlzdGVuKHRoaXMuYXVkaW9UYWcoKSwgJ3RpbWV1cGRhdGUnLCB0aGlzLnRpbWV1cGRhdGVGdW5jdGlvbi5iaW5kKHRoaXMpKTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgbmdPbkRlc3Ryb3koKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZW5kZWRFdmVudCkge1xuICAgICAgdGhpcy5lbmRlZEV2ZW50KCk7XG4gICAgfVxuICAgIGlmICh0aGlzLmR1cmF0aW9uY2hhbmdlRXZlbnQpIHtcbiAgICAgIHRoaXMuZHVyYXRpb25jaGFuZ2VFdmVudCgpO1xuICAgIH1cbiAgICBpZiAodGhpcy50aW1ldXBkYXRlRXZlbnQpIHtcbiAgICAgIHRoaXMudGltZXVwZGF0ZUV2ZW50KCk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgZW5kZWRGdW5jdGlvbigpIHtcbiAgICB0aGlzLmF1ZGlvU3RhdGUuc2V0KCdwYXVzZWQnKTtcbiAgICB0aGlzLmF1ZGlvVGFnKCkucGF1c2UoKTtcbiAgICB0aGlzLmF1ZGlvVGFnKCkuY3VycmVudFRpbWUgPSAwO1xuICAgIHRoaXMuY3VycmVudFRpbWUuc2V0KDApO1xuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgZHVyYXRpb25jaGFuZ2VGdW5jdGlvbigpIHtcbiAgICBpZiAodGhpcy5hdWRpb1RhZygpLmR1cmF0aW9uID09PSBJbmZpbml0eSkgcmV0dXJuO1xuICAgIHRoaXMuZHVyYXRpb24uc2V0KHRoaXMuYXVkaW9UYWcoKS5kdXJhdGlvbik7XG4gICAgdGhpcy5kdXJhdGlvbkZvcm1hdC5zZXQoTWF0aC5jZWlsKHRoaXMuYXVkaW9UYWcoKS5kdXJhdGlvbikgKiAxMDAwKTtcbiAgfVxuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIHRpbWV1cGRhdGVGdW5jdGlvbigpIHtcbiAgICB0aGlzLmN1cnJlbnRUaW1lLnNldCh0aGlzLmF1ZGlvVGFnKCkuY3VycmVudFRpbWUpO1xuICAgIHRoaXMuY3VycmVudFRpbWVGb3JtYXQuc2V0KE1hdGguY2VpbCh0aGlzLmF1ZGlvVGFnKCkuY3VycmVudFRpbWUgKiAxMDAwKSk7XG4gIH1cbiAgLyoqXG4gICAqIFNlZWtzIHRvIHRoZSBzcGVjaWZpZWQgdGltZSBhbmQgcmVzdW1lcyBhdWRpbyBwbGF5YmFjay5cbiAgICpcbiAgICogQHBhcmFtIGUgLSBUaW1lIGluIHNlY29uZHMgdG8gc2VlayB0by5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGNsaWNrSGFuZGxlcihlOiBhbnkpIHtcbiAgICB0aGlzLmF1ZGlvVGFnKCkuY3VycmVudFRpbWUgPSBlIGFzIG51bWJlcjtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXVzZXMgdGhlIGF1ZGlvIGFuZCB1cGRhdGVzIHRoZSBzdGF0ZSB0byAncGF1c2VkJy5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVBhdXNlQ2xpY2soKSB7XG4gICAgdGhpcy5hdWRpb1N0YXRlLnNldCgncGF1c2VkJyk7XG4gICAgdGhpcy5hdWRpb1RhZygpLnBhdXNlKCk7XG4gIH1cblxuICAvKipcbiAgICogUGxheXMgdGhlIGF1ZGlvIGFuZCB1cGRhdGVzIHRoZSBzdGF0ZSB0byAncGxheWluZycuXFxcbiAgICogQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGhhbmRsZVBsYXlDbGljaygpIHtcbiAgICB0aGlzLmF1ZGlvU3RhdGUuc2V0KCdwbGF5aW5nJyk7XG4gICAgdGhpcy5hdWRpb1RhZygpLnBsYXkoKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBUb2dnbGVzIHRoZSBwbGF5YmFjayByYXRlIG9mIHRoZSBhdWRpbyBiZXR3ZWVuIDF4LCAxLjV4LCBhbmQgMnguXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBoYW5kbGVSYXRlQ2xpY2soKSB7XG4gICAgaWYgKHRoaXMuYXVkaW9SYXRlKCkgPT09IDEpIHtcbiAgICAgIHRoaXMuYXVkaW9SYXRlLnNldCgxLjUpO1xuICAgICAgdGhpcy5hdWRpb1RhZygpLnBsYXliYWNrUmF0ZSA9IDEuNTtcbiAgICB9IGVsc2UgaWYgKHRoaXMuYXVkaW9SYXRlKCkgPT09IDEuNSkge1xuICAgICAgdGhpcy5hdWRpb1JhdGUuc2V0KDIpO1xuICAgICAgdGhpcy5hdWRpb1RhZygpLnBsYXliYWNrUmF0ZSA9IDI7XG4gICAgfSBlbHNlIGlmICh0aGlzLmF1ZGlvUmF0ZSgpID09PSAyKSB7XG4gICAgICB0aGlzLmF1ZGlvUmF0ZS5zZXQoMSk7XG4gICAgICB0aGlzLmF1ZGlvVGFnKCkucGxheWJhY2tSYXRlID0gMTtcbiAgICB9XG4gIH1cbn1cbiIsIjxheC1wcmVmaXg+XG4gIDxkaXYgY2xhc3M9XCJheC10aW1lLXJhdGVcIj5cbiAgICBAc3dpdGNoIChhdWRpb1N0YXRlKCkpIHtcbiAgICAgIEBjYXNlICgncGF1c2VkJykge1xuICAgICAgICB7eyBjdXJyZW50VGltZUZvcm1hdCgpIHwgZm9ybWF0OiAndGltZS1kdXJhdGlvbicgfCBhc3luYyB9fVxuICAgICAgfVxuICAgICAgQGNhc2UgKCdwbGF5aW5nJykge1xuICAgICAgICB7eyBjdXJyZW50VGltZUZvcm1hdCgpIHwgZm9ybWF0OiAndGltZS1kdXJhdGlvbicgfCBhc3luYyB9fVxuICAgICAgfVxuICAgICAgQGRlZmF1bHQge1xuICAgICAgICB7eyBkdXJhdGlvbkZvcm1hdCgpIHwgZm9ybWF0OiAndGltZS1kdXJhdGlvbicgfCBhc3luYyB9fVxuICAgICAgfVxuICAgIH1cbiAgICA8YXgtYnV0dG9uXG4gICAgICBjb2xvcj1cInByaW1hcnlcIlxuICAgICAgbG9vaz1cInNvbGlkXCJcbiAgICAgIHRleHQ9XCJ7eyBhdWRpb1JhdGUoKSB9fVhcIlxuICAgICAgY2xhc3M9XCJheC1hdWRpby1zcGVlZFwiXG4gICAgICAoY2xpY2spPVwiaGFuZGxlUmF0ZUNsaWNrKClcIlxuICAgID48L2F4LWJ1dHRvbj5cbiAgPC9kaXY+XG48L2F4LXByZWZpeD5cbjxkaXYgY2xhc3M9XCJheC1jb252ZXJzYXRpb24tY29udHJvbGxlclwiPlxuICBAc3dpdGNoIChhdWRpb1N0YXRlKCkpIHtcbiAgICBAY2FzZSAoJ3BsYXlpbmcnKSB7XG4gICAgICA8YnV0dG9uIChjbGljayk9XCJoYW5kbGVQYXVzZUNsaWNrKClcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJheC1pY29uIGF4LWljb24tcGF1c2VcIj48L2k+XG4gICAgICA8L2J1dHRvbj5cbiAgICB9XG4gICAgQGNhc2UgKCdwYXVzZWQnKSB7XG4gICAgICA8YnV0dG9uIChjbGljayk9XCJoYW5kbGVQbGF5Q2xpY2soKVwiPlxuICAgICAgICA8aSBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1wbGF5XCI+PC9pPlxuICAgICAgPC9idXR0b24+XG4gICAgfVxuICB9XG48L2Rpdj5cbjxheC1yYW5nZS1zbGlkZXJcbiAgY2xhc3M9XCJheC1tb2RpZnktYmdTbGlkZXJcIlxuICAobmdNb2RlbENoYW5nZSk9XCJjbGlja0hhbmRsZXIoJGV2ZW50KVwiXG4gIFttYXhdPVwiZHVyYXRpb24oKVwiXG4gIFttaW5dPVwiMFwiXG4gIG1vZGU9XCJzaW5nbGVcIlxuICBbbmdNb2RlbF09XCJjdXJyZW50VGltZSgpXCJcbiAgY29sb3I9XCJwcmltYXJ5XCJcbj5cbjwvYXgtcmFuZ2Utc2xpZGVyPlxuIl19","import { AXComponent, MXBaseComponent } from '@acorex/cdk/common';\nimport { AXVirtualScrollingContainerDirective, AXVirtualScrollingItemDirective } from '@acorex/cdk/virtual-scroll';\nimport { ChangeDetectionStrategy, Component, ViewEncapsulation, inject, input, output } from '@angular/core';\nimport { AXConversationMessageComponent } from '../conversation-message/conversation-message.component';\nimport { AXConversationService } from '../services/conversation.service';\nimport * as i0 from \"@angular/core\";\n/**\n * Displays the conversation view with messages and interactions.\n *\n * @category Components\n */\nexport class AXConversationViewComponent extends MXBaseComponent {\n constructor() {\n super(...arguments);\n /** @ignore */\n this.conversationService = inject(AXConversationService);\n this.onScrollEnd = output();\n this.chatBoxHeight = input('30vh');\n this.isReplyArrowShown = input(true);\n /**\n * Emits an event when an action is performed within the conversation view.\n *\n * @event\n */\n this.onAction = output();\n }\n updatePrevItems(item) {\n this.conversationService.chats.update((prev) => [...item, ...prev]);\n }\n callForUpdate() {\n this.onScrollEnd.emit({ component: this });\n }\n addNewItem(item) {\n this.conversationService.chats.update((prev) => [...prev, item]);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationViewComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: AXConversationViewComponent, isStandalone: true, selector: \"ax-conversation-view\", inputs: { chatBoxHeight: { classPropertyName: \"chatBoxHeight\", publicName: \"chatBoxHeight\", isSignal: true, isRequired: false, transformFunction: null }, isReplyArrowShown: { classPropertyName: \"isReplyArrowShown\", publicName: \"isReplyArrowShown\", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onScrollEnd: \"onScrollEnd\", onAction: \"onAction\" }, providers: [{ provide: AXComponent, useExisting: AXConversationViewComponent }], usesInheritance: true, ngImport: i0, template: \"<div axVirtualScrollingContainer (ScrollEnd)=\\\"callForUpdate()\\\" [height]=\\\"chatBoxHeight()\\\">\\n @for (item of conversationService.chats(); track item.id) {\\n <ax-conversation-message\\n [isReplyArrowShown]=\\\"isReplyArrowShown()\\\"\\n axVirtualScrollingItem\\n [chatMessage]=\\\"item\\\"\\n ></ax-conversation-message>\\n }\\n</div>\\n\", styles: [\"ax-conversation-view{display:block}ax-conversation-view .ax-conversation-container{overflow-y:auto;height:100%}\\n\"], dependencies: [{ kind: \"directive\", type: AXVirtualScrollingContainerDirective, selector: \"[axVirtualScrollingContainer]\", inputs: [\"height\"], outputs: [\"ScrollEnd\"] }, { kind: \"component\", type: AXConversationMessageComponent, selector: \"ax-conversation-message\", inputs: [\"isReplyArrowShown\", \"chatMessage\"] }, { kind: \"directive\", type: AXVirtualScrollingItemDirective, selector: \"[axVirtualScrollingItem]\" }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationViewComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-view', changeDetection: ChangeDetectionStrategy.OnPush, encapsulation: ViewEncapsulation.None, imports: [AXVirtualScrollingContainerDirective, AXConversationMessageComponent, AXVirtualScrollingItemDirective], providers: [{ provide: AXComponent, useExisting: AXConversationViewComponent }], template: \"<div axVirtualScrollingContainer (ScrollEnd)=\\\"callForUpdate()\\\" [height]=\\\"chatBoxHeight()\\\">\\n @for (item of conversationService.chats(); track item.id) {\\n <ax-conversation-message\\n [isReplyArrowShown]=\\\"isReplyArrowShown()\\\"\\n axVirtualScrollingItem\\n [chatMessage]=\\\"item\\\"\\n ></ax-conversation-message>\\n }\\n</div>\\n\", styles: [\"ax-conversation-view{display:block}ax-conversation-view .ax-conversation-container{overflow-y:auto;height:100%}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLXZpZXcuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tdmlldy9jb252ZXJzYXRpb24tdmlldy5jb21wb25lbnQudHMiLCIuLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL2NvbnZlcnNhdGlvbi12aWV3L2NvbnZlcnNhdGlvbi12aWV3LmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQVcsZUFBZSxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDM0UsT0FBTyxFQUFFLG9DQUFvQyxFQUFFLCtCQUErQixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDbkgsT0FBTyxFQUFFLHVCQUF1QixFQUFFLFNBQVMsRUFBRSxpQkFBaUIsRUFBRSxNQUFNLEVBQUUsS0FBSyxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUU3RyxPQUFPLEVBQUUsOEJBQThCLEVBQUUsTUFBTSx3REFBd0QsQ0FBQztBQUN4RyxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSxrQ0FBa0MsQ0FBQzs7QUFFekU7Ozs7R0FJRztBQVVILE1BQU0sT0FBTywyQkFBNEIsU0FBUSxlQUFlO0lBVGhFOztRQVVFLGNBQWM7UUFDSix3QkFBbUIsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztRQUU5RCxnQkFBVyxHQUFHLE1BQU0sRUFBVyxDQUFDO1FBRWhDLGtCQUFhLEdBQUcsS0FBSyxDQUFTLE1BQU0sQ0FBQyxDQUFDO1FBRXRDLHNCQUFpQixHQUFHLEtBQUssQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUVoQzs7OztXQUlHO1FBQ0gsYUFBUSxHQUFHLE1BQU0sRUFBNkIsQ0FBQztLQWFoRDtJQVhDLGVBQWUsQ0FBQyxJQUFXO1FBQ3pCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUMsQ0FBQztJQUN0RSxDQUFDO0lBRUQsYUFBYTtRQUNYLElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxDQUFDLENBQUM7SUFDN0MsQ0FBQztJQUVELFVBQVUsQ0FBQyxJQUFTO1FBQ2xCLElBQUksQ0FBQyxtQkFBbUIsQ0FBQyxLQUFLLENBQUMsTUFBTSxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FBQyxDQUFDLEdBQUcsSUFBSSxFQUFFLElBQUksQ0FBQyxDQUFDLENBQUM7SUFDbkUsQ0FBQzs4R0EzQlUsMkJBQTJCO2tHQUEzQiwyQkFBMkIsMGJBRjNCLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSwyQkFBMkIsRUFBRSxDQUFDLGlEQ25CakYsNFZBU0EsMktEU1ksb0NBQW9DLHNIQUFFLDhCQUE4QixrSEFBRSwrQkFBK0I7OzJGQUdwRywyQkFBMkI7a0JBVHZDLFNBQVM7K0JBQ0Usc0JBQXNCLG1CQUdmLHVCQUF1QixDQUFDLE1BQU0saUJBQ2hDLGlCQUFpQixDQUFDLElBQUksV0FDNUIsQ0FBQyxvQ0FBb0MsRUFBRSw4QkFBOEIsRUFBRSwrQkFBK0IsQ0FBQyxhQUNyRyxDQUFDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLDZCQUE2QixFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbXBvbmVudCwgQVhFdmVudCwgTVhCYXNlQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jZGsvY29tbW9uJztcbmltcG9ydCB7IEFYVmlydHVhbFNjcm9sbGluZ0NvbnRhaW5lckRpcmVjdGl2ZSwgQVhWaXJ0dWFsU2Nyb2xsaW5nSXRlbURpcmVjdGl2ZSB9IGZyb20gJ0BhY29yZXgvY2RrL3ZpcnR1YWwtc2Nyb2xsJztcbmltcG9ydCB7IENoYW5nZURldGVjdGlvblN0cmF0ZWd5LCBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBpbmplY3QsIGlucHV0LCBvdXRwdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uQWN0aW9uRXZlbnQgfSBmcm9tICcuLi9jbGFzc2VzL2V2ZW50cy5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi4vY29udmVyc2F0aW9uLW1lc3NhZ2UvY29udmVyc2F0aW9uLW1lc3NhZ2UuY29tcG9uZW50JztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uU2VydmljZSB9IGZyb20gJy4uL3NlcnZpY2VzL2NvbnZlcnNhdGlvbi5zZXJ2aWNlJztcblxuLyoqXG4gKiBEaXNwbGF5cyB0aGUgY29udmVyc2F0aW9uIHZpZXcgd2l0aCBtZXNzYWdlcyBhbmQgaW50ZXJhY3Rpb25zLlxuICpcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWNvbnZlcnNhdGlvbi12aWV3JyxcbiAgdGVtcGxhdGVVcmw6ICcuL2NvbnZlcnNhdGlvbi12aWV3LmNvbXBvbmVudC5odG1sJyxcbiAgc3R5bGVVcmxzOiBbJy4vY29udmVyc2F0aW9uLXZpZXcuY29tcG9uZW50LnNjc3MnXSxcbiAgY2hhbmdlRGV0ZWN0aW9uOiBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneS5PblB1c2gsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGltcG9ydHM6IFtBWFZpcnR1YWxTY3JvbGxpbmdDb250YWluZXJEaXJlY3RpdmUsIEFYQ29udmVyc2F0aW9uTWVzc2FnZUNvbXBvbmVudCwgQVhWaXJ0dWFsU2Nyb2xsaW5nSXRlbURpcmVjdGl2ZV0sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWENvbnZlcnNhdGlvblZpZXdDb21wb25lbnQgfV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29udmVyc2F0aW9uVmlld0NvbXBvbmVudCBleHRlbmRzIE1YQmFzZUNvbXBvbmVudCB7XG4gIC8qKiBAaWdub3JlICovXG4gIHByb3RlY3RlZCBjb252ZXJzYXRpb25TZXJ2aWNlID0gaW5qZWN0KEFYQ29udmVyc2F0aW9uU2VydmljZSk7XG5cbiAgb25TY3JvbGxFbmQgPSBvdXRwdXQ8QVhFdmVudD4oKTtcblxuICBjaGF0Qm94SGVpZ2h0ID0gaW5wdXQ8c3RyaW5nPignMzB2aCcpO1xuXG4gIGlzUmVwbHlBcnJvd1Nob3duID0gaW5wdXQodHJ1ZSk7XG5cbiAgLyoqXG4gICAqIEVtaXRzIGFuIGV2ZW50IHdoZW4gYW4gYWN0aW9uIGlzIHBlcmZvcm1lZCB3aXRoaW4gdGhlIGNvbnZlcnNhdGlvbiB2aWV3LlxuICAgKlxuICAgKiBAZXZlbnRcbiAgICovXG4gIG9uQWN0aW9uID0gb3V0cHV0PEFYQ29udmVyc2F0aW9uQWN0aW9uRXZlbnQ+KCk7XG5cbiAgdXBkYXRlUHJldkl0ZW1zKGl0ZW06IGFueVtdKSB7XG4gICAgdGhpcy5jb252ZXJzYXRpb25TZXJ2aWNlLmNoYXRzLnVwZGF0ZSgocHJldikgPT4gWy4uLml0ZW0sIC4uLnByZXZdKTtcbiAgfVxuXG4gIGNhbGxGb3JVcGRhdGUoKSB7XG4gICAgdGhpcy5vblNjcm9sbEVuZC5lbWl0KHsgY29tcG9uZW50OiB0aGlzIH0pO1xuICB9XG5cbiAgYWRkTmV3SXRlbShpdGVtOiBhbnkpIHtcbiAgICB0aGlzLmNvbnZlcnNhdGlvblNlcnZpY2UuY2hhdHMudXBkYXRlKChwcmV2KSA9PiBbLi4ucHJldiwgaXRlbV0pO1xuICB9XG59XG4iLCI8ZGl2IGF4VmlydHVhbFNjcm9sbGluZ0NvbnRhaW5lciAoU2Nyb2xsRW5kKT1cImNhbGxGb3JVcGRhdGUoKVwiIFtoZWlnaHRdPVwiY2hhdEJveEhlaWdodCgpXCI+XG4gIEBmb3IgKGl0ZW0gb2YgY29udmVyc2F0aW9uU2VydmljZS5jaGF0cygpOyB0cmFjayBpdGVtLmlkKSB7XG4gICAgPGF4LWNvbnZlcnNhdGlvbi1tZXNzYWdlXG4gICAgICBbaXNSZXBseUFycm93U2hvd25dPVwiaXNSZXBseUFycm93U2hvd24oKVwiXG4gICAgICBheFZpcnR1YWxTY3JvbGxpbmdJdGVtXG4gICAgICBbY2hhdE1lc3NhZ2VdPVwiaXRlbVwiXG4gICAgPjwvYXgtY29udmVyc2F0aW9uLW1lc3NhZ2U+XG4gIH1cbjwvZGl2PlxuIl19","/* eslint-disable @typescript-eslint/no-unused-vars */\nimport { AXComponent } from '@acorex/cdk/common';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXLoadingSpinnerComponent } from '@acorex/components/loading';\nimport { AXFileService } from '@acorex/core/file';\nimport { AXFormatPipe } from '@acorex/core/format';\nimport { AsyncPipe } from '@angular/common';\nimport { HttpClient } from '@angular/common/http';\nimport { Component, ViewEncapsulation, afterNextRender, inject, signal } from '@angular/core';\nimport { AXConversationViewComponent } from '../../conversation-view/conversation-view.component';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\nimport * as i0 from \"@angular/core\";\n/**\n * Component for displaying file messages in a conversation.\n *\n * @category Components\n */\nexport class AXConversationFileMessageComponent extends AXConversationMessageBaseComponent {\n /**\n * @ignore\n */\n constructor() {\n super();\n /**\n * @ignore\n */\n this.fileState = signal('ready');\n /**\n * @ignore\n */\n this.fileSize = signal(null);\n /**\n * @ignore\n */\n this.fileName = signal('');\n /**\n * @ignore\n */\n this.fileService = inject(AXFileService);\n /**\n * @ignore\n */\n this.http = inject(HttpClient);\n /**\n * @ignore\n */\n this.parent = inject(AXConversationViewComponent);\n afterNextRender(() => {\n if (this.message.name) {\n this.fileName.set(this.message.name);\n this.fileSize.set(this.fileService.getSize(this.message.content));\n }\n else {\n this.fileName.set(this.message.content[0].name);\n this.fileSize.set(this.message.content[0].size);\n }\n });\n }\n /**\n * Emits a download action event for the file.\n * @ignore\n */\n handleDownloadFile() {\n this.parent.onAction.emit({ component: this, data: this.message, isUserInteraction: true });\n }\n /**\n * Emits a cancel action event for the file loading.\n * @ignore\n */\n handleCancelLoading() {\n this.parent.onAction.emit({ component: this, data: this.message, isUserInteraction: true });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationFileMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: AXConversationFileMessageComponent, isStandalone: true, selector: \"ax-conversation-message-file\", providers: [{ provide: AXComponent, useExisting: AXConversationFileMessageComponent }], usesInheritance: true, ngImport: i0, template: \"<ax-prefix>\\n {{ fileSize() | format: 'filesize' | async }}\\n</ax-prefix>\\n<div class=\\\"ax-file-container\\\">\\n <div class=\\\"ax-conversation-controller\\\">\\n @switch (fileState()) {\\n @case ('ready') {\\n <button (click)=\\\"handleDownloadFile()\\\">\\n <i class=\\\"ax-icon ax-icon-download\\\"></i>\\n </button>\\n }\\n\\n @default {\\n <button (click)=\\\"handleCancelLoading()\\\">\\n <ax-loading-spinner\\n [size]=\\\"24\\\"\\n [stroke]=\\\"2\\\"\\n [color]=\\\"message.fromId ? 'white' : 'warning'\\\"\\n ></ax-loading-spinner>\\n </button>\\n }\\n }\\n </div>\\n\\n <div class=\\\"ax-file-name\\\">{{ fileName() }}</div>\\n</div>\\n\", styles: [\"ax-conversation-message-file .ax-file-container{display:flex;align-items:center;justify-content:center;gap:.5rem}ax-conversation-message-file .ax-file-container .ax-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\\n\"], dependencies: [{ kind: \"component\", type: AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"component\", type: AXLoadingSpinnerComponent, selector: \"ax-loading-spinner\", inputs: [\"text\", \"color\", \"size\", \"stroke\"] }, { kind: \"pipe\", type: AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: AXFormatPipe, name: \"format\" }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationFileMessageComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-message-file', encapsulation: ViewEncapsulation.None, imports: [AXDecoratorGenericComponent, AXLoadingSpinnerComponent, AsyncPipe, AXFormatPipe], providers: [{ provide: AXComponent, useExisting: AXConversationFileMessageComponent }], template: \"<ax-prefix>\\n {{ fileSize() | format: 'filesize' | async }}\\n</ax-prefix>\\n<div class=\\\"ax-file-container\\\">\\n <div class=\\\"ax-conversation-controller\\\">\\n @switch (fileState()) {\\n @case ('ready') {\\n <button (click)=\\\"handleDownloadFile()\\\">\\n <i class=\\\"ax-icon ax-icon-download\\\"></i>\\n </button>\\n }\\n\\n @default {\\n <button (click)=\\\"handleCancelLoading()\\\">\\n <ax-loading-spinner\\n [size]=\\\"24\\\"\\n [stroke]=\\\"2\\\"\\n [color]=\\\"message.fromId ? 'white' : 'warning'\\\"\\n ></ax-loading-spinner>\\n </button>\\n }\\n }\\n </div>\\n\\n <div class=\\\"ax-file-name\\\">{{ fileName() }}</div>\\n</div>\\n\", styles: [\"ax-conversation-message-file .ax-file-container{display:flex;align-items:center;justify-content:center;gap:.5rem}ax-conversation-message-file .ax-file-container .ax-file-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}\\n\"] }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2UtZmlsZS5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL2NvbnZlcnNhdGlvbi1tZXNzYWdlcy9jb252ZXJzYXRpb24tbWVzc2FnZS1maWxlL2NvbnZlcnNhdGlvbi1tZXNzYWdlLWZpbGUuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZXMvY29udmVyc2F0aW9uLW1lc3NhZ2UtZmlsZS9jb252ZXJzYXRpb24tbWVzc2FnZS1maWxlLmNvbXBvbmVudC5odG1sIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLHNEQUFzRDtBQUN0RCxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sb0JBQW9CLENBQUM7QUFDakQsT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG1CQUFtQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUNuRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDNUMsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQ2xELE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQWtCLGVBQWUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzlHLE9BQU8sRUFBRSwyQkFBMkIsRUFBRSxNQUFNLHFEQUFxRCxDQUFDO0FBQ2xHLE9BQU8sRUFBRSxrQ0FBa0MsRUFBRSxNQUFNLDBCQUEwQixDQUFDOztBQUU5RTs7OztHQUlHO0FBU0gsTUFBTSxPQUFPLGtDQUFtQyxTQUFRLGtDQUFrQztJQTJCeEY7O09BRUc7SUFDSDtRQUNFLEtBQUssRUFBRSxDQUFDO1FBOUJWOztXQUVHO1FBQ0gsY0FBUyxHQUFrRCxNQUFNLENBQUMsT0FBTyxDQUFDLENBQUM7UUFDM0U7O1dBRUc7UUFDSCxhQUFRLEdBQTJCLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNoRDs7V0FFRztRQUNILGFBQVEsR0FBMkIsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRTlDOztXQUVHO1FBQ0gsZ0JBQVcsR0FBRyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUM7UUFDcEM7O1dBRUc7UUFDSCxTQUFJLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQzFCOztXQUVHO1FBQ0gsV0FBTSxHQUFHLE1BQU0sQ0FBQywyQkFBMkIsQ0FBQyxDQUFDO1FBTzNDLGVBQWUsQ0FBQyxHQUFHLEVBQUU7WUFDbkIsSUFBSSxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO2dCQUN0QixJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNyQyxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsV0FBVyxDQUFDLE9BQU8sQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBVyxDQUFDLENBQUM7WUFDOUUsQ0FBQztpQkFBTSxDQUFDO2dCQUNOLElBQUksQ0FBQyxRQUFRLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDO2dCQUNoRCxJQUFJLENBQUMsUUFBUSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNsRCxDQUFDO1FBQ0gsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RixDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsbUJBQW1CO1FBQ2pCLElBQUksQ0FBQyxNQUFNLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQztJQUM5RixDQUFDOzhHQXpEVSxrQ0FBa0M7a0dBQWxDLGtDQUFrQywyRUFGbEMsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxFQUFFLGtDQUFrQyxFQUFFLENBQUMsaURDdkJ4Rixxc0JBMEJBLHFTREpZLDJCQUEyQix5TEFBRSx5QkFBeUIsdUdBQUUsU0FBUyx5Q0FBRSxZQUFZOzsyRkFHOUUsa0NBQWtDO2tCQVI5QyxTQUFTOytCQUNFLDhCQUE4QixpQkFHekIsaUJBQWlCLENBQUMsSUFBSSxXQUM1QixDQUFDLDJCQUEyQixFQUFFLHlCQUF5QixFQUFFLFNBQVMsRUFBRSxZQUFZLENBQUMsYUFDL0UsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxvQ0FBb0MsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyogZXNsaW50LWRpc2FibGUgQHR5cGVzY3JpcHQtZXNsaW50L25vLXVudXNlZC12YXJzICovXG5pbXBvcnQgeyBBWENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWERlY29yYXRvckdlbmVyaWNDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvZGVjb3JhdG9ycyc7XG5pbXBvcnQgeyBBWExvYWRpbmdTcGlubmVyQ29tcG9uZW50IH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2xvYWRpbmcnO1xuaW1wb3J0IHsgQVhGaWxlU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29yZS9maWxlJztcbmltcG9ydCB7IEFYRm9ybWF0UGlwZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgQXN5bmNQaXBlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IEh0dHBDbGllbnQgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uLCBXcml0YWJsZVNpZ25hbCwgYWZ0ZXJOZXh0UmVuZGVyLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25WaWV3Q29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29udmVyc2F0aW9uLXZpZXcvY29udmVyc2F0aW9uLXZpZXcuY29tcG9uZW50JztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uTWVzc2FnZUJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb252ZXJzYXRpb24udHlwZXMnO1xuXG4vKipcbiAqIENvbXBvbmVudCBmb3IgZGlzcGxheWluZyBmaWxlIG1lc3NhZ2VzIGluIGEgY29udmVyc2F0aW9uLlxuICpcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWNvbnZlcnNhdGlvbi1tZXNzYWdlLWZpbGUnLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udmVyc2F0aW9uLW1lc3NhZ2UtZmlsZS5jb21wb25lbnQuaHRtbCcsXG4gIHN0eWxlVXJsOiAnLi9jb252ZXJzYXRpb24tbWVzc2FnZS1maWxlLmNvbXBvbmVudC5zY3NzJyxcbiAgZW5jYXBzdWxhdGlvbjogVmlld0VuY2Fwc3VsYXRpb24uTm9uZSxcbiAgaW1wb3J0czogW0FYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudCwgQVhMb2FkaW5nU3Bpbm5lckNvbXBvbmVudCwgQXN5bmNQaXBlLCBBWEZvcm1hdFBpcGVdLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhDb252ZXJzYXRpb25GaWxlTWVzc2FnZUNvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgQVhDb252ZXJzYXRpb25GaWxlTWVzc2FnZUNvbXBvbmVudCBleHRlbmRzIEFYQ29udmVyc2F0aW9uTWVzc2FnZUJhc2VDb21wb25lbnQge1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGZpbGVTdGF0ZTogV3JpdGFibGVTaWduYWw8J2xvYWRpbmcnIHwgJ3JlYWR5JyB8ICdlcnJvcic+ID0gc2lnbmFsKCdyZWFkeScpO1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGZpbGVTaXplOiBXcml0YWJsZVNpZ25hbDxudW1iZXI+ID0gc2lnbmFsKG51bGwpO1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGZpbGVOYW1lOiBXcml0YWJsZVNpZ25hbDxzdHJpbmc+ID0gc2lnbmFsKCcnKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGZpbGVTZXJ2aWNlID0gaW5qZWN0KEFYRmlsZVNlcnZpY2UpO1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGh0dHAgPSBpbmplY3QoSHR0cENsaWVudCk7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcGFyZW50ID0gaW5qZWN0KEFYQ29udmVyc2F0aW9uVmlld0NvbXBvbmVudCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgICBpZiAodGhpcy5tZXNzYWdlLm5hbWUpIHtcbiAgICAgICAgdGhpcy5maWxlTmFtZS5zZXQodGhpcy5tZXNzYWdlLm5hbWUpO1xuICAgICAgICB0aGlzLmZpbGVTaXplLnNldCh0aGlzLmZpbGVTZXJ2aWNlLmdldFNpemUodGhpcy5tZXNzYWdlLmNvbnRlbnQpIGFzIG51bWJlcik7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aGlzLmZpbGVOYW1lLnNldCh0aGlzLm1lc3NhZ2UuY29udGVudFswXS5uYW1lKTtcbiAgICAgICAgdGhpcy5maWxlU2l6ZS5zZXQodGhpcy5tZXNzYWdlLmNvbnRlbnRbMF0uc2l6ZSk7XG4gICAgICB9XG4gICAgfSk7XG4gIH1cblxuICAvKipcbiAgICogRW1pdHMgYSBkb3dubG9hZCBhY3Rpb24gZXZlbnQgZm9yIHRoZSBmaWxlLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBoYW5kbGVEb3dubG9hZEZpbGUoKSB7XG4gICAgdGhpcy5wYXJlbnQub25BY3Rpb24uZW1pdCh7IGNvbXBvbmVudDogdGhpcywgZGF0YTogdGhpcy5tZXNzYWdlLCBpc1VzZXJJbnRlcmFjdGlvbjogdHJ1ZSB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBFbWl0cyBhIGNhbmNlbCBhY3Rpb24gZXZlbnQgZm9yIHRoZSBmaWxlIGxvYWRpbmcuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGhhbmRsZUNhbmNlbExvYWRpbmcoKSB7XG4gICAgdGhpcy5wYXJlbnQub25BY3Rpb24uZW1pdCh7IGNvbXBvbmVudDogdGhpcywgZGF0YTogdGhpcy5tZXNzYWdlLCBpc1VzZXJJbnRlcmFjdGlvbjogdHJ1ZSB9KTtcbiAgfVxufVxuIiwiPGF4LXByZWZpeD5cbiAge3sgZmlsZVNpemUoKSB8IGZvcm1hdDogJ2ZpbGVzaXplJyB8IGFzeW5jIH19XG48L2F4LXByZWZpeD5cbjxkaXYgY2xhc3M9XCJheC1maWxlLWNvbnRhaW5lclwiPlxuICA8ZGl2IGNsYXNzPVwiYXgtY29udmVyc2F0aW9uLWNvbnRyb2xsZXJcIj5cbiAgICBAc3dpdGNoIChmaWxlU3RhdGUoKSkge1xuICAgICAgQGNhc2UgKCdyZWFkeScpIHtcbiAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiaGFuZGxlRG93bmxvYWRGaWxlKClcIj5cbiAgICAgICAgICA8aSBjbGFzcz1cImF4LWljb24gYXgtaWNvbi1kb3dubG9hZFwiPjwvaT5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG5cbiAgICAgIEBkZWZhdWx0IHtcbiAgICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiaGFuZGxlQ2FuY2VsTG9hZGluZygpXCI+XG4gICAgICAgICAgPGF4LWxvYWRpbmctc3Bpbm5lclxuICAgICAgICAgICAgW3NpemVdPVwiMjRcIlxuICAgICAgICAgICAgW3N0cm9rZV09XCIyXCJcbiAgICAgICAgICAgIFtjb2xvcl09XCJtZXNzYWdlLmZyb21JZCA/ICd3aGl0ZScgOiAnd2FybmluZydcIlxuICAgICAgICAgID48L2F4LWxvYWRpbmctc3Bpbm5lcj5cbiAgICAgICAgPC9idXR0b24+XG4gICAgICB9XG4gICAgfVxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwiYXgtZmlsZS1uYW1lXCI+e3sgZmlsZU5hbWUoKSB9fTwvZGl2PlxuPC9kaXY+XG4iXX0=","import { AXComponent } from '@acorex/cdk/common';\nimport { Component, ViewEncapsulation } from '@angular/core';\nimport * as i0 from \"@angular/core\";\n/**\n * A popup component for displaying an image in full view.\n *\n * @category Components\n */\nexport class ConversationMessageImagePopupComponent {\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: ConversationMessageImagePopupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: ConversationMessageImagePopupComponent, isStandalone: true, selector: \"ax-conversation-message-image-popup\", providers: [{ provide: AXComponent, useExisting: ConversationMessageImagePopupComponent }], ngImport: i0, template: ` <img class=\"ax-image-popup\" [src]=\"url\" alt=\"\" />`, isInline: true, styles: [\"ax-conversation-message-image-popup{display:flex;justify-content:center;align-items:center}ax-conversation-message-image-popup .ax-image-popup{object-fit:fill;width:30vw}\\n\"], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: ConversationMessageImagePopupComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-message-image-popup', template: ` <img class=\"ax-image-popup\" [src]=\"url\" alt=\"\" />`, encapsulation: ViewEncapsulation.None, providers: [{ provide: AXComponent, useExisting: ConversationMessageImagePopupComponent }], styles: [\"ax-conversation-message-image-popup{display:flex;justify-content:center;align-items:center}ax-conversation-message-image-popup .ax-image-popup{object-fit:fill;width:30vw}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2UtaW1hZ2UtcG9wdXAuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZXMvY29udmVyc2F0aW9uLW1lc3NhZ2UtaW1hZ2UtcG9wdXAvY29udmVyc2F0aW9uLW1lc3NhZ2UtaW1hZ2UtcG9wdXAuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sZUFBZSxDQUFDOztBQUU3RDs7OztHQUlHO0FBUUgsTUFBTSxPQUFPLHNDQUFzQzs4R0FBdEMsc0NBQXNDO2tHQUF0QyxzQ0FBc0Msa0ZBRnRDLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxzQ0FBc0MsRUFBRSxDQUFDLDBCQUhoRixvREFBb0Q7OzJGQUtuRCxzQ0FBc0M7a0JBUGxELFNBQVM7K0JBQ0UscUNBQXFDLFlBQ3JDLG9EQUFvRCxpQkFFL0MsaUJBQWlCLENBQUMsSUFBSSxhQUMxQixDQUFDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLHdDQUF3QyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIFZpZXdFbmNhcHN1bGF0aW9uIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbi8qKlxuICogQSBwb3B1cCBjb21wb25lbnQgZm9yIGRpc3BsYXlpbmcgYW4gaW1hZ2UgaW4gZnVsbCB2aWV3LlxuICpcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICBzZWxlY3RvcjogJ2F4LWNvbnZlcnNhdGlvbi1tZXNzYWdlLWltYWdlLXBvcHVwJyxcbiAgdGVtcGxhdGU6IGAgPGltZyBjbGFzcz1cImF4LWltYWdlLXBvcHVwXCIgW3NyY109XCJ1cmxcIiBhbHQ9XCJcIiAvPmAsXG4gIHN0eWxlVXJsOiAnLi9jb252ZXJzYXRpb24tbWVzc2FnZS1pbWFnZS1wb3B1cC5jb21wb25lbnQuc2NzcycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBDb252ZXJzYXRpb25NZXNzYWdlSW1hZ2VQb3B1cENvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgQ29udmVyc2F0aW9uTWVzc2FnZUltYWdlUG9wdXBDb21wb25lbnQge1xuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCB1cmw6IHN0cmluZztcbn1cbiJdfQ==","import { AXComponent } from '@acorex/cdk/common';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { Component, afterNextRender, inject, signal } from '@angular/core';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\nimport { ConversationMessageImagePopupComponent } from '../conversation-message-image-popup/conversation-message-image-popup.component';\nimport * as i0 from \"@angular/core\";\n/**\n * A component for displaying an image within a conversation message.\n *\n * @category Components\n */\nexport class AXConversationMessageImageComponent extends AXConversationMessageBaseComponent {\n /**\n * @ignore\n */\n constructor() {\n super();\n /**\n * @ignore\n */\n this._imageUrl = signal('');\n /**\n * @ignore\n */\n this.popup = inject(AXPopupService);\n /**\n * @ignore\n */\n this._options = {\n header: true,\n footer: false,\n size: 'md',\n draggable: true,\n hasBackdrop: true,\n closeButton: true,\n closeOnBackdropClick: false,\n };\n afterNextRender(() => {\n this._imageUrl.set(this.message?.content);\n });\n }\n /**\n * Opens a popup displaying the image with options for draggable, size, and backdrop.\n * @ignore\n */\n openPopup() {\n this.popup\n .open(ConversationMessageImagePopupComponent, {\n draggable: this._options.draggable,\n header: this._options.header,\n size: this._options.size,\n hasBackdrop: this._options.hasBackdrop,\n closeButton: this._options.closeButton,\n closeOnBackdropClick: this._options.closeOnBackdropClick,\n data: {\n url: this._imageUrl(),\n },\n })\n .then((c) => {\n console.log(c);\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageImageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: AXConversationMessageImageComponent, isStandalone: true, selector: \"ax-conversation-message-image\", inputs: { message: \"message\" }, providers: [{ provide: AXComponent, useExisting: AXConversationMessageImageComponent }], usesInheritance: true, ngImport: i0, template: `<img (click)=\"openPopup()\" [src]=\"_imageUrl()\" alt=\"\" /> `, isInline: true, styles: [\"img{cursor:pointer;width:100%;height:100%}\\n\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageImageComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-message-image', template: `<img (click)=\"openPopup()\" [src]=\"_imageUrl()\" alt=\"\" /> `, inputs: ['message'], providers: [{ provide: AXComponent, useExisting: AXConversationMessageImageComponent }], styles: [\"img{cursor:pointer;width:100%;height:100%}\\n\"] }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2UtaW1hZ2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZXMvY29udmVyc2F0aW9uLW1lc3NhZ2UtaW1hZ2UvY29udmVyc2F0aW9uLW1lc3NhZ2UtaW1hZ2UuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsY0FBYyxFQUFtQixNQUFNLDBCQUEwQixDQUFDO0FBQzNFLE9BQU8sRUFBRSxTQUFTLEVBQUUsZUFBZSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDM0UsT0FBTyxFQUFFLGtDQUFrQyxFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDOUUsT0FBTyxFQUFFLHNDQUFzQyxFQUFFLE1BQU0sZ0ZBQWdGLENBQUM7O0FBRXhJOzs7O0dBSUc7QUFjSCxNQUFNLE9BQU8sbUNBQW9DLFNBQVEsa0NBQWtDO0lBd0J6Rjs7T0FFRztJQUNIO1FBQ0UsS0FBSyxFQUFFLENBQUM7UUEzQlY7O1dBRUc7UUFDTyxjQUFTLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1FBRWpDOztXQUVHO1FBQ0ssVUFBSyxHQUFtQixNQUFNLENBQUMsY0FBYyxDQUFDLENBQUM7UUFFdkQ7O1dBRUc7UUFDTyxhQUFRLEdBQUc7WUFDbkIsTUFBTSxFQUFFLElBQUk7WUFDWixNQUFNLEVBQUUsS0FBSztZQUNiLElBQUksRUFBRSxJQUFJO1lBQ1YsU0FBUyxFQUFFLElBQUk7WUFDZixXQUFXLEVBQUUsSUFBSTtZQUNqQixXQUFXLEVBQUUsSUFBSTtZQUNqQixvQkFBb0IsRUFBRSxLQUFLO1NBQzVCLENBQUM7UUFPQSxlQUFlLENBQUMsR0FBRyxFQUFFO1lBQ25CLElBQUksQ0FBQyxTQUFTLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFDNUMsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDO0lBRUQ7OztPQUdHO0lBQ0gsU0FBUztRQUNQLElBQUksQ0FBQyxLQUFLO2FBQ1AsSUFBSSxDQUFDLHNDQUFzQyxFQUFFO1lBQzVDLFNBQVMsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFNBQVM7WUFDbEMsTUFBTSxFQUFFLElBQUksQ0FBQyxRQUFRLENBQUMsTUFBTTtZQUM1QixJQUFJLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxJQUF1QjtZQUMzQyxXQUFXLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxXQUFXO1lBQ3RDLFdBQVcsRUFBRSxJQUFJLENBQUMsUUFBUSxDQUFDLFdBQVc7WUFDdEMsb0JBQW9CLEVBQUUsSUFBSSxDQUFDLFFBQVEsQ0FBQyxvQkFBb0I7WUFDeEQsSUFBSSxFQUFFO2dCQUNKLEdBQUcsRUFBRSxJQUFJLENBQUMsU0FBUyxFQUFFO2FBQ3RCO1NBQ0YsQ0FBQzthQUNELElBQUksQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO1lBQ1YsT0FBTyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQztRQUNqQixDQUFDLENBQUMsQ0FBQztJQUNQLENBQUM7OEdBdERVLG1DQUFtQztrR0FBbkMsbUNBQW1DLDRHQUZuQyxDQUFDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsbUNBQW1DLEVBQUUsQ0FBQyxpREFUN0UsMkRBQTJEOzsyRkFXMUQsbUNBQW1DO2tCQWIvQyxTQUFTOytCQUNFLCtCQUErQixZQUMvQiwyREFBMkQsVUFRN0QsQ0FBQyxTQUFTLENBQUMsYUFDUixDQUFDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLHFDQUFxQyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWFBvcHVwU2VydmljZSwgQVhQb3B1cFNpemVUeXBlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3BvcHVwJztcbmltcG9ydCB7IENvbXBvbmVudCwgYWZ0ZXJOZXh0UmVuZGVyLCBpbmplY3QsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbnZlcnNhdGlvbi50eXBlcyc7XG5pbXBvcnQgeyBDb252ZXJzYXRpb25NZXNzYWdlSW1hZ2VQb3B1cENvbXBvbmVudCB9IGZyb20gJy4uL2NvbnZlcnNhdGlvbi1tZXNzYWdlLWltYWdlLXBvcHVwL2NvbnZlcnNhdGlvbi1tZXNzYWdlLWltYWdlLXBvcHVwLmNvbXBvbmVudCc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgZm9yIGRpc3BsYXlpbmcgYW4gaW1hZ2Ugd2l0aGluIGEgY29udmVyc2F0aW9uIG1lc3NhZ2UuXG4gKlxuICogQGNhdGVnb3J5IENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtY29udmVyc2F0aW9uLW1lc3NhZ2UtaW1hZ2UnLFxuICB0ZW1wbGF0ZTogYDxpbWcgKGNsaWNrKT1cIm9wZW5Qb3B1cCgpXCIgW3NyY109XCJfaW1hZ2VVcmwoKVwiIGFsdD1cIlwiIC8+IGAsXG4gIHN0eWxlczogYFxuICAgIGltZyB7XG4gICAgICBjdXJzb3I6IHBvaW50ZXI7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIGAsXG4gIGlucHV0czogWydtZXNzYWdlJ10sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWENvbnZlcnNhdGlvbk1lc3NhZ2VJbWFnZUNvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgQVhDb252ZXJzYXRpb25NZXNzYWdlSW1hZ2VDb21wb25lbnQgZXh0ZW5kcyBBWENvbnZlcnNhdGlvbk1lc3NhZ2VCYXNlQ29tcG9uZW50IHtcbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgX2ltYWdlVXJsID0gc2lnbmFsKCcnKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByaXZhdGUgcG9wdXA6IEFYUG9wdXBTZXJ2aWNlID0gaW5qZWN0KEFYUG9wdXBTZXJ2aWNlKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCBfb3B0aW9ucyA9IHtcbiAgICBoZWFkZXI6IHRydWUsXG4gICAgZm9vdGVyOiBmYWxzZSxcbiAgICBzaXplOiAnbWQnLFxuICAgIGRyYWdnYWJsZTogdHJ1ZSxcbiAgICBoYXNCYWNrZHJvcDogdHJ1ZSxcbiAgICBjbG9zZUJ1dHRvbjogdHJ1ZSxcbiAgICBjbG9zZU9uQmFja2Ryb3BDbGljazogZmFsc2UsXG4gIH07XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgICB0aGlzLl9pbWFnZVVybC5zZXQodGhpcy5tZXNzYWdlPy5jb250ZW50KTtcbiAgICB9KTtcbiAgfVxuXG4gIC8qKlxuICAgKiBPcGVucyBhIHBvcHVwIGRpc3BsYXlpbmcgdGhlIGltYWdlIHdpdGggb3B0aW9ucyBmb3IgZHJhZ2dhYmxlLCBzaXplLCBhbmQgYmFja2Ryb3AuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIG9wZW5Qb3B1cCgpIHtcbiAgICB0aGlzLnBvcHVwXG4gICAgICAub3BlbihDb252ZXJzYXRpb25NZXNzYWdlSW1hZ2VQb3B1cENvbXBvbmVudCwge1xuICAgICAgICBkcmFnZ2FibGU6IHRoaXMuX29wdGlvbnMuZHJhZ2dhYmxlLFxuICAgICAgICBoZWFkZXI6IHRoaXMuX29wdGlvbnMuaGVhZGVyLFxuICAgICAgICBzaXplOiB0aGlzLl9vcHRpb25zLnNpemUgYXMgQVhQb3B1cFNpemVUeXBlLFxuICAgICAgICBoYXNCYWNrZHJvcDogdGhpcy5fb3B0aW9ucy5oYXNCYWNrZHJvcCxcbiAgICAgICAgY2xvc2VCdXR0b246IHRoaXMuX29wdGlvbnMuY2xvc2VCdXR0b24sXG4gICAgICAgIGNsb3NlT25CYWNrZHJvcENsaWNrOiB0aGlzLl9vcHRpb25zLmNsb3NlT25CYWNrZHJvcENsaWNrLFxuICAgICAgICBkYXRhOiB7XG4gICAgICAgICAgdXJsOiB0aGlzLl9pbWFnZVVybCgpLFxuICAgICAgICB9LFxuICAgICAgfSlcbiAgICAgIC50aGVuKChjKSA9PiB7XG4gICAgICAgIGNvbnNvbGUubG9nKGMpO1xuICAgICAgfSk7XG4gIH1cbn1cbiJdfQ==","import { AXComponent } from '@acorex/cdk/common';\nimport { Component, ViewEncapsulation, inject, signal } from '@angular/core';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\nimport { AXConversationService } from '../../services/conversation.service';\nimport * as i0 from \"@angular/core\";\n/**\n * A component for displaying a text message with optional reply content, including text, images, videos, files, and audio.\n *\n * @category Components\n */\nexport class AXConversationTextMessageComponent extends AXConversationMessageBaseComponent {\n constructor() {\n super(...arguments);\n /**\n * @ignore\n */\n this._text = signal('');\n /**\n * @ignore\n */\n this.replyText = signal(null);\n /**\n * @ignore\n */\n this.replyImage = signal(null);\n /**\n * @ignore\n */\n this.replyVideo = signal(null);\n /**\n * @ignore\n */\n this.replyAudio = signal(null);\n /**\n * @ignore\n */\n this.replyVoice = signal(null);\n /**\n * @ignore\n */\n this.replyFile = signal(null);\n /**\n * @ignore\n */\n this.conversationService = inject(AXConversationService);\n }\n ngOnInit() {\n this._text.set(this.message?.content);\n if (!this.message?.replyTo)\n return;\n const replyMessage = this.conversationService.chats().find((chat) => chat.id === this.message?.replyTo?.id);\n switch (replyMessage.type) {\n case 'text':\n this.replyText.set(replyMessage);\n break;\n case 'image':\n this.replyImage.set(replyMessage);\n break;\n case 'video':\n this.replyVideo.set(replyMessage);\n break;\n case 'audio':\n this.replyAudio.set(replyMessage);\n break;\n case 'voice':\n this.replyVoice.set(replyMessage);\n break;\n case 'file':\n this.replyFile.set(replyMessage);\n break;\n }\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationTextMessageComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: AXConversationTextMessageComponent, isStandalone: true, selector: \"ng-component\", inputs: { message: \"message\" }, providers: [{ provide: AXComponent, useExisting: AXConversationTextMessageComponent }], usesInheritance: true, ngImport: i0, template: `\n @if (replyText()) {\n <div class=\"ax-message-reply-container\">{{ replyText().content }}</div>\n }\n\n @if (replyImage()) {\n <div class=\"ax-image-reply-container\"><img [src]=\"replyImage().content\" alt=\"\" /></div>\n }\n\n @if (replyVideo()) {\n <div class=\"ax-video-reply-container\"><video [src]=\"replyVideo().content\"></video></div>\n }\n\n @if (replyFile()) {\n <div class=\"ax-message-reply-container\">\n <div class=\"file\">\n <i class=\"fa-regular fa-folder-open\"></i>\n {{ replyFile().name }}\n </div>\n </div>\n }\n\n @if (replyAudio() || replyVoice()) {\n <div class=\"ax-message-reply-container\">{{ replyAudio().type }}</div>\n }\n\n <div class=\"ax-text-message\" [innerHtml]=\"_text()\"></div>\n `, isInline: true, styles: [\".ax-text-message{word-break:normal;white-space:break-spaces}\\n\"], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationTextMessageComponent, decorators: [{\n type: Component,\n args: [{ template: `\n @if (replyText()) {\n <div class=\"ax-message-reply-container\">{{ replyText().content }}</div>\n }\n\n @if (replyImage()) {\n <div class=\"ax-image-reply-container\"><img [src]=\"replyImage().content\" alt=\"\" /></div>\n }\n\n @if (replyVideo()) {\n <div class=\"ax-video-reply-container\"><video [src]=\"replyVideo().content\"></video></div>\n }\n\n @if (replyFile()) {\n <div class=\"ax-message-reply-container\">\n <div class=\"file\">\n <i class=\"fa-regular fa-folder-open\"></i>\n {{ replyFile().name }}\n </div>\n </div>\n }\n\n @if (replyAudio() || replyVoice()) {\n <div class=\"ax-message-reply-container\">{{ replyAudio().type }}</div>\n }\n\n <div class=\"ax-text-message\" [innerHtml]=\"_text()\"></div>\n `, encapsulation: ViewEncapsulation.None, inputs: ['message'], providers: [{ provide: AXComponent, useExisting: AXConversationTextMessageComponent }], styles: [\".ax-text-message{word-break:normal;white-space:break-spaces}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2UtdGV4dC5jb21wb25lbnQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9wYWNrYWdlcy9jb21wb25lbnRzL2NvbnZlcnNhdGlvbi9zcmMvbGliL2NvbnZlcnNhdGlvbi1tZXNzYWdlcy9jb252ZXJzYXRpb24tbWVzc2FnZS10ZXh0L2NvbnZlcnNhdGlvbi1tZXNzYWdlLXRleHQuY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFVLGlCQUFpQixFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFDckYsT0FBTyxFQUF5QixrQ0FBa0MsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQ3JHLE9BQU8sRUFBRSxxQkFBcUIsRUFBRSxNQUFNLHFDQUFxQyxDQUFDOztBQUU1RTs7OztHQUlHO0FBbUNILE1BQU0sT0FBTyxrQ0FBbUMsU0FBUSxrQ0FBa0M7SUFsQzFGOztRQW1DRTs7V0FFRztRQUNPLFVBQUssR0FBRyxNQUFNLENBQUMsRUFBRSxDQUFDLENBQUM7UUFFN0I7O1dBRUc7UUFDTyxjQUFTLEdBQUcsTUFBTSxDQUErQixJQUFJLENBQUMsQ0FBQztRQUVqRTs7V0FFRztRQUNPLGVBQVUsR0FBRyxNQUFNLENBQStCLElBQUksQ0FBQyxDQUFDO1FBRWxFOztXQUVHO1FBQ08sZUFBVSxHQUFHLE1BQU0sQ0FBK0IsSUFBSSxDQUFDLENBQUM7UUFFbEU7O1dBRUc7UUFDTyxlQUFVLEdBQUcsTUFBTSxDQUErQixJQUFJLENBQUMsQ0FBQztRQUVsRTs7V0FFRztRQUNPLGVBQVUsR0FBRyxNQUFNLENBQStCLElBQUksQ0FBQyxDQUFDO1FBRWxFOztXQUVHO1FBQ08sY0FBUyxHQUFHLE1BQU0sQ0FBK0IsSUFBSSxDQUFDLENBQUM7UUFFakU7O1dBRUc7UUFDSCx3QkFBbUIsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUMsQ0FBQztLQThCckQ7SUE1QkMsUUFBUTtRQUNOLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTyxDQUFDLENBQUM7UUFFdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLEVBQUUsT0FBTztZQUFFLE9BQU87UUFFbkMsTUFBTSxZQUFZLEdBQUcsSUFBSSxDQUFDLG1CQUFtQixDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsSUFBSSxDQUFDLEVBQUUsS0FBSyxJQUFJLENBQUMsT0FBTyxFQUFFLE9BQU8sRUFBRSxFQUFFLENBQUMsQ0FBQztRQUU1RyxRQUFRLFlBQVksQ0FBQyxJQUFJLEVBQUUsQ0FBQztZQUMxQixLQUFLLE1BQU07Z0JBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2pDLE1BQU07WUFDUixLQUFLLE9BQU87Z0JBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2xDLE1BQU07WUFDUixLQUFLLE9BQU87Z0JBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2xDLE1BQU07WUFDUixLQUFLLE9BQU87Z0JBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2xDLE1BQU07WUFDUixLQUFLLE9BQU87Z0JBQ1YsSUFBSSxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2xDLE1BQU07WUFDUixLQUFLLE1BQU07Z0JBQ1QsSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUM7Z0JBQ2pDLE1BQU07UUFDVixDQUFDO0lBQ0gsQ0FBQzs4R0FwRVUsa0NBQWtDO2tHQUFsQyxrQ0FBa0MsMkZBRmxDLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxrQ0FBa0MsRUFBRSxDQUFDLGlEQS9CNUU7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQTJCVDs7MkZBTVUsa0NBQWtDO2tCQWxDOUMsU0FBUzsrQkFDRTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBMkJULGlCQUVjLGlCQUFpQixDQUFDLElBQUksVUFDN0IsQ0FBQyxTQUFTLENBQUMsYUFDUixDQUFDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLG9DQUFvQyxFQUFFLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBBWENvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBDb21wb25lbnQsIE9uSW5pdCwgVmlld0VuY2Fwc3VsYXRpb24sIGluamVjdCwgc2lnbmFsIH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBBWENvbnZlcnNhdGlvbk1lc3NhZ2UsIEFYQ29udmVyc2F0aW9uTWVzc2FnZUJhc2VDb21wb25lbnQgfSBmcm9tICcuLi8uLi9jb252ZXJzYXRpb24udHlwZXMnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25TZXJ2aWNlIH0gZnJvbSAnLi4vLi4vc2VydmljZXMvY29udmVyc2F0aW9uLnNlcnZpY2UnO1xuXG4vKipcbiAqIEEgY29tcG9uZW50IGZvciBkaXNwbGF5aW5nIGEgdGV4dCBtZXNzYWdlIHdpdGggb3B0aW9uYWwgcmVwbHkgY29udGVudCwgaW5jbHVkaW5nIHRleHQsIGltYWdlcywgdmlkZW9zLCBmaWxlcywgYW5kIGF1ZGlvLlxuICpcbiAqIEBjYXRlZ29yeSBDb21wb25lbnRzXG4gKi9cbkBDb21wb25lbnQoe1xuICB0ZW1wbGF0ZTogYFxuICAgIEBpZiAocmVwbHlUZXh0KCkpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJheC1tZXNzYWdlLXJlcGx5LWNvbnRhaW5lclwiPnt7IHJlcGx5VGV4dCgpLmNvbnRlbnQgfX08L2Rpdj5cbiAgICB9XG5cbiAgICBAaWYgKHJlcGx5SW1hZ2UoKSkge1xuICAgICAgPGRpdiBjbGFzcz1cImF4LWltYWdlLXJlcGx5LWNvbnRhaW5lclwiPjxpbWcgW3NyY109XCJyZXBseUltYWdlKCkuY29udGVudFwiIGFsdD1cIlwiIC8+PC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChyZXBseVZpZGVvKCkpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJheC12aWRlby1yZXBseS1jb250YWluZXJcIj48dmlkZW8gW3NyY109XCJyZXBseVZpZGVvKCkuY29udGVudFwiPjwvdmlkZW8+PC9kaXY+XG4gICAgfVxuXG4gICAgQGlmIChyZXBseUZpbGUoKSkge1xuICAgICAgPGRpdiBjbGFzcz1cImF4LW1lc3NhZ2UtcmVwbHktY29udGFpbmVyXCI+XG4gICAgICAgIDxkaXYgY2xhc3M9XCJmaWxlXCI+XG4gICAgICAgICAgPGkgY2xhc3M9XCJmYS1yZWd1bGFyIGZhLWZvbGRlci1vcGVuXCI+PC9pPlxuICAgICAgICAgIHt7IHJlcGx5RmlsZSgpLm5hbWUgfX1cbiAgICAgICAgPC9kaXY+XG4gICAgICA8L2Rpdj5cbiAgICB9XG5cbiAgICBAaWYgKHJlcGx5QXVkaW8oKSB8fCByZXBseVZvaWNlKCkpIHtcbiAgICAgIDxkaXYgY2xhc3M9XCJheC1tZXNzYWdlLXJlcGx5LWNvbnRhaW5lclwiPnt7IHJlcGx5QXVkaW8oKS50eXBlIH19PC9kaXY+XG4gICAgfVxuXG4gICAgPGRpdiBjbGFzcz1cImF4LXRleHQtbWVzc2FnZVwiIFtpbm5lckh0bWxdPVwiX3RleHQoKVwiPjwvZGl2PlxuICBgLFxuICBzdHlsZVVybDogJy4vY29udmVyc2F0aW9uLW1lc3NhZ2UtdGV4dC5jb21wb25lbnQuc2NzcycsXG4gIGVuY2Fwc3VsYXRpb246IFZpZXdFbmNhcHN1bGF0aW9uLk5vbmUsXG4gIGlucHV0czogWydtZXNzYWdlJ10sXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWENvbnZlcnNhdGlvblRleHRNZXNzYWdlQ29tcG9uZW50IH1dLFxufSlcbmV4cG9ydCBjbGFzcyBBWENvbnZlcnNhdGlvblRleHRNZXNzYWdlQ29tcG9uZW50IGV4dGVuZHMgQVhDb252ZXJzYXRpb25NZXNzYWdlQmFzZUNvbXBvbmVudCBpbXBsZW1lbnRzIE9uSW5pdCB7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIF90ZXh0ID0gc2lnbmFsKCcnKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCByZXBseVRleHQgPSBzaWduYWw8QVhDb252ZXJzYXRpb25NZXNzYWdlIHwgbnVsbD4obnVsbCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVwbHlJbWFnZSA9IHNpZ25hbDxBWENvbnZlcnNhdGlvbk1lc3NhZ2UgfCBudWxsPihudWxsKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCByZXBseVZpZGVvID0gc2lnbmFsPEFYQ29udmVyc2F0aW9uTWVzc2FnZSB8IG51bGw+KG51bGwpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIHJlcGx5QXVkaW8gPSBzaWduYWw8QVhDb252ZXJzYXRpb25NZXNzYWdlIHwgbnVsbD4obnVsbCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgcmVwbHlWb2ljZSA9IHNpZ25hbDxBWENvbnZlcnNhdGlvbk1lc3NhZ2UgfCBudWxsPihudWxsKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHByb3RlY3RlZCByZXBseUZpbGUgPSBzaWduYWw8QVhDb252ZXJzYXRpb25NZXNzYWdlIHwgbnVsbD4obnVsbCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBjb252ZXJzYXRpb25TZXJ2aWNlID0gaW5qZWN0KEFYQ29udmVyc2F0aW9uU2VydmljZSk7XG5cbiAgbmdPbkluaXQoKTogdm9pZCB7XG4gICAgdGhpcy5fdGV4dC5zZXQodGhpcy5tZXNzYWdlPy5jb250ZW50KTtcblxuICAgIGlmICghdGhpcy5tZXNzYWdlPy5yZXBseVRvKSByZXR1cm47XG5cbiAgICBjb25zdCByZXBseU1lc3NhZ2UgPSB0aGlzLmNvbnZlcnNhdGlvblNlcnZpY2UuY2hhdHMoKS5maW5kKChjaGF0KSA9PiBjaGF0LmlkID09PSB0aGlzLm1lc3NhZ2U/LnJlcGx5VG8/LmlkKTtcblxuICAgIHN3aXRjaCAocmVwbHlNZXNzYWdlLnR5cGUpIHtcbiAgICAgIGNhc2UgJ3RleHQnOlxuICAgICAgICB0aGlzLnJlcGx5VGV4dC5zZXQocmVwbHlNZXNzYWdlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdpbWFnZSc6XG4gICAgICAgIHRoaXMucmVwbHlJbWFnZS5zZXQocmVwbHlNZXNzYWdlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd2aWRlbyc6XG4gICAgICAgIHRoaXMucmVwbHlWaWRlby5zZXQocmVwbHlNZXNzYWdlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdhdWRpbyc6XG4gICAgICAgIHRoaXMucmVwbHlBdWRpby5zZXQocmVwbHlNZXNzYWdlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICd2b2ljZSc6XG4gICAgICAgIHRoaXMucmVwbHlWb2ljZS5zZXQocmVwbHlNZXNzYWdlKTtcbiAgICAgICAgYnJlYWs7XG4gICAgICBjYXNlICdmaWxlJzpcbiAgICAgICAgdGhpcy5yZXBseUZpbGUuc2V0KHJlcGx5TWVzc2FnZSk7XG4gICAgICAgIGJyZWFrO1xuICAgIH1cbiAgfVxufVxuIl19","import { AXComponent } from '@acorex/cdk/common';\nimport { Component, signal } from '@angular/core';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\nimport * as i0 from \"@angular/core\";\n/**\n * A component for displaying a video message with playback controls.\n *\n * @category Components\n */\nexport class AXConversationMessageVideoComponent extends AXConversationMessageBaseComponent {\n constructor() {\n super(...arguments);\n /**\n * @ignore\n */\n this._videoUrl = signal('');\n }\n /**\n * @ignore\n */\n ngOnInit() {\n this._videoUrl.set(this.message?.content);\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageVideoComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"14.0.0\", version: \"20.0.3\", type: AXConversationMessageVideoComponent, isStandalone: true, selector: \"ax-conversation-message-video\", providers: [{ provide: AXComponent, useExisting: AXConversationMessageVideoComponent }], usesInheritance: true, ngImport: i0, template: `<video controls [src]=\"_videoUrl()\"></video>`, isInline: true, styles: [\"video{width:100%;height:100%}\\n\"] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationMessageVideoComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-message-video', template: `<video controls [src]=\"_videoUrl()\"></video>`, providers: [{ provide: AXComponent, useExisting: AXConversationMessageVideoComponent }], styles: [\"video{width:100%;height:100%}\\n\"] }]\n }] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2UtdmlkZW8uY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZXMvY29udmVyc2F0aW9uLW1lc3NhZ2UtdmlkZW8vY29udmVyc2F0aW9uLW1lc3NhZ2UtdmlkZW8uY29tcG9uZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUNqRCxPQUFPLEVBQUUsU0FBUyxFQUFVLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUMxRCxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQkFBMEIsQ0FBQzs7QUFFOUU7Ozs7R0FJRztBQVlILE1BQU0sT0FBTyxtQ0FBb0MsU0FBUSxrQ0FBa0M7SUFYM0Y7O1FBWUU7O1dBRUc7UUFDTyxjQUFTLEdBQUcsTUFBTSxDQUFDLEVBQUUsQ0FBQyxDQUFDO0tBUWxDO0lBTkM7O09BRUc7SUFDSCxRQUFRO1FBQ04sSUFBSSxDQUFDLFNBQVMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxPQUFPLENBQUMsQ0FBQztJQUM1QyxDQUFDOzhHQVhVLG1DQUFtQztrR0FBbkMsbUNBQW1DLDRFQUZuQyxDQUFDLEVBQUUsT0FBTyxFQUFFLFdBQVcsRUFBRSxXQUFXLEVBQUUsbUNBQW1DLEVBQUUsQ0FBQyxpREFQN0UsOENBQThDOzsyRkFTN0MsbUNBQW1DO2tCQVgvQyxTQUFTOytCQUNFLCtCQUErQixZQUMvQiw4Q0FBOEMsYUFPN0MsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxxQ0FBcUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQ29tcG9uZW50LCBPbkluaXQsIHNpZ25hbCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlQmFzZUNvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbnZlcnNhdGlvbi50eXBlcyc7XG5cbi8qKlxuICogQSBjb21wb25lbnQgZm9yIGRpc3BsYXlpbmcgYSB2aWRlbyBtZXNzYWdlIHdpdGggcGxheWJhY2sgY29udHJvbHMuXG4gKlxuICogQGNhdGVnb3J5IENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtY29udmVyc2F0aW9uLW1lc3NhZ2UtdmlkZW8nLFxuICB0ZW1wbGF0ZTogYDx2aWRlbyBjb250cm9scyBbc3JjXT1cIl92aWRlb1VybCgpXCI+PC92aWRlbz5gLFxuICBzdHlsZXM6IGBcbiAgICB2aWRlbyB7XG4gICAgICB3aWR0aDogMTAwJTtcbiAgICAgIGhlaWdodDogMTAwJTtcbiAgICB9XG4gIGAsXG4gIHByb3ZpZGVyczogW3sgcHJvdmlkZTogQVhDb21wb25lbnQsIHVzZUV4aXN0aW5nOiBBWENvbnZlcnNhdGlvbk1lc3NhZ2VWaWRlb0NvbXBvbmVudCB9XSxcbn0pXG5leHBvcnQgY2xhc3MgQVhDb252ZXJzYXRpb25NZXNzYWdlVmlkZW9Db21wb25lbnQgZXh0ZW5kcyBBWENvbnZlcnNhdGlvbk1lc3NhZ2VCYXNlQ29tcG9uZW50IGltcGxlbWVudHMgT25Jbml0IHtcbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgX3ZpZGVvVXJsID0gc2lnbmFsKCcnKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIG5nT25Jbml0KCk6IHZvaWQge1xuICAgIHRoaXMuX3ZpZGVvVXJsLnNldCh0aGlzLm1lc3NhZ2U/LmNvbnRlbnQpO1xuICB9XG59XG4iXX0=","import { AXComponent } from '@acorex/cdk/common';\nimport { AXAudioWaveComponent } from '@acorex/components/audio-wave';\nimport { AXDecoratorGenericComponent } from '@acorex/components/decorators';\nimport { AXLoadingSpinnerComponent } from '@acorex/components/loading';\nimport { AXFormatPipe } from '@acorex/core/format';\nimport { AsyncPipe, isPlatformBrowser } from '@angular/common';\nimport { Component, HostBinding, PLATFORM_ID, ViewChild, ViewEncapsulation, afterNextRender, inject, signal, } from '@angular/core';\nimport { AXConversationViewComponent } from '../../conversation-view/conversation-view.component';\nimport { AXConversationMessageBaseComponent } from '../../conversation.types';\nimport * as i0 from \"@angular/core\";\n/**\n * A component for displaying and handling audio messages in a conversation.\n *\n * @category Components\n */\nexport class AXConversationVoiceMessageComponent extends AXConversationMessageBaseComponent {\n /**\n * @ignore\n */\n constructor() {\n super();\n /**\n * @ignore\n */\n this.config = { url: '' };\n /**\n * @ignore\n */\n this.audioState = signal('paused');\n /**\n * @ignore\n */\n this.parent = inject(AXConversationViewComponent);\n this.platformID = inject(PLATFORM_ID);\n /**\n * @ignore\n */\n this.selectedRate = signal(1);\n /**\n * @ignore\n */\n this.selectedRateIndex = signal(1);\n /**\n * @ignore\n */\n this.audioProgress = signal(0);\n /**\n * @ignore\n */\n this.timeLeft = signal(0);\n /**\n * @ignore\n */\n this.currentTime = signal(0);\n /**\n * @ignore\n */\n this.duration = signal(0);\n afterNextRender(() => {\n this.config.url = this.message?.content;\n this.config.audioRate = 0.25;\n this.setWaveColor();\n this.audio.onStatusChanged.subscribe((c) => {\n this.parent.onAction.emit(c);\n });\n this.handleLoadingProgress();\n });\n }\n /**\n * @ignore\n */\n setWaveColor() {\n let waveColor = '';\n let progressColor = '';\n if (isPlatformBrowser(this.platformID)) {\n if (this.message.fromId) {\n waveColor = getComputedStyle(document.body).getPropertyValue('--ax-message-other-bar-color');\n progressColor = getComputedStyle(document.body).getPropertyValue('--ax-message-other-progress-color');\n }\n else {\n waveColor = getComputedStyle(document.body).getPropertyValue('--ax-message-own-bar-color');\n progressColor = getComputedStyle(document.body).getPropertyValue('--ax-message-own-progress-color');\n }\n }\n this.config.waveColor = waveColor;\n this.config.progressColor = progressColor;\n }\n /**\n * Pauses the audio playback and updates the audio state to 'paused'.\n * @ignore\n */\n handlePauseClick() {\n this.audio?.pause();\n this.audioState.set('paused');\n }\n /**\n * Plays the audio and updates the audio state to 'playing'.\n * @ignore\n */\n handlePlayClick() {\n this.audio?.play()?.then(() => {\n this.audioState.set('playing');\n });\n }\n /**\n * Updates audio state and progress based on status changes from the audio wave.\n * @param e - The event containing status and data related to the audio.\n * @ignore\n */\n handleOnStatusChanged(e) {\n if (e.status === 'load' || e.status === 'loading') {\n this.audioState.set('loading');\n }\n if (e.status === 'loading') {\n this.audioProgress.set(e.data.percent);\n this.duration.set(Math.ceil(e.data.duration * 1000));\n }\n if (e.status === 'ready') {\n this.audioState.set('ready');\n this.duration.set(Math.ceil(e.data.duration * 1000));\n }\n if (e.status === 'finish') {\n this.audioState.set('paused');\n }\n if (e.status === 'timeupdate') {\n this.timeLeft.set(this.duration() - e.data.currentTime * 1000);\n this.currentTime.set(e.data.currentTime * 1000);\n }\n if (e.status === 'error') {\n this.audioState.set('error');\n }\n }\n /**\n * @ignore\n */\n handleLoadingProgress() {\n // this.audioLoaderProgress?.nativeElement.style.cssText = `--ax-audio-progress: ${this.audioProgress()}`;\n }\n /**\n * Handles the cancellation of a loading operation.\n * @ignore\n */\n handleCancelLoading() {\n //\n }\n /**\n * Reloads the audio and updates the state to 'loading'.\n * @ignore\n */\n handleReloadClick() {\n //\n this.audioState.set('loading');\n this.audio.load();\n }\n /**\n * Cycles through predefined audio playback rates and updates the rate.\n * @ignore\n */\n handleRateClick() {\n const rates = [0.5, 1, 2, 4];\n if (this.selectedRateIndex() == rates.length - 1) {\n this.selectedRateIndex.set(0);\n }\n else {\n this.selectedRateIndex.set(this.selectedRateIndex() + 1);\n }\n this.selectedRate.set(rates[this.selectedRateIndex()]);\n this.audio.setRate(this.selectedRate());\n }\n /**\n * @ignore\n */\n get __hostClass() {\n return `${this.message.fromId ? 'ax-state-other' : 'ax-state-own'}`;\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationVoiceMessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }\n static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: \"17.0.0\", version: \"20.0.3\", type: AXConversationVoiceMessageComponent, isStandalone: true, selector: \"ax-conversation-message-audio\", inputs: { message: \"message\" }, host: { properties: { \"class\": \"this.__hostClass\" } }, providers: [{ provide: AXComponent, useExisting: AXConversationVoiceMessageComponent }], viewQueries: [{ propertyName: \"audio\", first: true, predicate: [\"a\"], descendants: true }], usesInheritance: true, ngImport: i0, template: \"<ax-prefix>\\n @switch (audioState()) {\\n @case ('paused') {\\n {{ currentTime() | format: 'time-duration' | async }}\\n }\\n @case ('playing') {\\n {{ currentTime() | format: 'time-duration' | async }}\\n }\\n @default {\\n {{ duration() | format: 'time-duration' | async }}\\n }\\n }\\n <button class=\\\"ax-audio-speed\\\" (click)=\\\"handleRateClick()\\\"></button>\\n</ax-prefix>\\n<div class=\\\"ax-conversation-controller\\\">\\n @switch (audioState()) {\\n @case ('playing') {\\n <button (click)=\\\"handlePauseClick()\\\">\\n <i class=\\\"ax-icon ax-icon-pause\\\"></i>\\n </button>\\n }\\n\\n @case ('ready') {\\n <button (click)=\\\"handlePlayClick()\\\">\\n <i class=\\\"ax-icon ax-icon-play\\\"></i>\\n </button>\\n }\\n\\n @case ('paused') {\\n <button (click)=\\\"handlePlayClick()\\\">\\n <i class=\\\"ax-icon ax-icon-play\\\"></i>\\n </button>\\n }\\n\\n @case ('error') {\\n <button class=\\\"ax-state-error\\\" (click)=\\\"handleReloadClick()\\\">\\n <i class=\\\"ax-icon ax-icon-reload\\\"></i>\\n </button>\\n }\\n\\n @default {\\n <button (click)=\\\"handleCancelLoading()\\\">\\n <ax-loading-spinner\\n [size]=\\\"24\\\"\\n [stroke]=\\\"2\\\"\\n [color]=\\\"message.fromId ? 'white' : 'warning'\\\"\\n ></ax-loading-spinner>\\n </button>\\n }\\n }\\n</div>\\n<ax-audio-wave #a [config]=\\\"config\\\" (onStatusChanged)=\\\"handleOnStatusChanged($event)\\\"></ax-audio-wave>\\n<ax-suffix>\\n <div class=\\\"ax-audio-rate-button\\\" [class.ax-state-own]=\\\"!message?.fromId\\\" (click)=\\\"handleRateClick()\\\">\\n {{ selectedRate() }}X\\n </div>\\n</ax-suffix>\\n\", styles: [\"ax-conversation-message-audio{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:18rem;max-width:100%}ax-conversation-message-audio .ax-audio-wave{flex:1}ax-conversation-message-audio .ax-audio-rate-button{background-color:var(--ax-comp-conversation-other-color-fore);color:var(--ax-comp-conversation-other-color);border-radius:.5rem;padding:0 .5rem;font-weight:700;margin-inline-end:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}ax-conversation-message-audio .ax-audio-rate-button.ax-state-own{background-color:var(--ax-comp-conversation-own-color-fore);color:var(--ax-comp-conversation-own-color)}ax-conversation-message-audio html[dir=rtl] ax-conversation-message-audio{flex-direction:row-reverse}\\n\"], dependencies: [{ kind: \"component\", type: AXDecoratorGenericComponent, selector: \"ax-footer, ax-header, ax-content, ax-divider, ax-form-hint, ax-prefix, ax-suffix, ax-text, ax-title, ax-subtitle, ax-placeholder, ax-overlay\" }, { kind: \"component\", type: AXLoadingSpinnerComponent, selector: \"ax-loading-spinner\", inputs: [\"text\", \"color\", \"size\", \"stroke\"] }, { kind: \"component\", type: AXAudioWaveComponent, selector: \"ax-audio-wave\", inputs: [\"config\"], outputs: [\"onStatusChanged\"] }, { kind: \"pipe\", type: AsyncPipe, name: \"async\" }, { kind: \"pipe\", type: AXFormatPipe, name: \"format\" }], encapsulation: i0.ViewEncapsulation.None }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationVoiceMessageComponent, decorators: [{\n type: Component,\n args: [{ selector: 'ax-conversation-message-audio', encapsulation: ViewEncapsulation.None, inputs: ['message'], imports: [AXDecoratorGenericComponent, AXLoadingSpinnerComponent, AXAudioWaveComponent, AsyncPipe, AXFormatPipe], providers: [{ provide: AXComponent, useExisting: AXConversationVoiceMessageComponent }], template: \"<ax-prefix>\\n @switch (audioState()) {\\n @case ('paused') {\\n {{ currentTime() | format: 'time-duration' | async }}\\n }\\n @case ('playing') {\\n {{ currentTime() | format: 'time-duration' | async }}\\n }\\n @default {\\n {{ duration() | format: 'time-duration' | async }}\\n }\\n }\\n <button class=\\\"ax-audio-speed\\\" (click)=\\\"handleRateClick()\\\"></button>\\n</ax-prefix>\\n<div class=\\\"ax-conversation-controller\\\">\\n @switch (audioState()) {\\n @case ('playing') {\\n <button (click)=\\\"handlePauseClick()\\\">\\n <i class=\\\"ax-icon ax-icon-pause\\\"></i>\\n </button>\\n }\\n\\n @case ('ready') {\\n <button (click)=\\\"handlePlayClick()\\\">\\n <i class=\\\"ax-icon ax-icon-play\\\"></i>\\n </button>\\n }\\n\\n @case ('paused') {\\n <button (click)=\\\"handlePlayClick()\\\">\\n <i class=\\\"ax-icon ax-icon-play\\\"></i>\\n </button>\\n }\\n\\n @case ('error') {\\n <button class=\\\"ax-state-error\\\" (click)=\\\"handleReloadClick()\\\">\\n <i class=\\\"ax-icon ax-icon-reload\\\"></i>\\n </button>\\n }\\n\\n @default {\\n <button (click)=\\\"handleCancelLoading()\\\">\\n <ax-loading-spinner\\n [size]=\\\"24\\\"\\n [stroke]=\\\"2\\\"\\n [color]=\\\"message.fromId ? 'white' : 'warning'\\\"\\n ></ax-loading-spinner>\\n </button>\\n }\\n }\\n</div>\\n<ax-audio-wave #a [config]=\\\"config\\\" (onStatusChanged)=\\\"handleOnStatusChanged($event)\\\"></ax-audio-wave>\\n<ax-suffix>\\n <div class=\\\"ax-audio-rate-button\\\" [class.ax-state-own]=\\\"!message?.fromId\\\" (click)=\\\"handleRateClick()\\\">\\n {{ selectedRate() }}X\\n </div>\\n</ax-suffix>\\n\", styles: [\"ax-conversation-message-audio{display:flex;align-items:center;justify-content:space-between;gap:.5rem;min-width:18rem;max-width:100%}ax-conversation-message-audio .ax-audio-wave{flex:1}ax-conversation-message-audio .ax-audio-rate-button{background-color:var(--ax-comp-conversation-other-color-fore);color:var(--ax-comp-conversation-other-color);border-radius:.5rem;padding:0 .5rem;font-weight:700;margin-inline-end:.5rem;cursor:pointer;-webkit-user-select:none;user-select:none}ax-conversation-message-audio .ax-audio-rate-button.ax-state-own{background-color:var(--ax-comp-conversation-own-color-fore);color:var(--ax-comp-conversation-own-color)}ax-conversation-message-audio html[dir=rtl] ax-conversation-message-audio{flex-direction:row-reverse}\\n\"] }]\n }], ctorParameters: () => [], propDecorators: { audio: [{\n type: ViewChild,\n args: ['a']\n }], __hostClass: [{\n type: HostBinding,\n args: ['class']\n }] } });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLW1lc3NhZ2Utdm9pY2UuY29tcG9uZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZXMvY29udmVyc2F0aW9uLW1lc3NhZ2Utdm9pY2UvY29udmVyc2F0aW9uLW1lc3NhZ2Utdm9pY2UuY29tcG9uZW50LnRzIiwiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2xpYi9jb252ZXJzYXRpb24tbWVzc2FnZXMvY29udmVyc2F0aW9uLW1lc3NhZ2Utdm9pY2UvY29udmVyc2F0aW9uLW1lc3NhZ2Utdm9pY2UuY29tcG9uZW50Lmh0bWwiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ2pELE9BQU8sRUFBMEIsb0JBQW9CLEVBQWdCLE1BQU0sK0JBQStCLENBQUM7QUFDM0csT0FBTyxFQUFFLDJCQUEyQixFQUFFLE1BQU0sK0JBQStCLENBQUM7QUFDNUUsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDdkUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLHFCQUFxQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUMvRCxPQUFPLEVBQ0wsU0FBUyxFQUNULFdBQVcsRUFDWCxXQUFXLEVBQ1gsU0FBUyxFQUNULGlCQUFpQixFQUVqQixlQUFlLEVBQ2YsTUFBTSxFQUNOLE1BQU0sR0FDUCxNQUFNLGVBQWUsQ0FBQztBQUN2QixPQUFPLEVBQUUsMkJBQTJCLEVBQUUsTUFBTSxxREFBcUQsQ0FBQztBQUNsRyxPQUFPLEVBQUUsa0NBQWtDLEVBQUUsTUFBTSwwQkFB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Q0FBQyxZQUFZLENBQUMsR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsaUJBQWlCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDdkQsSUFBSSxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLFlBQVksRUFBRSxDQUFDLENBQUM7SUFDMUMsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxXQUFXO1FBQ2IsT0FBTyxHQUFHLElBQUksQ0FBQyxPQUFPLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLENBQUMsY0FBYyxFQUFFLENBQUM7SUFDdEUsQ0FBQzs4R0FwTFUsbUNBQW1DO2tHQUFuQyxtQ0FBbUMsbUtBRm5DLENBQUMsRUFBRSxPQUFPLEVBQUUsV0FBVyxFQUFFLFdBQVcsRUFBRSxtQ0FBbUMsRUFBRSxDQUFDLDZJQ2hDekYseW1EQXlEQSx3eUJEMUJZLDJCQUEyQix5TEFBRSx5QkFBeUIsNEdBQUUsb0JBQW9CLHVHQUFFLFNBQVMseUNBQUUsWUFBWTs7MkZBR3BHLG1DQUFtQztrQkFUL0MsU0FBUzsrQkFDRSwrQkFBK0IsaUJBRzFCLGlCQUFpQixDQUFDLElBQUksVUFDN0IsQ0FBQyxTQUFTLENBQUMsV0FDVixDQUFDLDJCQUEyQixFQUFFLHlCQUF5QixFQUFFLG9CQUFvQixFQUFFLFNBQVMsRUFBRSxZQUFZLENBQUMsYUFDckcsQ0FBQyxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsV0FBVyxxQ0FBcUMsRUFBRSxDQUFDO3dEQU12RSxLQUFLO3NCQUFwQixTQUFTO3VCQUFDLEdBQUc7Z0JBOEtWLFdBQVc7c0JBRGQsV0FBVzt1QkFBQyxPQUFPIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQVhDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2Nkay9jb21tb24nO1xuaW1wb3J0IHsgQVhBdWRpb1dhdmVDaGFuZ2VFdmVudCwgQVhBdWRpb1dhdmVDb21wb25lbnQsIEFYV2F2ZUNvbmZpZyB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9hdWRpby13YXZlJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yR2VuZXJpY0NvbXBvbmVudCB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kZWNvcmF0b3JzJztcbmltcG9ydCB7IEFYTG9hZGluZ1NwaW5uZXJDb21wb25lbnQgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBBWEZvcm1hdFBpcGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvZm9ybWF0JztcbmltcG9ydCB7IEFzeW5jUGlwZSwgaXNQbGF0Zm9ybUJyb3dzZXIgfSBmcm9tICdAYW5ndWxhci9jb21tb24nO1xuaW1wb3J0IHtcbiAgQ29tcG9uZW50LFxuICBIb3N0QmluZGluZyxcbiAgUExBVEZPUk1fSUQsXG4gIFZpZXdDaGlsZCxcbiAgVmlld0VuY2Fwc3VsYXRpb24sXG4gIFdyaXRhYmxlU2lnbmFsLFxuICBhZnRlck5leHRSZW5kZXIsXG4gIGluamVjdCxcbiAgc2lnbmFsLFxufSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uVmlld0NvbXBvbmVudCB9IGZyb20gJy4uLy4uL2NvbnZlcnNhdGlvbi12aWV3L2NvbnZlcnNhdGlvbi12aWV3LmNvbXBvbmVudCc7XG5pbXBvcnQgeyBBWENvbnZlcnNhdGlvbk1lc3NhZ2VCYXNlQ29tcG9uZW50IH0gZnJvbSAnLi4vLi4vY29udmVyc2F0aW9uLnR5cGVzJztcblxuLyoqXG4gKiBBIGNvbXBvbmVudCBmb3IgZGlzcGxheWluZyBhbmQgaGFuZGxpbmcgYXVkaW8gbWVzc2FnZXMgaW4gYSBjb252ZXJzYXRpb24uXG4gKlxuICogQGNhdGVnb3J5IENvbXBvbmVudHNcbiAqL1xuQENvbXBvbmVudCh7XG4gIHNlbGVjdG9yOiAnYXgtY29udmVyc2F0aW9uLW1lc3NhZ2UtYXVkaW8nLFxuICB0ZW1wbGF0ZVVybDogJy4vY29udmVyc2F0aW9uLW1lc3NhZ2Utdm9pY2UuY29tcG9uZW50Lmh0bWwnLFxuICBzdHlsZVVybDogYC4vY29udmVyc2F0aW9uLW1lc3NhZ2Utdm9pY2UuY29tcG9uZW50LnNjc3NgLFxuICBlbmNhcHN1bGF0aW9uOiBWaWV3RW5jYXBzdWxhdGlvbi5Ob25lLFxuICBpbnB1dHM6IFsnbWVzc2FnZSddLFxuICBpbXBvcnRzOiBbQVhEZWNvcmF0b3JHZW5lcmljQ29tcG9uZW50LCBBWExvYWRpbmdTcGlubmVyQ29tcG9uZW50LCBBWEF1ZGlvV2F2ZUNvbXBvbmVudCwgQXN5bmNQaXBlLCBBWEZvcm1hdFBpcGVdLFxuICBwcm92aWRlcnM6IFt7IHByb3ZpZGU6IEFYQ29tcG9uZW50LCB1c2VFeGlzdGluZzogQVhDb252ZXJzYXRpb25Wb2ljZU1lc3NhZ2VDb21wb25lbnQgfV0sXG59KVxuZXhwb3J0IGNsYXNzIEFYQ29udmVyc2F0aW9uVm9pY2VNZXNzYWdlQ29tcG9uZW50IGV4dGVuZHMgQVhDb252ZXJzYXRpb25NZXNzYWdlQmFzZUNvbXBvbmVudCB7XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgQFZpZXdDaGlsZCgnYScpIGF1ZGlvOiBBWEF1ZGlvV2F2ZUNvbXBvbmVudDtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIGNvbmZpZzogQVhXYXZlQ29uZmlnID0geyB1cmw6ICcnIH07XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBhdWRpb1N0YXRlOiBXcml0YWJsZVNpZ25hbDwncGxheWluZycgfCAncGF1c2VkJyB8ICdsb2FkaW5nJyB8ICdyZWFkeScgfCAnZXJyb3InPiA9IHNpZ25hbCgncGF1c2VkJyk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwYXJlbnQgPSBpbmplY3QoQVhDb252ZXJzYXRpb25WaWV3Q29tcG9uZW50KTtcbiAgcHJpdmF0ZSBwbGF0Zm9ybUlEID0gaW5qZWN0KFBMQVRGT1JNX0lEKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHNlbGVjdGVkUmF0ZSA9IHNpZ25hbCgxKTtcblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIHNlbGVjdGVkUmF0ZUluZGV4ID0gc2lnbmFsKDEpO1xuXG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgcHJvdGVjdGVkIGF1ZGlvUHJvZ3Jlc3MgPSBzaWduYWwoMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgdGltZUxlZnQgPSBzaWduYWwoMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgY3VycmVudFRpbWUgPSBzaWduYWwoMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBwcm90ZWN0ZWQgZHVyYXRpb24gPSBzaWduYWwoMCk7XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBjb25zdHJ1Y3RvcigpIHtcbiAgICBzdXBlcigpO1xuICAgIGFmdGVyTmV4dFJlbmRlcigoKSA9PiB7XG4gICAgICB0aGlzLmNvbmZpZy51cmwgPSB0aGlzLm1lc3NhZ2U/LmNvbnRlbnQ7XG4gICAgICB0aGlzLmNvbmZpZy5hdWRpb1JhdGUgPSAwLjI1O1xuICAgICAgdGhpcy5zZXRXYXZlQ29sb3IoKTtcbiAgICAgIHRoaXMuYXVkaW8ub25TdGF0dXNDaGFuZ2VkLnN1YnNjcmliZSgoYykgPT4ge1xuICAgICAgICB0aGlzLnBhcmVudC5vbkFjdGlvbi5lbWl0KGMpO1xuICAgICAgfSk7XG4gICAgICB0aGlzLmhhbmRsZUxvYWRpbmdQcm9ncmVzcygpO1xuICAgIH0pO1xuICB9XG4gIC8qKlxuICAgKiAgQGlnbm9yZVxuICAgKi9cbiAgc2V0V2F2ZUNvbG9yKCkge1xuICAgIGxldCB3YXZlQ29sb3IgPSAnJztcbiAgICBsZXQgcHJvZ3Jlc3NDb2xvciA9ICcnO1xuICAgIGlmIChpc1BsYXRmb3JtQnJvd3Nlcih0aGlzLnBsYXRmb3JtSUQpKSB7XG4gICAgICBpZiAodGhpcy5tZXNzYWdlLmZyb21JZCkge1xuICAgICAgICB3YXZlQ29sb3IgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpLmdldFByb3BlcnR5VmFsdWUoJy0tYXgtbWVzc2FnZS1vdGhlci1iYXItY29sb3InKTtcbiAgICAgICAgcHJvZ3Jlc3NDb2xvciA9IGdldENvbXB1dGVkU3R5bGUoZG9jdW1lbnQuYm9keSkuZ2V0UHJvcGVydHlWYWx1ZSgnLS1heC1tZXNzYWdlLW90aGVyLXByb2dyZXNzLWNvbG9yJyk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB3YXZlQ29sb3IgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpLmdldFByb3BlcnR5VmFsdWUoJy0tYXgtbWVzc2FnZS1vd24tYmFyLWNvbG9yJyk7XG4gICAgICAgIHByb2dyZXNzQ29sb3IgPSBnZXRDb21wdXRlZFN0eWxlKGRvY3VtZW50LmJvZHkpLmdldFByb3BlcnR5VmFsdWUoJy0tYXgtbWVzc2FnZS1vd24tcHJvZ3Jlc3MtY29sb3InKTtcbiAgICAgIH1cbiAgICB9XG4gICAgdGhpcy5jb25maWcud2F2ZUNvbG9yID0gd2F2ZUNvbG9yO1xuICAgIHRoaXMuY29uZmlnLnByb2dyZXNzQ29sb3IgPSBwcm9ncmVzc0NvbG9yO1xuICB9XG5cbiAgLyoqXG4gICAqIFBhdXNlcyB0aGUgYXVkaW8gcGxheWJhY2sgYW5kIHVwZGF0ZXMgdGhlIGF1ZGlvIHN0YXRlIHRvICdwYXVzZWQnLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBoYW5kbGVQYXVzZUNsaWNrKCkge1xuICAgIHRoaXMuYXVkaW8/LnBhdXNlKCk7XG4gICAgdGhpcy5hdWRpb1N0YXRlLnNldCgncGF1c2VkJyk7XG4gIH1cblxuICAvKipcbiAgICogUGxheXMgdGhlIGF1ZGlvIGFuZCB1cGRhdGVzIHRoZSBhdWRpbyBzdGF0ZSB0byAncGxheWluZycuXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGhhbmRsZVBsYXlDbGljaygpIHtcbiAgICB0aGlzLmF1ZGlvPy5wbGF5KCk/LnRoZW4oKCkgPT4ge1xuICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgncGxheWluZycpO1xuICAgIH0pO1xuICB9XG5cbiAgLyoqXG4gICAqIFVwZGF0ZXMgYXVkaW8gc3RhdGUgYW5kIHByb2dyZXNzIGJhc2VkIG9uIHN0YXR1cyBjaGFuZ2VzIGZyb20gdGhlIGF1ZGlvIHdhdmUuXG4gICAqIEBwYXJhbSBlIC0gVGhlIGV2ZW50IGNvbnRhaW5pbmcgc3RhdHVzIGFuZCBkYXRhIHJlbGF0ZWQgdG8gdGhlIGF1ZGlvLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBoYW5kbGVPblN0YXR1c0NoYW5nZWQoZTogQVhBdWRpb1dhdmVDaGFuZ2VFdmVudCkge1xuICAgIGlmIChlLnN0YXR1cyA9PT0gJ2xvYWQnIHx8IGUuc3RhdHVzID09PSAnbG9hZGluZycpIHtcbiAgICAgIHRoaXMuYXVkaW9TdGF0ZS5zZXQoJ2xvYWRpbmcnKTtcbiAgICB9XG4gICAgaWYgKGUuc3RhdHVzID09PSAnbG9hZGluZycpIHtcbiAgICAgIHRoaXMuYXVkaW9Qcm9ncmVzcy5zZXQoZS5kYXRhLnBlcmNlbnQpO1xuICAgICAgdGhpcy5kdXJhdGlvbi5zZXQoTWF0aC5jZWlsKGUuZGF0YS5kdXJhdGlvbiAqIDEwMDApKTtcbiAgICB9XG4gICAgaWYgKGUuc3RhdHVzID09PSAncmVhZHknKSB7XG4gICAgICB0aGlzLmF1ZGlvU3RhdGUuc2V0KCdyZWFkeScpO1xuICAgICAgdGhpcy5kdXJhdGlvbi5zZXQoTWF0aC5jZWlsKGUuZGF0YS5kdXJhdGlvbiAqIDEwMDApKTtcbiAgICB9XG4gICAgaWYgKGUuc3RhdHVzID09PSAnZmluaXNoJykge1xuICAgICAgdGhpcy5hdWRpb1N0YXRlLnNldCgncGF1c2VkJyk7XG4gICAgfVxuICAgIGlmIChlLnN0YXR1cyA9PT0gJ3RpbWV1cGRhdGUnKSB7XG4gICAgICB0aGlzLnRpbWVMZWZ0LnNldCh0aGlzLmR1cmF0aW9uKCkgLSBlLmRhdGEuY3VycmVudFRpbWUgKiAxMDAwKTtcbiAgICAgIHRoaXMuY3VycmVudFRpbWUuc2V0KGUuZGF0YS5jdXJyZW50VGltZSAqIDEwMDApO1xuICAgIH1cbiAgICBpZiAoZS5zdGF0dXMgPT09ICdlcnJvcicpIHtcbiAgICAgIHRoaXMuYXVkaW9TdGF0ZS5zZXQoJ2Vycm9yJyk7XG4gICAgfVxuICB9XG5cbiAgLyoqXG4gICAqICBAaWdub3JlXG4gICAqL1xuICBoYW5kbGVMb2FkaW5nUHJvZ3Jlc3MoKSB7XG4gICAgLy8gdGhpcy5hdWRpb0xvYWRlclByb2dyZXNzPy5uYXRpdmVFbGVtZW50LnN0eWxlLmNzc1RleHQgPSBgLS1heC1hdWRpby1wcm9ncmVzczogJHt0aGlzLmF1ZGlvUHJvZ3Jlc3MoKX1gO1xuICB9XG5cbiAgLyoqXG4gICAqIEhhbmRsZXMgdGhlIGNhbmNlbGxhdGlvbiBvZiBhIGxvYWRpbmcgb3BlcmF0aW9uLlxuICAgKiBAaWdub3JlXG4gICAqL1xuICBoYW5kbGVDYW5jZWxMb2FkaW5nKCkge1xuICAgIC8vXG4gIH1cblxuICAvKipcbiAgICogUmVsb2FkcyB0aGUgYXVkaW8gYW5kIHVwZGF0ZXMgdGhlIHN0YXRlIHRvICdsb2FkaW5nJy5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgaGFuZGxlUmVsb2FkQ2xpY2soKSB7XG4gICAgLy9cbiAgICB0aGlzLmF1ZGlvU3RhdGUuc2V0KCdsb2FkaW5nJyk7XG4gICAgdGhpcy5hdWRpby5sb2FkKCk7XG4gIH1cblxuICAvKipcbiAgICogQ3ljbGVzIHRocm91Z2ggcHJlZGVmaW5lZCBhdWRpbyBwbGF5YmFjayByYXRlcyBhbmQgdXBkYXRlcyB0aGUgcmF0ZS5cbiAgICogQGlnbm9yZVxuICAgKi9cbiAgaGFuZGxlUmF0ZUNsaWNrKCkge1xuICAgIGNvbnN0IHJhdGVzID0gWzAuNSwgMSwgMiwgNF07XG4gICAgaWYgKHRoaXMuc2VsZWN0ZWRSYXRlSW5kZXgoKSA9PSByYXRlcy5sZW5ndGggLSAxKSB7XG4gICAgICB0aGlzLnNlbGVjdGVkUmF0ZUluZGV4LnNldCgwKTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhpcy5zZWxlY3RlZFJhdGVJbmRleC5zZXQodGhpcy5zZWxlY3RlZFJhdGVJbmRleCgpICsgMSk7XG4gICAgfVxuICAgIHRoaXMuc2VsZWN0ZWRSYXRlLnNldChyYXRlc1t0aGlzLnNlbGVjdGVkUmF0ZUluZGV4KCldKTtcbiAgICB0aGlzLmF1ZGlvLnNldFJhdGUodGhpcy5zZWxlY3RlZFJhdGUoKSk7XG4gIH1cblxuICAvKipcbiAgICogIEBpZ25vcmVcbiAgICovXG4gIEBIb3N0QmluZGluZygnY2xhc3MnKVxuICBnZXQgX19ob3N0Q2xhc3MoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gYCR7dGhpcy5tZXNzYWdlLmZyb21JZCA/ICdheC1zdGF0ZS1vdGhlcicgOiAnYXgtc3RhdGUtb3duJ31gO1xuICB9XG59XG4iLCI8YXgtcHJlZml4PlxuICBAc3dpdGNoIChhdWRpb1N0YXRlKCkpIHtcbiAgICBAY2FzZSAoJ3BhdXNlZCcpIHtcbiAgICAgIHt7IGN1cnJlbnRUaW1lKCkgfCBmb3JtYXQ6ICd0aW1lLWR1cmF0aW9uJyB8IGFzeW5jIH19XG4gICAgfVxuICAgIEBjYXNlICgncGxheWluZycpIHtcbiAgICAgIHt7IGN1cnJlbnRUaW1lKCkgfCBmb3JtYXQ6ICd0aW1lLWR1cmF0aW9uJyB8IGFzeW5jIH19XG4gICAgfVxuICAgIEBkZWZhdWx0IHtcbiAgICAgIHt7IGR1cmF0aW9uKCkgfCBmb3JtYXQ6ICd0aW1lLWR1cmF0aW9uJyB8IGFzeW5jIH19XG4gICAgfVxuICB9XG4gIDxidXR0b24gY2xhc3M9XCJheC1hdWRpby1zcGVlZFwiIChjbGljayk9XCJoYW5kbGVSYXRlQ2xpY2soKVwiPjwvYnV0dG9uPlxuPC9heC1wcmVmaXg+XG48ZGl2IGNsYXNzPVwiYXgtY29udmVyc2F0aW9uLWNvbnRyb2xsZXJcIj5cbiAgQHN3aXRjaCAoYXVkaW9TdGF0ZSgpKSB7XG4gICAgQGNhc2UgKCdwbGF5aW5nJykge1xuICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiaGFuZGxlUGF1c2VDbGljaygpXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXBhdXNlXCI+PC9pPlxuICAgICAgPC9idXR0b24+XG4gICAgfVxuXG4gICAgQGNhc2UgKCdyZWFkeScpIHtcbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImhhbmRsZVBsYXlDbGljaygpXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXBsYXlcIj48L2k+XG4gICAgICA8L2J1dHRvbj5cbiAgICB9XG5cbiAgICBAY2FzZSAoJ3BhdXNlZCcpIHtcbiAgICAgIDxidXR0b24gKGNsaWNrKT1cImhhbmRsZVBsYXlDbGljaygpXCI+XG4gICAgICAgIDxpIGNsYXNzPVwiYXgtaWNvbiBheC1pY29uLXBsYXlcIj48L2k+XG4gICAgICA8L2J1dHRvbj5cbiAgICB9XG5cbiAgICBAY2FzZSAoJ2Vycm9yJykge1xuICAgICAgPGJ1dHRvbiBjbGFzcz1cImF4LXN0YXRlLWVycm9yXCIgKGNsaWNrKT1cImhhbmRsZVJlbG9hZENsaWNrKClcIj5cbiAgICAgICAgPGkgY2xhc3M9XCJheC1pY29uIGF4LWljb24tcmVsb2FkXCI+PC9pPlxuICAgICAgPC9idXR0b24+XG4gICAgfVxuXG4gICAgQGRlZmF1bHQge1xuICAgICAgPGJ1dHRvbiAoY2xpY2spPVwiaGFuZGxlQ2FuY2VsTG9hZGluZygpXCI+XG4gICAgICAgIDxheC1sb2FkaW5nLXNwaW5uZXJcbiAgICAgICAgICBbc2l6ZV09XCIyNFwiXG4gICAgICAgICAgW3N0cm9rZV09XCIyXCJcbiAgICAgICAgICBbY29sb3JdPVwibWVzc2FnZS5mcm9tSWQgPyAnd2hpdGUnIDogJ3dhcm5pbmcnXCJcbiAgICAgICAgPjwvYXgtbG9hZGluZy1zcGlubmVyPlxuICAgICAgPC9idXR0b24+XG4gICAgfVxuICB9XG48L2Rpdj5cbjxheC1hdWRpby13YXZlICNhIFtjb25maWddPVwiY29uZmlnXCIgKG9uU3RhdHVzQ2hhbmdlZCk9XCJoYW5kbGVPblN0YXR1c0NoYW5nZWQoJGV2ZW50KVwiPjwvYXgtYXVkaW8td2F2ZT5cbjxheC1zdWZmaXg+XG4gIDxkaXYgY2xhc3M9XCJheC1hdWRpby1yYXRlLWJ1dHRvblwiIFtjbGFzcy5heC1zdGF0ZS1vd25dPVwiIW1lc3NhZ2U/LmZyb21JZFwiIChjbGljayk9XCJoYW5kbGVSYXRlQ2xpY2soKVwiPlxuICAgIHt7IHNlbGVjdGVkUmF0ZSgpIH19WFxuICA8L2Rpdj5cbjwvYXgtc3VmZml4PlxuIl19","import { AXRippleDirective } from '@acorex/cdk/common';\nimport { AXVirtualScrollModule } from '@acorex/cdk/virtual-scroll';\nimport { AXAudioWaveModule } from '@acorex/components/audio-wave';\nimport { AXAvatarModule } from '@acorex/components/avatar';\nimport { AXButtonModule } from '@acorex/components/button';\nimport { AXCircularProgressModule } from '@acorex/components/circular-progress';\nimport { AXDecoratorModule } from '@acorex/components/decorators';\nimport { AXDropdownModule } from '@acorex/components/dropdown';\nimport { AXLoadingModule } from '@acorex/components/loading';\nimport { AXPopoverModule } from '@acorex/components/popover';\nimport { AXPopupService } from '@acorex/components/popup';\nimport { AXRangeSliderModule } from '@acorex/components/range-slider';\nimport { AXDateTimeModule } from '@acorex/core/date-time';\nimport { AXFileModule } from '@acorex/core/file';\nimport { AXFormatModule } from '@acorex/core/format';\nimport { AXTranslationModule } from '@acorex/core/translation';\nimport { CdkPortalOutlet } from '@angular/cdk/portal';\nimport { AsyncPipe, CommonModule } from '@angular/common';\nimport { NgModule, inject } from '@angular/core';\nimport { FormsModule } from '@angular/forms';\nimport { AXConversationContainerComponent } from './conversation-container/conversation-container.component';\nimport { AXConversationInputComponent } from './conversation-input/conversation-input.component';\nimport { AXConversationMessageComponent } from './conversation-message/conversation-message.component';\nimport { AXConversationMessageAudioComponent } from './conversation-messages/conversation-message-audio/conversation-message-audio.component';\nimport { AXConversationFileMessageComponent } from './conversation-messages/conversation-message-file/conversation-message-file.component';\nimport { AXConversationMessageImageComponent } from './conversation-messages/conversation-message-image/conversation-message-image.component';\nimport { AXConversationTextMessageComponent } from './conversation-messages/conversation-message-text/conversation-message-text.component';\nimport { AXConversationMessageVideoComponent } from './conversation-messages/conversation-message-video/conversation-message-video.component';\nimport { AXConversationVoiceMessageComponent } from './conversation-messages/conversation-message-voice/conversation-message-voice.component';\nimport { AXConversationViewComponent } from './conversation-view/conversation-view.component';\nimport { AXConversationMessageTypeRegistryService } from './services/conversation-message-type-registry.service';\nimport * as i0 from \"@angular/core\";\nconst COMPONENT = [\n AXConversationViewComponent,\n AXConversationInputComponent,\n AXConversationMessageComponent,\n AXConversationTextMessageComponent,\n AXConversationVoiceMessageComponent,\n AXConversationFileMessageComponent,\n AXConversationContainerComponent,\n AXConversationMessageAudioComponent,\n AXConversationMessageImageComponent,\n AXConversationMessageVideoComponent,\n];\nconst MODULES = [\n CommonModule,\n FormsModule,\n AsyncPipe,\n AXRippleDirective,\n AXButtonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXDropdownModule,\n AXFormatModule,\n AXAudioWaveModule,\n AXCircularProgressModule,\n AXDateTimeModule,\n CdkPortalOutlet,\n AXLoadingModule,\n AXAvatarModule,\n AXPopoverModule,\n AXFileModule,\n AXRangeSliderModule,\n AXVirtualScrollModule,\n];\nexport class AXConversationModule {\n static forRoot(config) {\n return {\n ngModule: AXConversationModule,\n providers: [\n {\n provide: 'AXChatModuleFactory',\n useFactory: (registry) => () => {\n if (config?.types?.length) {\n registry.register(...config.types);\n }\n registry.register({\n name: 'text',\n component: AXConversationTextMessageComponent,\n });\n registry.register({\n name: 'voice',\n component: AXConversationVoiceMessageComponent,\n });\n registry.register({\n name: 'file',\n component: AXConversationFileMessageComponent,\n });\n registry.register({\n name: 'audio',\n component: AXConversationMessageAudioComponent,\n });\n registry.register({\n name: 'image',\n component: AXConversationMessageImageComponent,\n });\n registry.register({\n name: 'video',\n component: AXConversationMessageVideoComponent,\n });\n },\n deps: [AXConversationMessageTypeRegistryService],\n multi: true,\n },\n ],\n };\n }\n static forChild(config) {\n return {\n ngModule: AXConversationModule,\n providers: [\n {\n provide: 'AXChatModuleFactory',\n useFactory: (registry) => () => {\n if (config?.types?.length) {\n registry.register(...config.types);\n }\n },\n deps: [AXConversationMessageTypeRegistryService],\n multi: true,\n },\n ],\n };\n }\n /**\n * @ignore\n */\n constructor() {\n const instances = inject('AXChatModuleFactory', { optional: true });\n instances?.forEach((f) => {\n f();\n });\n }\n static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }\n static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: \"14.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationModule, imports: [CommonModule,\n FormsModule,\n AsyncPipe,\n AXRippleDirective,\n AXButtonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXDropdownModule,\n AXFormatModule,\n AXAudioWaveModule,\n AXCircularProgressModule,\n AXDateTimeModule,\n CdkPortalOutlet,\n AXLoadingModule,\n AXAvatarModule,\n AXPopoverModule,\n AXFileModule,\n AXRangeSliderModule,\n AXVirtualScrollModule, AXConversationViewComponent,\n AXConversationInputComponent,\n AXConversationMessageComponent,\n AXConversationTextMessageComponent,\n AXConversationVoiceMessageComponent,\n AXConversationFileMessageComponent,\n AXConversationContainerComponent,\n AXConversationMessageAudioComponent,\n AXConversationMessageImageComponent,\n AXConversationMessageVideoComponent], exports: [AXConversationViewComponent,\n AXConversationInputComponent,\n AXConversationMessageComponent,\n AXConversationTextMessageComponent,\n AXConversationVoiceMessageComponent,\n AXConversationFileMessageComponent,\n AXConversationContainerComponent,\n AXConversationMessageAudioComponent,\n AXConversationMessageImageComponent,\n AXConversationMessageVideoComponent] }); }\n static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationModule, providers: [AXPopupService], imports: [CommonModule,\n FormsModule,\n AXButtonModule,\n AXDecoratorModule,\n AXTranslationModule,\n AXDropdownModule,\n AXFormatModule,\n AXAudioWaveModule,\n AXCircularProgressModule,\n AXDateTimeModule,\n AXLoadingModule,\n AXAvatarModule,\n AXPopoverModule,\n AXFileModule,\n AXRangeSliderModule,\n AXVirtualScrollModule, AXConversationViewComponent,\n AXConversationInputComponent,\n AXConversationMessageComponent,\n AXConversationVoiceMessageComponent,\n AXConversationFileMessageComponent,\n AXConversationMessageAudioComponent] }); }\n}\ni0.ɵɵngDeclareClassMetadata({ minVersion: \"12.0.0\", version: \"20.0.3\", ngImport: i0, type: AXConversationModule, decorators: [{\n type: NgModule,\n args: [{\n imports: [...MODULES, ...COMPONENT],\n exports: [...COMPONENT],\n providers: [AXPopupService],\n }]\n }], ctorParameters: () => [] });\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVyc2F0aW9uLm1vZHVsZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL2NvbXBvbmVudHMvY29udmVyc2F0aW9uL3NyYy9saWIvY29udmVyc2F0aW9uLm1vZHVsZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUscUJBQXFCLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUNuRSxPQUFPLEVBQUUsaUJBQWlCLEVBQUUsTUFBTSwrQkFBK0IsQ0FBQztBQUNsRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sMkJBQTJCLENBQUM7QUFDM0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDJCQUEyQixDQUFDO0FBQzNELE9BQU8sRUFBRSx3QkFBd0IsRUFBRSxNQUFNLHNDQUFzQyxDQUFDO0FBQ2hGLE9BQU8sRUFBRSxpQkFBaUIsRUFBRSxNQUFNLCtCQUErQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLDZCQUE2QixDQUFDO0FBQy9ELE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSw0QkFBNEIsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDN0QsT0FBTyxFQUFFLGNBQWMsRUFBRSxNQUFNLDBCQUEwQixDQUFDO0FBQzFELE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxNQUFNLGlDQUFpQyxDQUFDO0FBQ3RFLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLHdCQUF3QixDQUFDO0FBQzFELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxtQkFBbUIsQ0FBQztBQUNqRCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0scUJBQXFCLENBQUM7QUFDckQsT0FBTyxFQUFFLG1CQUFtQixFQUFFLE1BQU0sMEJBQTBCLENBQUM7QUFDL0QsT0FBTyxFQUFF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ZXgvY2RrL2NvbW1vbic7XG5pbXBvcnQgeyBBWFZpcnR1YWxTY3JvbGxNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2Nkay92aXJ0dWFsLXNjcm9sbCc7XG5pbXBvcnQgeyBBWEF1ZGlvV2F2ZU1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9hdWRpby13YXZlJztcbmltcG9ydCB7IEFYQXZhdGFyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2F2YXRhcic7XG5pbXBvcnQgeyBBWEJ1dHRvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9idXR0b24nO1xuaW1wb3J0IHsgQVhDaXJjdWxhclByb2dyZXNzTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2NpcmN1bGFyLXByb2dyZXNzJztcbmltcG9ydCB7IEFYRGVjb3JhdG9yTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL2RlY29yYXRvcnMnO1xuaW1wb3J0IHsgQVhEcm9wZG93bk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9kcm9wZG93bic7XG5pbXBvcnQgeyBBWExvYWRpbmdNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvbG9hZGluZyc7XG5pbXBvcnQgeyBBWFBvcG92ZXJNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvbXBvbmVudHMvcG9wb3Zlcic7XG5pbXBvcnQgeyBBWFBvcHVwU2VydmljZSB9IGZyb20gJ0BhY29yZXgvY29tcG9uZW50cy9wb3B1cCc7XG5pbXBvcnQgeyBBWFJhbmdlU2xpZGVyTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb21wb25lbnRzL3JhbmdlLXNsaWRlcic7XG5pbXBvcnQgeyBBWERhdGVUaW1lTW9kdWxlIH0gZnJvbSAnQGFjb3JleC9jb3JlL2RhdGUtdGltZSc7XG5pbXBvcnQgeyBBWEZpbGVNb2R1bGUgfSBmcm9tICdAYWNvcmV4L2NvcmUvZmlsZSc7XG5pbXBvcnQgeyBBWEZvcm1hdE1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS9mb3JtYXQnO1xuaW1wb3J0IHsgQVhUcmFuc2xhdGlvbk1vZHVsZSB9IGZyb20gJ0BhY29yZXgvY29yZS90cmFuc2xhdGlvbic7XG5pbXBvcnQgeyBDZGtQb3J0YWxPdXRsZXQgfSBmcm9tICdAYW5ndWxhci9jZGsvcG9ydGFsJztcbmltcG9ydCB7IEFzeW5jUGlwZSwgQ29tbW9uTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvY29tbW9uJztcbmltcG9ydCB7IE1vZHVsZVdpdGhQcm92aWRlcnMsIE5nTW9kdWxlLCBpbmplY3QgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IEZvcm1zTW9kdWxlIH0gZnJvbSAnQGFuZ3VsYXIvZm9ybXMnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25Db250YWluZXJDb21wb25lbnQgfSBmcm9tICcuL2NvbnZlcnNhdGlvbi1jb250YWluZXIvY29udmVyc2F0aW9uLWNvbnRhaW5lci5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25JbnB1dENvbXBvbmVudCB9IGZyb20gJy4vY29udmVyc2F0aW9uLWlucHV0L2NvbnZlcnNhdGlvbi1pbnB1dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlQ29tcG9uZW50IH0gZnJvbSAnLi9jb252ZXJzYXRpb24tbWVzc2FnZS9jb252ZXJzYXRpb24tbWVzc2FnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlQXVkaW9Db21wb25lbnQgfSBmcm9tICcuL2NvbnZlcnNhdGlvbi1tZXNzYWdlcy9jb252ZXJzYXRpb24tbWVzc2FnZS1hdWRpby9jb252ZXJzYXRpb24tbWVzc2FnZS1hdWRpby5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25GaWxlTWVzc2FnZUNvbXBvbmVudCB9IGZyb20gJy4vY29udmVyc2F0aW9uLW1lc3NhZ2VzL2NvbnZlcnNhdGlvbi1tZXNzYWdlLWZpbGUvY29udmVyc2F0aW9uLW1lc3NhZ2UtZmlsZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlSW1hZ2VDb21wb25lbnQgfSBmcm9tICcuL2NvbnZlcnNhdGlvbi1tZXNzYWdlcy9jb252ZXJzYXRpb24tbWVzc2FnZS1pbWFnZS9jb252ZXJzYXRpb24tbWVzc2FnZS1pbWFnZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25UZXh0TWVzc2FnZUNvbXBvbmVudCB9IGZyb20gJy4vY29udmVyc2F0aW9uLW1lc3NhZ2VzL2NvbnZlcnNhdGlvbi1tZXNzYWdlLXRleHQvY29udmVyc2F0aW9uLW1lc3NhZ2UtdGV4dC5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlVmlkZW9Db21wb25lbnQgfSBmcm9tICcuL2NvbnZlcnNhdGlvbi1tZXNzYWdlcy9jb252ZXJzYXRpb24tbWVzc2FnZS12aWRlby9jb252ZXJzYXRpb24tbWVzc2FnZS12aWRlby5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25Wb2ljZU1lc3NhZ2VDb21wb25lbnQgfSBmcm9tICcuL2NvbnZlcnNhdGlvbi1tZXNzYWdlcy9jb252ZXJzYXRpb24tbWVzc2FnZS12b2ljZS9jb252ZXJzYXRpb24tbWVzc2FnZS12b2ljZS5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25WaWV3Q29tcG9uZW50IH0gZnJvbSAnLi9jb252ZXJzYXRpb24tdmlldy9jb252ZXJzYXRpb24tdmlldy5jb21wb25lbnQnO1xuaW1wb3J0IHsgQVhDb252ZXJzYXRpb25NZXNzYWdlVHlwZSB9IGZyb20gJy4vY29udmVyc2F0aW9uLnR5cGVzJztcbmltcG9ydCB7IEFYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2UgfSBmcm9tICcuL3NlcnZpY2VzL2NvbnZlcnNhdGlvbi1tZXNzYWdlLXR5cGUtcmVnaXN0cnkuc2VydmljZSc7XG5cbmV4cG9ydCBpbnRlcmZhY2UgQVhDaGF0TW9kdWxlQ29uZmlnIHtcbiAgdHlwZXM6IEFYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGVbXTtcbn1cblxuY29uc3QgQ09NUE9ORU5UID0gW1xuICBBWENvbnZlcnNhdGlvblZpZXdDb21wb25lbnQsXG4gIEFYQ29udmVyc2F0aW9uSW5wdXRDb21wb25lbnQsXG4gIEFYQ29udmVyc2F0aW9uTWVzc2FnZUNvbXBvbmVudCxcbiAgQVhDb252ZXJzYXRpb25UZXh0TWVzc2FnZUNvbXBvbmVudCxcbiAgQVhDb252ZXJzYXRpb25Wb2ljZU1lc3NhZ2VDb21wb25lbnQsXG4gIEFYQ29udmVyc2F0aW9uRmlsZU1lc3NhZ2VDb21wb25lbnQsXG4gIEFYQ29udmVyc2F0aW9uQ29udGFpbmVyQ29tcG9uZW50LFxuICBBWENvbnZlcnNhdGlvbk1lc3NhZ2VBdWRpb0NvbXBvbmVudCxcbiAgQVhDb252ZXJzYXRpb25NZXNzYWdlSW1hZ2VDb21wb25lbnQsXG4gIEFYQ29udmVyc2F0aW9uTWVzc2FnZVZpZGVvQ29tcG9uZW50LFxuXTtcbmNvbnN0IE1PRFVMRVMgPSBbXG4gIENvbW1vbk1vZHVsZSxcbiAgRm9ybXNNb2R1bGUsXG4gIEFzeW5jUGlwZSxcbiAgQVhSaXBwbGVEaXJlY3RpdmUsXG4gIEFYQnV0dG9uTW9kdWxlLFxuICBBWERlY29yYXRvck1vZHVsZSxcbiAgQVhUcmFuc2xhdGlvbk1vZHVsZSxcbiAgQVhEcm9wZG93bk1vZHVsZSxcbiAgQVhGb3JtYXRNb2R1bGUsXG4gIEFYQXVkaW9XYXZlTW9kdWxlLFxuICBBWENpcmN1bGFyUHJvZ3Jlc3NNb2R1bGUsXG4gIEFYRGF0ZVRpbWVNb2R1bGUsXG4gIENka1BvcnRhbE91dGxldCxcbiAgQVhMb2FkaW5nTW9kdWxlLFxuICBBWEF2YXRhck1vZHVsZSxcbiAgQVhQb3BvdmVyTW9kdWxlLFxuICBBWEZpbGVNb2R1bGUsXG4gIEFYUmFuZ2VTbGlkZXJNb2R1bGUsXG4gIEFYVmlydHVhbFNjcm9sbE1vZHVsZSxcbl07XG5cbkBOZ01vZHVsZSh7XG4gIGltcG9ydHM6IFsuLi5NT0RVTEVTLCAuLi5DT01QT05FTlRdLFxuICBleHBvcnRzOiBbLi4uQ09NUE9ORU5UXSxcbiAgcHJvdmlkZXJzOiBbQVhQb3B1cFNlcnZpY2VdLFxufSlcbmV4cG9ydCBjbGFzcyBBWENvbnZlcnNhdGlvbk1vZHVsZSB7XG4gIHN0YXRpYyBmb3JSb290KGNvbmZpZz86IEFYQ2hhdE1vZHVsZUNvbmZpZyk6IE1vZHVsZVdpdGhQcm92aWRlcnM8QVhDb252ZXJzYXRpb25Nb2R1bGU+IHtcbiAgICByZXR1cm4ge1xuICAgICAgbmdNb2R1bGU6IEFYQ29udmVyc2F0aW9uTW9kdWxlLFxuICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgIHtcbiAgICAgICAgICBwcm92aWRlOiAnQVhDaGF0TW9kdWxlRmFjdG9yeScsXG4gICAgICAgICAgdXNlRmFjdG9yeTogKHJlZ2lzdHJ5OiBBWENvbnZlcnNhdGlvbk1lc3NhZ2VUeXBlUmVnaXN0cnlTZXJ2aWNlKSA9PiAoKSA9PiB7XG4gICAgICAgICAgICBpZiAoY29uZmlnPy50eXBlcz8ubGVuZ3RoKSB7XG4gICAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKC4uLmNvbmZpZy50eXBlcyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZWdpc3RyeS5yZWdpc3Rlcih7XG4gICAgICAgICAgICAgIG5hbWU6ICd0ZXh0JyxcbiAgICAgICAgICAgICAgY29tcG9uZW50OiBBWENvbnZlcnNhdGlvblRleHRNZXNzYWdlQ29tcG9uZW50LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZWdpc3RyeS5yZWdpc3Rlcih7XG4gICAgICAgICAgICAgIG5hbWU6ICd2b2ljZScsXG4gICAgICAgICAgICAgIGNvbXBvbmVudDogQVhDb252ZXJzYXRpb25Wb2ljZU1lc3NhZ2VDb21wb25lbnQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKHtcbiAgICAgICAgICAgICAgbmFtZTogJ2ZpbGUnLFxuICAgICAgICAgICAgICBjb21wb25lbnQ6IEFYQ29udmVyc2F0aW9uRmlsZU1lc3NhZ2VDb21wb25lbnQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIHJlZ2lzdHJ5LnJlZ2lzdGVyKHtcbiAgICAgICAgICAgICAgbmFtZTogJ2F1ZGlvJyxcbiAgICAgICAgICAgICAgY29tcG9uZW50OiBBWENvbnZlcnNhdGlvbk1lc3NhZ2VBdWRpb0NvbXBvbmVudCxcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgcmVnaXN0cnkucmVnaXN0ZXIoe1xuICAgICAgICAgICAgICBuYW1lOiAnaW1hZ2UnLFxuICAgICAgICAgICAgICBjb21wb25lbnQ6IEFYQ29udmVyc2F0aW9uTWVzc2FnZUltYWdlQ29tcG9uZW50LFxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICByZWdpc3RyeS5yZWdpc3Rlcih7XG4gICAgICAgICAgICAgIG5hbWU6ICd2aWRlbycsXG4gICAgICAgICAgICAgIGNvbXBvbmVudDogQVhDb252ZXJzYXRpb25NZXNzYWdlVmlkZW9Db21wb25lbnQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGRlcHM6IFtBWENvbnZlcnNhdGlvbk1lc3NhZ2VUeXBlUmVnaXN0cnlTZXJ2aWNlXSxcbiAgICAgICAgICBtdWx0aTogdHJ1ZSxcbiAgICAgICAgfSxcbiAgICAgIF0sXG4gICAgfTtcbiAgfVxuXG4gIHN0YXRpYyBmb3JDaGlsZChjb25maWc/OiBBWENoYXRNb2R1bGVDb25maWcpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPEFYQ29udmVyc2F0aW9uTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgIG5nTW9kdWxlOiBBWENvbnZlcnNhdGlvbk1vZHVsZSxcbiAgICAgIHByb3ZpZGVyczogW1xuICAgICAgICB7XG4gICAgICAgICAgcHJvdmlkZTogJ0FYQ2hhdE1vZHVsZUZhY3RvcnknLFxuICAgICAgICAgIHVzZUZhY3Rvcnk6IChyZWdpc3RyeTogQVhDb252ZXJzYXRpb25NZXNzYWdlVHlwZVJlZ2lzdHJ5U2VydmljZSkgPT4gKCkgPT4ge1xuICAgICAgICAgICAgaWYgKGNvbmZpZz8udHlwZXM/Lmxlbmd0aCkge1xuICAgICAgICAgICAgICByZWdpc3RyeS5yZWdpc3RlciguLi5jb25maWcudHlwZXMpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgIH0sXG4gICAgICAgICAgZGVwczogW0FYQ29udmVyc2F0aW9uTWVzc2FnZVR5cGVSZWdpc3RyeVNlcnZpY2VdLFxuICAgICAgICAgIG11bHRpOiB0cnVlLFxuICAgICAgICB9LFxuICAgICAgXSxcbiAgICB9O1xuICB9XG5cbiAgLyoqXG4gICAqIEBpZ25vcmVcbiAgICovXG4gIGNvbnN0cnVjdG9yKCkge1xuICAgIGNvbnN0IGluc3RhbmNlcyA9IGluamVjdDxhbnlbXT4oJ0FYQ2hhdE1vZHVsZUZhY3RvcnknIGFzIGFueSwgeyBvcHRpb25hbDogdHJ1ZSB9KTtcblxuICAgIGluc3RhbmNlcz8uZm9yRWFjaCgoZikgPT4ge1xuICAgICAgZigpO1xuICAgIH0pO1xuICB9XG59XG4iXX0=","/**\n * Generated bundle index. Do not edit.\n */\nexport * from './index';\n//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWNvcmV4LWNvbXBvbmVudHMtY29udmVyc2F0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcGFja2FnZXMvY29tcG9uZW50cy9jb252ZXJzYXRpb24vc3JjL2Fjb3JleC1jb21wb25lbnRzLWNvbnZlcnNhdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsU0FBUyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL2luZGV4JztcbiJdfQ=="],"names":[],"mappings":"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"}