@acorex/components 21.0.1-next.4 → 21.0.1-next.41

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 (250) hide show
  1. package/accordion/index.d.ts +0 -1
  2. package/action-sheet/index.d.ts +91 -31
  3. package/button-group/index.d.ts +6 -4
  4. package/chips/index.d.ts +3 -8
  5. package/collapse/index.d.ts +4 -6
  6. package/color-palette/index.d.ts +1 -2
  7. package/command/index.d.ts +8 -1
  8. package/conversation2/README.md +71 -31
  9. package/conversation2/index.d.ts +36 -35
  10. package/data-table/index.d.ts +4 -253
  11. package/dropdown/index.d.ts +2 -5
  12. package/fesm2022/acorex-components-accordion.mjs +16 -21
  13. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  14. package/fesm2022/acorex-components-action-sheet.mjs +170 -52
  15. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  16. package/fesm2022/acorex-components-alert.mjs +13 -13
  17. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  18. package/fesm2022/acorex-components-aspect-ratio.mjs +3 -3
  19. package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
  20. package/fesm2022/acorex-components-audio-wave.mjs +11 -10
  21. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  22. package/fesm2022/acorex-components-autocomplete.mjs +7 -7
  23. package/fesm2022/acorex-components-autocomplete.mjs.map +1 -1
  24. package/fesm2022/acorex-components-avatar.mjs +12 -12
  25. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  26. package/fesm2022/acorex-components-badge.mjs +9 -9
  27. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  28. package/fesm2022/acorex-components-bottom-navigation.mjs +11 -11
  29. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  30. package/fesm2022/acorex-components-breadcrumbs.mjs +11 -11
  31. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  32. package/fesm2022/acorex-components-button-group.mjs +23 -19
  33. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  34. package/fesm2022/acorex-components-button.mjs +18 -18
  35. package/fesm2022/acorex-components-button.mjs.map +1 -1
  36. package/fesm2022/acorex-components-calendar.mjs +17 -17
  37. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  38. package/fesm2022/acorex-components-check-box.mjs +10 -10
  39. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  40. package/fesm2022/acorex-components-chips.mjs +12 -14
  41. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  42. package/fesm2022/acorex-components-circular-progress.mjs +12 -10
  43. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  44. package/fesm2022/acorex-components-code-editor.mjs +10 -10
  45. package/fesm2022/acorex-components-code-editor.mjs.map +1 -1
  46. package/fesm2022/acorex-components-collapse.mjs +22 -19
  47. package/fesm2022/acorex-components-collapse.mjs.map +1 -1
  48. package/fesm2022/acorex-components-color-box.mjs +9 -9
  49. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  50. package/fesm2022/acorex-components-color-palette.mjs +33 -38
  51. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  52. package/fesm2022/acorex-components-command.mjs +17 -11
  53. package/fesm2022/acorex-components-command.mjs.map +1 -1
  54. package/fesm2022/acorex-components-comment.mjs +32 -32
  55. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  56. package/fesm2022/acorex-components-conversation.mjs +51 -51
  57. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  58. package/fesm2022/acorex-components-conversation2.mjs +314 -308
  59. package/fesm2022/acorex-components-conversation2.mjs.map +1 -1
  60. package/fesm2022/acorex-components-cron-job.mjs +46 -46
  61. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  62. package/fesm2022/acorex-components-data-list.mjs +3 -3
  63. package/fesm2022/acorex-components-data-list.mjs.map +1 -1
  64. package/fesm2022/acorex-components-data-pager.mjs +33 -33
  65. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  66. package/fesm2022/acorex-components-data-table.mjs +50 -486
  67. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  68. package/fesm2022/acorex-components-datetime-box.mjs +9 -10
  69. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  70. package/fesm2022/acorex-components-datetime-input.mjs +9 -9
  71. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  72. package/fesm2022/acorex-components-datetime-picker.mjs +19 -17
  73. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  74. package/fesm2022/acorex-components-decorators.mjs +43 -36
  75. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  76. package/fesm2022/acorex-components-dialog.mjs +12 -12
  77. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  78. package/fesm2022/acorex-components-drawer-legacy.mjs +13 -13
  79. package/fesm2022/acorex-components-drawer-legacy.mjs.map +1 -1
  80. package/fesm2022/acorex-components-drawer.mjs +15 -16
  81. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  82. package/fesm2022/acorex-components-dropdown-button.mjs +9 -9
  83. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  84. package/fesm2022/acorex-components-dropdown.mjs +28 -26
  85. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  86. package/fesm2022/acorex-components-editor.mjs +11 -11
  87. package/fesm2022/acorex-components-editor.mjs.map +1 -1
  88. package/fesm2022/acorex-components-file-explorer.mjs +25 -25
  89. package/fesm2022/acorex-components-file-explorer.mjs.map +1 -1
  90. package/fesm2022/acorex-components-flow-chart.mjs +16 -16
  91. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
  92. package/fesm2022/acorex-components-form.mjs +48 -42
  93. package/fesm2022/acorex-components-form.mjs.map +1 -1
  94. package/fesm2022/acorex-components-grid-layout-builder.mjs +12 -13
  95. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  96. package/fesm2022/acorex-components-image-editor.mjs +44 -44
  97. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  98. package/fesm2022/acorex-components-image.mjs +9 -9
  99. package/fesm2022/acorex-components-image.mjs.map +1 -1
  100. package/fesm2022/acorex-components-json-viewer.mjs +8 -8
  101. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  102. package/fesm2022/acorex-components-kanban.mjs +140 -13
  103. package/fesm2022/acorex-components-kanban.mjs.map +1 -1
  104. package/fesm2022/acorex-components-kbd.mjs +29 -11
  105. package/fesm2022/acorex-components-kbd.mjs.map +1 -1
  106. package/fesm2022/acorex-components-label.mjs +9 -9
  107. package/fesm2022/acorex-components-label.mjs.map +1 -1
  108. package/fesm2022/acorex-components-list.mjs +9 -9
  109. package/fesm2022/acorex-components-list.mjs.map +1 -1
  110. package/fesm2022/acorex-components-loading-dialog.mjs +11 -11
  111. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  112. package/fesm2022/acorex-components-loading.mjs +23 -23
  113. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  114. package/fesm2022/acorex-components-map.mjs +14 -14
  115. package/fesm2022/acorex-components-map.mjs.map +1 -1
  116. package/fesm2022/acorex-components-media-viewer.mjs +257 -91
  117. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  118. package/fesm2022/acorex-components-menu.mjs +21 -21
  119. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  120. package/fesm2022/{acorex-components-modal-acorex-components-modal-Bmoz9DL5.mjs → acorex-components-modal-acorex-components-modal-BajlPo_n.mjs} +22 -22
  121. package/fesm2022/acorex-components-modal-acorex-components-modal-BajlPo_n.mjs.map +1 -0
  122. package/fesm2022/{acorex-components-modal-modal-content.component-CSJU1vRi.mjs → acorex-components-modal-modal-content.component-BVrBX4Qf.mjs} +9 -7
  123. package/fesm2022/acorex-components-modal-modal-content.component-BVrBX4Qf.mjs.map +1 -0
  124. package/fesm2022/acorex-components-modal.mjs +1 -1
  125. package/fesm2022/acorex-components-navbar.mjs +9 -9
  126. package/fesm2022/acorex-components-navbar.mjs.map +1 -1
  127. package/fesm2022/acorex-components-notification.mjs +28 -24
  128. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  129. package/fesm2022/acorex-components-number-box-legacy.mjs +9 -9
  130. package/fesm2022/acorex-components-number-box-legacy.mjs.map +1 -1
  131. package/fesm2022/acorex-components-number-box.mjs +9 -9
  132. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  133. package/fesm2022/acorex-components-otp.mjs +9 -9
  134. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  135. package/fesm2022/acorex-components-page.mjs +10 -10
  136. package/fesm2022/acorex-components-page.mjs.map +1 -1
  137. package/fesm2022/acorex-components-paint.mjs +34 -39
  138. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  139. package/fesm2022/acorex-components-password-box.mjs +13 -13
  140. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  141. package/fesm2022/acorex-components-pdf-reader.mjs +8 -8
  142. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  143. package/fesm2022/acorex-components-phone-box.mjs +96 -54
  144. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  145. package/fesm2022/acorex-components-picker.mjs +19 -18
  146. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  147. package/fesm2022/acorex-components-popover.mjs +132 -33
  148. package/fesm2022/acorex-components-popover.mjs.map +1 -1
  149. package/fesm2022/acorex-components-popup.mjs +93 -101
  150. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  151. package/fesm2022/acorex-components-progress-bar.mjs +11 -9
  152. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  153. package/fesm2022/acorex-components-qrcode.mjs +9 -9
  154. package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
  155. package/fesm2022/acorex-components-query-builder.mjs +8 -8
  156. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  157. package/fesm2022/acorex-components-radio.mjs +9 -9
  158. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  159. package/fesm2022/acorex-components-rail-navigation.mjs +38 -36
  160. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  161. package/fesm2022/acorex-components-range-slider.mjs +10 -10
  162. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  163. package/fesm2022/acorex-components-rate-picker.mjs +20 -35
  164. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  165. package/fesm2022/acorex-components-rest-api-generator.mjs +22 -22
  166. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  167. package/fesm2022/acorex-components-result.mjs +8 -8
  168. package/fesm2022/acorex-components-result.mjs.map +1 -1
  169. package/fesm2022/acorex-components-routing-progress.mjs +8 -8
  170. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  171. package/fesm2022/acorex-components-rrule.mjs +9 -9
  172. package/fesm2022/acorex-components-rrule.mjs.map +1 -1
  173. package/fesm2022/acorex-components-scheduler-picker.mjs +56 -56
  174. package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
  175. package/fesm2022/acorex-components-scheduler.mjs +43 -43
  176. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  177. package/fesm2022/acorex-components-scss.mjs +4 -4
  178. package/fesm2022/acorex-components-scss.mjs.map +1 -1
  179. package/fesm2022/acorex-components-search-box.mjs +16 -10
  180. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  181. package/fesm2022/acorex-components-select-box.mjs +11 -9
  182. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  183. package/fesm2022/acorex-components-selection-list-2.mjs +11 -11
  184. package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
  185. package/fesm2022/acorex-components-selection-list.mjs +9 -9
  186. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  187. package/fesm2022/acorex-components-side-menu.mjs +74 -25
  188. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  189. package/fesm2022/acorex-components-skeleton.mjs +8 -8
  190. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  191. package/fesm2022/acorex-components-slider.mjs +12 -12
  192. package/fesm2022/acorex-components-slider.mjs.map +1 -1
  193. package/fesm2022/acorex-components-sliding-item.mjs +14 -14
  194. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  195. package/fesm2022/acorex-components-step-wizard.mjs +14 -14
  196. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  197. package/fesm2022/acorex-components-switch.mjs +14 -14
  198. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  199. package/fesm2022/acorex-components-tabs.mjs +15 -15
  200. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  201. package/fesm2022/acorex-components-tag-box.mjs +9 -9
  202. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  203. package/fesm2022/acorex-components-tag.mjs +9 -9
  204. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  205. package/fesm2022/acorex-components-text-area.mjs +9 -9
  206. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  207. package/fesm2022/acorex-components-text-box.mjs +37 -131
  208. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  209. package/fesm2022/acorex-components-time-duration.mjs +22 -24
  210. package/fesm2022/acorex-components-time-duration.mjs.map +1 -1
  211. package/fesm2022/acorex-components-time-line.mjs +12 -12
  212. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  213. package/fesm2022/acorex-components-toast.mjs +12 -12
  214. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  215. package/fesm2022/acorex-components-toolbar.mjs +8 -8
  216. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  217. package/fesm2022/acorex-components-tooltip.mjs +66 -65
  218. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  219. package/fesm2022/acorex-components-tree-view-legacy.mjs +16 -12
  220. package/fesm2022/acorex-components-tree-view-legacy.mjs.map +1 -1
  221. package/fesm2022/acorex-components-tree-view.mjs +32 -11
  222. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  223. package/fesm2022/acorex-components-uploader.mjs +16 -16
  224. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  225. package/fesm2022/acorex-components-video-player.mjs +8 -8
  226. package/fesm2022/acorex-components-video-player.mjs.map +1 -1
  227. package/fesm2022/acorex-components-wysiwyg.mjs +43 -43
  228. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  229. package/fesm2022/acorex-components.mjs.map +1 -1
  230. package/form/index.d.ts +2 -1
  231. package/grid-layout-builder/index.d.ts +1 -2
  232. package/kanban/index.d.ts +62 -4
  233. package/kbd/index.d.ts +13 -7
  234. package/loading/index.d.ts +1 -1
  235. package/media-viewer/index.d.ts +86 -53
  236. package/package.json +8 -14
  237. package/paint/index.d.ts +1 -6
  238. package/phone-box/index.d.ts +12 -7
  239. package/popover/index.d.ts +28 -6
  240. package/popup/index.d.ts +39 -42
  241. package/rate-picker/index.d.ts +5 -15
  242. package/side-menu/index.d.ts +9 -2
  243. package/slider/index.d.ts +2 -2
  244. package/text-box/index.d.ts +29 -48
  245. package/time-duration/index.d.ts +2 -2
  246. package/tooltip/index.d.ts +3 -7
  247. package/tree-view/index.d.ts +17 -0
  248. package/tree-view-legacy/index.d.ts +1 -0
  249. package/fesm2022/acorex-components-modal-acorex-components-modal-Bmoz9DL5.mjs.map +0 -1
  250. package/fesm2022/acorex-components-modal-modal-content.component-CSJU1vRi.mjs.map +0 -1
@@ -4,7 +4,7 @@ import { AXTabsModule, AXTabsComponent, AXTabItemComponent } from '@acorex/compo
4
4
  import * as i1$5 from '@angular/common';
5
5
  import { CommonModule, isPlatformBrowser, NgComponentOutlet } from '@angular/common';
6
6
  import * as i0 from '@angular/core';
7
- import { InjectionToken, inject, Injectable, signal, computed, input, output, Component, viewChild, effect, model, PLATFORM_ID, SecurityContext, DestroyRef, ViewContainerRef, ChangeDetectionStrategy, Directive, ElementRef, afterNextRender, untracked, EventEmitter, NgModule } from '@angular/core';
7
+ import { InjectionToken, inject, Injectable, signal, computed, input, output, Component, viewChild, effect, model, PLATFORM_ID, ChangeDetectionStrategy, SecurityContext, DestroyRef, ViewContainerRef, Directive, ElementRef, afterNextRender, untracked, EventEmitter, NgModule } from '@angular/core';
8
8
  import { Subject, BehaviorSubject, Observable, filter, of, takeUntil, catchError, EMPTY } from 'rxjs';
9
9
  import { AXDialogService } from '@acorex/components/dialog';
10
10
  import { AXPopupService } from '@acorex/components/popup';
@@ -681,10 +681,10 @@ class AXErrorHandlerService {
681
681
  // Errors are not stored, just emitted through observable
682
682
  // This method is here for future extensions if needed
683
683
  }
684
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXErrorHandlerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
685
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXErrorHandlerService, providedIn: 'root' }); }
684
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXErrorHandlerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
685
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXErrorHandlerService, providedIn: 'root' }); }
686
686
  }
687
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXErrorHandlerService, decorators: [{
687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXErrorHandlerService, decorators: [{
688
688
  type: Injectable,
689
689
  args: [{
690
690
  providedIn: 'root',
@@ -1186,10 +1186,10 @@ class AXConversationStoreService {
1186
1186
  conversationsWithMessages: this._conversationMessages().size,
1187
1187
  };
1188
1188
  }
1189
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationStoreService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1190
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationStoreService }); }
1189
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationStoreService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1190
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationStoreService }); }
1191
1191
  }
1192
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationStoreService, decorators: [{
1192
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationStoreService, decorators: [{
1193
1193
  type: Injectable
1194
1194
  }] });
1195
1195
 
@@ -1711,10 +1711,10 @@ class AXComposerActionRegistry {
1711
1711
  clear() {
1712
1712
  this._actions.set([]);
1713
1713
  }
1714
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1715
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerActionRegistry }); }
1714
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1715
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerActionRegistry }); }
1716
1716
  }
1717
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerActionRegistry, decorators: [{
1717
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerActionRegistry, decorators: [{
1718
1718
  type: Injectable
1719
1719
  }], ctorParameters: () => [] });
1720
1720
 
@@ -1791,10 +1791,10 @@ class AXComposerTabRegistry {
1791
1791
  clear() {
1792
1792
  this._tabs.set([]);
1793
1793
  }
1794
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerTabRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1795
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerTabRegistry }); }
1794
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerTabRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1795
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerTabRegistry }); }
1796
1796
  }
1797
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerTabRegistry, decorators: [{
1797
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerTabRegistry, decorators: [{
1798
1798
  type: Injectable
1799
1799
  }], ctorParameters: () => [] });
1800
1800
 
@@ -1962,10 +1962,10 @@ class AXConversationItemActionRegistry extends AXBaseRegistry {
1962
1962
  }
1963
1963
  return action.tooltip;
1964
1964
  }
1965
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationItemActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1966
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationItemActionRegistry }); }
1965
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationItemActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
1966
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationItemActionRegistry }); }
1967
1967
  }
1968
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationItemActionRegistry, decorators: [{
1968
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationItemActionRegistry, decorators: [{
1969
1969
  type: Injectable
1970
1970
  }], ctorParameters: () => [] });
1971
1971
 
@@ -2067,10 +2067,10 @@ class AXConversationTabRegistry {
2067
2067
  clear() {
2068
2068
  this._tabs.set([]);
2069
2069
  }
2070
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationTabRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2071
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationTabRegistry }); }
2070
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationTabRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2071
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationTabRegistry }); }
2072
2072
  }
2073
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationTabRegistry, decorators: [{
2073
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationTabRegistry, decorators: [{
2074
2074
  type: Injectable
2075
2075
  }], ctorParameters: () => [] });
2076
2076
 
@@ -2159,10 +2159,10 @@ class AXInfoBarActionRegistry extends AXBaseRegistry {
2159
2159
  }
2160
2160
  return action.tooltip;
2161
2161
  }
2162
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2163
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarActionRegistry }); }
2162
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2163
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarActionRegistry }); }
2164
2164
  }
2165
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarActionRegistry, decorators: [{
2165
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarActionRegistry, decorators: [{
2166
2166
  type: Injectable
2167
2167
  }], ctorParameters: () => [] });
2168
2168
 
@@ -2263,10 +2263,10 @@ class AXMessageActionRegistry {
2263
2263
  clear() {
2264
2264
  this._actions.set([]);
2265
2265
  }
2266
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2267
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageActionRegistry }); }
2266
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageActionRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
2267
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageActionRegistry }); }
2268
2268
  }
2269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageActionRegistry, decorators: [{
2269
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageActionRegistry, decorators: [{
2270
2270
  type: Injectable
2271
2271
  }], ctorParameters: () => [] });
2272
2272
 
@@ -3572,10 +3572,10 @@ class AXIndexedDBUserApi extends AXUserApi {
3572
3572
  // Mock update settings
3573
3573
  await Promise.resolve();
3574
3574
  }
3575
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBUserApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3576
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBUserApi }); }
3575
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBUserApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3576
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBUserApi }); }
3577
3577
  }
3578
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBUserApi, decorators: [{
3578
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBUserApi, decorators: [{
3579
3579
  type: Injectable
3580
3580
  }] });
3581
3581
 
@@ -3829,10 +3829,10 @@ class AXIndexedDBConversationApi extends AXConversationApi {
3829
3829
  // Mock clear draft
3830
3830
  await Promise.resolve();
3831
3831
  }
3832
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBConversationApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3833
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBConversationApi }); }
3832
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBConversationApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
3833
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBConversationApi }); }
3834
3834
  }
3835
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBConversationApi, decorators: [{
3835
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBConversationApi, decorators: [{
3836
3836
  type: Injectable
3837
3837
  }] });
3838
3838
 
@@ -4163,10 +4163,10 @@ class AXIndexedDBMessageApi extends AXMessageApi {
4163
4163
  // Mock export - return empty JSON
4164
4164
  return JSON.stringify({ messages: [] });
4165
4165
  }
4166
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBMessageApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4167
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBMessageApi }); }
4166
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBMessageApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4167
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBMessageApi }); }
4168
4168
  }
4169
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBMessageApi, decorators: [{
4169
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBMessageApi, decorators: [{
4170
4170
  type: Injectable
4171
4171
  }] });
4172
4172
 
@@ -4313,10 +4313,10 @@ class AXIndexedDBRealtimeApi extends AXRealtimeApi {
4313
4313
  // Mock draft changes
4314
4314
  return new Observable(() => { });
4315
4315
  }
4316
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBRealtimeApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4317
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBRealtimeApi }); }
4316
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBRealtimeApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4317
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBRealtimeApi }); }
4318
4318
  }
4319
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBRealtimeApi, decorators: [{
4319
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBRealtimeApi, decorators: [{
4320
4320
  type: Injectable
4321
4321
  }] });
4322
4322
 
@@ -4489,10 +4489,10 @@ class AXAIResponderService {
4489
4489
  configure(config) {
4490
4490
  Object.assign(this.config, config);
4491
4491
  }
4492
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXAIResponderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4493
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXAIResponderService, providedIn: 'root' }); }
4492
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAIResponderService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4493
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAIResponderService, providedIn: 'root' }); }
4494
4494
  }
4495
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXAIResponderService, decorators: [{
4495
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAIResponderService, decorators: [{
4496
4496
  type: Injectable,
4497
4497
  args: [{
4498
4498
  providedIn: 'root',
@@ -4782,10 +4782,10 @@ class AXIndexedDBMessageAIApi extends AXIndexedDBMessageApi {
4782
4782
  delay(ms) {
4783
4783
  return new Promise((resolve) => setTimeout(resolve, ms));
4784
4784
  }
4785
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBMessageAIApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4786
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBMessageAIApi }); }
4785
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBMessageAIApi, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
4786
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBMessageAIApi }); }
4787
4787
  }
4788
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXIndexedDBMessageAIApi, decorators: [{
4788
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXIndexedDBMessageAIApi, decorators: [{
4789
4789
  type: Injectable
4790
4790
  }] });
4791
4791
 
@@ -4968,10 +4968,10 @@ class AXFileUploadService {
4968
4968
  }
4969
4969
  return { accepted, rejected };
4970
4970
  }
4971
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXFileUploadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4972
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXFileUploadService, providedIn: 'root' }); }
4971
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFileUploadService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
4972
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFileUploadService, providedIn: 'root' }); }
4973
4973
  }
4974
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXFileUploadService, decorators: [{
4974
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFileUploadService, decorators: [{
4975
4975
  type: Injectable,
4976
4976
  args: [{
4977
4977
  providedIn: 'root',
@@ -4989,8 +4989,8 @@ class AXPickerFooterComponent {
4989
4989
  this.onCancel = output();
4990
4990
  this.onSend = output();
4991
4991
  }
4992
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXPickerFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4993
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: AXPickerFooterComponent, isStandalone: true, selector: "ax-picker-footer", inputs: { sendText: { classPropertyName: "sendText", publicName: "sendText", isSignal: true, isRequired: true, transformFunction: null }, sendDisabled: { classPropertyName: "sendDisabled", publicName: "sendDisabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCancel: "onCancel", onSend: "onSend" }, ngImport: i0, template: `
4992
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPickerFooterComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
4993
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.16", type: AXPickerFooterComponent, isStandalone: true, selector: "ax-picker-footer", inputs: { sendText: { classPropertyName: "sendText", publicName: "sendText", isSignal: true, isRequired: true, transformFunction: null }, sendDisabled: { classPropertyName: "sendDisabled", publicName: "sendDisabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { onCancel: "onCancel", onSend: "onSend" }, ngImport: i0, template: `
4994
4994
  <div class="picker-footer">
4995
4995
  <ax-button text="Cancel" look="solid" color="danger" (onClick)="onCancel.emit()" />
4996
4996
  <ax-button
@@ -5003,7 +5003,7 @@ class AXPickerFooterComponent {
5003
5003
  </div>
5004
5004
  `, isInline: true, styles: [".picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border))}\n"], dependencies: [{ kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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"] }] }); }
5005
5005
  }
5006
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXPickerFooterComponent, decorators: [{
5006
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPickerFooterComponent, decorators: [{
5007
5007
  type: Component,
5008
5008
  args: [{ selector: 'ax-picker-footer', imports: [AXButtonModule], template: `
5009
5009
  <div class="picker-footer">
@@ -5028,8 +5028,8 @@ class AXPickerHeaderComponent {
5028
5028
  this.title = input.required(...(ngDevMode ? [{ debugName: "title" }] : []));
5029
5029
  this.onClose = output();
5030
5030
  }
5031
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXPickerHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5032
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: AXPickerHeaderComponent, isStandalone: true, selector: "ax-picker-header", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClose: "onClose" }, ngImport: i0, template: `
5031
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPickerHeaderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5032
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.16", type: AXPickerHeaderComponent, isStandalone: true, selector: "ax-picker-header", inputs: { title: { classPropertyName: "title", publicName: "title", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClose: "onClose" }, ngImport: i0, template: `
5033
5033
  <div class="picker-header">
5034
5034
  <span class="picker-title">{{ title() }}</span>
5035
5035
  <button type="button" class="close-button" (click)="onClose.emit()" aria-label="Close">
@@ -5038,7 +5038,7 @@ class AXPickerHeaderComponent {
5038
5038
  </div>
5039
5039
  `, isInline: true, styles: [".picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}\n"] }); }
5040
5040
  }
5041
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXPickerHeaderComponent, decorators: [{
5041
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXPickerHeaderComponent, decorators: [{
5042
5042
  type: Component,
5043
5043
  args: [{ selector: 'ax-picker-header', template: `
5044
5044
  <div class="picker-header">
@@ -5148,8 +5148,8 @@ class AXAudioPickerComponent {
5148
5148
  formatDuration(seconds) {
5149
5149
  return this.fileUploadService.formatDuration(seconds);
5150
5150
  }
5151
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXAudioPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5152
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXAudioPickerComponent, isStandalone: true, selector: "ax-conversation-audio-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
5151
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAudioPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5152
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXAudioPickerComponent, isStandalone: true, selector: "ax-conversation-audio-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
5153
5153
  <div class="audio-picker">
5154
5154
  <ax-picker-header [title]="'Send Audio'" (onClose)="cancel()" />
5155
5155
 
@@ -5232,9 +5232,9 @@ class AXAudioPickerComponent {
5232
5232
  (change)="onFileInputChange($event)"
5233
5233
  />
5234
5234
  </div>
5235
- `, isInline: true, styles: [":host{display:block;width:100%}.audio-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.picker-audio{padding:.75rem}.audio-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.audio-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.audio-list{display:flex;flex-direction:column;gap:.625rem;margin-bottom:.75rem}.audio-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border));transition:background-color .2s}.audio-item:hover{background:rgb(var(--ax-sys-color-surface-variant))}.audio-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.375rem;background:rgb(var(--ax-sys-color-primary) / .1);color:rgb(var(--ax-sys-color-primary));font-size:1.125rem;flex-shrink:0}.audio-info{flex:1;min-width:0}.audio-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem}.audio-meta{display:flex;gap:1rem;font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.remove-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;flex-shrink:0;font-size:1rem}.remove-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
5235
+ `, isInline: true, styles: [":host{display:block;width:100%}.audio-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border-surface));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary-500));background:rgb(var(--ax-sys-color-primary-500) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface) / .65);margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.picker-audio{padding:.75rem}.audio-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.audio-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.audio-list{display:flex;flex-direction:column;gap:.625rem;margin-bottom:.75rem}.audio-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border-surface));transition:background-color .2s}.audio-item:hover{background:rgb(var(--ax-sys-color-light-surface))}.audio-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.375rem;background:rgb(var(--ax-sys-color-primary-500) / .1);color:rgb(var(--ax-sys-color-primary-500));font-size:1.125rem;flex-shrink:0}.audio-info{flex:1;min-width:0}.audio-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem}.audio-meta{display:flex;gap:1rem;font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.remove-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;flex-shrink:0;font-size:1rem}.remove-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "maskPattern", "customTokens", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
5236
5236
  }
5237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXAudioPickerComponent, decorators: [{
5237
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAudioPickerComponent, decorators: [{
5238
5238
  type: Component,
5239
5239
  args: [{ selector: 'ax-conversation-audio-picker', imports: [
5240
5240
  CommonModule,
@@ -5327,7 +5327,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
5327
5327
  (change)="onFileInputChange($event)"
5328
5328
  />
5329
5329
  </div>
5330
- `, styles: [":host{display:block;width:100%}.audio-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.picker-audio{padding:.75rem}.audio-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.audio-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.audio-list{display:flex;flex-direction:column;gap:.625rem;margin-bottom:.75rem}.audio-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border));transition:background-color .2s}.audio-item:hover{background:rgb(var(--ax-sys-color-surface-variant))}.audio-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.375rem;background:rgb(var(--ax-sys-color-primary) / .1);color:rgb(var(--ax-sys-color-primary));font-size:1.125rem;flex-shrink:0}.audio-info{flex:1;min-width:0}.audio-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem}.audio-meta{display:flex;gap:1rem;font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.remove-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;flex-shrink:0;font-size:1rem}.remove-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"] }]
5330
+ `, styles: [":host{display:block;width:100%}.audio-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border-surface));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary-500));background:rgb(var(--ax-sys-color-primary-500) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface) / .65);margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.picker-audio{padding:.75rem}.audio-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.audio-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.audio-list{display:flex;flex-direction:column;gap:.625rem;margin-bottom:.75rem}.audio-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border-surface));transition:background-color .2s}.audio-item:hover{background:rgb(var(--ax-sys-color-light-surface))}.audio-icon{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:.375rem;background:rgb(var(--ax-sys-color-primary-500) / .1);color:rgb(var(--ax-sys-color-primary-500));font-size:1.125rem;flex-shrink:0}.audio-info{flex:1;min-width:0}.audio-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.25rem}.audio-meta{display:flex;gap:1rem;font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.remove-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;flex-shrink:0;font-size:1rem}.remove-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}\n"] }]
5331
5331
  }], propDecorators: { conversation: [{ type: i0.Input, args: [{ isSignal: true, alias: "conversation", required: true }] }], fileInput: [{ type: i0.ViewChild, args: ['fileInput', { isSignal: true }] }] } });
5332
5332
 
5333
5333
  /**
@@ -5644,8 +5644,8 @@ class AXEmojiTabComponent {
5644
5644
  selectEmoji(emoji) {
5645
5645
  this.itemSelected.emit(emoji);
5646
5646
  }
5647
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXEmojiTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5648
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXEmojiTabComponent, isStandalone: true, selector: "ax-emoji-tab", outputs: { itemSelected: "itemSelected" }, ngImport: i0, template: `
5647
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXEmojiTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5648
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXEmojiTabComponent, isStandalone: true, selector: "ax-emoji-tab", outputs: { itemSelected: "itemSelected" }, ngImport: i0, template: `
5649
5649
  <div class="emoji-tab">
5650
5650
  <!-- Search -->
5651
5651
  <div class="emoji-search">
@@ -5694,7 +5694,7 @@ class AXEmojiTabComponent {
5694
5694
  </div>
5695
5695
  `, isInline: true, styles: [".emoji-tab{display:flex;flex-direction:column;height:100%}.emoji-search{position:sticky;top:0;z-index:10;padding-block:.75rem}.emoji-categories{display:flex;align-items:center;flex-shrink:0;gap:.25rem;margin-bottom:.75rem;padding-bottom:.75rem;overflow-x:auto;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.category-button{height:3rem;width:3rem;display:flex;justify-content:center;align-items:center;padding:.5rem;border:none;background:transparent;border-radius:.375rem;cursor:pointer;font-size:1.25rem;transition:all .15s;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.category-button:hover{background:rgb(var(--ax-sys-color-light-surface))}.category-button-active{background:rgb(var(--ax-sys-color-primary-lightest-surface));color:rgb(var(--ax-sys-color-on-primary-lightest-surface))}.emoji-grid{display:grid;grid-template-columns:repeat(auto-fill,40px);gap:.25rem;// overflow-y: auto;max-height:240px}.emoji-button{width:3rem;height:3rem;padding:.5rem;border:none;background:transparent;border-radius:.375rem;cursor:pointer;font-size:1.5rem;transition:all .15s;display:flex;align-items:center;justify-content:center;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.emoji-button:hover{background:rgb(var(--ax-sys-color-light-surface));// transform: scale(1.2)}.emoji-empty{padding:2rem;text-align:center;opacity:.6}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i1$1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }] }); }
5696
5696
  }
5697
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXEmojiTabComponent, decorators: [{
5697
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXEmojiTabComponent, decorators: [{
5698
5698
  type: Component,
5699
5699
  args: [{ selector: 'ax-emoji-tab', imports: [CommonModule, FormsModule, AXSearchBoxModule], template: `
5700
5700
  <div class="emoji-tab">
@@ -5890,8 +5890,8 @@ class AXStickerTabComponent {
5890
5890
  selectSticker(sticker) {
5891
5891
  this.itemSelected.emit(sticker);
5892
5892
  }
5893
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXStickerTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5894
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXStickerTabComponent, isStandalone: true, selector: "ax-sticker-tab", outputs: { itemSelected: "itemSelected" }, ngImport: i0, template: `
5893
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXStickerTabComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
5894
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXStickerTabComponent, isStandalone: true, selector: "ax-sticker-tab", outputs: { itemSelected: "itemSelected" }, ngImport: i0, template: `
5895
5895
  <div class="sticker-tab">
5896
5896
  <!-- Search -->
5897
5897
  <div class="sticker-search">
@@ -5953,7 +5953,7 @@ class AXStickerTabComponent {
5953
5953
  </div>
5954
5954
  `, isInline: true, styles: [".sticker-tab{display:flex;flex-direction:column;height:100%}.sticker-search{position:sticky;top:0;z-index:10;padding-block:.75rem}.sticker-packs{display:flex;gap:.25rem;padding-top:.75rem;margin-bottom:.75rem;padding-bottom:.75rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.pack-button{width:3rem;height:3rem;padding:.5rem;border:none;background:transparent;border-radius:.375rem;cursor:pointer;font-size:1.25rem;transition:all .15s;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.pack-button:hover{background:rgb(var(--ax-sys-color-light-surface))}.pack-button-active{background:rgb(var(--ax-sys-color-primary-lightest-surface))}.sticker-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:.5rem;overflow-y:auto;max-height:240px}.sticker-button{padding:.5rem;border:none;background:transparent;border-radius:.375rem;cursor:pointer;transition:all .15s;aspect-ratio:1}.sticker-button:hover{background:rgb(var(--ax-sys-color-light-surface));// transform: scale(1.05)}.sticker-image{width:100%;height:100%;object-fit:contain}.sticker-empty{padding:2rem;text-align:center;opacity:.6}.sticker-skeleton{height:5rem;aspect-ratio:1;border-radius:.375rem;overflow:hidden}.skeleton-item{width:100%;height:100%;border-radius:.375rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i1$2.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i1$1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }] }); }
5955
5955
  }
5956
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXStickerTabComponent, decorators: [{
5956
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXStickerTabComponent, decorators: [{
5957
5957
  type: Component,
5958
5958
  args: [{ selector: 'ax-sticker-tab', imports: [CommonModule, FormsModule, AXSkeletonModule, AXSearchBoxModule], template: `
5959
5959
  <div class="sticker-tab">
@@ -6155,8 +6155,8 @@ class AXContactPickerComponent {
6155
6155
  }
6156
6156
  }
6157
6157
  }
6158
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXContactPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6159
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXContactPickerComponent, isStandalone: true, selector: "ax-conversation-contact-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClose: "onClose" }, ngImport: i0, template: `
6158
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXContactPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6159
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXContactPickerComponent, isStandalone: true, selector: "ax-conversation-contact-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClose: "onClose" }, ngImport: i0, template: `
6160
6160
  <div class="contact-picker">
6161
6161
  <ax-picker-header [title]="'Send Contact'" (onClose)="cancel()" />
6162
6162
 
@@ -6250,9 +6250,9 @@ class AXContactPickerComponent {
6250
6250
  />
6251
6251
  </div>
6252
6252
  </div>
6253
- `, isInline: true, styles: [":host{display:block;width:100%}.contact-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden;max-height:450px}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-content{flex:1;overflow-y:auto;padding:.75rem}.content-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;height:100%}@media (max-width: 768px){.content-grid{grid-template-columns:1fr;gap:0}.divider-vertical{display:none}.manual-entry{border-bottom:1px solid rgb(var(--ax-sys-color-border));padding-bottom:1rem;margin-bottom:1rem}}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:.5rem}.section-title{margin:0;font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface));display:flex;align-items:center;gap:.5rem}.section-title:before{content:\"\";width:3px;height:1rem;background:rgb(var(--ax-sys-color-primary));border-radius:2px}.manual-entry{display:flex;flex-direction:column}.form-fields{display:flex;flex-direction:column;gap:.75rem}.form-field{margin-bottom:.75rem}.form-field ax-label{display:block;margin-bottom:.5rem}.divider-vertical{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.divider-vertical:before{content:\"\";position:absolute;top:0;bottom:0;left:50%;width:1px;background:rgb(var(--ax-sys-color-border));transform:translate(-50%)}.divider-text{position:relative;z-index:1;padding:.5rem;background:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-surface-variant));font-size:.75rem;font-weight:600;border-radius:.25rem}.contact-list-section{display:flex;flex-direction:column;min-height:0}.search-box{margin-bottom:.75rem}.contact-list{flex:1;overflow-y:auto;border:1px solid rgb(var(--ax-sys-color-border));border-radius:.5rem;background:rgb(var(--ax-sys-color-surface))}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem 1rem;color:rgb(var(--ax-sys-color-on-surface-variant));gap:.5rem}.empty-state i{font-size:1.75rem}.contact-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;cursor:pointer;transition:all .2s;border-bottom:1px solid rgb(var(--ax-sys-color-border))}.contact-item:last-child{border-bottom:none}.contact-item:hover{background:rgb(var(--ax-sys-color-surface-variant));// transform: translateX(2px)}.contact-item.selected{background:rgb(var(--ax-sys-color-primary) / .1);border-left:3px solid rgb(var(--ax-sys-color-primary));padding-left:calc(.75rem - 3px)}.contact-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0}.contact-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:rgb(var(--ax-sys-color-primary));color:rgb(var(--ax-sys-color-on-primary));font-weight:600;font-size:.875rem}.contact-info{flex:1}.contact-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.contact-phone{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.contact-item i{color:rgb(var(--ax-sys-color-primary))}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i2$1.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i1$1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
6253
+ `, isInline: true, styles: [":host{display:block;width:100%}.contact-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden;max-height:450px}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-content{flex:1;overflow-y:auto;padding:.75rem}.content-grid{display:grid;grid-template-columns:1fr auto 1fr;gap:1rem;height:100%}@media (max-width: 768px){.content-grid{grid-template-columns:1fr;gap:0}.divider-vertical{display:none}.manual-entry{border-bottom:1px solid rgb(var(--ax-sys-color-border));padding-bottom:1rem;margin-bottom:1rem}}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:1rem;gap:.5rem}.section-title{margin:0;font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface));display:flex;align-items:center;gap:.5rem}.section-title:before{content:\"\";width:3px;height:1rem;background:rgb(var(--ax-sys-color-primary));border-radius:2px}.manual-entry{display:flex;flex-direction:column}.form-fields{display:flex;flex-direction:column;gap:.75rem}.form-field{margin-bottom:.75rem}.form-field ax-label{display:block;margin-bottom:.5rem}.divider-vertical{display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.divider-vertical:before{content:\"\";position:absolute;top:0;bottom:0;left:50%;width:1px;background:rgb(var(--ax-sys-color-border));transform:translate(-50%)}.divider-text{position:relative;z-index:1;padding:.5rem;background:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-surface-variant));font-size:.75rem;font-weight:600;border-radius:.25rem}.contact-list-section{display:flex;flex-direction:column;min-height:0}.search-box{margin-bottom:.75rem}.contact-list{flex:1;overflow-y:auto;border:1px solid rgb(var(--ax-sys-color-border));border-radius:.5rem;background:rgb(var(--ax-sys-color-surface))}.empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;padding:2rem 1rem;color:rgb(var(--ax-sys-color-on-surface-variant));gap:.5rem}.empty-state i{font-size:1.75rem}.contact-item{display:flex;align-items:center;gap:.75rem;padding:.75rem;cursor:pointer;transition:all .2s;border-bottom:1px solid rgb(var(--ax-sys-color-border))}.contact-item:last-child{border-bottom:none}.contact-item:hover{background:rgb(var(--ax-sys-color-surface-variant));// transform: translateX(2px)}.contact-item.selected{background:rgb(var(--ax-sys-color-primary) / .1);border-left:3px solid rgb(var(--ax-sys-color-primary));padding-left:calc(.75rem - 3px)}.contact-avatar{width:36px;height:36px;border-radius:50%;overflow:hidden;flex-shrink:0}.contact-avatar img{width:100%;height:100%;object-fit:cover}.avatar-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:rgb(var(--ax-sys-color-primary));color:rgb(var(--ax-sys-color-on-primary));font-weight:600;font-size:.875rem}.contact-info{flex:1}.contact-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.contact-phone{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.contact-item i{color:rgb(var(--ax-sys-color-primary))}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "ngmodule", type: AXLabelModule }, { kind: "component", type: i2$1.AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXSearchBoxModule }, { kind: "component", type: i1$1.AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "maskPattern", "customTokens", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
6254
6254
  }
6255
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXContactPickerComponent, decorators: [{
6255
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXContactPickerComponent, decorators: [{
6256
6256
  type: Component,
6257
6257
  args: [{ selector: 'ax-conversation-contact-picker', imports: [
6258
6258
  CommonModule,
@@ -6545,8 +6545,8 @@ class AXFilePickerComponent {
6545
6545
  }
6546
6546
  return `${uploadedCount}/${fileList.length} Ready`;
6547
6547
  }
6548
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXFilePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6549
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXFilePickerComponent, isStandalone: true, selector: "ax-conversation-file-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null }, service: { classPropertyName: "service", publicName: "service", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
6548
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFilePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6549
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXFilePickerComponent, isStandalone: true, selector: "ax-conversation-file-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null }, service: { classPropertyName: "service", publicName: "service", isSignal: true, isRequired: false, transformFunction: null } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
6550
6550
  <div class="file-picker">
6551
6551
  <ax-picker-header [title]="'Attach Files'" (onClose)="cancel()" />
6552
6552
 
@@ -6654,9 +6654,9 @@ class AXFilePickerComponent {
6654
6654
  (change)="onFileInputChange($event)"
6655
6655
  />
6656
6656
  </div>
6657
- `, isInline: true, styles: [":host{display:block;width:100%}.file-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden;max-height:450px}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-content{flex:1;overflow-y:auto}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;min-height:160px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.picker-body{padding:.75rem}.body-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.item-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.files-list{display:flex;flex-direction:column;gap:.625rem}.file-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border));transition:background-color .2s}.file-item:hover{background:rgb(var(--ax-sys-color-surface-variant))}.file-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:.375rem;background:rgb(var(--ax-sys-color-primary) / .1);color:rgb(var(--ax-sys-color-primary));font-size:1.25rem;flex-shrink:0;overflow:hidden}.file-icon img{width:100%;height:100%;object-fit:cover}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.file-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.progress-container{width:100%;margin-top:.125rem}.upload-success{color:rgb(var(--ax-sys-color-success));font-weight:500}.upload-error{color:rgb(var(--ax-sys-color-error));font-weight:500}.remove-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;flex-shrink:0;font-size:1rem}.remove-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXProgressBarModule }, { kind: "component", type: i3$1.AXProgressBarComponent, selector: "ax-progress-bar", inputs: ["color", "mode", "progress", "height"], outputs: ["ValueChange", "sizeChange"] }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
6657
+ `, isInline: true, styles: [":host{display:block;width:100%}.file-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden;max-height:450px}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.picker-content{flex:1;overflow-y:auto}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;min-height:160px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border-surface));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary-500));background:rgb(var(--ax-sys-color-primary-500) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface) / .65);margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.picker-body{padding:.75rem}.body-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.item-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface) / .65)}.files-list{display:flex;flex-direction:column;gap:.625rem}.file-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border-surface));transition:background-color .2s}.file-item:hover{background:rgb(var(--ax-sys-color-light-surface))}.file-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:.375rem;background:rgb(var(--ax-sys-color-primary-500) / .1);color:rgb(var(--ax-sys-color-primary-500));font-size:1.25rem;flex-shrink:0;overflow:hidden}.file-icon img{width:100%;height:100%;object-fit:cover}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.file-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.progress-container{width:100%;margin-top:.125rem}.upload-success{color:rgb(var(--ax-sys-color-success-600));font-weight:500}.upload-error{color:rgb(var(--ax-sys-color-danger-600));font-weight:500}.remove-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;flex-shrink:0;font-size:1rem}.remove-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXProgressBarModule }, { kind: "component", type: i3$1.AXProgressBarComponent, selector: "ax-progress-bar", inputs: ["color", "mode", "progress", "height"], outputs: ["ValueChange", "sizeChange"] }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
6658
6658
  }
6659
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXFilePickerComponent, decorators: [{
6659
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFilePickerComponent, decorators: [{
6660
6660
  type: Component,
6661
6661
  args: [{ selector: 'ax-conversation-file-picker', imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXProgressBarModule, AXPickerHeaderComponent, AXPickerFooterComponent], template: `
6662
6662
  <div class="file-picker">
@@ -6766,7 +6766,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
6766
6766
  (change)="onFileInputChange($event)"
6767
6767
  />
6768
6768
  </div>
6769
- `, styles: [":host{display:block;width:100%}.file-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden;max-height:450px}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-content{flex:1;overflow-y:auto}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;min-height:160px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.picker-body{padding:.75rem}.body-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.item-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.files-list{display:flex;flex-direction:column;gap:.625rem}.file-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border));transition:background-color .2s}.file-item:hover{background:rgb(var(--ax-sys-color-surface-variant))}.file-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:.375rem;background:rgb(var(--ax-sys-color-primary) / .1);color:rgb(var(--ax-sys-color-primary));font-size:1.25rem;flex-shrink:0;overflow:hidden}.file-icon img{width:100%;height:100%;object-fit:cover}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.file-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.progress-container{width:100%;margin-top:.125rem}.upload-success{color:rgb(var(--ax-sys-color-success));font-weight:500}.upload-error{color:rgb(var(--ax-sys-color-error));font-weight:500}.remove-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;flex-shrink:0;font-size:1rem}.remove-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"] }]
6769
+ `, styles: [":host{display:block;width:100%}.file-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden;max-height:450px}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.picker-content{flex:1;overflow-y:auto}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;min-height:160px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border-surface));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary-500));background:rgb(var(--ax-sys-color-primary-500) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface) / .65);margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.picker-body{padding:.75rem}.body-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.item-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface) / .65)}.files-list{display:flex;flex-direction:column;gap:.625rem}.file-item{display:flex;align-items:center;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border-surface));transition:background-color .2s}.file-item:hover{background:rgb(var(--ax-sys-color-light-surface))}.file-icon{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:.375rem;background:rgb(var(--ax-sys-color-primary-500) / .1);color:rgb(var(--ax-sys-color-primary-500));font-size:1.25rem;flex-shrink:0;overflow:hidden}.file-icon img{width:100%;height:100%;object-fit:cover}.file-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.file-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.file-size{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.progress-container{width:100%;margin-top:.125rem}.upload-success{color:rgb(var(--ax-sys-color-success-600));font-weight:500}.upload-error{color:rgb(var(--ax-sys-color-danger-600));font-weight:500}.remove-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;flex-shrink:0;font-size:1rem}.remove-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}\n"] }]
6770
6770
  }], propDecorators: { conversation: [{ type: i0.Input, args: [{ isSignal: true, alias: "conversation", required: true }] }], service: [{ type: i0.Input, args: [{ isSignal: true, alias: "service", required: false }] }], fileInput: [{ type: i0.ViewChild, args: ['fileInput', { isSignal: true }] }] } });
6771
6771
 
6772
6772
  /**
@@ -6866,8 +6866,8 @@ class AXImagePickerComponent {
6866
6866
  return (bytes / 1024).toFixed(1) + ' KB';
6867
6867
  return (bytes / (1024 * 1024)).toFixed(1) + ' MB';
6868
6868
  }
6869
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXImagePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6870
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXImagePickerComponent, isStandalone: true, selector: "ax-conversation-image-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
6869
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXImagePickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
6870
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXImagePickerComponent, isStandalone: true, selector: "ax-conversation-image-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
6871
6871
  <div class="image-picker">
6872
6872
  <ax-picker-header [title]="'Send Images'" (onClose)="cancel()" />
6873
6873
 
@@ -6945,9 +6945,9 @@ class AXImagePickerComponent {
6945
6945
  (change)="onFileInputChange($event)"
6946
6946
  />
6947
6947
  </div>
6948
- `, isInline: true, styles: [":host{display:block;width:100%}.image-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.picker-images{padding:.75rem}.images-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.images-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem;margin-bottom:.75rem}.image-item{display:flex;flex-direction:column;gap:.5rem}.image-preview{position:relative;aspect-ratio:1;border-radius:.375rem;overflow:hidden;background:rgb(var(--ax-sys-color-surface-variant));border:1px solid rgb(var(--ax-sys-color-border))}.image-preview img{width:100%;height:100%;object-fit:cover}.remove-button{position:absolute;top:.25rem;right:.25rem;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:none;background:rgb(var(--ax-sys-color-error));color:rgb(var(--ax-sys-color-on-error));border-radius:50%;cursor:pointer;opacity:0;transition:opacity .2s;font-size:.75rem;box-shadow:0 2px 4px #0003}.image-item:hover .remove-button{opacity:1}.image-info{display:flex;flex-direction:column;gap:.25rem}.image-name{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-size{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
6948
+ `, isInline: true, styles: [":host{display:block;width:100%}.image-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border-surface));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary-500));background:rgb(var(--ax-sys-color-primary-500) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface) / .65);margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.picker-images{padding:.75rem}.images-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.images-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface) / .65)}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem;margin-bottom:.75rem}.image-item{display:flex;flex-direction:column;gap:.5rem}.image-preview{position:relative;aspect-ratio:1;border-radius:.375rem;overflow:hidden;background:rgb(var(--ax-sys-color-light-surface));border:1px solid rgb(var(--ax-sys-color-border-surface))}.image-preview img{width:100%;height:100%;object-fit:cover}.remove-button{position:absolute;top:.25rem;right:.25rem;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:none;background:rgb(var(--ax-sys-color-danger-500));color:rgb(var(--ax-sys-color-light));border-radius:50%;cursor:pointer;opacity:0;transition:opacity .2s;font-size:.75rem;box-shadow:0 2px 4px #0003}.image-item:hover .remove-button{opacity:1}.image-info{display:flex;flex-direction:column;gap:.25rem}.image-name{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-size{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "maskPattern", "customTokens", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
6949
6949
  }
6950
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXImagePickerComponent, decorators: [{
6950
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXImagePickerComponent, decorators: [{
6951
6951
  type: Component,
6952
6952
  args: [{ selector: 'ax-conversation-image-picker', imports: [
6953
6953
  CommonModule,
@@ -7035,7 +7035,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
7035
7035
  (change)="onFileInputChange($event)"
7036
7036
  />
7037
7037
  </div>
7038
- `, styles: [":host{display:block;width:100%}.image-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.picker-images{padding:.75rem}.images-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.images-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem;margin-bottom:.75rem}.image-item{display:flex;flex-direction:column;gap:.5rem}.image-preview{position:relative;aspect-ratio:1;border-radius:.375rem;overflow:hidden;background:rgb(var(--ax-sys-color-surface-variant));border:1px solid rgb(var(--ax-sys-color-border))}.image-preview img{width:100%;height:100%;object-fit:cover}.remove-button{position:absolute;top:.25rem;right:.25rem;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:none;background:rgb(var(--ax-sys-color-error));color:rgb(var(--ax-sys-color-on-error));border-radius:50%;cursor:pointer;opacity:0;transition:opacity .2s;font-size:.75rem;box-shadow:0 2px 4px #0003}.image-item:hover .remove-button{opacity:1}.image-info{display:flex;flex-direction:column;gap:.25rem}.image-name{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-size{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"] }]
7038
+ `, styles: [":host{display:block;width:100%}.image-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border-surface));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary-500));background:rgb(var(--ax-sys-color-primary-500) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface) / .65);margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface) / .65)}.picker-images{padding:.75rem}.images-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.images-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface) / .65)}.images-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(90px,1fr));gap:.5rem;margin-bottom:.75rem}.image-item{display:flex;flex-direction:column;gap:.5rem}.image-preview{position:relative;aspect-ratio:1;border-radius:.375rem;overflow:hidden;background:rgb(var(--ax-sys-color-light-surface));border:1px solid rgb(var(--ax-sys-color-border-surface))}.image-preview img{width:100%;height:100%;object-fit:cover}.remove-button{position:absolute;top:.25rem;right:.25rem;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:none;background:rgb(var(--ax-sys-color-danger-500));color:rgb(var(--ax-sys-color-light));border-radius:50%;cursor:pointer;opacity:0;transition:opacity .2s;font-size:.75rem;box-shadow:0 2px 4px #0003}.image-item:hover .remove-button{opacity:1}.image-info{display:flex;flex-direction:column;gap:.25rem}.image-name{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.image-size{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border-surface));background:rgb(var(--ax-sys-color-surface))}\n"] }]
7039
7039
  }], propDecorators: { conversation: [{ type: i0.Input, args: [{ isSignal: true, alias: "conversation", required: true }] }], fileInput: [{ type: i0.ViewChild, args: ['fileInput', { isSignal: true }] }] } });
7040
7040
 
7041
7041
  /**
@@ -7082,8 +7082,8 @@ class AXLocationPickerComponent {
7082
7082
  });
7083
7083
  this.composerService.hideComponent();
7084
7084
  }
7085
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXLocationPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7086
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: AXLocationPickerComponent, isStandalone: true, selector: "ax-conversation-location-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClose: "onClose" }, ngImport: i0, template: `
7085
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXLocationPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7086
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.16", type: AXLocationPickerComponent, isStandalone: true, selector: "ax-conversation-location-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { onClose: "onClose" }, ngImport: i0, template: `
7087
7087
  <div class="location-picker">
7088
7088
  <ax-picker-header [title]="'Send Location'" (onClose)="cancel()" />
7089
7089
 
@@ -7123,7 +7123,7 @@ class AXLocationPickerComponent {
7123
7123
  </div>
7124
7124
  `, isInline: true, styles: [":host{display:block;width:100%}.location-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden;height:400px}.picker-content{flex:1;overflow-y:auto}.map-container{height:10rem}.location-info{padding:.75rem 1rem;background:rgb(var(--ax-sys-color-surface));border-top:1px solid rgb(var(--ax-sys-color-border))}.info-row{display:flex;align-items:center;gap:.75rem}.info-row i{font-size:1.25rem;color:rgb(var(--ax-sys-color-primary))}.info-text{flex:1}.info-label{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.25rem}.info-value{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));font-family:monospace}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXMapModule }, { kind: "component", type: i1$3.AXMapComponent, selector: "ax-map", inputs: ["zoomLevel", "latitude", "longitude", "maxMarker", "maxPolygon", "hasDraw", "hasLocator", "fitToDraw", "limitDraw", "addPoiToFitDraw", "addMarkerOnTap", "readonly", "disabled", "markerPlace", "locatePlace", "poiMinZoom", "markers", "polygons", "pois"], outputs: ["zoomLevelChange", "latitudeChange", "longitudeChange", "onMarkerAdded", "onMarkerClick", "onMarkerChanged", "onPolygonAdded", "onPolygonClick", "onPolygonChanged", "onLocationFound", "onPoiChanged", "onPoiAdded", "onMapReady", "onLoadError"] }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
7125
7125
  }
7126
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXLocationPickerComponent, decorators: [{
7126
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXLocationPickerComponent, decorators: [{
7127
7127
  type: Component,
7128
7128
  args: [{ selector: 'ax-conversation-location-picker', imports: [CommonModule, AXMapModule, AXPickerHeaderComponent, AXPickerFooterComponent], template: `
7129
7129
  <div class="location-picker">
@@ -7266,8 +7266,8 @@ class AXVideoPickerComponent {
7266
7266
  formatDuration(seconds) {
7267
7267
  return this.fileUploadService.formatDuration(seconds);
7268
7268
  }
7269
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXVideoPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7270
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXVideoPickerComponent, isStandalone: true, selector: "ax-conversation-video-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
7269
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXVideoPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7270
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXVideoPickerComponent, isStandalone: true, selector: "ax-conversation-video-picker", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
7271
7271
  <div class="video-picker">
7272
7272
  <ax-picker-header [title]="'Send Video'" (onClose)="cancel()" />
7273
7273
 
@@ -7356,9 +7356,9 @@ class AXVideoPickerComponent {
7356
7356
  (change)="onFileInputChange($event)"
7357
7357
  />
7358
7358
  </div>
7359
- `, isInline: true, styles: [":host{display:block;width:100%}.video-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.picker-videos{padding:.75rem}.videos-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.videos-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.videos-list{display:flex;flex-direction:column;gap:.625rem;margin-bottom:.75rem}.video-item{display:flex;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border))}.video-preview{position:relative;width:120px;height:68px;flex-shrink:0;border-radius:.375rem;overflow:hidden;background:rgb(var(--ax-sys-color-surface-variant))}.video-preview video{width:100%;height:100%;object-fit:cover}.video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:2rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.remove-button{position:absolute;top:.25rem;right:.25rem;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:none;background:rgb(var(--ax-sys-color-error));color:rgb(var(--ax-sys-color-on-error));border-radius:50%;cursor:pointer;opacity:0;transition:opacity .2s;font-size:.75rem;box-shadow:0 2px 4px #0003}.video-item:hover .remove-button{opacity:1}.video-info{display:flex;flex-direction:column;justify-content:center;gap:.5rem;flex:1}.video-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-meta{display:flex;gap:1rem;font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
7359
+ `, isInline: true, styles: [":host{display:block;width:100%}.video-picker{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface));border-radius:.5rem;overflow:hidden}.picker-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}.picker-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.close-button{display:flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;border:none;background:transparent;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s;font-size:1.125rem}.close-button:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.picker-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.5rem .25rem;max-height:450px;cursor:pointer;border:2px dashed rgb(var(--ax-sys-color-border));border-radius:.5rem;margin:.75rem;transition:all .2s}.picker-empty:hover,.picker-empty.drag-over{border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .05)}.empty-icon{font-size:2.5rem;color:rgb(var(--ax-sys-color-on-surface-variant));margin-bottom:.75rem}.empty-text{text-align:center}.empty-title{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.25rem}.empty-subtitle{font-size:.8125rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.picker-videos{padding:.75rem}.videos-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:.75rem}.videos-count{font-size:.8125rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface-variant))}.videos-list{display:flex;flex-direction:column;gap:.625rem;margin-bottom:.75rem}.video-item{display:flex;gap:.75rem;padding:.625rem;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;border:1px solid rgb(var(--ax-sys-color-border))}.video-preview{position:relative;width:120px;height:68px;flex-shrink:0;border-radius:.375rem;overflow:hidden;background:rgb(var(--ax-sys-color-surface-variant))}.video-preview video{width:100%;height:100%;object-fit:cover}.video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;height:100%;font-size:2rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.remove-button{position:absolute;top:.25rem;right:.25rem;display:flex;align-items:center;justify-content:center;width:1.25rem;height:1.25rem;border:none;background:rgb(var(--ax-sys-color-error));color:rgb(var(--ax-sys-color-on-error));border-radius:50%;cursor:pointer;opacity:0;transition:opacity .2s;font-size:.75rem;box-shadow:0 2px 4px #0003}.video-item:hover .remove-button{opacity:1}.video-info{display:flex;flex-direction:column;justify-content:center;gap:.5rem;flex:1}.video-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.video-meta{display:flex;gap:1rem;font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface-variant))}.caption-input{margin-top:.75rem}.picker-footer{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;padding:.75rem 1rem;border-top:1px solid rgb(var(--ax-sys-color-border));background:rgb(var(--ax-sys-color-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXTextBoxModule }, { kind: "component", type: i3.AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "maskPattern", "customTokens", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXPickerHeaderComponent, selector: "ax-picker-header", inputs: ["title"], outputs: ["onClose"] }, { kind: "component", type: AXPickerFooterComponent, selector: "ax-picker-footer", inputs: ["sendText", "sendDisabled"], outputs: ["onCancel", "onSend"] }] }); }
7360
7360
  }
7361
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXVideoPickerComponent, decorators: [{
7361
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXVideoPickerComponent, decorators: [{
7362
7362
  type: Component,
7363
7363
  args: [{ selector: 'ax-conversation-video-picker', imports: [
7364
7364
  CommonModule,
@@ -7596,8 +7596,8 @@ class AXVoiceRecorderComponent {
7596
7596
  alert('Failed to send voice message. Please try again.');
7597
7597
  }
7598
7598
  }
7599
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXVoiceRecorderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7600
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXVoiceRecorderComponent, isStandalone: true, selector: "ax-conversation-voice-recorder", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: false, transformFunction: null }, service: { classPropertyName: "service", publicName: "service", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { recordingComplete: "recordingComplete", recordingCancelled: "recordingCancelled" }, ngImport: i0, template: `
7599
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXVoiceRecorderComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7600
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXVoiceRecorderComponent, isStandalone: true, selector: "ax-conversation-voice-recorder", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: false, transformFunction: null }, service: { classPropertyName: "service", publicName: "service", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { recordingComplete: "recordingComplete", recordingCancelled: "recordingCancelled" }, ngImport: i0, template: `
7601
7601
  <div class="voice-recorder">
7602
7602
  <!-- Header with Close Button -->
7603
7603
  <div class="recorder-header">
@@ -7646,7 +7646,7 @@ class AXVoiceRecorderComponent {
7646
7646
  </div>
7647
7647
  `, isInline: true, styles: [":host{display:block;width:100%}.voice-recorder{display:flex;flex-direction:column;width:100%;background:rgb(var(--ax-sys-color-lightest-surface))}.recorder-header{display:flex;align-items:center;justify-content:space-between;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.recorder-title{margin:0;font-size:.875rem;font-weight:600}.close-button{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;border-radius:50%;font-size:1rem;cursor:pointer;transition:all .2s;opacity:.7}.close-button:hover{background:rgb(var(--ax-sys-color-light-surface));opacity:1}.recorder-content{display:flex;align-items:center;width:100%;padding:1rem}.recorder-idle{display:flex;align-items:center;gap:1rem;width:100%}.record-button{display:flex;align-items:center;justify-content:center;width:56px;height:56px;border:none;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px rgba(var(--ax-sys-color-primary-500),.3)}.record-button:hover{background:rgb(var(--ax-sys-color-primary-600));// transform: scale(1.05)}.record-button:active{// transform: scale(.95)}.recorder-hint{font-size:.875rem;opacity:.7}.recorder-active{display:flex;align-items:center;justify-content:space-between;width:100%;gap:1rem}.recorder-info{display:flex;align-items:center;gap:1.5rem;flex:1}.recording-indicator{display:flex;align-items:center;gap:.5rem}.pulse-dot{width:12px;height:12px;background:rgb(var(--ax-sys-color-danger-500));border-radius:50%;animation:pulse 1.5s ease-in-out infinite}@keyframes pulse{0%,to{opacity:1;// transform: scale(1)}50%{opacity:.5;// transform: scale(1.2)}}.recording-text{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-danger-500))}.recording-time{font-size:1.25rem;font-weight:600;font-variant-numeric:tabular-nums;min-width:80px}.recorder-actions{display:flex;align-items:center;gap:.75rem}@media (max-width: 768px){.voice-recorder{padding:.75rem}.record-button{width:48px;height:48px;font-size:1.25rem}.recorder-info{gap:1rem}.recording-time{font-size:1.125rem;font-variant-numeric:tabular-nums}.recorder-actions{gap:.5rem}}@media (max-width: 480px){.recorder-hint{font-size:.8125rem}.recording-text{display:none}.recording-time{font-size:1rem;min-width:60px;font-variant-numeric:tabular-nums}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: "ngmodule", type: AXLabelModule }] }); }
7648
7648
  }
7649
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXVoiceRecorderComponent, decorators: [{
7649
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXVoiceRecorderComponent, decorators: [{
7650
7650
  type: Component,
7651
7651
  args: [{ selector: 'ax-conversation-voice-recorder', imports: [CommonModule, AXButtonModule, AXDecoratorModule, AXLabelModule], template: `
7652
7652
  <div class="voice-recorder">
@@ -7887,8 +7887,8 @@ class AXAvatarPickerComponent {
7887
7887
  clearAvatar() {
7888
7888
  this.avatarUrl.set('');
7889
7889
  }
7890
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXAvatarPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7891
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXAvatarPickerComponent, isStandalone: true, selector: "ax-avatar-picker", inputs: { showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, avatarUrl: { classPropertyName: "avatarUrl", publicName: "avatarUrl", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { avatarUrl: "avatarUrlChange", onFileSelected: "onFileSelected" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
7890
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAvatarPickerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
7891
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXAvatarPickerComponent, isStandalone: true, selector: "ax-avatar-picker", inputs: { showClearButton: { classPropertyName: "showClearButton", publicName: "showClearButton", isSignal: true, isRequired: false, transformFunction: null }, avatarUrl: { classPropertyName: "avatarUrl", publicName: "avatarUrl", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { avatarUrl: "avatarUrlChange", onFileSelected: "onFileSelected" }, viewQueries: [{ propertyName: "fileInput", first: true, predicate: ["fileInput"], descendants: true, isSignal: true }], ngImport: i0, template: `
7892
7892
  <div class="avatar-picker">
7893
7893
  <!-- Preview -->
7894
7894
  <div class="avatar-preview" (click)="triggerFileInput()">
@@ -7931,7 +7931,7 @@ class AXAvatarPickerComponent {
7931
7931
  </div>
7932
7932
  `, isInline: true, styles: [":host{display:block}.avatar-picker{display:flex;flex-direction:row;align-items:center;gap:1.5rem;padding:1rem;border-radius:.75rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface))}.avatar-preview{position:relative;width:100px;height:100px;border-radius:50%;overflow:hidden;background:rgb(var(--ax-sys-color-surface));border:3px solid rgb(var(--ax-sys-color-border-light-surface));display:flex;align-items:center;justify-content:center;cursor:pointer;transition:all .25s ease;flex-shrink:0;box-shadow:0 2px 8px #00000014}.avatar-preview:hover{border-color:rgb(var(--ax-sys-color-primary-500));// transform: scale(1.05);box-shadow:0 4px 12px #0000001f}.avatar-preview:hover .preview-overlay{opacity:1}.avatar-preview ax-image{width:100%;height:100%}.preview-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000a6;display:flex;align-items:center;justify-content:center;opacity:0;transition:opacity .25s ease;color:#fff;font-size:1.75rem}.avatar-placeholder{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.375rem;font-size:2rem;color:rgb(var(--ax-sys-color-on-surface-variant));text-align:center;padding:.5rem}.placeholder-text{font-size:.625rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;opacity:.8}.avatar-actions{display:flex;flex-direction:column;gap:.5rem;flex:1}.avatar-actions ax-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }] }); }
7933
7933
  }
7934
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXAvatarPickerComponent, decorators: [{
7934
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAvatarPickerComponent, decorators: [{
7935
7935
  type: Component,
7936
7936
  args: [{ selector: 'ax-avatar-picker', imports: [CommonModule, FormsModule, AXButtonModule, AXDecoratorModule, AXImageComponent], template: `
7937
7937
  <div class="avatar-picker">
@@ -8465,8 +8465,8 @@ class AXConversationInfoPanelComponent extends AXClosableComponent {
8465
8465
  this.toastService.success('Settings saved successfully');
8466
8466
  }
8467
8467
  }
8468
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationInfoPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8469
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXConversationInfoPanelComponent, isStandalone: true, selector: "ax-conversation-info-panel", outputs: { onClosed: "onClosed" }, providers: [{ provide: AXClosableComponent, useExisting: AXConversationInfoPanelComponent }], usesInheritance: true, ngImport: i0, template: `
8468
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationInfoPanelComponent, deps: null, target: i0.ɵɵFactoryTarget.Component }); }
8469
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXConversationInfoPanelComponent, isStandalone: true, selector: "ax-conversation-info-panel", outputs: { onClosed: "onClosed" }, providers: [{ provide: AXClosableComponent, useExisting: AXConversationInfoPanelComponent }], usesInheritance: true, ngImport: i0, template: `
8470
8470
  @if (conversation) {
8471
8471
  <div class="conversation-info-panel">
8472
8472
  <!-- Header with Avatar and Title -->
@@ -8673,9 +8673,9 @@ class AXConversationInfoPanelComponent extends AXClosableComponent {
8673
8673
  </div>
8674
8674
  </div>
8675
8675
  }
8676
- `, isInline: true, styles: [":host{display:block;width:100%;height:100%}.conversation-info-panel{display:flex;flex-direction:column;background:rgb(var(--ax-sys-color-surface));overflow:hidden}.panel-header{display:flex;flex-direction:column;align-items:center;padding:1rem 2rem;background:linear-gradient(180deg,rgb(var(--ax-sys-color-lighter-surface)),rgb(var(--ax-sys-color-surface)));border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface));gap:.5rem;position:relative}.conversation-title-container{display:flex;flex-direction:column;align-items:center;gap:.25rem}.conversation-title{margin:0;font-size:1.625rem;font-weight:700;color:rgb(var(--ax-sys-color-on-surface));text-align:center;letter-spacing:-.02em}.edit-group-section{padding:1.5rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.75rem;margin-bottom:1.5rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface))}.section-header{margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.section-title{font-size:1rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.edit-field{margin-bottom:1rem}.edit-label{display:block;font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.5rem}.edit-actions{display:flex;gap:.75rem;justify-content:flex-start;margin-top:1rem}.tab-content-wrapper{flex:1;overflow-y:auto;max-height:50vh}.tab-content{padding:2rem;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.about-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{display:flex;align-items:center;gap:.75rem;padding:1rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.75rem;transition:all .2s;border:2px solid transparent}.stat-card:hover{background:rgb(var(--ax-sys-color-border-light-surface));// transform: translateY(-2px);box-shadow:0 4px 8px #0000001a}.stat-card.highlight{background:rgb(var(--ax-sys-color-primary-500) / .1);border-color:rgb(var(--ax-sys-color-primary-500))}.stat-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border-radius:.5rem;font-size:1.125rem;color:rgb(var(--ax-sys-color-primary-500))}.stat-card.highlight .stat-icon{background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary))}.stat-content{display:flex;flex-direction:column;gap:.125rem}.stat-value{font-size:1.25rem;font-weight:700;color:rgb(var(--ax-sys-color-on-surface));line-height:1}.stat-label{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface));opacity:.7;text-transform:uppercase;letter-spacing:.05em}.about-timeline{display:flex;flex-direction:column;gap:.75rem}.timeline-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.5rem;transition:background .2s}.timeline-item:hover{background:rgb(var(--ax-sys-color-border-light-surface))}.timeline-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border-radius:50%;font-size:.875rem;color:rgb(var(--ax-sys-color-primary-500))}.timeline-content{display:flex;justify-content:space-between;align-items:center;gap:1rem}.timeline-label{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.timeline-value{font-size:.875rem;color:rgb(var(--ax-sys-color-on-surface));opacity:.7;cursor:help}.members-search{margin-bottom:1rem}.members-list{display:flex;flex-direction:column;gap:.5rem}.member-card{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.75rem;transition:all .2s ease;border:1px solid transparent;cursor:pointer}.member-card:hover{background:rgb(var(--ax-sys-color-surface));border-color:rgb(var(--ax-sys-color-primary-500) / .3);// transform: translateX(4px);box-shadow:0 2px 8px #00000014}.member-details{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.member-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-role{font-size:.75rem;color:rgb(var(--ax-sys-color-primary-500));text-transform:capitalize}.status-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.status-indicator.online{background:rgb(var(--ax-sys-color-success-500))}.status-indicator.away{background:rgb(var(--ax-sys-color-warning-500))}.status-indicator.offline{background:rgb(var(--ax-sys-color-neutral-400))}.settings-list{display:flex;flex-direction:column;gap:.75rem}.setting-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.75rem;border:1px solid transparent;transition:all .2s ease}.setting-item:hover{background:rgb(var(--ax-sys-color-surface));border-color:rgb(var(--ax-sys-color-border-light-surface));box-shadow:0 2px 6px #0000000f}.setting-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.setting-label{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.setting-description{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface));opacity:.7}.danger-zone{padding:1.5rem;margin-top:1.5rem;background:rgb(var(--ax-sys-color-danger-500) / .05);border:1px solid rgb(var(--ax-sys-color-danger-500) / .2);border-radius:.75rem}.danger-zone ax-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTabsModule }, { kind: "component", type: i2$2.AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: i2$2.AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "component", type: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "directive", type: i4.AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "ngmodule", type: AXSwitchModule }, { kind: "component", type: i5.AXSwitchComponent, selector: "ax-switch", inputs: ["disabled", "readonly", "color", "tabIndex", "value", "name", "isLoading"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged", "readonlyChange", "disabledChange"] }, { kind: "component", type: AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXAvatarPickerComponent, selector: "ax-avatar-picker", inputs: ["showClearButton", "avatarUrl"], outputs: ["avatarUrlChange", "onFileSelected"] }, { kind: "pipe", type: i1$5.DatePipe, name: "date" }] }); }
8676
+ `, isInline: true, styles: [":host{display:block;width:100%;height:100%}.conversation-info-panel{display:flex;flex-direction:column;background:rgb(var(--ax-sys-color-surface));overflow:hidden}.panel-header{display:flex;flex-direction:column;align-items:center;padding:1rem 2rem;background:linear-gradient(180deg,rgb(var(--ax-sys-color-lighter-surface)),rgb(var(--ax-sys-color-surface)));border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface));gap:.5rem;position:relative}.conversation-title-container{display:flex;flex-direction:column;align-items:center;gap:.25rem}.conversation-title{margin:0;font-size:1.625rem;font-weight:700;color:rgb(var(--ax-sys-color-on-surface));text-align:center;letter-spacing:-.02em}.edit-group-section{padding:1.5rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.75rem;margin-bottom:1.5rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface))}.section-header{margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.section-title{font-size:1rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.edit-field{margin-bottom:1rem}.edit-label{display:block;font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));margin-bottom:.5rem}.edit-actions{display:flex;gap:.75rem;justify-content:flex-start;margin-top:1rem}.tab-content-wrapper{flex:1;overflow-y:auto;max-height:50vh}.tab-content{padding:2rem;animation:fadeIn .3s ease-in-out}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.about-stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1rem;margin-bottom:1.5rem}.stat-card{display:flex;align-items:center;gap:.75rem;padding:1rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.75rem;transition:all .2s;border:2px solid transparent}.stat-card:hover{background:rgb(var(--ax-sys-color-border-light-surface));// transform: translateY(-2px);box-shadow:0 4px 8px #0000001a}.stat-card.highlight{background:rgb(var(--ax-sys-color-primary-500) / .1);border-color:rgb(var(--ax-sys-color-primary-500))}.stat-icon{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border-radius:.5rem;font-size:1.125rem;color:rgb(var(--ax-sys-color-primary-500))}.stat-card.highlight .stat-icon{background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary))}.stat-content{display:flex;flex-direction:column;gap:.125rem}.stat-value{font-size:1.25rem;font-weight:700;color:rgb(var(--ax-sys-color-on-surface));line-height:1}.stat-label{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface));opacity:.7;text-transform:uppercase;letter-spacing:.05em}.about-timeline{display:flex;flex-direction:column;gap:.75rem}.timeline-item{display:flex;align-items:center;gap:1rem;padding:.875rem 1rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.5rem;transition:background .2s}.timeline-item:hover{background:rgb(var(--ax-sys-color-border-light-surface))}.timeline-icon{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border-radius:50%;font-size:.875rem;color:rgb(var(--ax-sys-color-primary-500))}.timeline-content{display:flex;justify-content:space-between;align-items:center;gap:1rem}.timeline-label{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.timeline-value{font-size:.875rem;color:rgb(var(--ax-sys-color-on-surface));opacity:.7;cursor:help}.members-search{margin-bottom:1rem}.members-list{display:flex;flex-direction:column;gap:.5rem}.member-card{display:flex;align-items:center;gap:.75rem;padding:.875rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.75rem;transition:all .2s ease;border:1px solid transparent;cursor:pointer}.member-card:hover{background:rgb(var(--ax-sys-color-surface));border-color:rgb(var(--ax-sys-color-primary-500) / .3);// transform: translateX(4px);box-shadow:0 2px 8px #00000014}.member-details{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.member-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-role{font-size:.75rem;color:rgb(var(--ax-sys-color-primary-500));text-transform:capitalize}.status-indicator{width:10px;height:10px;border-radius:50%;flex-shrink:0}.status-indicator.online{background:rgb(var(--ax-sys-color-success-500))}.status-indicator.away{background:rgb(var(--ax-sys-color-warning-500))}.status-indicator.offline{background:rgb(var(--ax-sys-color-neutral-400))}.settings-list{display:flex;flex-direction:column;gap:.75rem}.setting-item{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding:1.25rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.75rem;border:1px solid transparent;transition:all .2s ease}.setting-item:hover{background:rgb(var(--ax-sys-color-surface));border-color:rgb(var(--ax-sys-color-border-light-surface));box-shadow:0 2px 6px #0000000f}.setting-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.setting-label{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface))}.setting-description{font-size:.75rem;color:rgb(var(--ax-sys-color-on-surface));opacity:.7}.danger-zone{padding:1.5rem;margin-top:1.5rem;background:rgb(var(--ax-sys-color-danger-500) / .05);border:1px solid rgb(var(--ax-sys-color-danger-500) / .2);border-radius:.75rem}.danger-zone ax-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTabsModule }, { kind: "component", type: i2$2.AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: i2$2.AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "component", type: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "directive", type: i4.AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "ngmodule", type: AXSwitchModule }, { kind: "component", type: i5.AXSwitchComponent, selector: "ax-switch", inputs: ["disabled", "readonly", "color", "tabIndex", "value", "name", "isLoading"], outputs: ["onBlur", "onFocus", "valueChange", "onValueChanged", "readonlyChange", "disabledChange"] }, { kind: "component", type: AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "maskPattern", "customTokens", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXAvatarPickerComponent, selector: "ax-avatar-picker", inputs: ["showClearButton", "avatarUrl"], outputs: ["avatarUrlChange", "onFileSelected"] }, { kind: "pipe", type: i1$5.DatePipe, name: "date" }] }); }
8677
8677
  }
8678
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationInfoPanelComponent, decorators: [{
8678
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationInfoPanelComponent, decorators: [{
8679
8679
  type: Component,
8680
8680
  args: [{ selector: 'ax-conversation-info-panel', imports: [
8681
8681
  CommonModule,
@@ -9002,8 +9002,8 @@ class AXInfoBarSearchComponent {
9002
9002
  }
9003
9003
  }, 100);
9004
9004
  }
9005
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9006
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXInfoBarSearchComponent, isStandalone: true, selector: "ax-info-bar-search", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null }, service: { classPropertyName: "service", publicName: "service", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
9005
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarSearchComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9006
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXInfoBarSearchComponent, isStandalone: true, selector: "ax-info-bar-search", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null }, service: { classPropertyName: "service", publicName: "service", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: `
9007
9007
  <div class="search-wrapper">
9008
9008
  <ax-search-box
9009
9009
  class="search-input"
@@ -9036,7 +9036,7 @@ class AXInfoBarSearchComponent {
9036
9036
  </div>
9037
9037
  `, isInline: true, styles: [":host{display:block;flex:1;min-width:0}.search-wrapper{display:flex;align-items:center;gap:.5rem;width:100%}.search-input{flex:1;min-width:0}.search-results{display:flex;align-items:center;gap:.25rem;flex-shrink:0}.results-text{font-size:.75rem;color:var(--ax-text-secondary, #6b7280);white-space:nowrap}.nav-button{min-width:28px;height:28px;padding:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }] }); }
9038
9038
  }
9039
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarSearchComponent, decorators: [{
9039
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarSearchComponent, decorators: [{
9040
9040
  type: Component,
9041
9041
  args: [{ selector: 'ax-info-bar-search', imports: [CommonModule, AXSearchBoxComponent, AXButtonModule, AXLabelComponent], template: `
9042
9042
  <div class="search-wrapper">
@@ -9210,7 +9210,7 @@ const AX_CONVERSATION_INFO_BAR_BLOCK_ACTION = {
9210
9210
  * Audio Message Renderer Component
9211
9211
  * Renders audio messages with playback controls
9212
9212
  */
9213
- class AudioRendererComponent {
9213
+ class AXAudioRendererComponent {
9214
9214
  constructor() {
9215
9215
  this.platformId = inject(PLATFORM_ID);
9216
9216
  /** Message to render */
@@ -9315,8 +9315,8 @@ class AudioRendererComponent {
9315
9315
  const secs = Math.floor(seconds % 60);
9316
9316
  return `${mins}:${secs.toString().padStart(2, '0')}`;
9317
9317
  }
9318
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AudioRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9319
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AudioRendererComponent, isStandalone: true, selector: "ax-conversation-audio-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "audioElementRef", first: true, predicate: ["audioElement"], descendants: true, isSignal: true }], ngImport: i0, template: `
9318
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAudioRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9319
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXAudioRendererComponent, isStandalone: true, selector: "ax-conversation-audio-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "audioElementRef", first: true, predicate: ["audioElement"], descendants: true, isSignal: true }], ngImport: i0, template: `
9320
9320
  <div class="audio-renderer">
9321
9321
  <div class="audio-controls">
9322
9322
  <!-- Play/Pause Button -->
@@ -9363,11 +9363,11 @@ class AudioRendererComponent {
9363
9363
  Your browser does not support the audio element.
9364
9364
  </audio>
9365
9365
  </div>
9366
- `, isInline: true, styles: [":host{display:block}.audio-renderer{width:100%}.audio-controls{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-radius:.5rem}.control-button{flex-shrink:0;padding-inline-start:.2rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:none;border-radius:50%;font-size:1rem;cursor:pointer;transition:all .2s}.control-button:hover{background:rgb(var(--ax-sys-color-primary-600))}.volume-button{background:transparent;color:rgb(var(--ax-sys-color-primary-600));font-size:1.25rem}.volume-button:hover{color:rgb(var(--ax-sys-color-primary-700))}.audio-progress-container{flex:1;min-width:0}.audio-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem;font-size:.75rem}.audio-title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-time{font-variant-numeric:tabular-nums;opacity:.7;flex-shrink:0;margin-left:.5rem}.audio-progress{height:4px;background:rgb(var(--ax-sys-color-border-light-surface));border-radius:2px;cursor:pointer;overflow:hidden}.progress-bar{height:100%;background:rgb(var(--ax-sys-color-primary-500));transition:width .1s linear}.audio-error{display:flex;align-items:center;gap:.5rem;color:rgb(var(--ax-sys-color-danger-500));border-radius:.5rem;font-size:.875rem}.error-icon{font-size:1.25rem}audio{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
9366
+ `, isInline: true, styles: [":host{display:block}.audio-renderer{width:100%}.audio-controls{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border-radius:.5rem}.control-button{flex-shrink:0;padding-inline-start:.2rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:none;border-radius:50%;font-size:1rem;cursor:pointer;transition:all .2s}.control-button:hover{background:rgb(var(--ax-sys-color-primary-600))}.volume-button{background:transparent;color:rgb(var(--ax-sys-color-primary-600));font-size:1.25rem}.volume-button:hover{color:rgb(var(--ax-sys-color-primary-700))}.audio-progress-container{flex:1;min-width:0}.audio-info{display:flex;align-items:center;justify-content:space-between;margin-bottom:.25rem;font-size:.75rem}.audio-title{font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.audio-time{font-variant-numeric:tabular-nums;opacity:.7;flex-shrink:0;margin-left:.5rem}.audio-progress{height:4px;background:rgb(var(--ax-sys-color-border-light-surface));border-radius:2px;cursor:pointer;overflow:hidden}.progress-bar{height:100%;background:rgb(var(--ax-sys-color-primary-500));transition:width .1s linear}.audio-error{display:flex;align-items:center;gap:.5rem;color:rgb(var(--ax-sys-color-danger-500));border-radius:.5rem;font-size:.875rem}.error-icon{font-size:1.25rem}audio{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9367
9367
  }
9368
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AudioRendererComponent, decorators: [{
9368
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXAudioRendererComponent, decorators: [{
9369
9369
  type: Component,
9370
- args: [{ selector: 'ax-conversation-audio-renderer', imports: [CommonModule], template: `
9370
+ args: [{ selector: 'ax-conversation-audio-renderer', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
9371
9371
  <div class="audio-renderer">
9372
9372
  <div class="audio-controls">
9373
9373
  <!-- Play/Pause Button -->
@@ -9421,7 +9421,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
9421
9421
  * Contact Message Renderer
9422
9422
  * Renders contact card messages
9423
9423
  */
9424
- class ContactRendererComponent {
9424
+ class AXContactRendererComponent {
9425
9425
  constructor() {
9426
9426
  this.toastService = inject(AXToastService);
9427
9427
  /** Message to render */
@@ -9466,8 +9466,8 @@ class ContactRendererComponent {
9466
9466
  }
9467
9467
  return parts.join('\n');
9468
9468
  }
9469
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ContactRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9470
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: ContactRendererComponent, isStandalone: true, selector: "ax-conversation-contact-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
9469
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXContactRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9470
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXContactRendererComponent, isStandalone: true, selector: "ax-conversation-contact-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
9471
9471
  <div class="contact-renderer">
9472
9472
  <div class="contact-card">
9473
9473
  <div class="contact-avatar">
@@ -9512,11 +9512,11 @@ class ContactRendererComponent {
9512
9512
  </ax-button>
9513
9513
  </div>
9514
9514
  </div>
9515
- `, isInline: true, styles: [":host{display:block}.contact-renderer{display:flex;flex-direction:column;gap:.75rem;padding:.5rem;background:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-radius:.5rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface));max-width:320px}.contact-card{display:flex;gap:.75rem;align-items:center}.contact-avatar{flex-shrink:0}.avatar-img{width:48px;height:48px;border-radius:50%;object-fit:cover}.avatar-initials{width:48px;height:48px;border-radius:50%;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.contact-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.contact-name{font-weight:600;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-detail{display:flex;align-items:center;gap:.5rem;font-size:.875rem;opacity:.7}.contact-link{text-decoration:none;color:inherit;transition:all .2s;border-radius:.25rem}.contact-link:hover{opacity:1;color:rgb(var(--ax-sys-color-primary-500))}.contact-link:active{// transform: scale(.98)}.contact-detail i{width:14px;font-size:.75rem;opacity:.7}.contact-detail span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-actions{display:flex;gap:.5rem}.contact-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.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" }] }); }
9515
+ `, isInline: true, styles: [":host{display:block}.contact-renderer{display:flex;flex-direction:column;gap:.75rem;padding:.5rem;background:rgb(var(--ax-sys-color-lightest-surface));color:rgb(var(--ax-sys-color-on-lightest-surface));border-radius:.5rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface));max-width:320px}.contact-card{display:flex;gap:.75rem;align-items:center}.contact-avatar{flex-shrink:0}.avatar-img{width:48px;height:48px;border-radius:50%;object-fit:cover}.avatar-initials{width:48px;height:48px;border-radius:50%;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1rem}.contact-info{flex:1;min-width:0;display:flex;flex-direction:column;gap:.25rem}.contact-name{font-weight:600;font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-detail{display:flex;align-items:center;gap:.5rem;font-size:.875rem;opacity:.7}.contact-link{text-decoration:none;color:inherit;transition:all .2s;border-radius:.25rem}.contact-link:hover{opacity:1;color:rgb(var(--ax-sys-color-primary-500))}.contact-link:active{// transform: scale(.98)}.contact-detail i{width:14px;font-size:.75rem;opacity:.7}.contact-detail span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.contact-actions{display:flex;gap:.5rem}.contact-button{width:100%}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.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" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9516
9516
  }
9517
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ContactRendererComponent, decorators: [{
9517
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXContactRendererComponent, decorators: [{
9518
9518
  type: Component,
9519
- args: [{ selector: 'ax-conversation-contact-renderer', imports: [CommonModule, AXButtonModule, AXDecoratorModule], template: `
9519
+ args: [{ selector: 'ax-conversation-contact-renderer', imports: [CommonModule, AXButtonModule, AXDecoratorModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
9520
9520
  <div class="contact-renderer">
9521
9521
  <div class="contact-card">
9522
9522
  <div class="contact-avatar">
@@ -9568,7 +9568,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
9568
9568
  * Fallback Message Renderer Component
9569
9569
  * Renders unknown message types with basic info
9570
9570
  */
9571
- class FallbackRendererComponent {
9571
+ class AXFallbackRendererComponent {
9572
9572
  constructor() {
9573
9573
  /** Message to render */
9574
9574
  this.message = input.required(...(ngDevMode ? [{ debugName: "message" }] : []));
@@ -9594,8 +9594,8 @@ class FallbackRendererComponent {
9594
9594
  toggleRaw() {
9595
9595
  this.showRaw.update((value) => !value);
9596
9596
  }
9597
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FallbackRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9598
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: FallbackRendererComponent, isStandalone: true, selector: "ax-conversation-fallback-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
9597
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFallbackRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9598
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXFallbackRendererComponent, isStandalone: true, selector: "ax-conversation-fallback-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
9599
9599
  <div class="fallback-renderer">
9600
9600
  <div class="fallback-icon">📦</div>
9601
9601
  <div class="fallback-content">
@@ -9619,11 +9619,11 @@ class FallbackRendererComponent {
9619
9619
  </div>
9620
9620
  }
9621
9621
  </div>
9622
- `, isInline: true, styles: [":host{display:block}.fallback-renderer{padding:1rem;background:rgb(var(--ax-sys-color-warning-lightest-surface));border:1px solid rgb(var(--ax-sys-color-warning-500));border-radius:.5rem;max-width:320px}.fallback-icon{font-size:2rem;margin-bottom:.5rem;text-align:center}.fallback-content{text-align:center}.fallback-title{font-size:.875rem;font-weight:600;margin-bottom:.25rem;text-transform:capitalize}.fallback-subtitle{font-size:.75rem;margin-bottom:.75rem;opacity:.7}.view-raw-button{margin-top:.5rem}.fallback-raw{margin-top:.75rem;padding:.75rem;background:rgb(var(--ax-sys-color-darker-surface));border-radius:.375rem;max-height:200px;overflow:auto}.raw-content{margin:0;font-size:.6875rem;font-family:Courier New,Courier,monospace;color:rgb(var(--ax-sys-color-on-darker-surface));white-space:pre-wrap;word-wrap:break-word}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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"] }] }); }
9622
+ `, isInline: true, styles: [":host{display:block}.fallback-renderer{padding:1rem;background:rgb(var(--ax-sys-color-warning-lightest-surface));border:1px solid rgb(var(--ax-sys-color-warning-500));border-radius:.5rem;max-width:320px}.fallback-icon{font-size:2rem;margin-bottom:.5rem;text-align:center}.fallback-content{text-align:center}.fallback-title{font-size:.875rem;font-weight:600;margin-bottom:.25rem;text-transform:capitalize}.fallback-subtitle{font-size:.75rem;margin-bottom:.75rem;opacity:.7}.view-raw-button{margin-top:.5rem}.fallback-raw{margin-top:.75rem;padding:.75rem;background:rgb(var(--ax-sys-color-darker-surface));border-radius:.375rem;max-height:200px;overflow:auto}.raw-content{margin:0;font-size:.6875rem;font-family:Courier New,Courier,monospace;color:rgb(var(--ax-sys-color-on-darker-surface));white-space:pre-wrap;word-wrap:break-word}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9623
9623
  }
9624
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FallbackRendererComponent, decorators: [{
9624
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFallbackRendererComponent, decorators: [{
9625
9625
  type: Component,
9626
- args: [{ selector: 'ax-conversation-fallback-renderer', imports: [CommonModule, AXButtonModule], template: `
9626
+ args: [{ selector: 'ax-conversation-fallback-renderer', imports: [CommonModule, AXButtonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
9627
9627
  <div class="fallback-renderer">
9628
9628
  <div class="fallback-icon">📦</div>
9629
9629
  <div class="fallback-content">
@@ -9654,7 +9654,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
9654
9654
  * File Message Renderer Component
9655
9655
  * Renders file attachments with download support
9656
9656
  */
9657
- class FileRendererComponent {
9657
+ class AXFileRendererComponent {
9658
9658
  constructor() {
9659
9659
  /** Message to render */
9660
9660
  this.message = input.required(...(ngDevMode ? [{ debugName: "message" }] : []));
@@ -9678,25 +9678,25 @@ class FileRendererComponent {
9678
9678
  this.fileIconColor = computed(() => {
9679
9679
  const ext = this.fileExtension().toLowerCase();
9680
9680
  const colorMap = {
9681
- pdf: '#ef4444',
9682
- doc: '#3b82f6',
9683
- docx: '#3b82f6',
9684
- xls: '#10b981',
9685
- xlsx: '#10b981',
9686
- ppt: '#f59e0b',
9687
- pptx: '#f59e0b',
9688
- txt: '#6b7280',
9689
- zip: '#8b5cf6',
9690
- rar: '#8b5cf6',
9691
- jpg: '#ec4899',
9692
- jpeg: '#ec4899',
9693
- png: '#ec4899',
9694
- gif: '#ec4899',
9695
- mp3: '#14b8a6',
9696
- mp4: '#14b8a6',
9697
- file: '#6b7280',
9681
+ pdf: 'rgb(var(--ax-sys-color-danger-500))',
9682
+ doc: 'rgb(var(--ax-sys-color-primary-500))',
9683
+ docx: 'rgb(var(--ax-sys-color-primary-500))',
9684
+ xls: 'rgb(var(--ax-sys-color-success-500))',
9685
+ xlsx: 'rgb(var(--ax-sys-color-success-500))',
9686
+ ppt: 'rgb(var(--ax-sys-color-warning-500))',
9687
+ pptx: 'rgb(var(--ax-sys-color-warning-500))',
9688
+ txt: 'rgb(var(--ax-sys-color-on-surface) / 0.7)',
9689
+ zip: 'rgb(var(--ax-sys-color-secondary-600))',
9690
+ rar: 'rgb(var(--ax-sys-color-secondary-600))',
9691
+ jpg: 'rgb(var(--ax-sys-color-accent3-500))',
9692
+ jpeg: 'rgb(var(--ax-sys-color-accent3-500))',
9693
+ png: 'rgb(var(--ax-sys-color-accent3-500))',
9694
+ gif: 'rgb(var(--ax-sys-color-accent3-500))',
9695
+ mp3: 'rgb(var(--ax-sys-color-accent2-500))',
9696
+ mp4: 'rgb(var(--ax-sys-color-accent2-500))',
9697
+ file: 'rgb(var(--ax-sys-color-secondary-500))',
9698
9698
  };
9699
- return colorMap[ext] || '#6b7280';
9699
+ return colorMap[ext] || 'rgb(var(--ax-sys-color-secondary-500))';
9700
9700
  }, ...(ngDevMode ? [{ debugName: "fileIconColor" }] : []));
9701
9701
  /** Formatted file size */
9702
9702
  this.formattedSize = computed(() => {
@@ -9709,8 +9709,8 @@ class FileRendererComponent {
9709
9709
  return Math.round((bytes / Math.pow(k, i)) * 100) / 100 + ' ' + sizes[i];
9710
9710
  }, ...(ngDevMode ? [{ debugName: "formattedSize" }] : []));
9711
9711
  }
9712
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FileRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9713
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: FileRendererComponent, isStandalone: true, selector: "ax-conversation-file-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
9712
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFileRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9713
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXFileRendererComponent, isStandalone: true, selector: "ax-conversation-file-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
9714
9714
  <div class="file-renderer">
9715
9715
  <a [href]="fileUrl()" [download]="fileName()" class="file-container" target="_blank" rel="noopener noreferrer">
9716
9716
  <!-- File Icon -->
@@ -9735,11 +9735,11 @@ class FileRendererComponent {
9735
9735
  </div>
9736
9736
  </a>
9737
9737
  </div>
9738
- `, isInline: true, styles: [":host{display:block}.file-renderer{width:100%;max-width:320px}.file-container{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:.5rem;text-decoration:none;transition:all .2s;cursor:pointer}.file-container:hover{background:rgb(var(--ax-sys-color-light-surface));border-color:rgb(var(--ax-sys-color-primary-500))}.file-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;font-weight:600;font-size:.625rem;text-transform:uppercase;color:rgb(var(--ax-sys-color-light))}.icon-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 .25rem}.file-info{flex:1;min-width:0}.file-name{font-size:.875rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.125rem}.file-meta{font-size:.75rem;opacity:.7}.file-type{text-transform:uppercase}.file-action{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;transition:background .2s}.file-container:hover .file-action{background:rgb(var(--ax-sys-color-primary-500))}.download-icon{font-size:1.125rem;transition:transform .2s}.file-container:hover .download-icon{transform:translateY(2px)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
9738
+ `, isInline: true, styles: [":host{display:block}.file-renderer{width:100%;max-width:320px}.file-container{display:flex;align-items:center;gap:.75rem;padding:.75rem;background:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:.5rem;text-decoration:none;transition:all .2s;cursor:pointer}.file-container:hover{background:rgb(var(--ax-sys-color-light-surface));border-color:rgb(var(--ax-sys-color-primary-500))}.file-icon{flex-shrink:0;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:.5rem;font-weight:600;font-size:.625rem;text-transform:uppercase;color:rgb(var(--ax-sys-color-light))}.icon-text{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;padding:0 .25rem}.file-info{flex:1;min-width:0}.file-name{font-size:.875rem;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-bottom:.125rem}.file-meta{font-size:.75rem;opacity:.7}.file-type{text-transform:uppercase}.file-action{flex-shrink:0;width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border-radius:.375rem;transition:background .2s}.file-container:hover .file-action{background:rgb(var(--ax-sys-color-primary-500))}.download-icon{font-size:1.125rem;transition:transform .2s}.file-container:hover .download-icon{transform:translateY(2px)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9739
9739
  }
9740
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: FileRendererComponent, decorators: [{
9740
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXFileRendererComponent, decorators: [{
9741
9741
  type: Component,
9742
- args: [{ selector: 'ax-conversation-file-renderer', imports: [CommonModule], template: `
9742
+ args: [{ selector: 'ax-conversation-file-renderer', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
9743
9743
  <div class="file-renderer">
9744
9744
  <a [href]="fileUrl()" [download]="fileName()" class="file-container" target="_blank" rel="noopener noreferrer">
9745
9745
  <!-- File Icon -->
@@ -9771,7 +9771,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
9771
9771
  * Image Message Renderer Component
9772
9772
  * Renders image messages with lazy loading and lightbox support
9773
9773
  */
9774
- class ImageRendererComponent {
9774
+ class AXImageRendererComponent {
9775
9775
  constructor() {
9776
9776
  this.platformId = inject(PLATFORM_ID);
9777
9777
  /** Message to render */
@@ -9807,8 +9807,8 @@ class ImageRendererComponent {
9807
9807
  this.imageClick.emit(this.payload().url);
9808
9808
  }
9809
9809
  }
9810
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ImageRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9811
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: ImageRendererComponent, isStandalone: true, selector: "ax-conversation-image-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { imageClick: "imageClick" }, ngImport: i0, template: `
9810
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXImageRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9811
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXImageRendererComponent, isStandalone: true, selector: "ax-conversation-image-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { imageClick: "imageClick" }, ngImport: i0, template: `
9812
9812
  <div class="image-renderer">
9813
9813
  @if (loading()) {
9814
9814
  <div class="image-loading">
@@ -9838,11 +9838,11 @@ class ImageRendererComponent {
9838
9838
  <div class="image-caption">{{ caption() }}</div>
9839
9839
  }
9840
9840
  </div>
9841
- `, isInline: true, styles: [":host{display:block}.image-renderer{position:relative;max-width:100%;border-radius:.5rem;overflow:hidden}.message-image{display:block;max-width:100%;max-height:400px;width:auto;height:auto;cursor:pointer;transition:opacity .3s;opacity:0}.message-image.loaded{opacity:1}.image-loading{display:flex;align-items:center;justify-content:center;min-height:200px;background:rgb(var(--ax-sys-color-lighter-surface))}.spinner{width:24px;height:24px;border:2px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.image-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));padding:1rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.5rem}.error-text{font-size:.875rem}.image-caption{padding:.5rem;font-size:.875rem;background:#0000000d;opacity:.9}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
9841
+ `, isInline: true, styles: [":host{display:block}.image-renderer{position:relative;max-width:100%;border-radius:.5rem;overflow:hidden}.message-image{display:block;max-width:100%;max-height:400px;width:auto;height:auto;cursor:pointer;transition:opacity .3s;opacity:0}.message-image.loaded{opacity:1}.image-loading{display:flex;align-items:center;justify-content:center;min-height:200px;background:rgb(var(--ax-sys-color-lighter-surface))}.spinner{width:24px;height:24px;border:2px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.image-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));padding:1rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.5rem}.error-text{font-size:.875rem}.image-caption{padding:.5rem;font-size:.875rem;background:rgb(var(--ax-sys-color-on-surface),.05);color:rgb(var(--ax-sys-color-on-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9842
9842
  }
9843
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: ImageRendererComponent, decorators: [{
9843
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXImageRendererComponent, decorators: [{
9844
9844
  type: Component,
9845
- args: [{ selector: 'ax-conversation-image-renderer', imports: [CommonModule], template: `
9845
+ args: [{ selector: 'ax-conversation-image-renderer', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
9846
9846
  <div class="image-renderer">
9847
9847
  @if (loading()) {
9848
9848
  <div class="image-loading">
@@ -9872,14 +9872,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
9872
9872
  <div class="image-caption">{{ caption() }}</div>
9873
9873
  }
9874
9874
  </div>
9875
- `, styles: [":host{display:block}.image-renderer{position:relative;max-width:100%;border-radius:.5rem;overflow:hidden}.message-image{display:block;max-width:100%;max-height:400px;width:auto;height:auto;cursor:pointer;transition:opacity .3s;opacity:0}.message-image.loaded{opacity:1}.image-loading{display:flex;align-items:center;justify-content:center;min-height:200px;background:rgb(var(--ax-sys-color-lighter-surface))}.spinner{width:24px;height:24px;border:2px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.image-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));padding:1rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.5rem}.error-text{font-size:.875rem}.image-caption{padding:.5rem;font-size:.875rem;background:#0000000d;opacity:.9}\n"] }]
9875
+ `, styles: [":host{display:block}.image-renderer{position:relative;max-width:100%;border-radius:.5rem;overflow:hidden}.message-image{display:block;max-width:100%;max-height:400px;width:auto;height:auto;cursor:pointer;transition:opacity .3s;opacity:0}.message-image.loaded{opacity:1}.image-loading{display:flex;align-items:center;justify-content:center;min-height:200px;background:rgb(var(--ax-sys-color-lighter-surface))}.spinner{width:24px;height:24px;border:2px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.image-error{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:200px;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));padding:1rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.5rem}.error-text{font-size:.875rem}.image-caption{padding:.5rem;font-size:.875rem;background:rgb(var(--ax-sys-color-on-surface),.05);color:rgb(var(--ax-sys-color-on-surface))}\n"] }]
9876
9876
  }], propDecorators: { message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: true }] }], imageClick: [{ type: i0.Output, args: ["imageClick"] }] } });
9877
9877
 
9878
9878
  /**
9879
9879
  * Location Message Renderer Component
9880
9880
  * Renders location messages with interactive Leaflet map
9881
9881
  */
9882
- class LocationRendererComponent {
9882
+ class AXLocationRendererComponent {
9883
9883
  constructor() {
9884
9884
  /** Message to render */
9885
9885
  this.message = input.required(...(ngDevMode ? [{ debugName: "message" }] : []));
@@ -9916,8 +9916,8 @@ class LocationRendererComponent {
9916
9916
  },
9917
9917
  ], ...(ngDevMode ? [{ debugName: "markers" }] : []));
9918
9918
  }
9919
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9920
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: LocationRendererComponent, isStandalone: true, selector: "ax-conversation-location-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
9919
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXLocationRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
9920
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXLocationRendererComponent, isStandalone: true, selector: "ax-conversation-location-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
9921
9921
  <div class="location-renderer">
9922
9922
  <div class="location-container">
9923
9923
  <!-- Interactive Map Preview -->
@@ -9954,11 +9954,11 @@ class LocationRendererComponent {
9954
9954
  </a>
9955
9955
  </div>
9956
9956
  </div>
9957
- `, isInline: true, styles: [":host{display:block}.location-renderer{width:100%;max-width:280px}.location-container{display:flex;flex-direction:column;background:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:.75rem;overflow:hidden}.location-map{position:relative;width:100%;height:200px;overflow:hidden}.location-map ::ng-deep ax-map{height:100%;width:100%}.location-info{padding:.75rem}.location-name{display:flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:600}.pin-icon{font-size:1rem}.name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-address{font-size:.75rem;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-coordinates{font-size:.6875rem;opacity:.6;font-family:monospace}.location-action{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:rgb(var(--ax-sys-color-surface));border-top:1px solid rgb(var(--ax-sys-color-border-light-surface));font-size:.75rem;font-weight:500;color:rgb(var(--ax-sys-color-primary-500));text-decoration:none;transition:background .2s;cursor:pointer}.location-action:hover{background:rgb(var(--ax-sys-color-primary-lightest-surface))}.action-icon{transition:transform .2s}.location-action:hover .action-icon{transform:translate(4px)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXMapModule }, { kind: "component", type: i1$3.AXMapComponent, selector: "ax-map", inputs: ["zoomLevel", "latitude", "longitude", "maxMarker", "maxPolygon", "hasDraw", "hasLocator", "fitToDraw", "limitDraw", "addPoiToFitDraw", "addMarkerOnTap", "readonly", "disabled", "markerPlace", "locatePlace", "poiMinZoom", "markers", "polygons", "pois"], outputs: ["zoomLevelChange", "latitudeChange", "longitudeChange", "onMarkerAdded", "onMarkerClick", "onMarkerChanged", "onPolygonAdded", "onPolygonClick", "onPolygonChanged", "onLocationFound", "onPoiChanged", "onPoiAdded", "onMapReady", "onLoadError"] }] }); }
9957
+ `, isInline: true, styles: [":host{display:block}.location-renderer{width:100%;max-width:280px}.location-container{display:flex;flex-direction:column;background:rgb(var(--ax-sys-color-lighter-surface));color:rgb(var(--ax-sys-color-on-lighter-surface));border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:.75rem;overflow:hidden}.location-map{position:relative;width:100%;height:200px;overflow:hidden}.location-map ::ng-deep ax-map{height:100%;width:100%}.location-info{padding:.75rem}.location-name{display:flex;align-items:center;gap:.375rem;font-size:.875rem;font-weight:600}.pin-icon{font-size:1rem}.name-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-address{font-size:.75rem;opacity:.7;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.location-coordinates{font-size:.6875rem;opacity:.6;font-family:monospace}.location-action{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:rgb(var(--ax-sys-color-surface));border-top:1px solid rgb(var(--ax-sys-color-border-light-surface));font-size:.75rem;font-weight:500;color:rgb(var(--ax-sys-color-primary-500));text-decoration:none;transition:background .2s;cursor:pointer}.location-action:hover{background:rgb(var(--ax-sys-color-primary-lightest-surface))}.action-icon{transition:transform .2s}.location-action:hover .action-icon{transform:translate(4px)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: AXMapModule }, { kind: "component", type: i1$3.AXMapComponent, selector: "ax-map", inputs: ["zoomLevel", "latitude", "longitude", "maxMarker", "maxPolygon", "hasDraw", "hasLocator", "fitToDraw", "limitDraw", "addPoiToFitDraw", "addMarkerOnTap", "readonly", "disabled", "markerPlace", "locatePlace", "poiMinZoom", "markers", "polygons", "pois"], outputs: ["zoomLevelChange", "latitudeChange", "longitudeChange", "onMarkerAdded", "onMarkerClick", "onMarkerChanged", "onPolygonAdded", "onPolygonClick", "onPolygonChanged", "onLocationFound", "onPoiChanged", "onPoiAdded", "onMapReady", "onLoadError"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
9958
9958
  }
9959
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: LocationRendererComponent, decorators: [{
9959
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXLocationRendererComponent, decorators: [{
9960
9960
  type: Component,
9961
- args: [{ selector: 'ax-conversation-location-renderer', imports: [CommonModule, AXMapModule], template: `
9961
+ args: [{ selector: 'ax-conversation-location-renderer', imports: [CommonModule, AXMapModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
9962
9962
  <div class="location-renderer">
9963
9963
  <div class="location-container">
9964
9964
  <!-- Interactive Map Preview -->
@@ -10002,7 +10002,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
10002
10002
  * Sticker Message Renderer Component
10003
10003
  * Renders sticker messages with optimized loading
10004
10004
  */
10005
- class StickerRendererComponent {
10005
+ class AXStickerRendererComponent {
10006
10006
  constructor() {
10007
10007
  /** Message to render */
10008
10008
  this.message = input.required(...(ngDevMode ? [{ debugName: "message" }] : []));
@@ -10027,8 +10027,8 @@ class StickerRendererComponent {
10027
10027
  this.loading.set(false);
10028
10028
  this.error.set(true);
10029
10029
  }
10030
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: StickerRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10031
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: StickerRendererComponent, isStandalone: true, selector: "ax-conversation-sticker-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10030
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXStickerRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10031
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXStickerRendererComponent, isStandalone: true, selector: "ax-conversation-sticker-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10032
10032
  <div class="sticker-renderer">
10033
10033
  @if (loading()) {
10034
10034
  <div class="sticker-loading">
@@ -10053,11 +10053,11 @@ class StickerRendererComponent {
10053
10053
  </div>
10054
10054
  }
10055
10055
  </div>
10056
- `, isInline: true, styles: [":host{display:block}.sticker-renderer{position:relative;display:inline-block;max-width:180px;margin:.25rem 0}.sticker-image{display:block;width:100%;height:auto;max-height:180px;object-fit:contain;transition:opacity .2s,transform .2s;opacity:0;cursor:pointer}.sticker-image.loaded{opacity:1}.sticker-image:hover{// transform: scale(1.05)}.sticker-loading{display:flex;align-items:center;justify-content:center;width:120px;height:120px;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.5rem}.spinner{width:24px;height:24px;border:2px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sticker-error{display:flex;flex-direction:column;align-items:center;justify-content:center;width:120px;height:120px;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));border-radius:.5rem;padding:1rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.25rem}.error-text{font-size:.75rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
10056
+ `, isInline: true, styles: [":host{display:block}.sticker-renderer{position:relative;display:inline-block;max-width:180px;margin:.25rem 0}.sticker-image{display:block;width:100%;height:auto;max-height:180px;object-fit:contain;transition:opacity .2s,transform .2s;opacity:0;cursor:pointer}.sticker-image.loaded{opacity:1}.sticker-image:hover{// transform: scale(1.05)}.sticker-loading{display:flex;align-items:center;justify-content:center;width:120px;height:120px;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:.5rem}.spinner{width:24px;height:24px;border:2px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.sticker-error{display:flex;flex-direction:column;align-items:center;justify-content:center;width:120px;height:120px;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));border-radius:.5rem;padding:1rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.25rem}.error-text{font-size:.75rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10057
10057
  }
10058
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: StickerRendererComponent, decorators: [{
10058
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXStickerRendererComponent, decorators: [{
10059
10059
  type: Component,
10060
- args: [{ selector: 'ax-conversation-sticker-renderer', imports: [CommonModule], template: `
10060
+ args: [{ selector: 'ax-conversation-sticker-renderer', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
10061
10061
  <div class="sticker-renderer">
10062
10062
  @if (loading()) {
10063
10063
  <div class="sticker-loading">
@@ -10089,7 +10089,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
10089
10089
  * System Message Renderer Component
10090
10090
  * Renders system/notification messages (user joined, title changed, etc.)
10091
10091
  */
10092
- class SystemRendererComponent {
10092
+ class AXSystemRendererComponent {
10093
10093
  constructor() {
10094
10094
  /** Message to render */
10095
10095
  this.message = input.required(...(ngDevMode ? [{ debugName: "message" }] : []));
@@ -10112,19 +10112,19 @@ class SystemRendererComponent {
10112
10112
  }
10113
10113
  }, ...(ngDevMode ? [{ debugName: "iconClass" }] : []));
10114
10114
  }
10115
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SystemRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10116
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: SystemRendererComponent, isStandalone: true, selector: "ax-conversation-system-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10115
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSystemRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10116
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.16", type: AXSystemRendererComponent, isStandalone: true, selector: "ax-conversation-system-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10117
10117
  <div class="system-renderer">
10118
10118
  <div class="system-icon">
10119
10119
  <i [class]="iconClass()"></i>
10120
10120
  </div>
10121
10121
  <div class="system-text">{{ payload().text }}</div>
10122
10122
  </div>
10123
- `, isInline: true, styles: [":host{display:block;width:100%}.system-renderer{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:.5rem 0}.system-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:.75rem;opacity:.6}.system-text{font-size:.8125rem;text-align:center;font-style:italic;opacity:.6}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
10123
+ `, isInline: true, styles: [":host{display:block;width:100%}.system-renderer{display:flex;align-items:center;justify-content:center;gap:.5rem;margin:.5rem 0}.system-icon{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;font-size:.75rem;opacity:.6}.system-text{font-size:.8125rem;text-align:center;font-style:italic;opacity:.6}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10124
10124
  }
10125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: SystemRendererComponent, decorators: [{
10125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSystemRendererComponent, decorators: [{
10126
10126
  type: Component,
10127
- args: [{ selector: 'ax-conversation-system-renderer', imports: [CommonModule], template: `
10127
+ args: [{ selector: 'ax-conversation-system-renderer', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
10128
10128
  <div class="system-renderer">
10129
10129
  <div class="system-icon">
10130
10130
  <i [class]="iconClass()"></i>
@@ -10165,10 +10165,10 @@ class AXSanitizerService {
10165
10165
  const clean = this.sanitizeUrl(url) || '';
10166
10166
  return this.dom.bypassSecurityTrustUrl(clean);
10167
10167
  }
10168
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXSanitizerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
10169
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXSanitizerService, providedIn: 'root' }); }
10168
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSanitizerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
10169
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSanitizerService, providedIn: 'root' }); }
10170
10170
  }
10171
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXSanitizerService, decorators: [{
10171
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSanitizerService, decorators: [{
10172
10172
  type: Injectable,
10173
10173
  args: [{ providedIn: 'root' }]
10174
10174
  }] });
@@ -10177,7 +10177,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
10177
10177
  * Text Message Renderer Component
10178
10178
  * Renders text messages with link detection and formatting
10179
10179
  */
10180
- class TextRendererComponent {
10180
+ class AXTextRendererComponent {
10181
10181
  constructor() {
10182
10182
  this.infoBarService = inject(AXInfoBarService);
10183
10183
  this.sanitizer = inject(AXSanitizerService);
@@ -10227,16 +10227,16 @@ class TextRendererComponent {
10227
10227
  // Replace matches with <mark> tags
10228
10228
  return text.replace(regex, '<mark>$1</mark>');
10229
10229
  }
10230
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TextRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10231
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.15", type: TextRendererComponent, isStandalone: true, selector: "ax-conversation-text-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10230
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXTextRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10231
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.3.16", type: AXTextRendererComponent, isStandalone: true, selector: "ax-conversation-text-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10232
10232
  <div class="text-renderer">
10233
10233
  <div class="text-content" [innerHTML]="formattedText()"></div>
10234
10234
  </div>
10235
- `, isInline: true, styles: [":host{display:block}.text-renderer{word-wrap:break-word;overflow-wrap:break-word}.text-content{word-break:break-word;text-wrap:pretty;white-space:pre-wrap;line-height:1.6;font-size:.9375rem;letter-spacing:.01em}.text-content ::ng-deep a{color:rgb(var(--ax-sys-color-primary-600));text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;transition:all .2s}.text-content ::ng-deep a:hover{color:rgb(var(--ax-sys-color-primary-700));text-decoration-thickness:2px}.text-content ::ng-deep mark{background:rgb(var(--ax-sys-color-warning-lightest-surface));padding:.125rem .375rem;border-radius:.375rem;font-weight:500;box-shadow:0 0 0 2px rgb(var(--ax-sys-color-warning-500) / .2)}\n"] }); }
10235
+ `, isInline: true, styles: [":host{display:block}.text-renderer{word-wrap:break-word;overflow-wrap:break-word}.text-content{word-break:break-word;text-wrap:pretty;white-space:pre-wrap;line-height:1.6;font-size:.9375rem;letter-spacing:.01em}.text-content ::ng-deep a{color:rgb(var(--ax-sys-color-primary-600));text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:2px;transition:all .2s}.text-content ::ng-deep a:hover{color:rgb(var(--ax-sys-color-primary-700));text-decoration-thickness:2px}.text-content ::ng-deep mark{background:rgb(var(--ax-sys-color-warning-lightest-surface));padding:.125rem .375rem;border-radius:.375rem;font-weight:500;box-shadow:0 0 0 2px rgb(var(--ax-sys-color-warning-500) / .2)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10236
10236
  }
10237
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: TextRendererComponent, decorators: [{
10237
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXTextRendererComponent, decorators: [{
10238
10238
  type: Component,
10239
- args: [{ selector: 'ax-conversation-text-renderer', template: `
10239
+ args: [{ selector: 'ax-conversation-text-renderer', changeDetection: ChangeDetectionStrategy.OnPush, template: `
10240
10240
  <div class="text-renderer">
10241
10241
  <div class="text-content" [innerHTML]="formattedText()"></div>
10242
10242
  </div>
@@ -10247,7 +10247,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
10247
10247
  * Video Message Renderer Component
10248
10248
  * Renders video messages with player controls
10249
10249
  */
10250
- class VideoRendererComponent {
10250
+ class AXVideoRendererComponent {
10251
10251
  constructor() {
10252
10252
  this.platformId = inject(PLATFORM_ID);
10253
10253
  /** Message to render */
@@ -10283,8 +10283,8 @@ class VideoRendererComponent {
10283
10283
  const secs = Math.floor(seconds % 60);
10284
10284
  return `${mins}:${secs.toString().padStart(2, '0')}`;
10285
10285
  }
10286
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: VideoRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10287
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: VideoRendererComponent, isStandalone: true, selector: "ax-conversation-video-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10286
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXVideoRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10287
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXVideoRendererComponent, isStandalone: true, selector: "ax-conversation-video-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
10288
10288
  <div class="video-renderer">
10289
10289
  @if (!showPlayer()) {
10290
10290
  <!-- Video Thumbnail Preview -->
@@ -10321,11 +10321,11 @@ class VideoRendererComponent {
10321
10321
  <div class="video-caption">{{ caption() }}</div>
10322
10322
  }
10323
10323
  </div>
10324
- `, isInline: true, styles: [":host{display:block}.video-renderer{position:relative;max-width:100%;border-radius:.5rem;overflow:hidden;background:rgb(var(--ax-sys-color-dark))}.video-preview{position:relative;cursor:pointer;min-height:200px;display:flex;align-items:center;justify-content:center}.video-thumbnail{display:block;width:100%;height:auto;max-height:400px;object-fit:cover}.video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;min-height:200px;background:rgb(var(--ax-sys-color-darker-surface))}.video-icon{font-size:3rem;opacity:.5}.video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000004d;transition:background .2s}.video-preview:hover .video-overlay{background:#00000080}.play-button{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-400));border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:transform .2s;padding-left:4px}.play-button:hover{// transform: scale(1.1)}.video-duration{position:absolute;bottom:.5rem;right:.5rem;padding:.25rem .5rem;background:#000000b3;color:rgb(var(--ax-sys-color-light));font-size:.75rem;border-radius:.25rem}.video-player{display:block;width:100%;max-height:400px;outline:none}.video-error{display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));padding:.5rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.5rem}.error-text{font-size:.875rem}.video-caption{padding:.5rem;font-size:.875rem;background:#0000000d;opacity:.8}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
10324
+ `, isInline: true, styles: [":host{display:block}.video-renderer{position:relative;max-width:100%;border-radius:.5rem;overflow:hidden;background:rgb(var(--ax-sys-color-dark))}.video-preview{position:relative;cursor:pointer;min-height:200px;display:flex;align-items:center;justify-content:center}.video-thumbnail{display:block;width:100%;height:auto;max-height:400px;object-fit:cover}.video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;min-height:200px;background:rgb(var(--ax-sys-color-darker-surface))}.video-icon{font-size:3rem;opacity:.5}.video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-dark),.3);transition:background .2s}.video-preview:hover .video-overlay{background:rgb(var(--ax-sys-color-dark),.5)}.play-button{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-400));border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:transform .2s;padding-left:4px}.play-button:hover{// transform: scale(1.1)}.video-duration{position:absolute;bottom:.5rem;right:.5rem;padding:.25rem .5rem;background:rgb(var(--ax-sys-color-dark),.7);color:rgb(var(--ax-sys-color-light));font-size:.75rem;border-radius:.25rem}.video-player{display:block;width:100%;max-height:400px;outline:none}.video-error{display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));padding:.5rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.5rem}.error-text{font-size:.875rem}.video-caption{padding:.5rem;font-size:.875rem;background:rgb(var(--ax-sys-color-on-surface),.05);color:rgb(var(--ax-sys-color-on-surface))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10325
10325
  }
10326
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: VideoRendererComponent, decorators: [{
10326
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXVideoRendererComponent, decorators: [{
10327
10327
  type: Component,
10328
- args: [{ selector: 'ax-conversation-video-renderer', imports: [CommonModule], template: `
10328
+ args: [{ selector: 'ax-conversation-video-renderer', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
10329
10329
  <div class="video-renderer">
10330
10330
  @if (!showPlayer()) {
10331
10331
  <!-- Video Thumbnail Preview -->
@@ -10362,14 +10362,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
10362
10362
  <div class="video-caption">{{ caption() }}</div>
10363
10363
  }
10364
10364
  </div>
10365
- `, styles: [":host{display:block}.video-renderer{position:relative;max-width:100%;border-radius:.5rem;overflow:hidden;background:rgb(var(--ax-sys-color-dark))}.video-preview{position:relative;cursor:pointer;min-height:200px;display:flex;align-items:center;justify-content:center}.video-thumbnail{display:block;width:100%;height:auto;max-height:400px;object-fit:cover}.video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;min-height:200px;background:rgb(var(--ax-sys-color-darker-surface))}.video-icon{font-size:3rem;opacity:.5}.video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:#0000004d;transition:background .2s}.video-preview:hover .video-overlay{background:#00000080}.play-button{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-400));border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:transform .2s;padding-left:4px}.play-button:hover{// transform: scale(1.1)}.video-duration{position:absolute;bottom:.5rem;right:.5rem;padding:.25rem .5rem;background:#000000b3;color:rgb(var(--ax-sys-color-light));font-size:.75rem;border-radius:.25rem}.video-player{display:block;width:100%;max-height:400px;outline:none}.video-error{display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));padding:.5rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.5rem}.error-text{font-size:.875rem}.video-caption{padding:.5rem;font-size:.875rem;background:#0000000d;opacity:.8}\n"] }]
10365
+ `, styles: [":host{display:block}.video-renderer{position:relative;max-width:100%;border-radius:.5rem;overflow:hidden;background:rgb(var(--ax-sys-color-dark))}.video-preview{position:relative;cursor:pointer;min-height:200px;display:flex;align-items:center;justify-content:center}.video-thumbnail{display:block;width:100%;height:auto;max-height:400px;object-fit:cover}.video-placeholder{display:flex;align-items:center;justify-content:center;width:100%;min-height:200px;background:rgb(var(--ax-sys-color-darker-surface))}.video-icon{font-size:3rem;opacity:.5}.video-overlay{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-dark),.3);transition:background .2s}.video-preview:hover .video-overlay{background:rgb(var(--ax-sys-color-dark),.5)}.play-button{width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-400));border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:transform .2s;padding-left:4px}.play-button:hover{// transform: scale(1.1)}.video-duration{position:absolute;bottom:.5rem;right:.5rem;padding:.25rem .5rem;background:rgb(var(--ax-sys-color-dark),.7);color:rgb(var(--ax-sys-color-light));font-size:.75rem;border-radius:.25rem}.video-player{display:block;width:100%;max-height:400px;outline:none}.video-error{display:flex;flex-direction:column;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));padding:.5rem;text-align:center}.error-icon{font-size:2rem;margin-bottom:.5rem}.error-text{font-size:.875rem}.video-caption{padding:.5rem;font-size:.875rem;background:rgb(var(--ax-sys-color-on-surface),.05);color:rgb(var(--ax-sys-color-on-surface))}\n"] }]
10366
10366
  }], propDecorators: { message: [{ type: i0.Input, args: [{ isSignal: true, alias: "message", required: true }] }] } });
10367
10367
 
10368
10368
  /**
10369
10369
  * Voice Message Renderer Component
10370
10370
  * Renders voice messages with waveform visualization
10371
10371
  */
10372
- class VoiceRendererComponent {
10372
+ class AXVoiceRendererComponent {
10373
10373
  constructor() {
10374
10374
  this.platformId = inject(PLATFORM_ID);
10375
10375
  /** Message to render */
@@ -10475,8 +10475,8 @@ class VoiceRendererComponent {
10475
10475
  const secs = Math.floor(seconds % 60);
10476
10476
  return `${mins}:${secs.toString().padStart(2, '0')}`;
10477
10477
  }
10478
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: VoiceRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10479
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: VoiceRendererComponent, isStandalone: true, selector: "ax-conversation-voice-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "audioElementRef", first: true, predicate: ["audioElement"], descendants: true, isSignal: true }], ngImport: i0, template: `
10478
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXVoiceRendererComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
10479
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXVoiceRendererComponent, isStandalone: true, selector: "ax-conversation-voice-renderer", inputs: { message: { classPropertyName: "message", publicName: "message", isSignal: true, isRequired: true, transformFunction: null } }, viewQueries: [{ propertyName: "audioElementRef", first: true, predicate: ["audioElement"], descendants: true, isSignal: true }], ngImport: i0, template: `
10480
10480
  <div class="voice-renderer">
10481
10481
  <div class="voice-controls">
10482
10482
  <!-- Play/Pause Button -->
@@ -10523,11 +10523,11 @@ class VoiceRendererComponent {
10523
10523
  Your browser does not support the audio element.
10524
10524
  </audio>
10525
10525
  </div>
10526
- `, isInline: true, styles: [":host{display:block}.voice-renderer{width:100%;max-width:280px}.voice-controls{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:1.25rem}.play-button{flex-shrink:0;padding-inline-start:.2rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:none;border-radius:50%;font-size:.875rem;cursor:pointer;transition:all .2s}.play-button:hover{// transform: scale(1.05);background:rgb(var(--ax-sys-color-primary-600))}.play-button>i{padding-right:1px;padding-top:1px}.voice-waveform{flex:1;min-width:0}.waveform-bars{display:flex;align-items:center;gap:2px;height:32px;margin-bottom:.25rem}.waveform-bar{flex:1;min-width:2px;background:rgb(var(--ax-sys-color-border-light-surface));border-radius:2px;transition:all .2s}.waveform-bar.active{background:rgb(var(--ax-sys-color-primary-500))}.voice-box{display:flex;flex-direction:column;align-items:center;gap:.25rem}.voice-duration{font-size:.6875rem;opacity:.7;text-align:right;color:rgb(var(--ax-sys-color-primary-500))}.speed-button{flex-shrink:0;min-width:42px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;color:rgb(var(--ax-sys-color-primary-500));border:1px solid rgb(var(--ax-sys-color-primary-500));border-radius:14px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.speed-button:hover{background:rgb(var(--ax-sys-color-primary-lightest-surface))}.speed-button:active{// transform: scale(.95)}.voice-error{margin-top:.5rem;padding:.25rem;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));border-radius:1.25rem;font-size:.75rem;text-align:center}audio{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }] }); }
10526
+ `, isInline: true, styles: [":host{display:block}.voice-renderer{width:100%;max-width:280px}.voice-controls{display:flex;align-items:center;gap:.75rem;padding:.5rem;background:rgb(var(--ax-sys-color-lighter-surface));border-radius:1.25rem}.play-button{flex-shrink:0;padding-inline-start:.2rem;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:none;border-radius:50%;font-size:.875rem;cursor:pointer;transition:all .2s}.play-button:hover{// transform: scale(1.05);background:rgb(var(--ax-sys-color-primary-600))}.play-button>i{padding-right:1px;padding-top:1px}.voice-waveform{flex:1;min-width:0}.waveform-bars{display:flex;align-items:center;gap:2px;height:32px;margin-bottom:.25rem}.waveform-bar{flex:1;min-width:2px;background:rgb(var(--ax-sys-color-border-light-surface));border-radius:2px;transition:all .2s}.waveform-bar.active{background:rgb(var(--ax-sys-color-primary-500))}.voice-box{display:flex;flex-direction:column;align-items:center;gap:.25rem}.voice-duration{font-size:.6875rem;opacity:.7;text-align:right;color:rgb(var(--ax-sys-color-primary-500))}.speed-button{flex-shrink:0;min-width:42px;height:20px;display:flex;align-items:center;justify-content:center;background:transparent;color:rgb(var(--ax-sys-color-primary-500));border:1px solid rgb(var(--ax-sys-color-primary-500));border-radius:14px;font-size:.75rem;font-weight:600;cursor:pointer;transition:all .2s}.speed-button:hover{background:rgb(var(--ax-sys-color-primary-lightest-surface))}.speed-button:active{// transform: scale(.95)}.voice-error{margin-top:.5rem;padding:.25rem;background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500));border-radius:1.25rem;font-size:.75rem;text-align:center}audio{display:none}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
10527
10527
  }
10528
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: VoiceRendererComponent, decorators: [{
10528
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXVoiceRendererComponent, decorators: [{
10529
10529
  type: Component,
10530
- args: [{ selector: 'ax-conversation-voice-renderer', imports: [CommonModule], template: `
10530
+ args: [{ selector: 'ax-conversation-voice-renderer', imports: [CommonModule], changeDetection: ChangeDetectionStrategy.OnPush, template: `
10531
10531
  <div class="voice-renderer">
10532
10532
  <div class="voice-controls">
10533
10533
  <!-- Play/Pause Button -->
@@ -10674,7 +10674,7 @@ const AX_CONVERSATION_MESSAGE_FORWARD_ACTION = {
10674
10674
  // Individual renderer constants (no aggregate arrays)
10675
10675
  const AX_CONVERSATION_TEXT_RENDERER = {
10676
10676
  type: 'text',
10677
- component: TextRendererComponent,
10677
+ component: AXTextRendererComponent,
10678
10678
  canHandle: (message) => message.type === 'text',
10679
10679
  capabilities: {
10680
10680
  supportsReactions: true,
@@ -10688,7 +10688,7 @@ const AX_CONVERSATION_TEXT_RENDERER = {
10688
10688
  };
10689
10689
  const AX_CONVERSATION_IMAGE_RENDERER = {
10690
10690
  type: 'image',
10691
- component: ImageRendererComponent,
10691
+ component: AXImageRendererComponent,
10692
10692
  canHandle: (message) => message.type === 'image',
10693
10693
  capabilities: {
10694
10694
  supportsReactions: true,
@@ -10702,7 +10702,7 @@ const AX_CONVERSATION_IMAGE_RENDERER = {
10702
10702
  };
10703
10703
  const AX_CONVERSATION_VIDEO_RENDERER = {
10704
10704
  type: 'video',
10705
- component: VideoRendererComponent,
10705
+ component: AXVideoRendererComponent,
10706
10706
  canHandle: (message) => message.type === 'video',
10707
10707
  capabilities: {
10708
10708
  supportsReactions: true,
@@ -10716,7 +10716,7 @@ const AX_CONVERSATION_VIDEO_RENDERER = {
10716
10716
  };
10717
10717
  const AX_CONVERSATION_AUDIO_RENDERER = {
10718
10718
  type: 'audio',
10719
- component: AudioRendererComponent,
10719
+ component: AXAudioRendererComponent,
10720
10720
  canHandle: (message) => message.type === 'audio',
10721
10721
  capabilities: {
10722
10722
  supportsReactions: true,
@@ -10730,7 +10730,7 @@ const AX_CONVERSATION_AUDIO_RENDERER = {
10730
10730
  };
10731
10731
  const AX_CONVERSATION_VOICE_RENDERER = {
10732
10732
  type: 'voice',
10733
- component: VoiceRendererComponent,
10733
+ component: AXVoiceRendererComponent,
10734
10734
  canHandle: (message) => message.type === 'voice',
10735
10735
  capabilities: {
10736
10736
  supportsReactions: true,
@@ -10744,7 +10744,7 @@ const AX_CONVERSATION_VOICE_RENDERER = {
10744
10744
  };
10745
10745
  const AX_CONVERSATION_FILE_RENDERER = {
10746
10746
  type: 'file',
10747
- component: FileRendererComponent,
10747
+ component: AXFileRendererComponent,
10748
10748
  canHandle: (message) => message.type === 'file',
10749
10749
  capabilities: {
10750
10750
  supportsReactions: true,
@@ -10758,7 +10758,7 @@ const AX_CONVERSATION_FILE_RENDERER = {
10758
10758
  };
10759
10759
  const AX_CONVERSATION_LOCATION_RENDERER = {
10760
10760
  type: 'location',
10761
- component: LocationRendererComponent,
10761
+ component: AXLocationRendererComponent,
10762
10762
  canHandle: (message) => message.type === 'location',
10763
10763
  capabilities: {
10764
10764
  supportsReactions: true,
@@ -10772,7 +10772,7 @@ const AX_CONVERSATION_LOCATION_RENDERER = {
10772
10772
  };
10773
10773
  const AX_CONVERSATION_STICKER_RENDERER = {
10774
10774
  type: 'sticker',
10775
- component: StickerRendererComponent,
10775
+ component: AXStickerRendererComponent,
10776
10776
  canHandle: (message) => message.type === 'sticker',
10777
10777
  capabilities: {
10778
10778
  supportsReactions: true,
@@ -10786,7 +10786,7 @@ const AX_CONVERSATION_STICKER_RENDERER = {
10786
10786
  };
10787
10787
  const AX_CONVERSATION_CONTACT_RENDERER = {
10788
10788
  type: 'contact',
10789
- component: ContactRendererComponent,
10789
+ component: AXContactRendererComponent,
10790
10790
  canHandle: (message) => message.type === 'contact',
10791
10791
  capabilities: {
10792
10792
  supportsReactions: true,
@@ -10800,7 +10800,7 @@ const AX_CONVERSATION_CONTACT_RENDERER = {
10800
10800
  };
10801
10801
  const AX_CONVERSATION_SYSTEM_RENDERER = {
10802
10802
  type: 'system',
10803
- component: SystemRendererComponent,
10803
+ component: AXSystemRendererComponent,
10804
10804
  canHandle: (message) => message.type === 'system',
10805
10805
  capabilities: {
10806
10806
  supportsReactions: false,
@@ -10815,7 +10815,7 @@ const AX_CONVERSATION_SYSTEM_RENDERER = {
10815
10815
  // Fallback renderer (catch-all) - keep last when assembling
10816
10816
  const AX_CONVERSATION_FALLBACK_RENDERER = {
10817
10817
  type: 'fallback',
10818
- component: FallbackRendererComponent,
10818
+ component: AXFallbackRendererComponent,
10819
10819
  canHandle: () => true,
10820
10820
  capabilities: {
10821
10821
  supportsReactions: false,
@@ -11108,10 +11108,10 @@ class AXMessageRendererRegistry {
11108
11108
  clear() {
11109
11109
  this._renderers.set([]);
11110
11110
  }
11111
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageRendererRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
11112
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageRendererRegistry }); }
11111
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageRendererRegistry, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
11112
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageRendererRegistry }); }
11113
11113
  }
11114
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageRendererRegistry, decorators: [{
11114
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageRendererRegistry, decorators: [{
11115
11115
  type: Injectable
11116
11116
  }], ctorParameters: () => [] });
11117
11117
 
@@ -11155,10 +11155,10 @@ class AXRegistryService {
11155
11155
  this.infoBarActions.clear();
11156
11156
  this.conversationItemActions.clear();
11157
11157
  }
11158
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
11159
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXRegistryService }); }
11158
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXRegistryService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
11159
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXRegistryService }); }
11160
11160
  }
11161
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXRegistryService, decorators: [{
11161
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXRegistryService, decorators: [{
11162
11162
  type: Injectable
11163
11163
  }] });
11164
11164
 
@@ -12358,10 +12358,10 @@ class AXConversationService {
12358
12358
  }
12359
12359
  }
12360
12360
  }
12361
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12362
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationService }); }
12361
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12362
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationService }); }
12363
12363
  }
12364
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationService, decorators: [{
12364
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationService, decorators: [{
12365
12365
  type: Injectable
12366
12366
  }], ctorParameters: () => [] });
12367
12367
 
@@ -12469,8 +12469,8 @@ class AXComposerPopupComponent {
12469
12469
  event.data = data;
12470
12470
  this.onClosed.emit(event);
12471
12471
  }
12472
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerPopupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12473
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXComposerPopupComponent, isStandalone: true, selector: "ax-composer-popup", inputs: { isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, onItemSelected: { classPropertyName: "onItemSelected", publicName: "onItemSelected", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed", itemSelected: "itemSelected", onClosed: "onClosed" }, viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ViewContainerRef, isSignal: true }], ngImport: i0, template: `
12472
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerPopupComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
12473
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXComposerPopupComponent, isStandalone: true, selector: "ax-composer-popup", inputs: { isOpen: { classPropertyName: "isOpen", publicName: "isOpen", isSignal: true, isRequired: false, transformFunction: null }, onItemSelected: { classPropertyName: "onItemSelected", publicName: "onItemSelected", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { closed: "closed", itemSelected: "itemSelected", onClosed: "onClosed" }, viewQueries: [{ propertyName: "contentContainer", first: true, predicate: ["contentContainer"], descendants: true, read: ViewContainerRef, isSignal: true }], ngImport: i0, template: `
12474
12474
  <div class="composer-popup">
12475
12475
  <!-- Tabs -->
12476
12476
  <ax-tabs (onActiveTabChanged)="onTabChange($event)">
@@ -12492,7 +12492,7 @@ class AXComposerPopupComponent {
12492
12492
  </div>
12493
12493
  `, isInline: true, styles: [":host{display:block;width:100%;height:100%}.composer-popup{display:flex;padding:1rem;flex-direction:column;width:100%;height:100%;height:max(400px,50vh)}.popup-content{flex:1;overflow-y:auto}.tab-icon{font-size:1.25rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }] }); }
12494
12494
  }
12495
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerPopupComponent, decorators: [{
12495
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerPopupComponent, decorators: [{
12496
12496
  type: Component,
12497
12497
  args: [{ selector: 'ax-composer-popup', imports: [CommonModule, AXTabsComponent, AXTabItemComponent], template: `
12498
12498
  <div class="composer-popup">
@@ -12723,10 +12723,10 @@ class AXComposerService {
12723
12723
  console.warn('Failed to clear draft:', error);
12724
12724
  }
12725
12725
  }
12726
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12727
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerService }); }
12726
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12727
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerService }); }
12728
12728
  }
12729
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerService, decorators: [{
12729
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerService, decorators: [{
12730
12730
  type: Injectable
12731
12731
  }] });
12732
12732
 
@@ -12738,6 +12738,7 @@ class AXMessageListService {
12738
12738
  constructor() {
12739
12739
  this.conversationService = inject(AXConversationService);
12740
12740
  this.composerService = inject(AXComposerService);
12741
+ this.config = inject(CONVERSATION_CONFIG);
12741
12742
  this.activeConversation = this.conversationService.activeConversation;
12742
12743
  this.activeMessages = this.conversationService.activeMessages;
12743
12744
  this.currentUser = this.conversationService.currentUser;
@@ -12788,11 +12789,16 @@ class AXMessageListService {
12788
12789
  }
12789
12790
  this.loadingMore.set(true);
12790
12791
  try {
12792
+ const conversation = this.activeConversation();
12793
+ if (!conversation) {
12794
+ return;
12795
+ }
12791
12796
  const nextPage = this.currentPage() + 1;
12792
- // Note: Implement loadMoreMessages in ConversationService if needed
12793
- // For now, just mark as no more messages
12797
+ const items = await this.conversationService.loadMessages(conversation.id, nextPage);
12794
12798
  this.currentPage.set(nextPage);
12795
- this.hasMoreMessages.set(false);
12799
+ // Determine if there may be more pages using pageSize heuristic
12800
+ const pageSize = this.config.messagePageSize;
12801
+ this.hasMoreMessages.set(items.length >= pageSize);
12796
12802
  }
12797
12803
  finally {
12798
12804
  this.loadingMore.set(false);
@@ -12832,10 +12838,10 @@ class AXMessageListService {
12832
12838
  requestScrollToBottom() {
12833
12839
  this.scrollRequests.update((n) => n + 1);
12834
12840
  }
12835
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageListService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12836
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageListService }); }
12841
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageListService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
12842
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageListService }); }
12837
12843
  }
12838
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageListService, decorators: [{
12844
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageListService, decorators: [{
12839
12845
  type: Injectable
12840
12846
  }] });
12841
12847
 
@@ -13334,8 +13340,8 @@ class AXComposerComponent {
13334
13340
  await this.onSendClick();
13335
13341
  }
13336
13342
  }
13337
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13338
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXComposerComponent, isStandalone: true, selector: "ax-conversation-composer", outputs: { messageSent: "messageSent", emojiClick: "emojiClick", attachClick: "attachClick", voiceClick: "voiceClick" }, viewQueries: [{ propertyName: "inputElementRef", first: true, predicate: ["inputElement"], descendants: true, isSignal: true }, { propertyName: "emojiPopoverRef", first: true, predicate: ["emojiPopover"], descendants: true, isSignal: true }], ngImport: i0, template: `
13343
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13344
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXComposerComponent, isStandalone: true, selector: "ax-conversation-composer", outputs: { messageSent: "messageSent", emojiClick: "emojiClick", attachClick: "attachClick", voiceClick: "voiceClick" }, viewQueries: [{ propertyName: "inputElementRef", first: true, predicate: ["inputElement"], descendants: true, isSignal: true }, { propertyName: "emojiPopoverRef", first: true, predicate: ["emojiPopover"], descendants: true, isSignal: true }], ngImport: i0, template: `
13339
13345
  @if (activeConversation()) {
13340
13346
  <div class="composer">
13341
13347
  <!-- Full-Width Component Mode -->
@@ -13580,9 +13586,9 @@ class AXComposerComponent {
13580
13586
  </div>
13581
13587
  </ax-popover>
13582
13588
  }
13583
- `, isInline: true, styles: [":host{display:block}.composer-banner{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:rgb(var(--ax-sys-color-primary-lightest-surface));border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface));color:rgb(var(--ax-sys-color-on-primary-lightest-surface))}.banner-content{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.banner-icon,.emoji-icon{font-size:1.25rem;flex-shrink:0}.banner-text{flex:1;min-width:0;cursor:pointer;transition:opacity .2s}.banner-text:hover{opacity:.8}.banner-title{font-size:.75rem;font-weight:600}.banner-subtitle{font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8}.banner-close{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:.375rem;font-size:1rem;cursor:pointer;transition:background .2s}.banner-close:hover{background:rgb(var(--ax-sys-color-light-surface))}.composer-input-container{display:flex;align-items:center;gap:.5rem;padding:.75rem}.composer-actions-left,.composer-actions-right{display:flex;align-items:center;//gap: .5rem}.composer-input-wrapper{display:flex;flex:1;min-width:0}.composer-input{width:100%;min-height:40px;max-height:120px;padding:.5rem .75rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:1.25rem;font-size:.9375rem;font-family:inherit;line-height:1.5;resize:none;outline:none;transition:border-color .2s}.composer-input:focus{border-color:rgb(var(--ax-sys-color-primary-500))}.action-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .2s;flex-shrink:0}.action-button:hover{background:rgb(var(--ax-sys-color-light-surface))}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-send{background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface))}.action-send:hover:not(:disabled){background:rgb(var(--ax-sys-color-primary-600))}.send-icon{font-size:1rem;position:relative;left:-1px}.action-voice{font-size:1.25rem}.composer-attachments{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 1rem 1rem}.attachment-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:rgb(var(--ax-sys-color-light-surface));border-radius:.5rem;font-size:.875rem}.attachment-icon{font-size:1rem}.attachment-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-remove{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;border-radius:50%;font-size:.875rem;cursor:pointer;transition:background .2s}.attachment-remove:hover{background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500))}.typing-indicator-container{padding:0 1rem .5rem;font-size:.75rem;opacity:.7}.composer-component-fullwidth{width:100%;min-height:72px;background:rgb(var(--ax-sys-color-lightest-surface))}.action-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border-radius:8px;font-size:.625rem;font-weight:600}.action-button{position:relative}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTextAreaModule }, { kind: "component", type: i3$2.AXTextAreaComponent, selector: "ax-text-area", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "placeholder", "maxLength", "look", "rows", "allowResize", "showCounter", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "ngmodule", type: AXUploaderModule }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "directive", type: i4.AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: i1.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i1.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items", "closeParentOnClick", "lockOnLoading"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.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: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i7.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i8.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13589
+ `, isInline: true, styles: [":host{display:block}.composer-banner{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;background:rgb(var(--ax-sys-color-primary-lightest-surface));border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface));color:rgb(var(--ax-sys-color-on-primary-lightest-surface))}.banner-content{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.banner-icon,.emoji-icon{font-size:1.25rem;flex-shrink:0}.banner-text{flex:1;min-width:0;cursor:pointer;transition:opacity .2s}.banner-text:hover{opacity:.8}.banner-title{font-size:.75rem;font-weight:600}.banner-subtitle{font-size:.8125rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.8}.banner-close{flex-shrink:0;width:24px;height:24px;display:flex;align-items:center;justify-content:center;background:transparent;border:none;border-radius:.375rem;font-size:1rem;cursor:pointer;transition:background .2s}.banner-close:hover{background:rgb(var(--ax-sys-color-light-surface))}.composer-input-container{display:flex;align-items:center;gap:.5rem;padding:.75rem}.composer-actions-left,.composer-actions-right{display:flex;align-items:center;//gap: .5rem}.composer-input-wrapper{display:flex;flex:1;min-width:0}.composer-input{width:100%;min-height:40px;max-height:120px;padding:.5rem .75rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:1.25rem;font-size:.9375rem;font-family:inherit;line-height:1.5;resize:none;outline:none;transition:border-color .2s}.composer-input:focus{border-color:rgb(var(--ax-sys-color-primary-500))}.action-button{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border:none;background:transparent;border-radius:50%;font-size:1.5rem;cursor:pointer;transition:all .2s;flex-shrink:0}.action-button:hover{background:rgb(var(--ax-sys-color-light-surface))}.action-button:disabled{opacity:.5;cursor:not-allowed}.action-send{background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface))}.action-send:hover:not(:disabled){background:rgb(var(--ax-sys-color-primary-600))}.send-icon{font-size:1rem;position:relative;left:-1px}.action-voice{font-size:1.25rem}.composer-attachments{display:flex;flex-wrap:wrap;gap:.5rem;padding:0 1rem 1rem}.attachment-item{display:flex;align-items:center;gap:.5rem;padding:.5rem .75rem;background:rgb(var(--ax-sys-color-light-surface));border-radius:.5rem;font-size:.875rem}.attachment-icon{font-size:1rem}.attachment-name{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attachment-remove{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border:none;background:transparent;border-radius:50%;font-size:.875rem;cursor:pointer;transition:background .2s}.attachment-remove:hover{background:rgb(var(--ax-sys-color-danger-lightest-surface));color:rgb(var(--ax-sys-color-danger-500))}.typing-indicator-container{padding:0 1rem .5rem;font-size:.75rem;opacity:.7}.composer-component-fullwidth{width:100%;min-height:72px;background:rgb(var(--ax-sys-color-lightest-surface))}.action-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 4px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border-radius:8px;font-size:.625rem;font-weight:600}.action-button{position:relative}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "ngmodule", type: FormsModule }, { kind: "directive", type: i1$4.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$4.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: AXTextAreaModule }, { kind: "component", type: i3$2.AXTextAreaComponent, selector: "ax-text-area", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "placeholder", "maxLength", "look", "rows", "allowResize", "showCounter", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "ngmodule", type: AXCommonModule }, { kind: "ngmodule", type: AXUploaderModule }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "directive", type: i4.AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: i1.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i1.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items", "closeParentOnClick", "lockOnLoading"], outputs: ["onItemClick"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.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: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i7.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "forceDisableActionSheetStyle", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "repositionOnScroll", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDropdownModule }, { kind: "component", type: i8.AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13584
13590
  }
13585
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXComposerComponent, decorators: [{
13591
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXComposerComponent, decorators: [{
13586
13592
  type: Component,
13587
13593
  args: [{ selector: 'ax-conversation-composer', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
13588
13594
  CommonModule,
@@ -13875,8 +13881,8 @@ class AXConversationContainerComponent {
13875
13881
  closeActiveConversation() {
13876
13882
  this.conversationService.closeActiveConversation();
13877
13883
  }
13878
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13879
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXConversationContainerComponent, isStandalone: true, selector: "ax-conversation-container", inputs: { customClass: { classPropertyName: "customClass", publicName: "customClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keydown.escape": "closeActiveConversation()" }, properties: { "class.conversation-container-host": "true", "tabindex": "\"-1\"" } }, ngImport: i0, template: `
13884
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
13885
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXConversationContainerComponent, isStandalone: true, selector: "ax-conversation-container", inputs: { customClass: { classPropertyName: "customClass", publicName: "customClass", isSignal: true, isRequired: false, transformFunction: null } }, host: { listeners: { "keydown.escape": "closeActiveConversation()" }, properties: { "class.conversation-container-host": "true", "tabindex": "\"-1\"" } }, ngImport: i0, template: `
13880
13886
  <div [class]="containerClasses()" role="main" aria-label="Conversation interface">
13881
13887
  <!-- Sidebar -->
13882
13888
  <div
@@ -13928,7 +13934,7 @@ class AXConversationContainerComponent {
13928
13934
  </div>
13929
13935
  `, isInline: true, styles: [":host{display:block;width:100%;height:100%;outline:none}.conversation-container{display:flex;width:100%;height:100%;background:rgb(var(--ax-sys-color-lightest-surface));overflow:hidden}.conversation-container-loading{display:flex;align-items:center;justify-content:center}.conversation-sidebar-container{flex-shrink:0;height:100%;display:none;width:0;border-inline-end:1px solid rgb(var(--ax-sys-color-border-light-surface))}.conversation-sidebar-container:has(*){display:block;width:var(--ax-conversation-sidebar-width, 320px)}.conversation-main-container{flex:1;height:100%;overflow:hidden;display:flex;flex-direction:column}.conversation-view{display:flex;flex-direction:column;width:100%;height:100%}.conversation-messages{flex:1;overflow:hidden}.conversation-empty-state{display:flex;align-items:center;justify-content:center;width:100%;height:100%;background:rgb(var(--ax-sys-color-lightest-surface))}.empty-state-content{text-align:center;padding:2rem;max-width:400px}.empty-state-icon{margin:0 auto 1.5rem;opacity:.8}.empty-state-title{font-size:1.5rem;font-weight:600;margin:0 0 .5rem}.empty-state-description{font-size:1rem;margin:0;opacity:.7}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: AXResizableDirective, selector: "[axResizable]", inputs: ["axResizable", "minWidth", "maxWidth", "dblClickAction", "width", "defaultWidth"], outputs: ["axResizableChange", "minWidthChange", "maxWidthChange", "dblClickActionChange", "widthChange", "defaultWidthChange", "onResizingStarted", "onResizingEnded", "onResizingDblClick"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
13930
13936
  }
13931
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationContainerComponent, decorators: [{
13937
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationContainerComponent, decorators: [{
13932
13938
  type: Component,
13933
13939
  args: [{ selector: 'ax-conversation-container', changeDetection: ChangeDetectionStrategy.OnPush, imports: [CommonModule, AXResizableDirective], template: `
13934
13940
  <div [class]="containerClasses()" role="main" aria-label="Conversation interface">
@@ -14004,10 +14010,10 @@ class AXConversationContainerDirective {
14004
14010
  closeActiveConversation() {
14005
14011
  this.conversationService.closeActiveConversation();
14006
14012
  }
14007
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
14008
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.15", type: AXConversationContainerDirective, isStandalone: true, selector: "[axConversationContainer]", host: { listeners: { "keydown.escape": "closeActiveConversation()" }, properties: { "class.ax-conversation-container": "true", "tabindex": "\"-1\"", "style.outline": "\"none\"" } }, ngImport: i0 }); }
14013
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationContainerDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
14014
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "20.3.16", type: AXConversationContainerDirective, isStandalone: true, selector: "[axConversationContainer]", host: { listeners: { "keydown.escape": "closeActiveConversation()" }, properties: { "class.ax-conversation-container": "true", "tabindex": "\"-1\"", "style.outline": "\"none\"" } }, ngImport: i0 }); }
14009
14015
  }
14010
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationContainerDirective, decorators: [{
14016
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationContainerDirective, decorators: [{
14011
14017
  type: Directive,
14012
14018
  args: [{
14013
14019
  selector: '[axConversationContainer]',
@@ -14177,10 +14183,10 @@ class AXInfoBarService {
14177
14183
  this._searchResultsCount.set(0);
14178
14184
  this._currentSearchIndex.set(0);
14179
14185
  }
14180
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
14181
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarService }); }
14186
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
14187
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarService }); }
14182
14188
  }
14183
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarService, decorators: [{
14189
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarService, decorators: [{
14184
14190
  type: Injectable
14185
14191
  }] });
14186
14192
 
@@ -14188,7 +14194,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
14188
14194
  * Members Popover Component
14189
14195
  * Shows list of conversation members with avatars
14190
14196
  */
14191
- class MembersPopoverComponent {
14197
+ class AXMembersPopoverComponent {
14192
14198
  constructor() {
14193
14199
  /** Conversation */
14194
14200
  this.conversation = input.required(...(ngDevMode ? [{ debugName: "conversation" }] : []));
@@ -14202,8 +14208,8 @@ class MembersPopoverComponent {
14202
14208
  .toUpperCase()
14203
14209
  .slice(0, 2);
14204
14210
  }
14205
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MembersPopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14206
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: MembersPopoverComponent, isStandalone: true, selector: "ax-conversation-members-popover", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
14211
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMembersPopoverComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14212
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXMembersPopoverComponent, isStandalone: true, selector: "ax-conversation-members-popover", inputs: { conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, ngImport: i0, template: `
14207
14213
  <div class="members-popover">
14208
14214
  <div class="members-header">
14209
14215
  <span class="members-title">Members ({{ conversation().participants.length }})</span>
@@ -14236,11 +14242,11 @@ class MembersPopoverComponent {
14236
14242
  }
14237
14243
  </div>
14238
14244
  </div>
14239
- `, isInline: true, styles: [":host{display:block}.members-popover{width:280px;max-height:400px;border-radius:.5rem;display:flex;flex-direction:column;background:rgb(var(--ax-sys-color-surface))}.members-header{padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.members-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.members-list{overflow-y:auto;padding:.5rem}.member-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:.5rem;transition:background .2s;cursor:pointer}.member-item:hover{background:rgb(var(--ax-sys-color-lighter-surface))}.member-info{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.member-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-role{font-size:.75rem;color:rgb(var(--ax-sys-color-primary-500));text-transform:capitalize}.member-status{width:10px;height:10px;border-radius:50%;// border: 2px solid rgb(var(--ax-sys-color-surface));flex-shrink:0}.member-status.status-online{background:rgb(var(--ax-sys-color-success-500))}.member-status.status-offline{background:rgb(var(--ax-sys-color-neutral-400))}.member-status.status-away{background:rgb(var(--ax-sys-color-warning-500))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "component", type: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }] }); }
14245
+ `, isInline: true, styles: [":host{display:block}.members-popover{width:280px;max-height:400px;border-radius:.5rem;display:flex;flex-direction:column;background:rgb(var(--ax-sys-color-surface))}.members-header{padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.members-title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.members-list{overflow-y:auto;padding:.5rem}.member-item{display:flex;align-items:center;gap:.75rem;padding:.5rem;border-radius:.5rem;transition:background .2s;cursor:pointer}.member-item:hover{background:rgb(var(--ax-sys-color-lighter-surface))}.member-info{flex:1;display:flex;flex-direction:column;gap:.125rem;min-width:0}.member-name{font-size:.875rem;font-weight:500;color:rgb(var(--ax-sys-color-on-surface));overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.member-role{font-size:.75rem;color:rgb(var(--ax-sys-color-primary-500));text-transform:capitalize}.member-status{width:10px;height:10px;border-radius:50%;// border: 2px solid rgb(var(--ax-sys-color-surface));flex-shrink:0}.member-status.status-online{background:rgb(var(--ax-sys-color-success-500))}.member-status.status-offline{background:rgb(var(--ax-sys-color-neutral-400))}.member-status.status-away{background:rgb(var(--ax-sys-color-warning-500))}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "component", type: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14240
14246
  }
14241
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: MembersPopoverComponent, decorators: [{
14247
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMembersPopoverComponent, decorators: [{
14242
14248
  type: Component,
14243
- args: [{ selector: 'ax-conversation-members-popover', imports: [CommonModule, AXAvatarComponent, AXImageComponent, AXLabelComponent], template: `
14249
+ args: [{ selector: 'ax-conversation-members-popover', imports: [CommonModule, AXAvatarComponent, AXImageComponent, AXLabelComponent], changeDetection: ChangeDetectionStrategy.OnPush, template: `
14244
14250
  <div class="members-popover">
14245
14251
  <div class="members-header">
14246
14252
  <span class="members-title">Members ({{ conversation().participants.length }})</span>
@@ -14433,8 +14439,8 @@ class AXInfoBarComponent {
14433
14439
  this.actionLoading.set(false);
14434
14440
  }
14435
14441
  }
14436
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14437
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXInfoBarComponent, isStandalone: true, selector: "ax-conversation-info-bar", outputs: { avatarClick: "avatarClick", searchClick: "searchClick", searchQuery: "searchQuery", menuItemAction: "menuItemAction" }, viewQueries: [{ propertyName: "membersPopoverRef", first: true, predicate: ["membersPopover"], descendants: true, isSignal: true }], ngImport: i0, template: `
14442
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
14443
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXInfoBarComponent, isStandalone: true, selector: "ax-conversation-info-bar", outputs: { avatarClick: "avatarClick", searchClick: "searchClick", searchQuery: "searchQuery", menuItemAction: "menuItemAction" }, viewQueries: [{ propertyName: "membersPopoverRef", first: true, predicate: ["membersPopover"], descendants: true, isSignal: true }], ngImport: i0, template: `
14438
14444
  @if (activeConversation(); as conversation) {
14439
14445
  <div class="info-bar">
14440
14446
  <!-- Left: Avatar and Info -->
@@ -14557,9 +14563,9 @@ class AXInfoBarComponent {
14557
14563
  }
14558
14564
  </div>
14559
14565
  }
14560
- `, isInline: true, styles: [":host{display:block}.info-bar{position:relative;display:flex;align-items:center;justify-content:space-between;overflow:hidden;padding:.5rem;line-height:1.1rem;min-height:65px;gap:.75rem}.info-bar-empty{justify-content:center;opacity:.6}.info-left{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.info-details{flex:1;min-width:0}.info-title{margin:0;font-size:1rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-subtitle-with-status{display:flex;align-items:center;gap:.375rem;margin:.125rem 0 0}.online-badge{color:#22c55e;font-size:.625rem;line-height:1;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.info-subtitle{margin:0;font-size:.85rem;letter-spacing:.02rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.7}.info-subtitle.clickable{cursor:pointer;transition:opacity .2s}.info-subtitle.clickable:hover{opacity:1;text-decoration:underline}.info-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.info-component-fullwidth{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;gap:.5rem;padding:1rem;background:rgb(var(--ax-sys-color-lightest-surface));z-index:10}.slide-in{animation:slideInFromRight var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes slideInFromRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.slide-out{opacity:0;transform:translate(100%);transition:opacity .25s cubic-bezier(.4,0,1,1),transform .25s cubic-bezier(.4,0,1,1)}.info-component-fullwidth>*:first-child{flex:1;min-width:0}.action-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:.5rem;font-size:1.25rem;cursor:pointer;transition:background .2s}.action-button:hover{background:rgb(var(--ax-sys-color-light-surface))}.search-container{display:flex;align-items:center;gap:.5rem;width:100%;min-width:200px}.search-input{flex:1;min-width:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "component", type: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: i1.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i1.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items", "closeParentOnClick", "lockOnLoading"], outputs: ["onItemClick"] }, { kind: "component", type: AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "directive", type: i4.AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "component", type: AXPopoverComponent, selector: "ax-popover", inputs: ["width", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: MembersPopoverComponent, selector: "ax-conversation-members-popover", inputs: ["conversation"] }] }); }
14566
+ `, isInline: true, styles: [":host{display:block}.info-bar{position:relative;display:flex;align-items:center;justify-content:space-between;overflow:hidden;padding:.5rem;line-height:1.1rem;min-height:65px;gap:.75rem}.info-bar-empty{justify-content:center;opacity:.6}.info-left{display:flex;align-items:center;gap:.75rem;flex:1;min-width:0}.info-details{flex:1;min-width:0}.info-title{margin:0;font-size:1rem;font-weight:600;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.info-subtitle-with-status{display:flex;align-items:center;gap:.375rem;margin:.125rem 0 0}.online-badge{color:#22c55e;font-size:.625rem;line-height:1;animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.info-subtitle{margin:0;font-size:.85rem;letter-spacing:.02rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;opacity:.7}.info-subtitle.clickable{cursor:pointer;transition:opacity .2s}.info-subtitle.clickable:hover{opacity:1;text-decoration:underline}.info-actions{display:flex;align-items:center;gap:.5rem;flex-shrink:0}.info-component-fullwidth{position:absolute;top:0;left:0;right:0;bottom:0;display:flex;align-items:center;gap:.5rem;padding:1rem;background:rgb(var(--ax-sys-color-lightest-surface));z-index:10}.slide-in{animation:slideInFromRight var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes slideInFromRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}.slide-out{opacity:0;transform:translate(100%);transition:opacity .25s cubic-bezier(.4,0,1,1),transform .25s cubic-bezier(.4,0,1,1)}.info-component-fullwidth>*:first-child{flex:1;min-width:0}.action-button{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border:none;background:transparent;border-radius:.5rem;font-size:1.25rem;cursor:pointer;transition:background .2s}.action-button:hover{background:rgb(var(--ax-sys-color-light-surface))}.search-container{display:flex;align-items:center;gap:.5rem;width:100%;min-width:200px}.search-input{flex:1;min-width:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "component", type: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: i1.AXButtonItemComponent, selector: "ax-button-item", inputs: ["color", "disabled", "text", "selected", "divided", "data", "name"], outputs: ["onClick", "onFocus", "onBlur", "disabledChange"] }, { kind: "component", type: i1.AXButtonItemListComponent, selector: "ax-button-item-list", inputs: ["items", "closeParentOnClick", "lockOnLoading"], outputs: ["onItemClick"] }, { kind: "component", type: AXDropdownPanelComponent, selector: "ax-dropdown-panel", inputs: ["isOpen", "fitParent", "dropdownWidth", "position", "placement", "_target", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: i2.AXDecoratorIconComponent, selector: "ax-icon", inputs: ["icon"] }, { kind: "component", type: i2.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: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "directive", type: i4.AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "component", type: AXPopoverComponent, selector: "ax-popover", inputs: ["width", "forceDisableActionSheetStyle", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "repositionOnScroll", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "component", type: AXMembersPopoverComponent, selector: "ax-conversation-members-popover", inputs: ["conversation"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
14561
14567
  }
14562
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfoBarComponent, decorators: [{
14568
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfoBarComponent, decorators: [{
14563
14569
  type: Component,
14564
14570
  args: [{ selector: 'ax-conversation-info-bar', imports: [
14565
14571
  CommonModule,
@@ -14572,8 +14578,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
14572
14578
  AXLabelComponent,
14573
14579
  AXTooltipModule,
14574
14580
  AXPopoverComponent,
14575
- MembersPopoverComponent,
14576
- ], template: `
14581
+ AXMembersPopoverComponent,
14582
+ ], changeDetection: ChangeDetectionStrategy.OnPush, template: `
14577
14583
  @if (activeConversation(); as conversation) {
14578
14584
  <div class="info-bar">
14579
14585
  <!-- Left: Avatar and Info -->
@@ -14755,10 +14761,10 @@ class AXInfiniteScrollDirective {
14755
14761
  }
14756
14762
  this.lastScrollTop = scrollTop;
14757
14763
  }
14758
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfiniteScrollDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
14759
- static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.15", type: AXInfiniteScrollDirective, isStandalone: true, selector: "[axInfiniteScroll]", inputs: { threshold: { classPropertyName: "threshold", publicName: "threshold", isSignal: true, isRequired: false, transformFunction: null }, edge: { classPropertyName: "edge", publicName: "edge", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { scrollThreshold: "scrollThreshold" }, ngImport: i0 }); }
14764
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfiniteScrollDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
14765
+ static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "17.1.0", version: "20.3.16", type: AXInfiniteScrollDirective, isStandalone: true, selector: "[axInfiniteScroll]", inputs: { threshold: { classPropertyName: "threshold", publicName: "threshold", isSignal: true, isRequired: false, transformFunction: null }, edge: { classPropertyName: "edge", publicName: "edge", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { scrollThreshold: "scrollThreshold" }, ngImport: i0 }); }
14760
14766
  }
14761
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXInfiniteScrollDirective, decorators: [{
14767
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXInfiniteScrollDirective, decorators: [{
14762
14768
  type: Directive,
14763
14769
  args: [{
14764
14770
  selector: '[axInfiniteScroll]',
@@ -15029,7 +15035,7 @@ class AXMessageListComponent {
15029
15035
  if (!renderer) {
15030
15036
  console.warn('⚠️ No renderer found for message type:', message.type, 'Using fallback');
15031
15037
  }
15032
- return renderer?.component ?? FallbackRendererComponent;
15038
+ return renderer?.component ?? AXFallbackRendererComponent;
15033
15039
  }
15034
15040
  /** Provide inputs for the dynamic renderer */
15035
15041
  getRendererInputs(message) {
@@ -15383,8 +15389,8 @@ class AXMessageListComponent {
15383
15389
  trackMessage(index, message) {
15384
15390
  return message.id;
15385
15391
  }
15386
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15387
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXMessageListComponent, isStandalone: true, selector: "ax-conversation-message-list", inputs: { avatarTemplate: { classPropertyName: "avatarTemplate", publicName: "avatarTemplate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { messageAction: "messageAction" }, viewQueries: [{ propertyName: "reactionPopover", first: true, predicate: ["reactionPopover"], descendants: true, isSignal: true }, { propertyName: "messageListRef", first: true, predicate: ["messageList"], descendants: true, isSignal: true }, { propertyName: "messagesContainerRef", first: true, predicate: ["messagesContainer"], descendants: true, isSignal: true }], ngImport: i0, template: `
15392
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageListComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
15393
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXMessageListComponent, isStandalone: true, selector: "ax-conversation-message-list", inputs: { avatarTemplate: { classPropertyName: "avatarTemplate", publicName: "avatarTemplate", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { messageAction: "messageAction" }, viewQueries: [{ propertyName: "reactionPopover", first: true, predicate: ["reactionPopover"], descendants: true, isSignal: true }, { propertyName: "messageListRef", first: true, predicate: ["messageList"], descendants: true, isSignal: true }, { propertyName: "messagesContainerRef", first: true, predicate: ["messagesContainer"], descendants: true, isSignal: true }], ngImport: i0, template: `
15388
15394
  @if (activeConversation()) {
15389
15395
  <div class="message-list" #messageList role="log" aria-label="Message list" aria-live="polite">
15390
15396
  @if (loading()) {
@@ -15676,9 +15682,9 @@ class AXMessageListComponent {
15676
15682
  </ax-popover>
15677
15683
  }
15678
15684
  }
15679
- `, isInline: true, styles: [":host{display:block;height:100%;position:relative}.message-list{height:100%}.list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center}.list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:3rem 2rem;gap:1.25rem;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.empty-icon{font-size:5.5rem;line-height:1;opacity:.35;margin-bottom:.5rem;filter:grayscale(.2)}.empty-title{font-size:1.625rem;font-weight:600;margin:0;color:rgb(var(--ax-sys-color-on-surface));letter-spacing:-.02em}.empty-description{font-size:1.0625rem;margin:0;color:rgb(var(--ax-sys-color-on-surface));opacity:.65;max-width:420px;line-height:1.7}.spinner{width:32px;height:32px;border:3px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.list-loading-more{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;text-align:center;color:rgb(var(--ax-sys-color-on-surface));opacity:.7}.messages-container{width:100%;height:100%;overflow-y:auto;overflow-x:hidden}.date-separator{position:sticky;z-index:150;top:0;display:flex;align-items:center;justify-content:center;margin:.5rem 0}.date-text{padding:.25rem .75rem;background:rgb(var(--ax-sys-color-lighter-surface));font-size:.75rem;font-weight:500;border-radius:1rem;width:7rem;display:flex;justify-content:center;align-items:center}.unread-separator{display:flex;align-items:center;gap:.75rem;margin:1.5rem 0;padding:0 1rem}.unread-separator-line{flex:1;height:1px;background:rgb(var(--ax-sys-color-primary-500));opacity:.3}.unread-separator-text{font-size:.75rem;font-weight:600;color:rgb(var(--ax-sys-color-primary-500));text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.message-item:has(.message-reactions-bubbles){padding-bottom:2.5rem}.message-item{position:relative;display:flex;padding:1rem;border-radius:0;gap:.5rem;margin-bottom:2rem;line-height:1rem;align-items:end;transition:background-color .3s ease}.message-highlight{background-color:rgba(var(--ax-sys-color-primary-500),.1);border-radius:.5rem}.fade-slide-in{animation:fadeSlideIn var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes fadeSlideIn{0%{opacity:0;// transform: translateX(20%)}to{opacity:1;// transform: translateX(0)}}.message-own{flex-direction:row-reverse}.message-avatar{flex-shrink:0;margin-bottom:.25rem}.message-bubble-container{display:flex;flex-direction:column;max-width:70%;position:relative}.message-own .message-bubble-container{align-items:flex-end}.message-sender{font-size:.75rem;font-weight:600;margin-bottom:.25rem}.message-bubble{position:relative;padding:.5rem .75rem;border-radius:1rem;background:rgb(var(--ax-sys-color-surface));box-shadow:0 1px 2px #0000000d;word-wrap:break-word;transition:background-color .3s ease}.reply-preview{display:flex;gap:.5rem;padding:.5rem;margin-bottom:.5rem;background:#0000000d;border-radius:.5rem;cursor:pointer;transition:background-color .2s}.reply-preview:hover{background:#00000014}.message-own .reply-preview{background:#ffffff26}.message-own .reply-preview:hover{background:#ffffff40}.reply-preview-line{width:3px;background:currentColor;opacity:.5;border-radius:1.5px;flex-shrink:0}.reply-preview-content{flex:1;min-width:0}.reply-preview-sender{font-size:.75rem;font-weight:600;margin-bottom:.125rem;opacity:.9}.reply-preview-text{font-size:.8125rem;opacity:.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forwarded-indicator{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:.75rem;font-weight:500;font-style:italic;opacity:.7;border-left:3px solid currentColor;border-radius:.5rem;padding:.375rem .5rem}.forwarded-indicator i{font-size:.875rem}.forwarded-text{font-size:.75rem}.message-bubble-received{border-bottom-left-radius:.125rem}.message-bubble-sent{border-bottom-right-radius:.125rem}.message-own .message-bubble{background:rgb(var(--ax-sys-color-primary-surface));color:rgb(var(--ax-sys-color-on-primary-surface))}.message-content{font-size:.9375rem;line-height:1.5;white-space:pre-wrap}.message-footer{display:flex;align-items:end;gap:.25rem;margin-top:.25rem;font-size:.6875rem;opacity:.7;letter-spacing:.05rem}.message-time{font-variant-numeric:tabular-nums;font-size:.675rem}.edited-indicator{display:inline-flex;align-items:center;gap:.25rem;font-size:.675rem;opacity:.75;padding-inline-start:.35rem;border-inline-start:1px solid lightgray}.status-icon{cursor:help;display:inline-flex;font-size:.75rem}.status-read{color:rgb(var(--ax-sys-color-primary-400))}.status-failed{color:rgb(var(--ax-sys-color-danger-500))}.message-reactions-bubbles{display:flex;flex-wrap:wrap;gap:.25rem;z-index:1}.reaction-bubble{display:flex;align-items:center;gap:.125rem;padding:.25rem;background:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border:1px solid rgb(var(--ax-sys-color-border));border-radius:.625rem;font-size:.625rem;cursor:pointer;transition:all .15s;box-shadow:0 1px 2px #00000014;min-height:16px;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reaction-bubble:hover{// transform: scale(1.3);box-shadow:0 2px 4px #0000001f;border-color:rgb(var(--ax-sys-color-primary))}.reaction-bubble-active{background:rgb(var(--ax-sys-color-primary-lightest-surface));color:rgb(var(--ax-sys-color-on-primary-lightest-surface));border-color:rgb(var(--ax-sys-color-primary));border-width:1.5px}.reaction-emoji{font-size:1.2rem;line-height:1}.reaction-count{font-size:1rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface));line-height:1}.reaction-bubble-active .reaction-count{color:rgb(var(--ax-sys-color-primary))}.reaction-bubble-active:hover{background:rgb(var(--ax-sys-color-primary-light-surface));border-color:rgb(var(--ax-sys-color-primary-600))}.message-reactions-container{display:flex;align-items:center;flex-wrap:wrap;gap:.375rem;min-height:20px;position:absolute;left:0;top:calc(100% + 18px)}.add-reaction-button{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;padding:.25rem;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border));border-radius:50%;cursor:pointer;transition:all .15s;box-shadow:0 1px 2px #00000014;visibility:hidden}.message-bubble-container:hover .add-reaction-button{visibility:visible}.add-reaction-visible{visibility:visible!important;background:rgb(var(--ax-sys-color-primary) / .1);border-color:rgb(var(--ax-sys-color-primary))}.add-reaction-button:hover{// transform: scale(1.15);box-shadow:0 2px 4px #0000001f;border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .12)}.add-reaction-button i{font-size:1rem;color:rgb(var(--ax-sys-color-on-surface))}.reaction-picker-popup{position:fixed;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border));border-radius:.75rem;box-shadow:0 8px 24px #0003;z-index:100;min-width:260px;max-width:300px;transform:translateY(-100%);margin-top:-.5rem}.reaction-picker-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid rgb(var(--ax-sys-color-border))}.picker-title{font-size:.8125rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.picker-close{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;background:transparent;border:none;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s}.picker-close:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.reaction-picker-emojis{display:grid;grid-template-columns:repeat(6,1fr);gap:.375rem;padding:.75rem;padding-top:0}.reaction-picker-emoji{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1.5px solid transparent;border-radius:.5rem;font-size:1.375rem;cursor:pointer;transition:all .15s;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reaction-picker-emoji:hover{// transform: scale(1.15);rotate:20deg;background:rgb(var(--ax-sys-color-surface-variant))}.reaction-picker-emoji-active{background:rgb(var(--ax-sys-color-primary) / .15);border-color:rgb(var(--ax-sys-color-primary))}.reaction-picker-emoji-active:hover{background:rgb(var(--ax-sys-color-primary) / .25)}.message-actions{padding-bottom:1.5rem;opacity:0;transition:opacity .2s;z-index:10}.message-item:hover .message-actions{opacity:1}.action-trigger{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.action-trigger:hover{background:rgb(var(--ax-sys-color-light-surface));// transform: scale(1.05)}.shortcut{font-size:.6875rem;opacity:.7}.scroll-to-bottom{position:absolute;bottom:1rem;right:1rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 6px #0000001a;transition:transform .2s;z-index:190}.scroll-to-bottom:hover{// transform: scale(1.1)}.thread-badge,.forward-badge{position:absolute;top:-6px;min-width:20px;height:24px;padding:0 6px;display:flex;align-items:center;justify-content:center;gap:3px;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:2px solid rgb(var(--ax-sys-color-lightest-surface));border-radius:10px;font-size:.6875rem;font-weight:600;cursor:pointer;transition:all .2s;z-index:10}.thread-badge i,.forward-badge i{font-size:.625rem}.message-bubble-received .thread-badge{left:calc(100% - 5px)}.message-own .message-bubble-sent .thread-badge{right:calc(100% - 5px)}.forward-badge{background:rgb(var(--ax-sys-color-success-500));pointer-events:none}.message-bubble-received .forward-badge{left:calc(100% - 5px);top:18px}.message-own .message-bubble-sent .forward-badge{right:calc(100% - 5px);top:18px}.message-bubble-received .forward-badge:first-of-type{top:-6px}.message-own .message-bubble-sent .forward-badge:first-of-type{top:-6px}.thread-badge:hover{// transform: scale(1.1);background:rgb(var(--ax-sys-color-primary-600))}.thread-badge:active{// transform: scale(.95)}.forward-badge:hover{background:rgb(var(--ax-sys-color-success-600))}.slide-in{animation:slideInFromBottom var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.slide-out{opacity:0;transform:translateY(100%);transition:opacity var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function),transform var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i1$5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "component", type: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "component", type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXFormatModule }, { kind: "ngmodule", type: AXDateTimeModule }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "directive", type: i4.AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i7.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "directive", type: AXInfiniteScrollDirective, selector: "[axInfiniteScroll]", inputs: ["threshold", "edge"], outputs: ["scrollThreshold"] }, { kind: "pipe", type: i1$5.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.AXFormatPipe, name: "format" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
15685
+ `, isInline: true, styles: [":host{display:block;height:100%;position:relative}.message-list{height:100%}.list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center}.list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:3rem 2rem;gap:1.25rem;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.empty-icon{font-size:5.5rem;line-height:1;opacity:.35;margin-bottom:.5rem;filter:grayscale(.2)}.empty-title{font-size:1.625rem;font-weight:600;margin:0;color:rgb(var(--ax-sys-color-on-surface));letter-spacing:-.02em}.empty-description{font-size:1.0625rem;margin:0;color:rgb(var(--ax-sys-color-on-surface));opacity:.65;max-width:420px;line-height:1.7}.spinner{width:32px;height:32px;border:3px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.list-loading-more{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;text-align:center;color:rgb(var(--ax-sys-color-on-surface));opacity:.7}.messages-container{width:100%;height:100%;overflow-y:auto;overflow-x:hidden}.date-separator{position:sticky;z-index:150;top:0;display:flex;align-items:center;justify-content:center;margin:.5rem 0}.date-text{padding:.25rem .75rem;background:rgb(var(--ax-sys-color-lighter-surface));font-size:.75rem;font-weight:500;border-radius:1rem;width:7rem;display:flex;justify-content:center;align-items:center}.unread-separator{display:flex;align-items:center;gap:.75rem;margin:1.5rem 0;padding:0 1rem}.unread-separator-line{flex:1;height:1px;background:rgb(var(--ax-sys-color-primary-500));opacity:.3}.unread-separator-text{font-size:.75rem;font-weight:600;color:rgb(var(--ax-sys-color-primary-500));text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.message-item:has(.message-reactions-bubbles){padding-bottom:2.5rem}.message-item{position:relative;display:flex;padding:1rem;border-radius:0;gap:.5rem;margin-bottom:2rem;line-height:1rem;align-items:end;transition:background-color .3s ease}.message-highlight{background-color:rgba(var(--ax-sys-color-primary-500),.1);border-radius:.5rem}.fade-slide-in{animation:fadeSlideIn var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes fadeSlideIn{0%{opacity:0;// transform: translateX(20%)}to{opacity:1;// transform: translateX(0)}}.message-own{flex-direction:row-reverse}.message-avatar{flex-shrink:0;margin-bottom:.25rem}.message-bubble-container{display:flex;flex-direction:column;max-width:70%;position:relative}.message-own .message-bubble-container{align-items:flex-end}.message-sender{font-size:.75rem;font-weight:600;margin-bottom:.25rem}.message-bubble{position:relative;padding:.5rem .75rem;border-radius:1rem;background:rgb(var(--ax-sys-color-surface));--ax-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);word-wrap:break-word;transition:background-color .3s ease}.reply-preview{display:flex;gap:.5rem;padding:.5rem;margin-bottom:.5rem;background:rgb(var(--ax-sys-color-on-surface) / .05);border-radius:var(--ax-sys-border-radius);cursor:pointer;transition:background-color var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}.reply-preview:hover{background:rgb(var(--ax-sys-color-on-surface) / .08)}.message-own .reply-preview{background:rgb(var(--ax-sys-color-light-surface) / .15)}.message-own .reply-preview:hover{background:rgb(var(--ax-sys-color-light-surface) / .25)}.reply-preview-line{width:3px;background:currentColor;opacity:.5;border-radius:1.5px;flex-shrink:0}.reply-preview-content{flex:1;min-width:0}.reply-preview-sender{font-size:.75rem;font-weight:600;margin-bottom:.125rem;opacity:.9}.reply-preview-text{font-size:.8125rem;opacity:.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forwarded-indicator{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:.75rem;font-weight:500;font-style:italic;opacity:.7;border-left:3px solid currentColor;border-radius:var(--ax-sys-border-radius);padding:.375rem .5rem}.forwarded-indicator i{font-size:.875rem}.forwarded-text{font-size:.75rem}.message-bubble-received{border-bottom-left-radius:.125rem}.message-bubble-sent{border-bottom-right-radius:.125rem}.message-own .message-bubble{background:rgb(var(--ax-sys-color-primary-surface));color:rgb(var(--ax-sys-color-on-primary-surface))}.message-content{font-size:.9375rem;line-height:1.5;white-space:pre-wrap}.message-footer{display:flex;align-items:end;gap:.25rem;margin-top:.25rem;font-size:.6875rem;opacity:.7;letter-spacing:.05rem}.message-time{font-variant-numeric:tabular-nums;font-size:.675rem}.edited-indicator{display:inline-flex;align-items:center;gap:.25rem;font-size:.675rem;opacity:.75;padding-inline-start:.35rem;border-inline-start:1px solid rgb(var(--ax-sys-color-border-light-surface))}.status-icon{cursor:help;display:inline-flex;font-size:.75rem}.status-read{color:rgb(var(--ax-sys-color-primary-400))}.status-failed{color:rgb(var(--ax-sys-color-danger-500))}.message-reactions-bubbles{display:flex;flex-wrap:wrap;gap:.25rem;z-index:1}.reaction-bubble{display:flex;align-items:center;gap:.125rem;padding:.25rem;background:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border:1px solid rgb(var(--ax-sys-color-border-surface));border-radius:var(--ax-sys-border-radius);font-size:.625rem;cursor:pointer;transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);--ax-shadow: 0 1px 2px 0 rgb(0 0 0 / .08);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);min-height:16px;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reaction-bubble:hover{// transform: scale(1.3);--ax-shadow: 0 2px 4px 0 rgb(0 0 0 / .12);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);border-color:rgb(var(--ax-sys-color-primary-500))}.reaction-bubble-active{background:rgb(var(--ax-sys-color-primary-lightest-surface));color:rgb(var(--ax-sys-color-on-primary-lightest-surface));border-color:rgb(var(--ax-sys-color-primary-500));border-width:1.5px}.reaction-emoji{font-size:1.2rem;line-height:1}.reaction-count{font-size:1rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface));line-height:1}.reaction-bubble-active .reaction-count{color:rgb(var(--ax-sys-color-primary-500))}.reaction-bubble-active:hover{background:rgb(var(--ax-sys-color-primary-light-surface));border-color:rgb(var(--ax-sys-color-primary-600))}.message-reactions-container{display:flex;align-items:center;flex-wrap:wrap;gap:.375rem;min-height:20px;position:absolute;left:0;top:calc(100% + 18px)}.add-reaction-button{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;padding:.25rem;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border-surface));border-radius:50%;cursor:pointer;transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);--ax-shadow: 0 1px 2px 0 rgb(0 0 0 / .08);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);visibility:hidden}.message-bubble-container:hover .add-reaction-button{visibility:visible}.add-reaction-visible{visibility:visible!important;background:rgb(var(--ax-sys-color-primary-500) / .1);border-color:rgb(var(--ax-sys-color-primary-500))}.add-reaction-button:hover{// transform: scale(1.15);--ax-shadow: 0 2px 4px 0 rgb(0 0 0 / .12);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);border-color:rgb(var(--ax-sys-color-primary-500));background:rgb(var(--ax-sys-color-primary-500) / .12)}.add-reaction-button i{font-size:1rem;color:rgb(var(--ax-sys-color-on-surface))}.reaction-picker-popup{position:fixed;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border-surface));border-radius:var(--ax-sys-border-radius);--ax-shadow: 0 8px 24px rgb(0 0 0 / .2);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);z-index:100;min-width:260px;max-width:300px;transform:translateY(-100%);margin-top:-.5rem}.reaction-picker-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-surface))}.picker-title{font-size:.8125rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.picker-close{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;background:transparent;border:none;border-radius:var(--ax-sys-border-radius);cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}.picker-close:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.reaction-bubble:focus-visible,.add-reaction-button:focus-visible,.picker-close:focus-visible,.reaction-picker-emoji:focus-visible,.action-trigger:focus-visible,.scroll-to-bottom:focus-visible{outline:2px solid rgb(var(--ax-sys-color-primary-500));outline-offset:2px}.reaction-picker-emojis{display:grid;grid-template-columns:repeat(6,1fr);gap:.375rem;padding:.75rem;padding-top:0}.reaction-picker-emoji{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1.5px solid transparent;border-radius:var(--ax-sys-border-radius);font-size:1.375rem;cursor:pointer;transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reaction-picker-emoji:hover{// transform: scale(1.15);rotate:20deg;background:rgb(var(--ax-sys-color-light-surface))}.reaction-picker-emoji-active{background:rgb(var(--ax-sys-color-primary-500) / .15);border-color:rgb(var(--ax-sys-color-primary-500))}.reaction-picker-emoji-active:hover{background:rgb(var(--ax-sys-color-primary-500) / .25)}.message-actions{padding-bottom:1.5rem;opacity:0;transition:opacity var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);z-index:10}.message-item:hover .message-actions{opacity:1}.action-trigger{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius);font-size:.875rem;cursor:pointer;transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);--ax-shadow: 0 2px 4px 0 rgb(0 0 0 / .1);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow)}.action-trigger:hover{background:rgb(var(--ax-sys-color-light-surface));// transform: scale(1.05)}.shortcut{font-size:.6875rem;opacity:.7}.scroll-to-bottom{position:absolute;bottom:1rem;right:1rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;--ax-shadow: 0 4px 6px 0 rgb(0 0 0 / .1);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);transition:transform var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);z-index:999}.scroll-to-bottom:hover{// transform: scale(1.1)}.thread-badge,.forward-badge{position:absolute;top:-6px;min-width:20px;height:24px;padding:0 6px;display:flex;align-items:center;justify-content:center;gap:3px;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:2px solid rgb(var(--ax-sys-color-lightest-surface));border-radius:10px;font-size:.6875rem;font-weight:600;cursor:pointer;transition:all .2s;z-index:10}.thread-badge i,.forward-badge i{font-size:.625rem}.message-bubble-received .thread-badge{left:calc(100% - 5px)}.message-own .message-bubble-sent .thread-badge{right:calc(100% - 5px)}.forward-badge{background:rgb(var(--ax-sys-color-success-500));pointer-events:none}.message-bubble-received .forward-badge{left:calc(100% - 5px);top:18px}.message-own .message-bubble-sent .forward-badge{right:calc(100% - 5px);top:18px}.message-bubble-received .forward-badge:first-of-type{top:-6px}.message-own .message-bubble-sent .forward-badge:first-of-type{top:-6px}.thread-badge:hover{// transform: scale(1.1);background:rgb(var(--ax-sys-color-primary-600))}.thread-badge:active{// transform: scale(.95)}.forward-badge:hover{background:rgb(var(--ax-sys-color-success-600))}.slide-in{animation:slideInFromBottom var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.slide-out{opacity:0;transform:translateY(100%);transition:opacity var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function),transform var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$5.NgComponentOutlet, selector: "[ngComponentOutlet]", inputs: ["ngComponentOutlet", "ngComponentOutletInputs", "ngComponentOutletInjector", "ngComponentOutletEnvironmentInjector", "ngComponentOutletContent", "ngComponentOutletNgModule", "ngComponentOutletNgModuleFactory"], exportAs: ["ngComponentOutlet"] }, { kind: "directive", type: i1$5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "component", type: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "ngmodule", type: AXButtonModule }, { kind: "component", type: i1.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: AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }, { kind: "ngmodule", type: AXDecoratorModule }, { kind: "component", type: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "component", type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { kind: "ngmodule", type: AXFormatModule }, { kind: "ngmodule", type: AXDateTimeModule }, { kind: "ngmodule", type: AXTooltipModule }, { kind: "directive", type: i4.AXTooltipDirective, selector: "[axTooltip]", inputs: ["axTooltipDisabled", "axTooltip", "axTooltipContext", "axTooltipPlacement", "axTooltipOffsetX", "axTooltipOffsetY", "axTooltipOpenAfter", "axTooltipCloseAfter"] }, { kind: "ngmodule", type: AXPopoverModule }, { kind: "component", type: i7.AXPopoverComponent, selector: "ax-popover", inputs: ["width", "forceDisableActionSheetStyle", "disabled", "offsetX", "offsetY", "target", "placement", "content", "openOn", "closeOn", "hasBackdrop", "openAfter", "closeAfter", "repositionOnScroll", "backdropClass", "panelClass", "adaptivityEnabled"], outputs: ["onOpened", "onClosed"] }, { kind: "directive", type: AXInfiniteScrollDirective, selector: "[axInfiniteScroll]", inputs: ["threshold", "edge"], outputs: ["scrollThreshold"] }, { kind: "pipe", type: i1$5.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.AXFormatPipe, name: "format" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
15680
15686
  }
15681
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXMessageListComponent, decorators: [{
15687
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXMessageListComponent, decorators: [{
15682
15688
  type: Component,
15683
15689
  args: [{ selector: 'ax-conversation-message-list', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
15684
15690
  CommonModule,
@@ -15987,7 +15993,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImpo
15987
15993
  </ax-popover>
15988
15994
  }
15989
15995
  }
15990
- `, styles: [":host{display:block;height:100%;position:relative}.message-list{height:100%}.list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center}.list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:3rem 2rem;gap:1.25rem;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.empty-icon{font-size:5.5rem;line-height:1;opacity:.35;margin-bottom:.5rem;filter:grayscale(.2)}.empty-title{font-size:1.625rem;font-weight:600;margin:0;color:rgb(var(--ax-sys-color-on-surface));letter-spacing:-.02em}.empty-description{font-size:1.0625rem;margin:0;color:rgb(var(--ax-sys-color-on-surface));opacity:.65;max-width:420px;line-height:1.7}.spinner{width:32px;height:32px;border:3px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.list-loading-more{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;text-align:center;color:rgb(var(--ax-sys-color-on-surface));opacity:.7}.messages-container{width:100%;height:100%;overflow-y:auto;overflow-x:hidden}.date-separator{position:sticky;z-index:150;top:0;display:flex;align-items:center;justify-content:center;margin:.5rem 0}.date-text{padding:.25rem .75rem;background:rgb(var(--ax-sys-color-lighter-surface));font-size:.75rem;font-weight:500;border-radius:1rem;width:7rem;display:flex;justify-content:center;align-items:center}.unread-separator{display:flex;align-items:center;gap:.75rem;margin:1.5rem 0;padding:0 1rem}.unread-separator-line{flex:1;height:1px;background:rgb(var(--ax-sys-color-primary-500));opacity:.3}.unread-separator-text{font-size:.75rem;font-weight:600;color:rgb(var(--ax-sys-color-primary-500));text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.message-item:has(.message-reactions-bubbles){padding-bottom:2.5rem}.message-item{position:relative;display:flex;padding:1rem;border-radius:0;gap:.5rem;margin-bottom:2rem;line-height:1rem;align-items:end;transition:background-color .3s ease}.message-highlight{background-color:rgba(var(--ax-sys-color-primary-500),.1);border-radius:.5rem}.fade-slide-in{animation:fadeSlideIn var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes fadeSlideIn{0%{opacity:0;// transform: translateX(20%)}to{opacity:1;// transform: translateX(0)}}.message-own{flex-direction:row-reverse}.message-avatar{flex-shrink:0;margin-bottom:.25rem}.message-bubble-container{display:flex;flex-direction:column;max-width:70%;position:relative}.message-own .message-bubble-container{align-items:flex-end}.message-sender{font-size:.75rem;font-weight:600;margin-bottom:.25rem}.message-bubble{position:relative;padding:.5rem .75rem;border-radius:1rem;background:rgb(var(--ax-sys-color-surface));box-shadow:0 1px 2px #0000000d;word-wrap:break-word;transition:background-color .3s ease}.reply-preview{display:flex;gap:.5rem;padding:.5rem;margin-bottom:.5rem;background:#0000000d;border-radius:.5rem;cursor:pointer;transition:background-color .2s}.reply-preview:hover{background:#00000014}.message-own .reply-preview{background:#ffffff26}.message-own .reply-preview:hover{background:#ffffff40}.reply-preview-line{width:3px;background:currentColor;opacity:.5;border-radius:1.5px;flex-shrink:0}.reply-preview-content{flex:1;min-width:0}.reply-preview-sender{font-size:.75rem;font-weight:600;margin-bottom:.125rem;opacity:.9}.reply-preview-text{font-size:.8125rem;opacity:.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forwarded-indicator{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:.75rem;font-weight:500;font-style:italic;opacity:.7;border-left:3px solid currentColor;border-radius:.5rem;padding:.375rem .5rem}.forwarded-indicator i{font-size:.875rem}.forwarded-text{font-size:.75rem}.message-bubble-received{border-bottom-left-radius:.125rem}.message-bubble-sent{border-bottom-right-radius:.125rem}.message-own .message-bubble{background:rgb(var(--ax-sys-color-primary-surface));color:rgb(var(--ax-sys-color-on-primary-surface))}.message-content{font-size:.9375rem;line-height:1.5;white-space:pre-wrap}.message-footer{display:flex;align-items:end;gap:.25rem;margin-top:.25rem;font-size:.6875rem;opacity:.7;letter-spacing:.05rem}.message-time{font-variant-numeric:tabular-nums;font-size:.675rem}.edited-indicator{display:inline-flex;align-items:center;gap:.25rem;font-size:.675rem;opacity:.75;padding-inline-start:.35rem;border-inline-start:1px solid lightgray}.status-icon{cursor:help;display:inline-flex;font-size:.75rem}.status-read{color:rgb(var(--ax-sys-color-primary-400))}.status-failed{color:rgb(var(--ax-sys-color-danger-500))}.message-reactions-bubbles{display:flex;flex-wrap:wrap;gap:.25rem;z-index:1}.reaction-bubble{display:flex;align-items:center;gap:.125rem;padding:.25rem;background:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border:1px solid rgb(var(--ax-sys-color-border));border-radius:.625rem;font-size:.625rem;cursor:pointer;transition:all .15s;box-shadow:0 1px 2px #00000014;min-height:16px;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reaction-bubble:hover{// transform: scale(1.3);box-shadow:0 2px 4px #0000001f;border-color:rgb(var(--ax-sys-color-primary))}.reaction-bubble-active{background:rgb(var(--ax-sys-color-primary-lightest-surface));color:rgb(var(--ax-sys-color-on-primary-lightest-surface));border-color:rgb(var(--ax-sys-color-primary));border-width:1.5px}.reaction-emoji{font-size:1.2rem;line-height:1}.reaction-count{font-size:1rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface));line-height:1}.reaction-bubble-active .reaction-count{color:rgb(var(--ax-sys-color-primary))}.reaction-bubble-active:hover{background:rgb(var(--ax-sys-color-primary-light-surface));border-color:rgb(var(--ax-sys-color-primary-600))}.message-reactions-container{display:flex;align-items:center;flex-wrap:wrap;gap:.375rem;min-height:20px;position:absolute;left:0;top:calc(100% + 18px)}.add-reaction-button{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;padding:.25rem;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border));border-radius:50%;cursor:pointer;transition:all .15s;box-shadow:0 1px 2px #00000014;visibility:hidden}.message-bubble-container:hover .add-reaction-button{visibility:visible}.add-reaction-visible{visibility:visible!important;background:rgb(var(--ax-sys-color-primary) / .1);border-color:rgb(var(--ax-sys-color-primary))}.add-reaction-button:hover{// transform: scale(1.15);box-shadow:0 2px 4px #0000001f;border-color:rgb(var(--ax-sys-color-primary));background:rgb(var(--ax-sys-color-primary) / .12)}.add-reaction-button i{font-size:1rem;color:rgb(var(--ax-sys-color-on-surface))}.reaction-picker-popup{position:fixed;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border));border-radius:.75rem;box-shadow:0 8px 24px #0003;z-index:100;min-width:260px;max-width:300px;transform:translateY(-100%);margin-top:-.5rem}.reaction-picker-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid rgb(var(--ax-sys-color-border))}.picker-title{font-size:.8125rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.picker-close{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;background:transparent;border:none;border-radius:.25rem;cursor:pointer;color:rgb(var(--ax-sys-color-on-surface-variant));transition:all .2s}.picker-close:hover{background:rgb(var(--ax-sys-color-error) / .1);color:rgb(var(--ax-sys-color-error))}.reaction-picker-emojis{display:grid;grid-template-columns:repeat(6,1fr);gap:.375rem;padding:.75rem;padding-top:0}.reaction-picker-emoji{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1.5px solid transparent;border-radius:.5rem;font-size:1.375rem;cursor:pointer;transition:all .15s;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reaction-picker-emoji:hover{// transform: scale(1.15);rotate:20deg;background:rgb(var(--ax-sys-color-surface-variant))}.reaction-picker-emoji-active{background:rgb(var(--ax-sys-color-primary) / .15);border-color:rgb(var(--ax-sys-color-primary))}.reaction-picker-emoji-active:hover{background:rgb(var(--ax-sys-color-primary) / .25)}.message-actions{padding-bottom:1.5rem;opacity:0;transition:opacity .2s;z-index:10}.message-item:hover .message-actions{opacity:1}.action-trigger{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:.375rem;font-size:.875rem;cursor:pointer;transition:all .2s;box-shadow:0 2px 4px #0000001a}.action-trigger:hover{background:rgb(var(--ax-sys-color-light-surface));// transform: scale(1.05)}.shortcut{font-size:.6875rem;opacity:.7}.scroll-to-bottom{position:absolute;bottom:1rem;right:1rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;box-shadow:0 4px 6px #0000001a;transition:transform .2s;z-index:190}.scroll-to-bottom:hover{// transform: scale(1.1)}.thread-badge,.forward-badge{position:absolute;top:-6px;min-width:20px;height:24px;padding:0 6px;display:flex;align-items:center;justify-content:center;gap:3px;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:2px solid rgb(var(--ax-sys-color-lightest-surface));border-radius:10px;font-size:.6875rem;font-weight:600;cursor:pointer;transition:all .2s;z-index:10}.thread-badge i,.forward-badge i{font-size:.625rem}.message-bubble-received .thread-badge{left:calc(100% - 5px)}.message-own .message-bubble-sent .thread-badge{right:calc(100% - 5px)}.forward-badge{background:rgb(var(--ax-sys-color-success-500));pointer-events:none}.message-bubble-received .forward-badge{left:calc(100% - 5px);top:18px}.message-own .message-bubble-sent .forward-badge{right:calc(100% - 5px);top:18px}.message-bubble-received .forward-badge:first-of-type{top:-6px}.message-own .message-bubble-sent .forward-badge:first-of-type{top:-6px}.thread-badge:hover{// transform: scale(1.1);background:rgb(var(--ax-sys-color-primary-600))}.thread-badge:active{// transform: scale(.95)}.forward-badge:hover{background:rgb(var(--ax-sys-color-success-600))}.slide-in{animation:slideInFromBottom var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.slide-out{opacity:0;transform:translateY(100%);transition:opacity var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function),transform var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}\n"] }]
15996
+ `, styles: [":host{display:block;height:100%;position:relative}.message-list{height:100%}.list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center}.list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;height:100%;text-align:center;padding:3rem 2rem;gap:1.25rem;animation:fadeInUp .5s ease-out}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.empty-icon{font-size:5.5rem;line-height:1;opacity:.35;margin-bottom:.5rem;filter:grayscale(.2)}.empty-title{font-size:1.625rem;font-weight:600;margin:0;color:rgb(var(--ax-sys-color-on-surface));letter-spacing:-.02em}.empty-description{font-size:1.0625rem;margin:0;color:rgb(var(--ax-sys-color-on-surface));opacity:.65;max-width:420px;line-height:1.7}.spinner{width:32px;height:32px;border:3px solid rgb(var(--ax-sys-color-border-light-surface));border-top-color:rgb(var(--ax-sys-color-primary-500));border-radius:50%;animation:spin .8s linear infinite;margin-bottom:1rem}@keyframes spin{to{transform:rotate(360deg)}}.list-loading-more{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;text-align:center;color:rgb(var(--ax-sys-color-on-surface));opacity:.7}.messages-container{width:100%;height:100%;overflow-y:auto;overflow-x:hidden}.date-separator{position:sticky;z-index:150;top:0;display:flex;align-items:center;justify-content:center;margin:.5rem 0}.date-text{padding:.25rem .75rem;background:rgb(var(--ax-sys-color-lighter-surface));font-size:.75rem;font-weight:500;border-radius:1rem;width:7rem;display:flex;justify-content:center;align-items:center}.unread-separator{display:flex;align-items:center;gap:.75rem;margin:1.5rem 0;padding:0 1rem}.unread-separator-line{flex:1;height:1px;background:rgb(var(--ax-sys-color-primary-500));opacity:.3}.unread-separator-text{font-size:.75rem;font-weight:600;color:rgb(var(--ax-sys-color-primary-500));text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.message-item:has(.message-reactions-bubbles){padding-bottom:2.5rem}.message-item{position:relative;display:flex;padding:1rem;border-radius:0;gap:.5rem;margin-bottom:2rem;line-height:1rem;align-items:end;transition:background-color .3s ease}.message-highlight{background-color:rgba(var(--ax-sys-color-primary-500),.1);border-radius:.5rem}.fade-slide-in{animation:fadeSlideIn var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes fadeSlideIn{0%{opacity:0;// transform: translateX(20%)}to{opacity:1;// transform: translateX(0)}}.message-own{flex-direction:row-reverse}.message-avatar{flex-shrink:0;margin-bottom:.25rem}.message-bubble-container{display:flex;flex-direction:column;max-width:70%;position:relative}.message-own .message-bubble-container{align-items:flex-end}.message-sender{font-size:.75rem;font-weight:600;margin-bottom:.25rem}.message-bubble{position:relative;padding:.5rem .75rem;border-radius:1rem;background:rgb(var(--ax-sys-color-surface));--ax-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);word-wrap:break-word;transition:background-color .3s ease}.reply-preview{display:flex;gap:.5rem;padding:.5rem;margin-bottom:.5rem;background:rgb(var(--ax-sys-color-on-surface) / .05);border-radius:var(--ax-sys-border-radius);cursor:pointer;transition:background-color var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}.reply-preview:hover{background:rgb(var(--ax-sys-color-on-surface) / .08)}.message-own .reply-preview{background:rgb(var(--ax-sys-color-light-surface) / .15)}.message-own .reply-preview:hover{background:rgb(var(--ax-sys-color-light-surface) / .25)}.reply-preview-line{width:3px;background:currentColor;opacity:.5;border-radius:1.5px;flex-shrink:0}.reply-preview-content{flex:1;min-width:0}.reply-preview-sender{font-size:.75rem;font-weight:600;margin-bottom:.125rem;opacity:.9}.reply-preview-text{font-size:.8125rem;opacity:.6;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.forwarded-indicator{display:flex;align-items:center;gap:.375rem;margin-bottom:.5rem;font-size:.75rem;font-weight:500;font-style:italic;opacity:.7;border-left:3px solid currentColor;border-radius:var(--ax-sys-border-radius);padding:.375rem .5rem}.forwarded-indicator i{font-size:.875rem}.forwarded-text{font-size:.75rem}.message-bubble-received{border-bottom-left-radius:.125rem}.message-bubble-sent{border-bottom-right-radius:.125rem}.message-own .message-bubble{background:rgb(var(--ax-sys-color-primary-surface));color:rgb(var(--ax-sys-color-on-primary-surface))}.message-content{font-size:.9375rem;line-height:1.5;white-space:pre-wrap}.message-footer{display:flex;align-items:end;gap:.25rem;margin-top:.25rem;font-size:.6875rem;opacity:.7;letter-spacing:.05rem}.message-time{font-variant-numeric:tabular-nums;font-size:.675rem}.edited-indicator{display:inline-flex;align-items:center;gap:.25rem;font-size:.675rem;opacity:.75;padding-inline-start:.35rem;border-inline-start:1px solid rgb(var(--ax-sys-color-border-light-surface))}.status-icon{cursor:help;display:inline-flex;font-size:.75rem}.status-read{color:rgb(var(--ax-sys-color-primary-400))}.status-failed{color:rgb(var(--ax-sys-color-danger-500))}.message-reactions-bubbles{display:flex;flex-wrap:wrap;gap:.25rem;z-index:1}.reaction-bubble{display:flex;align-items:center;gap:.125rem;padding:.25rem;background:rgb(var(--ax-sys-color-surface));color:rgb(var(--ax-sys-color-on-surface));border:1px solid rgb(var(--ax-sys-color-border-surface));border-radius:var(--ax-sys-border-radius);font-size:.625rem;cursor:pointer;transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);--ax-shadow: 0 1px 2px 0 rgb(0 0 0 / .08);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);min-height:16px;font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reaction-bubble:hover{// transform: scale(1.3);--ax-shadow: 0 2px 4px 0 rgb(0 0 0 / .12);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);border-color:rgb(var(--ax-sys-color-primary-500))}.reaction-bubble-active{background:rgb(var(--ax-sys-color-primary-lightest-surface));color:rgb(var(--ax-sys-color-on-primary-lightest-surface));border-color:rgb(var(--ax-sys-color-primary-500));border-width:1.5px}.reaction-emoji{font-size:1.2rem;line-height:1}.reaction-count{font-size:1rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface));line-height:1}.reaction-bubble-active .reaction-count{color:rgb(var(--ax-sys-color-primary-500))}.reaction-bubble-active:hover{background:rgb(var(--ax-sys-color-primary-light-surface));border-color:rgb(var(--ax-sys-color-primary-600))}.message-reactions-container{display:flex;align-items:center;flex-wrap:wrap;gap:.375rem;min-height:20px;position:absolute;left:0;top:calc(100% + 18px)}.add-reaction-button{display:flex;align-items:center;justify-content:center;flex-shrink:0;width:30px;height:30px;padding:.25rem;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border-surface));border-radius:50%;cursor:pointer;transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);--ax-shadow: 0 1px 2px 0 rgb(0 0 0 / .08);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);visibility:hidden}.message-bubble-container:hover .add-reaction-button{visibility:visible}.add-reaction-visible{visibility:visible!important;background:rgb(var(--ax-sys-color-primary-500) / .1);border-color:rgb(var(--ax-sys-color-primary-500))}.add-reaction-button:hover{// transform: scale(1.15);--ax-shadow: 0 2px 4px 0 rgb(0 0 0 / .12);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);border-color:rgb(var(--ax-sys-color-primary-500));background:rgb(var(--ax-sys-color-primary-500) / .12)}.add-reaction-button i{font-size:1rem;color:rgb(var(--ax-sys-color-on-surface))}.reaction-picker-popup{position:fixed;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border-surface));border-radius:var(--ax-sys-border-radius);--ax-shadow: 0 8px 24px rgb(0 0 0 / .2);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);z-index:100;min-width:260px;max-width:300px;transform:translateY(-100%);margin-top:-.5rem}.reaction-picker-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem .75rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-surface))}.picker-title{font-size:.8125rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.picker-close{display:flex;align-items:center;justify-content:center;width:1.5rem;height:1.5rem;padding:0;background:transparent;border:none;border-radius:var(--ax-sys-border-radius);cursor:pointer;color:rgb(var(--ax-sys-color-on-surface) / .65);transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}.picker-close:hover{background:rgb(var(--ax-sys-color-danger-500) / .1);color:rgb(var(--ax-sys-color-danger-500))}.reaction-bubble:focus-visible,.add-reaction-button:focus-visible,.picker-close:focus-visible,.reaction-picker-emoji:focus-visible,.action-trigger:focus-visible,.scroll-to-bottom:focus-visible{outline:2px solid rgb(var(--ax-sys-color-primary-500));outline-offset:2px}.reaction-picker-emojis{display:grid;grid-template-columns:repeat(6,1fr);gap:.375rem;padding:.75rem;padding-top:0}.reaction-picker-emoji{display:flex;align-items:center;justify-content:center;width:36px;height:36px;padding:0;background:transparent;border:1.5px solid transparent;border-radius:var(--ax-sys-border-radius);font-size:1.375rem;cursor:pointer;transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);font-family:\"Segoe UI Emoji\",Segoe UI Symbol,\"Noto Color Emoji\",\"Apple Color Emoji\",Twemoji Mozilla,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reaction-picker-emoji:hover{// transform: scale(1.15);rotate:20deg;background:rgb(var(--ax-sys-color-light-surface))}.reaction-picker-emoji-active{background:rgb(var(--ax-sys-color-primary-500) / .15);border-color:rgb(var(--ax-sys-color-primary-500))}.reaction-picker-emoji-active:hover{background:rgb(var(--ax-sys-color-primary-500) / .25)}.message-actions{padding-bottom:1.5rem;opacity:0;transition:opacity var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);z-index:10}.message-item:hover .message-actions{opacity:1}.action-trigger{width:28px;height:28px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-surface));border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius);font-size:.875rem;cursor:pointer;transition:all var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);--ax-shadow: 0 2px 4px 0 rgb(0 0 0 / .1);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow)}.action-trigger:hover{background:rgb(var(--ax-sys-color-light-surface));// transform: scale(1.05)}.shortcut{font-size:.6875rem;opacity:.7}.scroll-to-bottom{position:absolute;bottom:1rem;right:1rem;width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:none;border-radius:50%;font-size:1.5rem;cursor:pointer;--ax-shadow: 0 4px 6px 0 rgb(0 0 0 / .1);box-shadow:var(--ax-ring-offset-shadow, 0 0 #0000),var(--ax-ring-shadow, 0 0 #0000),var(--ax-shadow);transition:transform var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function);z-index:999}.scroll-to-bottom:hover{// transform: scale(1.1)}.thread-badge,.forward-badge{position:absolute;top:-6px;min-width:20px;height:24px;padding:0 6px;display:flex;align-items:center;justify-content:center;gap:3px;background:rgb(var(--ax-sys-color-primary-500));color:rgb(var(--ax-sys-color-on-primary-surface));border:2px solid rgb(var(--ax-sys-color-lightest-surface));border-radius:10px;font-size:.6875rem;font-weight:600;cursor:pointer;transition:all .2s;z-index:10}.thread-badge i,.forward-badge i{font-size:.625rem}.message-bubble-received .thread-badge{left:calc(100% - 5px)}.message-own .message-bubble-sent .thread-badge{right:calc(100% - 5px)}.forward-badge{background:rgb(var(--ax-sys-color-success-500));pointer-events:none}.message-bubble-received .forward-badge{left:calc(100% - 5px);top:18px}.message-own .message-bubble-sent .forward-badge{right:calc(100% - 5px);top:18px}.message-bubble-received .forward-badge:first-of-type{top:-6px}.message-own .message-bubble-sent .forward-badge:first-of-type{top:-6px}.thread-badge:hover{// transform: scale(1.1);background:rgb(var(--ax-sys-color-primary-600))}.thread-badge:active{// transform: scale(.95)}.forward-badge:hover{background:rgb(var(--ax-sys-color-success-600))}.slide-in{animation:slideInFromBottom var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}@keyframes slideInFromBottom{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.slide-out{opacity:0;transform:translateY(100%);transition:opacity var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function),transform var(--ax-sys-transition-duration) var(--ax-sys-transition-timing-function)}\n"] }]
15991
15997
  }], ctorParameters: () => [], propDecorators: { avatarTemplate: [{ type: i0.Input, args: [{ isSignal: true, alias: "avatarTemplate", required: false }] }], reactionPopover: [{ type: i0.ViewChild, args: ['reactionPopover', { isSignal: true }] }], messageListRef: [{ type: i0.ViewChild, args: ['messageList', { isSignal: true }] }], messagesContainerRef: [{ type: i0.ViewChild, args: ['messagesContainer', { isSignal: true }] }], messageAction: [{ type: i0.Output, args: ["messageAction"] }] } });
15992
15998
 
15993
15999
  /**
@@ -16071,8 +16077,8 @@ class AXForwardMessageDialogComponent {
16071
16077
  this.toastService.danger(errorMessage);
16072
16078
  }
16073
16079
  }
16074
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXForwardMessageDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16075
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.15", type: AXForwardMessageDialogComponent, isStandalone: true, selector: "ax-forward-message-dialog", providers: [{ provide: AXClosableComponent, useExisting: AXForwardMessageDialogComponent }], ngImport: i0, template: `
16080
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXForwardMessageDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16081
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "20.3.16", type: AXForwardMessageDialogComponent, isStandalone: true, selector: "ax-forward-message-dialog", providers: [{ provide: AXClosableComponent, useExisting: AXForwardMessageDialogComponent }], ngImport: i0, template: `
16076
16082
  <div class="forward-message-dialog">
16077
16083
  <div class="dialog-content">
16078
16084
  <!-- Conversation Selection -->
@@ -16115,7 +16121,7 @@ class AXForwardMessageDialogComponent {
16115
16121
  </div>
16116
16122
  `, isInline: true, styles: [":host{display:block}.forward-message-dialog{display:flex;flex-direction:column}.dialog-content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.form-field{display:flex;flex-direction:column}.field-label{font-size:.875rem;font-weight:500;color:var(--ax-text-secondary, #6b7280)}.info-message{padding:.75rem;background:var(--ax-info-bg, #f0f9ff);border:1px solid var(--ax-info-border, #bfdbfe);border-radius:.5rem}.info-text{font-size:.875rem;color:var(--ax-info-text, #1e40af)}.dialog-footer{padding:1rem;border-top:1px solid var(--ax-border-color, #e5e7eb);display:flex;justify-content:flex-end;gap:.75rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "component", type: AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { 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: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }] }); }
16117
16123
  }
16118
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXForwardMessageDialogComponent, decorators: [{
16124
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXForwardMessageDialogComponent, decorators: [{
16119
16125
  type: Component,
16120
16126
  args: [{ selector: 'ax-forward-message-dialog', imports: [CommonModule, FormsModule, AXSelectBoxComponent, AXSearchBoxComponent, AXButtonComponent, AXLabelComponent], template: `
16121
16127
  <div class="forward-message-dialog">
@@ -16243,8 +16249,8 @@ class AXNewConversationDialogComponent {
16243
16249
  this.toastService.danger(errorMessage);
16244
16250
  }
16245
16251
  }
16246
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXNewConversationDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16247
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXNewConversationDialogComponent, isStandalone: true, selector: "ax-new-conversation-dialog", providers: [{ provide: AXClosableComponent, useExisting: AXNewConversationDialogComponent }], ngImport: i0, template: `
16252
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXNewConversationDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16253
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXNewConversationDialogComponent, isStandalone: true, selector: "ax-new-conversation-dialog", providers: [{ provide: AXClosableComponent, useExisting: AXNewConversationDialogComponent }], ngImport: i0, template: `
16248
16254
  <div class="new-conversation-dialog">
16249
16255
  <!-- <div class="dialog-header">
16250
16256
  <ax-label class="dialog-title">New Conversation</ax-label>
@@ -16301,9 +16307,9 @@ class AXNewConversationDialogComponent {
16301
16307
  ></ax-button>
16302
16308
  </div>
16303
16309
  </div>
16304
- `, isInline: true, styles: [":host{display:block}.new-conversation-dialog{display:flex;flex-direction:column}.dialog-header{padding:1.5rem;border-bottom:1px solid var(--ax-border-color, #e5e7eb)}.dialog-title{font-size:1.25rem;font-weight:600;color:var(--ax-text-primary, #111827)}.dialog-content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.form-field{display:flex;flex-direction:column}.field-label{font-size:.875rem;font-weight:500;color:var(--ax-text-secondary, #6b7280)}.info-message{padding:.75rem;background:var(--ax-info-bg, #f0f9ff);border:1px solid var(--ax-info-border, #bfdbfe);border-radius:.5rem}.info-text{font-size:.875rem;color:var(--ax-info-text, #1e40af)}.dialog-footer{padding:1rem;border-top:1px solid var(--ax-border-color, #e5e7eb);display:flex;justify-content:flex-end;gap:.75rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "component", type: AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "mask-options", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { 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: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "component", type: AXAvatarPickerComponent, selector: "ax-avatar-picker", inputs: ["showClearButton", "avatarUrl"], outputs: ["avatarUrlChange", "onFileSelected"] }] }); }
16310
+ `, isInline: true, styles: [":host{display:block}.new-conversation-dialog{display:flex;flex-direction:column}.dialog-header{padding:1.5rem;border-bottom:1px solid var(--ax-border-color, #e5e7eb)}.dialog-title{font-size:1.25rem;font-weight:600;color:var(--ax-text-primary, #111827)}.dialog-content{padding:1rem;display:flex;flex-direction:column;gap:1rem}.form-field{display:flex;flex-direction:column}.field-label{font-size:.875rem;font-weight:500;color:var(--ax-text-secondary, #6b7280)}.info-message{padding:.75rem;background:var(--ax-info-bg, #f0f9ff);border:1px solid var(--ax-info-border, #bfdbfe);border-radius:.5rem}.info-text{font-size:.875rem;color:var(--ax-info-text, #1e40af)}.dialog-footer{padding:1rem;border-top:1px solid var(--ax-border-color, #e5e7eb);display:flex;justify-content:flex-end;gap:.75rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "ngmodule", type: FormsModule }, { kind: "component", type: AXSelectBoxComponent, selector: "ax-select-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "minValue", "maxValue", "value", "state", "name", "id", "type", "look", "multiple", "valueField", "textField", "disabledField", "textTemplate", "selectedItems", "isItemTruncated", "showItemTooltip", "itemHeight", "maxVisibleItems", "dataSource", "minRecordsForSearch", "caption", "itemTemplate", "selectedTemplate", "emptyTemplate", "loadingTemplate", "dropdownWidth", "searchBoxAutoFocus"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onOpened", "onClosed", "onItemSelected", "onItemClick"] }, { kind: "component", type: AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXTextBoxComponent, selector: "ax-text-box", inputs: ["disabled", "tabIndex", "readonly", "value", "state", "name", "id", "placeholder", "maxLength", "allowNull", "type", "autoComplete", "look", "maskPattern", "customTokens", "class"], outputs: ["onBlur", "onFocus", "valueChange", "stateChange", "onValueChanged", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { 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: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "component", type: AXAvatarPickerComponent, selector: "ax-avatar-picker", inputs: ["showClearButton", "avatarUrl"], outputs: ["avatarUrlChange", "onFileSelected"] }] }); }
16305
16311
  }
16306
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXNewConversationDialogComponent, decorators: [{
16312
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXNewConversationDialogComponent, decorators: [{
16307
16313
  type: Component,
16308
16314
  args: [{ selector: 'ax-new-conversation-dialog', imports: [
16309
16315
  CommonModule,
@@ -16478,8 +16484,8 @@ class AXConversationItemComponent {
16478
16484
  }
16479
16485
  }
16480
16486
  }
16481
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16482
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXConversationItemComponent, isStandalone: true, selector: "ax-conversation-item", inputs: { avatarTemplate: { classPropertyName: "avatarTemplate", publicName: "avatarTemplate", isSignal: true, isRequired: false, transformFunction: null }, conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { clicked: "clicked" }, ngImport: i0, template: `
16487
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationItemComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16488
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXConversationItemComponent, isStandalone: true, selector: "ax-conversation-item", inputs: { avatarTemplate: { classPropertyName: "avatarTemplate", publicName: "avatarTemplate", isSignal: true, isRequired: false, transformFunction: null }, conversation: { classPropertyName: "conversation", publicName: "conversation", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { clicked: "clicked" }, ngImport: i0, template: `
16483
16489
  <div
16484
16490
  [class]="itemClasses()"
16485
16491
  [id]="'conversation-item-' + conversation().id"
@@ -16590,7 +16596,7 @@ class AXConversationItemComponent {
16590
16596
  </ax-context-menu>
16591
16597
  `, isInline: true, styles: [":host{display:block}.conversation-item{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;cursor:pointer;transition:background .2s}.conversation-item:focus-visible,.conversation-item:hover{background:rgb(var(--ax-sys-color-light-surface));outline:none}.conversation-item-active{background:rgb(var(--ax-sys-color-primary-lightest-surface));color:rgb(var(--ax-sys-color-on-primary-lightest-surface))}.conversation-item-active:hover{background:rgb(var(--ax-sys-color-primary-lighter-surface))}.item-avatar{flex-shrink:0}.avatar-wrapper{position:relative}.avatar-status{position:absolute;bottom:2px;right:2px;width:12px;height:12px;border-radius:50%}.avatar-status.status-online{border:2px solid rgb(var(--ax-sys-color-surface));background-color:rgb(var(--ax-sys-color-success-500))}// .avatar-status.status-offline{// border: 2px solid rgb(var(--ax-sys-color-surface));// background: rgb(var(--ax-sys-color-neutral));//}.avatar-status.status-away{border:2px solid rgb(var(--ax-sys-color-surface));background-color:rgb(var(--ax-sys-color-warning-500))}.item-content{display:flex;flex-direction:column;gap:.25rem;flex:1;min-width:0;line-height:1.1rem}.item-header{display:flex;align-items:center;justify-content:space-between;gap:.25rem}.item-title{display:flex;align-items:center;// gap: .25rem;font-weight:600;font-size:.875rem;flex:1;min-width:0}.item-title-text{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0}.item-time{font-variant-numeric:tabular-nums;flex-shrink:0;font-size:.75rem;opacity:.7}.item-description{display:flex;align-items:center;gap:.5rem;font-size:.8125rem;opacity:.7;min-width:0}.typing-indicator{color:rgb(var(--ax-sys-color-primary-500));font-style:italic;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.last-message{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.no-message{// font-weight: 600}.item-badge{flex-shrink:0}.mute-icon{font-size:.75rem;margin-left:.375rem;opacity:.6;color:rgb(var(--ax-sys-color-warning-500))}.block-icon{font-size:.75rem;margin-left:.375rem;opacity:.6;color:rgb(var(--ax-sys-color-danger-500))}.pin-icon{font-size:.75rem;margin-left:.375rem;opacity:.6;color:rgb(var(--ax-sys-color-primary-500));flex-shrink:0}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i1$5.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "component", type: AXAvatarComponent, selector: "ax-avatar", inputs: ["color", "size", "shape", "look"], outputs: ["sizeChange"] }, { kind: "component", type: AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "component", type: AXImageComponent, selector: "ax-image", inputs: ["width", "height", "overlayMode", "src", "alt", "priority", "lazy"], outputs: ["onLoad", "onError"] }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "component", type: AXContextMenuComponent, selector: "ax-context-menu", inputs: ["orientation", "openOn", "closeOn", "items", "target"], outputs: ["onItemClick", "onOpening"] }, { kind: "ngmodule", type: AXFormatModule }, { kind: "ngmodule", type: AXDateTimeModule }, { kind: "pipe", type: i1$5.AsyncPipe, name: "async" }, { kind: "pipe", type: i5$1.AXFormatPipe, name: "format" }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
16592
16598
  }
16593
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversationItemComponent, decorators: [{
16599
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversationItemComponent, decorators: [{
16594
16600
  type: Component,
16595
16601
  args: [{ selector: 'ax-conversation-item', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
16596
16602
  CommonModule,
@@ -16888,10 +16894,10 @@ class AXSidebarService {
16888
16894
  this.currentPage.set(0);
16889
16895
  this.hasMoreConversations.set(true);
16890
16896
  }
16891
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXSidebarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
16892
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXSidebarService }); }
16897
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSidebarService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
16898
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSidebarService }); }
16893
16899
  }
16894
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXSidebarService, decorators: [{
16900
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSidebarService, decorators: [{
16895
16901
  type: Injectable
16896
16902
  }] });
16897
16903
 
@@ -16953,8 +16959,8 @@ class AXSidebarComponent {
16953
16959
  ngOnDestroy() {
16954
16960
  this.searchSubject.complete();
16955
16961
  }
16956
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXSidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16957
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.15", type: AXSidebarComponent, isStandalone: true, selector: "ax-conversation-sidebar", outputs: { conversationSelected: "conversationSelected" }, ngImport: i0, template: `
16962
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSidebarComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
16963
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: AXSidebarComponent, isStandalone: true, selector: "ax-conversation-sidebar", outputs: { conversationSelected: "conversationSelected" }, ngImport: i0, template: `
16958
16964
  <div class="sidebar">
16959
16965
  <!-- Header with Menu and Search -->
16960
16966
  <div class="sidebar-header">
@@ -17046,7 +17052,7 @@ class AXSidebarComponent {
17046
17052
  </div>
17047
17053
  `, isInline: true, styles: [":host{display:block;width:100%;height:100%}.sidebar{display:flex;flex-direction:column;height:100%;//background: rgb(var(--ax-sys-color-lightest-surface));// border-inline-end: 1px solid rgb(var(--ax-sys-color-border-light-surface));position:relative}.sidebar-header{display:flex;align-items:center;gap:.25rem;padding:.75rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.menu-button{flex-shrink:0}.sidebar-search{flex:1}.sidebar-list{flex:1;overflow-y:auto;position:relative;padding-bottom:4rem}.new-conversation-button-container{position:absolute;bottom:.5rem;left:.5rem;right:.5rem;display:flex;justify-content:center;padding:.5rem .25rem;// backdrop-filter: blur(1px)}.list-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem;text-align:center;color:rgb(var(--ax-sys-color-on-surface))}.list-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;text-align:center;color:rgb(var(--ax-sys-color-on-surface));gap:1rem}.empty-icon{font-size:4rem;line-height:1;opacity:.5;margin-bottom:.5rem}.empty-title{font-size:1.25rem;font-weight:600;margin:0;color:rgb(var(--ax-sys-color-on-surface))}.empty-description{font-size:.875rem;margin:0;color:rgb(var(--ax-sys-color-on-surface));opacity:.7;max-width:300px;line-height:1.5}.empty-action{margin-top:.5rem}.list-loading-more{display:flex;flex-direction:column;align-items:center;gap:.5rem;padding:1rem;text-align:center;color:rgb(var(--ax-sys-color-on-surface));opacity:.7}ax-conversation-item:not(:last-child){border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.tab-icon{font-size:1rem}.conversation-skeleton{display:flex;align-items:center;gap:.75rem;padding:.75rem 1rem;border-bottom:1px solid rgb(var(--ax-sys-color-border-light-surface))}.skeleton-avatar{flex-shrink:0;width:48px;height:48px;border-radius:50%}.skeleton-content{flex:1;min-width:0;display:flex;flex-direction:column;gap:.5rem}.skeleton-header{display:flex;justify-content:space-between;align-items:center;gap:.5rem}.skeleton-title{flex:1;height:1rem;border-radius:.25rem}.skeleton-time{font-variant-numeric:tabular-nums;width:3rem;height:.75rem;border-radius:.25rem}.skeleton-message{height:.75rem;width:80%;border-radius:.25rem}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "component", type: AXTabsComponent, selector: "ax-tabs", inputs: ["look", "location", "fitParent", "minWidth", "content"], outputs: ["onActiveTabChanged"] }, { kind: "component", type: AXTabItemComponent, selector: "ax-tab-item", inputs: ["disabled", "text", "key", "headerTemplate", "active"], outputs: ["disabledChange", "onClick", "onBlur", "onFocus", "activeChange"] }, { kind: "component", type: AXBadgeComponent, selector: "ax-badge", inputs: ["color", "look", "text"] }, { kind: "component", type: AXSearchBoxComponent, selector: "ax-search-box", inputs: ["disabled", "readonly", "tabIndex", "placeholder", "value", "state", "name", "id", "look", "class", "delayTime", "type", "autoSearch"], outputs: ["valueChange", "stateChange", "onValueChanged", "onBlur", "onFocus", "readonlyChange", "disabledChange", "onKeyDown", "onKeyUp", "onKeyPress"] }, { kind: "component", type: AXLabelComponent, selector: "ax-label", inputs: ["required", "for"], outputs: ["requiredChange"] }, { kind: "component", type: AXLoadingComponent, selector: "ax-loading", inputs: ["visible", "type", "context"], outputs: ["visibleChange"] }, { 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: "ngmodule", type: AXSkeletonModule }, { kind: "component", type: i1$2.AXSkeletonComponent, selector: "ax-skeleton", inputs: ["animated"] }, { kind: "component", type: AXConversationItemComponent, selector: "ax-conversation-item", inputs: ["avatarTemplate", "conversation"], outputs: ["clicked"] }, { kind: "directive", type: AXInfiniteScrollDirective, selector: "[axInfiniteScroll]", inputs: ["threshold", "edge"], outputs: ["scrollThreshold"] }, { kind: "ngmodule", type: AXTooltipModule }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
17048
17054
  }
17049
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXSidebarComponent, decorators: [{
17055
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXSidebarComponent, decorators: [{
17050
17056
  type: Component,
17051
17057
  args: [{ selector: 'ax-conversation-sidebar', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
17052
17058
  CommonModule,
@@ -17185,15 +17191,15 @@ const DECLARATIONS = [
17185
17191
  AXInfoBarComponent,
17186
17192
  AXMessageListComponent,
17187
17193
  AXComposerComponent,
17188
- TextRendererComponent,
17189
- ImageRendererComponent,
17190
- VideoRendererComponent,
17191
- AudioRendererComponent,
17192
- VoiceRendererComponent,
17193
- FileRendererComponent,
17194
- LocationRendererComponent,
17195
- StickerRendererComponent,
17196
- FallbackRendererComponent,
17194
+ AXTextRendererComponent,
17195
+ AXImageRendererComponent,
17196
+ AXVideoRendererComponent,
17197
+ AXAudioRendererComponent,
17198
+ AXVoiceRendererComponent,
17199
+ AXFileRendererComponent,
17200
+ AXLocationRendererComponent,
17201
+ AXStickerRendererComponent,
17202
+ AXFallbackRendererComponent,
17197
17203
  AXInfiniteScrollDirective,
17198
17204
  ];
17199
17205
  /**
@@ -17250,51 +17256,51 @@ class AXConversation2Module {
17250
17256
  providers: createProviders(options, false),
17251
17257
  };
17252
17258
  }
17253
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversation2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17254
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.15", ngImport: i0, type: AXConversation2Module, imports: [CommonModule, FormsModule, AXConversationContainerComponent,
17259
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversation2Module, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
17260
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "20.3.16", ngImport: i0, type: AXConversation2Module, imports: [CommonModule, FormsModule, AXConversationContainerComponent,
17255
17261
  AXSidebarComponent,
17256
17262
  AXInfoBarComponent,
17257
17263
  AXMessageListComponent,
17258
17264
  AXComposerComponent,
17259
- TextRendererComponent,
17260
- ImageRendererComponent,
17261
- VideoRendererComponent,
17262
- AudioRendererComponent,
17263
- VoiceRendererComponent,
17264
- FileRendererComponent,
17265
- LocationRendererComponent,
17266
- StickerRendererComponent,
17267
- FallbackRendererComponent,
17265
+ AXTextRendererComponent,
17266
+ AXImageRendererComponent,
17267
+ AXVideoRendererComponent,
17268
+ AXAudioRendererComponent,
17269
+ AXVoiceRendererComponent,
17270
+ AXFileRendererComponent,
17271
+ AXLocationRendererComponent,
17272
+ AXStickerRendererComponent,
17273
+ AXFallbackRendererComponent,
17268
17274
  AXInfiniteScrollDirective], exports: [AXConversationContainerComponent,
17269
17275
  AXSidebarComponent,
17270
17276
  AXInfoBarComponent,
17271
17277
  AXMessageListComponent,
17272
17278
  AXComposerComponent,
17273
- TextRendererComponent,
17274
- ImageRendererComponent,
17275
- VideoRendererComponent,
17276
- AudioRendererComponent,
17277
- VoiceRendererComponent,
17278
- FileRendererComponent,
17279
- LocationRendererComponent,
17280
- StickerRendererComponent,
17281
- FallbackRendererComponent,
17279
+ AXTextRendererComponent,
17280
+ AXImageRendererComponent,
17281
+ AXVideoRendererComponent,
17282
+ AXAudioRendererComponent,
17283
+ AXVoiceRendererComponent,
17284
+ AXFileRendererComponent,
17285
+ AXLocationRendererComponent,
17286
+ AXStickerRendererComponent,
17287
+ AXFallbackRendererComponent,
17282
17288
  AXInfiniteScrollDirective] }); }
17283
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversation2Module, imports: [CommonModule, FormsModule, AXConversationContainerComponent,
17289
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversation2Module, imports: [CommonModule, FormsModule, AXConversationContainerComponent,
17284
17290
  AXSidebarComponent,
17285
17291
  AXInfoBarComponent,
17286
17292
  AXMessageListComponent,
17287
17293
  AXComposerComponent,
17288
- ImageRendererComponent,
17289
- VideoRendererComponent,
17290
- AudioRendererComponent,
17291
- VoiceRendererComponent,
17292
- FileRendererComponent,
17293
- LocationRendererComponent,
17294
- StickerRendererComponent,
17295
- FallbackRendererComponent] }); }
17294
+ AXImageRendererComponent,
17295
+ AXVideoRendererComponent,
17296
+ AXAudioRendererComponent,
17297
+ AXVoiceRendererComponent,
17298
+ AXFileRendererComponent,
17299
+ AXLocationRendererComponent,
17300
+ AXStickerRendererComponent,
17301
+ AXFallbackRendererComponent] }); }
17296
17302
  }
17297
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.15", ngImport: i0, type: AXConversation2Module, decorators: [{
17303
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: AXConversation2Module, decorators: [{
17298
17304
  type: NgModule,
17299
17305
  args: [{
17300
17306
  imports: [CommonModule, FormsModule, ...DECLARATIONS],
@@ -17637,5 +17643,5 @@ function getErrorMessage(code, params) {
17637
17643
  * Generated bundle index. Do not edit.
17638
17644
  */
17639
17645
 
17640
- export { AI_API_KEY, AXAIResponderService, AXAudioPickerComponent, AXBaseRegistry, AXComposerActionRegistry, AXComposerComponent, AXComposerPopupComponent, AXComposerService, AXComposerTabRegistry, AXContactPickerComponent, AXConversation2Module, AXConversationApi, AXConversationContainerComponent, AXConversationContainerDirective, AXConversationDateUtilsService, AXConversationInfoPanelComponent, AXConversationItemActionRegistry, AXConversationMessageUtilsService, AXConversationService, AXConversationStoreService, AXConversationTabRegistry, AXEmojiTabComponent, AXErrorHandlerService, AXFilePickerComponent, AXFileUploadService, AXForwardMessageDialogComponent, AXImagePickerComponent, AXIndexedDBConversationApi, AXIndexedDBMessageAIApi, AXIndexedDBMessageApi, AXIndexedDBRealtimeApi, AXIndexedDBUserApi, AXInfiniteScrollDirective, AXInfoBarActionRegistry, AXInfoBarComponent, AXInfoBarSearchComponent, AXInfoBarService, AXLocationPickerComponent, AXMessageActionRegistry, AXMessageApi, AXMessageListComponent, AXMessageListService, AXMessageRendererRegistry, AXNewConversationDialogComponent, AXPickerFooterComponent, AXPickerHeaderComponent, AXRealtimeApi, AXRegistryService, AXSidebarComponent, AXSidebarService, AXStickerTabComponent, AXUserApi, AXVideoPickerComponent, AXVoiceRecorderComponent, AX_CONVERSATION_AUDIO_RENDERER, AX_CONVERSATION_COMPOSER_AUDIO_ACTION, AX_CONVERSATION_COMPOSER_CONTACT_ACTION, AX_CONVERSATION_COMPOSER_EMOJI_ACTION, AX_CONVERSATION_COMPOSER_EMOJI_TAB, AX_CONVERSATION_COMPOSER_FILE_ACTION, AX_CONVERSATION_COMPOSER_IMAGE_ACTION, AX_CONVERSATION_COMPOSER_LOCATION_ACTION, AX_CONVERSATION_COMPOSER_STICKER_TAB, AX_CONVERSATION_COMPOSER_VIDEO_ACTION, AX_CONVERSATION_COMPOSER_VOICE_RECORDING_ACTION, AX_CONVERSATION_CONTACT_RENDERER, AX_CONVERSATION_FALLBACK_RENDERER, AX_CONVERSATION_FILE_RENDERER, AX_CONVERSATION_IMAGE_RENDERER, AX_CONVERSATION_INFO_BAR_ARCHIVE_ACTION, AX_CONVERSATION_INFO_BAR_BLOCK_ACTION, AX_CONVERSATION_INFO_BAR_DELETE_ACTION, AX_CONVERSATION_INFO_BAR_DIVIDER, AX_CONVERSATION_INFO_BAR_INFO_ACTION, AX_CONVERSATION_INFO_BAR_MUTE_ACTION, AX_CONVERSATION_INFO_BAR_SEARCH_ACTION, AX_CONVERSATION_ITEM_BLOCK_ACTION, AX_CONVERSATION_ITEM_DELETE_ACTION, AX_CONVERSATION_ITEM_DIVIDER, AX_CONVERSATION_ITEM_MARK_READ_ACTION, AX_CONVERSATION_ITEM_MUTE_ACTION, AX_CONVERSATION_ITEM_PIN_ACTION, AX_CONVERSATION_LOCATION_RENDERER, AX_CONVERSATION_MESSAGE_COPY_ACTION, AX_CONVERSATION_MESSAGE_DELETE_ACTION, AX_CONVERSATION_MESSAGE_EDIT_ACTION, AX_CONVERSATION_MESSAGE_FORWARD_ACTION, AX_CONVERSATION_MESSAGE_REPLY_ACTION, AX_CONVERSATION_STICKER_RENDERER, AX_CONVERSATION_SYSTEM_RENDERER, AX_CONVERSATION_TAB_ALL, AX_CONVERSATION_TAB_ARCHIVED, AX_CONVERSATION_TAB_CHANNELS, AX_CONVERSATION_TAB_GROUPS, AX_CONVERSATION_TAB_PRIVATE, AX_CONVERSATION_TAB_UNREAD, AX_CONVERSATION_TEXT_RENDERER, AX_CONVERSATION_VIDEO_RENDERER, AX_CONVERSATION_VOICE_RENDERER, AX_DEFAULT_CONVERSATION_CONFIG, AudioRendererComponent, CONNECTION_ERRORS, CONVERSATION_CONFIG, CONVERSATION_ERRORS, ContactRendererComponent, DEFAULT_COMPOSER_ACTIONS, DEFAULT_COMPOSER_TABS, DEFAULT_CONVERSATION_ITEM_ACTIONS, DEFAULT_CONVERSATION_TABS, DEFAULT_INFO_BAR_ACTIONS, DEFAULT_MESSAGE_ACTIONS, DEFAULT_MESSAGE_RENDERERS, ERROR_HANDLER_CONFIG, ERROR_MESSAGES, FILE_ERRORS, FallbackRendererComponent, FileRendererComponent, ImageRendererComponent, LOCATION_ERRORS, LocationRendererComponent, MESSAGE_ERRORS, PERMISSION_ERRORS, REGISTRY_CONFIG, StickerRendererComponent, SystemRendererComponent, TextRendererComponent, URL_ERRORS, USER_ERRORS, VideoRendererComponent, VoiceRendererComponent, formatErrorMessage, getDefaultConversationItemActions, getErrorMessage, mergeWithDefaults, provideConversation, sanitizeInput, validateConversationId, validateEmail, validateFile, validateLatitude, validateLongitude, validateMessagePayload, validateMessageText, validateMessageType, validateUrl, validateUserId, validateUserIds };
17646
+ export { AI_API_KEY, AXAIResponderService, AXAudioPickerComponent, AXAudioRendererComponent, AXBaseRegistry, AXComposerActionRegistry, AXComposerComponent, AXComposerPopupComponent, AXComposerService, AXComposerTabRegistry, AXContactPickerComponent, AXContactRendererComponent, AXConversation2Module, AXConversationApi, AXConversationContainerComponent, AXConversationContainerDirective, AXConversationDateUtilsService, AXConversationInfoPanelComponent, AXConversationItemActionRegistry, AXConversationMessageUtilsService, AXConversationService, AXConversationStoreService, AXConversationTabRegistry, AXEmojiTabComponent, AXErrorHandlerService, AXFallbackRendererComponent, AXFilePickerComponent, AXFileRendererComponent, AXFileUploadService, AXForwardMessageDialogComponent, AXImagePickerComponent, AXImageRendererComponent, AXIndexedDBConversationApi, AXIndexedDBMessageAIApi, AXIndexedDBMessageApi, AXIndexedDBRealtimeApi, AXIndexedDBUserApi, AXInfiniteScrollDirective, AXInfoBarActionRegistry, AXInfoBarComponent, AXInfoBarSearchComponent, AXInfoBarService, AXLocationPickerComponent, AXLocationRendererComponent, AXMessageActionRegistry, AXMessageApi, AXMessageListComponent, AXMessageListService, AXMessageRendererRegistry, AXNewConversationDialogComponent, AXPickerFooterComponent, AXPickerHeaderComponent, AXRealtimeApi, AXRegistryService, AXSidebarComponent, AXSidebarService, AXStickerRendererComponent, AXStickerTabComponent, AXSystemRendererComponent, AXTextRendererComponent, AXUserApi, AXVideoPickerComponent, AXVideoRendererComponent, AXVoiceRecorderComponent, AXVoiceRendererComponent, AX_CONVERSATION_AUDIO_RENDERER, AX_CONVERSATION_COMPOSER_AUDIO_ACTION, AX_CONVERSATION_COMPOSER_CONTACT_ACTION, AX_CONVERSATION_COMPOSER_EMOJI_ACTION, AX_CONVERSATION_COMPOSER_EMOJI_TAB, AX_CONVERSATION_COMPOSER_FILE_ACTION, AX_CONVERSATION_COMPOSER_IMAGE_ACTION, AX_CONVERSATION_COMPOSER_LOCATION_ACTION, AX_CONVERSATION_COMPOSER_STICKER_TAB, AX_CONVERSATION_COMPOSER_VIDEO_ACTION, AX_CONVERSATION_COMPOSER_VOICE_RECORDING_ACTION, AX_CONVERSATION_CONTACT_RENDERER, AX_CONVERSATION_FALLBACK_RENDERER, AX_CONVERSATION_FILE_RENDERER, AX_CONVERSATION_IMAGE_RENDERER, AX_CONVERSATION_INFO_BAR_ARCHIVE_ACTION, AX_CONVERSATION_INFO_BAR_BLOCK_ACTION, AX_CONVERSATION_INFO_BAR_DELETE_ACTION, AX_CONVERSATION_INFO_BAR_DIVIDER, AX_CONVERSATION_INFO_BAR_INFO_ACTION, AX_CONVERSATION_INFO_BAR_MUTE_ACTION, AX_CONVERSATION_INFO_BAR_SEARCH_ACTION, AX_CONVERSATION_ITEM_BLOCK_ACTION, AX_CONVERSATION_ITEM_DELETE_ACTION, AX_CONVERSATION_ITEM_DIVIDER, AX_CONVERSATION_ITEM_MARK_READ_ACTION, AX_CONVERSATION_ITEM_MUTE_ACTION, AX_CONVERSATION_ITEM_PIN_ACTION, AX_CONVERSATION_LOCATION_RENDERER, AX_CONVERSATION_MESSAGE_COPY_ACTION, AX_CONVERSATION_MESSAGE_DELETE_ACTION, AX_CONVERSATION_MESSAGE_EDIT_ACTION, AX_CONVERSATION_MESSAGE_FORWARD_ACTION, AX_CONVERSATION_MESSAGE_REPLY_ACTION, AX_CONVERSATION_STICKER_RENDERER, AX_CONVERSATION_SYSTEM_RENDERER, AX_CONVERSATION_TAB_ALL, AX_CONVERSATION_TAB_ARCHIVED, AX_CONVERSATION_TAB_CHANNELS, AX_CONVERSATION_TAB_GROUPS, AX_CONVERSATION_TAB_PRIVATE, AX_CONVERSATION_TAB_UNREAD, AX_CONVERSATION_TEXT_RENDERER, AX_CONVERSATION_VIDEO_RENDERER, AX_CONVERSATION_VOICE_RENDERER, AX_DEFAULT_CONVERSATION_CONFIG, CONNECTION_ERRORS, CONVERSATION_CONFIG, CONVERSATION_ERRORS, DEFAULT_COMPOSER_ACTIONS, DEFAULT_COMPOSER_TABS, DEFAULT_CONVERSATION_ITEM_ACTIONS, DEFAULT_CONVERSATION_TABS, DEFAULT_INFO_BAR_ACTIONS, DEFAULT_MESSAGE_ACTIONS, DEFAULT_MESSAGE_RENDERERS, ERROR_HANDLER_CONFIG, ERROR_MESSAGES, FILE_ERRORS, LOCATION_ERRORS, MESSAGE_ERRORS, PERMISSION_ERRORS, REGISTRY_CONFIG, URL_ERRORS, USER_ERRORS, formatErrorMessage, getDefaultConversationItemActions, getErrorMessage, mergeWithDefaults, provideConversation, sanitizeInput, validateConversationId, validateEmail, validateFile, validateLatitude, validateLongitude, validateMessagePayload, validateMessageText, validateMessageType, validateUrl, validateUserId, validateUserIds };
17641
17647
  //# sourceMappingURL=acorex-components-conversation2.mjs.map