@acorex/components 21.0.3-next.8 → 21.1.0-next.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (212) hide show
  1. package/conversation/README.md +462 -2
  2. package/fesm2022/acorex-components-accordion.mjs +4 -4
  3. package/fesm2022/acorex-components-accordion.mjs.map +1 -1
  4. package/fesm2022/acorex-components-action-sheet.mjs +2 -2
  5. package/fesm2022/acorex-components-action-sheet.mjs.map +1 -1
  6. package/fesm2022/acorex-components-alert.mjs +2 -2
  7. package/fesm2022/acorex-components-alert.mjs.map +1 -1
  8. package/fesm2022/acorex-components-aspect-ratio.mjs +2 -2
  9. package/fesm2022/acorex-components-aspect-ratio.mjs.map +1 -1
  10. package/fesm2022/acorex-components-audio-wave.mjs +2 -2
  11. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  12. package/fesm2022/acorex-components-avatar.mjs +2 -2
  13. package/fesm2022/acorex-components-avatar.mjs.map +1 -1
  14. package/fesm2022/acorex-components-badge.mjs +17 -12
  15. package/fesm2022/acorex-components-badge.mjs.map +1 -1
  16. package/fesm2022/acorex-components-bottom-navigation.mjs +2 -2
  17. package/fesm2022/acorex-components-bottom-navigation.mjs.map +1 -1
  18. package/fesm2022/acorex-components-breadcrumbs.mjs +2 -2
  19. package/fesm2022/acorex-components-breadcrumbs.mjs.map +1 -1
  20. package/fesm2022/acorex-components-button-group.mjs +2 -2
  21. package/fesm2022/acorex-components-button-group.mjs.map +1 -1
  22. package/fesm2022/acorex-components-button.mjs +6 -6
  23. package/fesm2022/acorex-components-button.mjs.map +1 -1
  24. package/fesm2022/acorex-components-calendar.mjs +6 -5
  25. package/fesm2022/acorex-components-calendar.mjs.map +1 -1
  26. package/fesm2022/acorex-components-check-box.mjs +2 -2
  27. package/fesm2022/acorex-components-check-box.mjs.map +1 -1
  28. package/fesm2022/acorex-components-chips.mjs +2 -2
  29. package/fesm2022/acorex-components-chips.mjs.map +1 -1
  30. package/fesm2022/acorex-components-circular-progress.mjs +2 -2
  31. package/fesm2022/acorex-components-circular-progress.mjs.map +1 -1
  32. package/fesm2022/acorex-components-color-box.mjs +2 -2
  33. package/fesm2022/acorex-components-color-box.mjs.map +1 -1
  34. package/fesm2022/acorex-components-color-palette.mjs +2 -2
  35. package/fesm2022/acorex-components-color-palette.mjs.map +1 -1
  36. package/fesm2022/acorex-components-command.mjs +2 -2
  37. package/fesm2022/acorex-components-command.mjs.map +1 -1
  38. package/fesm2022/acorex-components-comment.mjs +6 -6
  39. package/fesm2022/acorex-components-comment.mjs.map +1 -1
  40. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs +101 -0
  41. package/fesm2022/acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs.map +1 -0
  42. package/fesm2022/acorex-components-conversation-emoji-categories-C7Gm95V0.mjs +1840 -0
  43. package/fesm2022/acorex-components-conversation-emoji-categories-C7Gm95V0.mjs.map +1 -0
  44. package/fesm2022/acorex-components-conversation-open-composer-picker-for-files-Duvap4M4.mjs +223 -0
  45. package/fesm2022/acorex-components-conversation-open-composer-picker-for-files-Duvap4M4.mjs.map +1 -0
  46. package/fesm2022/acorex-components-conversation.mjs +22272 -1218
  47. package/fesm2022/acorex-components-conversation.mjs.map +1 -1
  48. package/fesm2022/acorex-components-cron-job.mjs +14 -14
  49. package/fesm2022/acorex-components-cron-job.mjs.map +1 -1
  50. package/fesm2022/acorex-components-data-list.mjs +2 -2
  51. package/fesm2022/acorex-components-data-list.mjs.map +1 -1
  52. package/fesm2022/acorex-components-data-pager.mjs +2 -2
  53. package/fesm2022/acorex-components-data-pager.mjs.map +1 -1
  54. package/fesm2022/acorex-components-data-table.mjs +2 -2
  55. package/fesm2022/acorex-components-data-table.mjs.map +1 -1
  56. package/fesm2022/acorex-components-datetime-box.mjs +2 -2
  57. package/fesm2022/acorex-components-datetime-box.mjs.map +1 -1
  58. package/fesm2022/acorex-components-datetime-input.mjs +2 -2
  59. package/fesm2022/acorex-components-datetime-input.mjs.map +1 -1
  60. package/fesm2022/acorex-components-datetime-picker.mjs +2 -2
  61. package/fesm2022/acorex-components-datetime-picker.mjs.map +1 -1
  62. package/fesm2022/acorex-components-decorators.mjs +11 -18
  63. package/fesm2022/acorex-components-decorators.mjs.map +1 -1
  64. package/fesm2022/acorex-components-dialog.mjs +3 -4
  65. package/fesm2022/acorex-components-dialog.mjs.map +1 -1
  66. package/fesm2022/acorex-components-drawer.mjs +4 -4
  67. package/fesm2022/acorex-components-drawer.mjs.map +1 -1
  68. package/fesm2022/acorex-components-dropdown-button.mjs +2 -2
  69. package/fesm2022/acorex-components-dropdown-button.mjs.map +1 -1
  70. package/fesm2022/acorex-components-dropdown.mjs +2 -2
  71. package/fesm2022/acorex-components-dropdown.mjs.map +1 -1
  72. package/fesm2022/acorex-components-editor.mjs +2 -2
  73. package/fesm2022/acorex-components-editor.mjs.map +1 -1
  74. package/fesm2022/acorex-components-fab.mjs +2 -2
  75. package/fesm2022/acorex-components-fab.mjs.map +1 -1
  76. package/fesm2022/acorex-components-file-viewer.mjs +740 -0
  77. package/fesm2022/acorex-components-file-viewer.mjs.map +1 -0
  78. package/fesm2022/acorex-components-flow-chart.mjs +6 -6
  79. package/fesm2022/acorex-components-flow-chart.mjs.map +1 -1
  80. package/fesm2022/acorex-components-form.mjs +2 -2
  81. package/fesm2022/acorex-components-form.mjs.map +1 -1
  82. package/fesm2022/acorex-components-grid-layout-builder.mjs +2 -2
  83. package/fesm2022/acorex-components-grid-layout-builder.mjs.map +1 -1
  84. package/fesm2022/acorex-components-image-editor.mjs +387 -188
  85. package/fesm2022/acorex-components-image-editor.mjs.map +1 -1
  86. package/fesm2022/acorex-components-image.mjs +2 -2
  87. package/fesm2022/acorex-components-image.mjs.map +1 -1
  88. package/fesm2022/acorex-components-json-viewer.mjs +2 -2
  89. package/fesm2022/acorex-components-json-viewer.mjs.map +1 -1
  90. package/fesm2022/acorex-components-kanban.mjs +2 -2
  91. package/fesm2022/acorex-components-kanban.mjs.map +1 -1
  92. package/fesm2022/acorex-components-kbd.mjs +4 -6
  93. package/fesm2022/acorex-components-kbd.mjs.map +1 -1
  94. package/fesm2022/acorex-components-label.mjs +2 -2
  95. package/fesm2022/acorex-components-label.mjs.map +1 -1
  96. package/fesm2022/acorex-components-list.mjs +2 -2
  97. package/fesm2022/acorex-components-list.mjs.map +1 -1
  98. package/fesm2022/acorex-components-loading-dialog.mjs +2 -2
  99. package/fesm2022/acorex-components-loading-dialog.mjs.map +1 -1
  100. package/fesm2022/acorex-components-loading.mjs +4 -4
  101. package/fesm2022/acorex-components-loading.mjs.map +1 -1
  102. package/fesm2022/acorex-components-map.mjs +2 -2
  103. package/fesm2022/acorex-components-map.mjs.map +1 -1
  104. package/fesm2022/acorex-components-media-viewer.mjs +10 -10
  105. package/fesm2022/acorex-components-media-viewer.mjs.map +1 -1
  106. package/fesm2022/acorex-components-menu.mjs +4 -4
  107. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  108. package/fesm2022/{acorex-components-modal-acorex-components-modal-lJw2DGSj.mjs → acorex-components-modal-acorex-components-modal-dF5HUEBH.mjs} +4 -4
  109. package/fesm2022/acorex-components-modal-acorex-components-modal-dF5HUEBH.mjs.map +1 -0
  110. package/fesm2022/{acorex-components-modal-modal-content.component-t9kRuhc_.mjs → acorex-components-modal-modal-content.component-BGTYje3j.mjs} +4 -4
  111. package/fesm2022/acorex-components-modal-modal-content.component-BGTYje3j.mjs.map +1 -0
  112. package/fesm2022/acorex-components-modal.mjs +1 -1
  113. package/fesm2022/acorex-components-navbar.mjs +2 -2
  114. package/fesm2022/acorex-components-navbar.mjs.map +1 -1
  115. package/fesm2022/acorex-components-notification.mjs +2 -2
  116. package/fesm2022/acorex-components-notification.mjs.map +1 -1
  117. package/fesm2022/acorex-components-number-box.mjs +2 -2
  118. package/fesm2022/acorex-components-number-box.mjs.map +1 -1
  119. package/fesm2022/acorex-components-otp.mjs +2 -2
  120. package/fesm2022/acorex-components-otp.mjs.map +1 -1
  121. package/fesm2022/acorex-components-paint.mjs +4 -4
  122. package/fesm2022/acorex-components-paint.mjs.map +1 -1
  123. package/fesm2022/acorex-components-password-box.mjs +4 -4
  124. package/fesm2022/acorex-components-password-box.mjs.map +1 -1
  125. package/fesm2022/acorex-components-pdf-reader.mjs +2 -2
  126. package/fesm2022/acorex-components-pdf-reader.mjs.map +1 -1
  127. package/fesm2022/acorex-components-phone-box.mjs +2 -2
  128. package/fesm2022/acorex-components-phone-box.mjs.map +1 -1
  129. package/fesm2022/acorex-components-picker.mjs +6 -6
  130. package/fesm2022/acorex-components-picker.mjs.map +1 -1
  131. package/fesm2022/acorex-components-popup.mjs +3 -3
  132. package/fesm2022/acorex-components-popup.mjs.map +1 -1
  133. package/fesm2022/acorex-components-progress-bar.mjs +2 -2
  134. package/fesm2022/acorex-components-progress-bar.mjs.map +1 -1
  135. package/fesm2022/acorex-components-qrcode.mjs +2 -2
  136. package/fesm2022/acorex-components-qrcode.mjs.map +1 -1
  137. package/fesm2022/acorex-components-query-builder.mjs +2 -2
  138. package/fesm2022/acorex-components-query-builder.mjs.map +1 -1
  139. package/fesm2022/acorex-components-radio.mjs +2 -2
  140. package/fesm2022/acorex-components-radio.mjs.map +1 -1
  141. package/fesm2022/acorex-components-rail-navigation.mjs +2 -2
  142. package/fesm2022/acorex-components-rail-navigation.mjs.map +1 -1
  143. package/fesm2022/acorex-components-range-slider.mjs +2 -2
  144. package/fesm2022/acorex-components-range-slider.mjs.map +1 -1
  145. package/fesm2022/acorex-components-rate-picker.mjs +2 -2
  146. package/fesm2022/acorex-components-rate-picker.mjs.map +1 -1
  147. package/fesm2022/acorex-components-rest-api-generator.mjs +10 -10
  148. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -1
  149. package/fesm2022/acorex-components-result.mjs +2 -2
  150. package/fesm2022/acorex-components-result.mjs.map +1 -1
  151. package/fesm2022/acorex-components-routing-progress.mjs +2 -2
  152. package/fesm2022/acorex-components-routing-progress.mjs.map +1 -1
  153. package/fesm2022/acorex-components-scheduler-picker.mjs +40 -32
  154. package/fesm2022/acorex-components-scheduler-picker.mjs.map +1 -1
  155. package/fesm2022/acorex-components-scheduler.mjs +19 -22
  156. package/fesm2022/acorex-components-scheduler.mjs.map +1 -1
  157. package/fesm2022/acorex-components-search-box.mjs +4 -2
  158. package/fesm2022/acorex-components-search-box.mjs.map +1 -1
  159. package/fesm2022/acorex-components-select-box.mjs +5 -7
  160. package/fesm2022/acorex-components-select-box.mjs.map +1 -1
  161. package/fesm2022/acorex-components-selection-list-2.mjs +2 -2
  162. package/fesm2022/acorex-components-selection-list-2.mjs.map +1 -1
  163. package/fesm2022/acorex-components-selection-list.mjs +2 -2
  164. package/fesm2022/acorex-components-selection-list.mjs.map +1 -1
  165. package/fesm2022/acorex-components-side-menu.mjs +2 -2
  166. package/fesm2022/acorex-components-side-menu.mjs.map +1 -1
  167. package/fesm2022/acorex-components-skeleton.mjs +2 -2
  168. package/fesm2022/acorex-components-skeleton.mjs.map +1 -1
  169. package/fesm2022/acorex-components-sliding-item.mjs +2 -2
  170. package/fesm2022/acorex-components-sliding-item.mjs.map +1 -1
  171. package/fesm2022/acorex-components-step-wizard.mjs +2 -2
  172. package/fesm2022/acorex-components-step-wizard.mjs.map +1 -1
  173. package/fesm2022/acorex-components-switch.mjs +2 -2
  174. package/fesm2022/acorex-components-switch.mjs.map +1 -1
  175. package/fesm2022/acorex-components-tabs.mjs +2 -2
  176. package/fesm2022/acorex-components-tabs.mjs.map +1 -1
  177. package/fesm2022/acorex-components-tag-box.mjs +2 -2
  178. package/fesm2022/acorex-components-tag-box.mjs.map +1 -1
  179. package/fesm2022/acorex-components-tag.mjs +2 -2
  180. package/fesm2022/acorex-components-tag.mjs.map +1 -1
  181. package/fesm2022/acorex-components-text-area.mjs +2 -2
  182. package/fesm2022/acorex-components-text-area.mjs.map +1 -1
  183. package/fesm2022/acorex-components-text-box.mjs +2 -2
  184. package/fesm2022/acorex-components-text-box.mjs.map +1 -1
  185. package/fesm2022/acorex-components-time-line.mjs +4 -4
  186. package/fesm2022/acorex-components-time-line.mjs.map +1 -1
  187. package/fesm2022/acorex-components-toast.mjs +2 -2
  188. package/fesm2022/acorex-components-toast.mjs.map +1 -1
  189. package/fesm2022/acorex-components-toolbar.mjs +2 -2
  190. package/fesm2022/acorex-components-toolbar.mjs.map +1 -1
  191. package/fesm2022/acorex-components-tooltip.mjs +2 -2
  192. package/fesm2022/acorex-components-tooltip.mjs.map +1 -1
  193. package/fesm2022/acorex-components-tree-view.mjs +2 -2
  194. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  195. package/fesm2022/acorex-components-uploader.mjs +6 -6
  196. package/fesm2022/acorex-components-uploader.mjs.map +1 -1
  197. package/fesm2022/acorex-components-wysiwyg.mjs +6 -6
  198. package/fesm2022/acorex-components-wysiwyg.mjs.map +1 -1
  199. package/package.json +12 -10
  200. package/types/acorex-components-badge.d.ts +2 -4
  201. package/types/acorex-components-conversation.d.ts +6574 -479
  202. package/types/acorex-components-file-viewer.d.ts +180 -0
  203. package/types/acorex-components-image-editor.d.ts +74 -47
  204. package/types/acorex-components-kbd.d.ts +2 -2
  205. package/types/acorex-components-scheduler-picker.d.ts +2 -0
  206. package/types/acorex-components-scheduler.d.ts +1 -3
  207. package/conversation2/README.md +0 -463
  208. package/fesm2022/acorex-components-conversation2.mjs +0 -22194
  209. package/fesm2022/acorex-components-conversation2.mjs.map +0 -1
  210. package/fesm2022/acorex-components-modal-acorex-components-modal-lJw2DGSj.mjs.map +0 -1
  211. package/fesm2022/acorex-components-modal-modal-content.component-t9kRuhc_.mjs.map +0 -1
  212. package/types/acorex-components-conversation2.d.ts +0 -6365
@@ -0,0 +1,101 @@
1
+ import { AXComponentCloseEvent, AXClosableComponent } from '@acorex/cdk/common';
2
+ import { AXTranslationService } from '@acorex/core/translation';
3
+ import * as i0 from '@angular/core';
4
+ import { inject, input, computed, EventEmitter, ChangeDetectionStrategy, Component } from '@angular/core';
5
+
6
+ class AXConversationComposerActionChoiceDialogComponent {
7
+ constructor() {
8
+ this.translation = inject(AXTranslationService);
9
+ this.actions = input.required(...(ngDevMode ? [{ debugName: "actions" }] : /* istanbul ignore next */ []));
10
+ this.fileCount = input(1, ...(ngDevMode ? [{ debugName: "fileCount" }] : /* istanbul ignore next */ []));
11
+ this.composerActionRegistry = input.required(...(ngDevMode ? [{ debugName: "composerActionRegistry" }] : /* istanbul ignore next */ []));
12
+ this.__popup__ = input(...(ngDevMode ? [undefined, { debugName: "__popup__" }] : /* istanbul ignore next */ []));
13
+ this.hintText = computed(() => {
14
+ const count = this.fileCount();
15
+ if (count === 1) {
16
+ return this.translation.translateSync('@acorex:chat.dialog.choose-send-option.hint-single');
17
+ }
18
+ return this.translation.translateSync('@acorex:chat.dialog.choose-send-option.hint-multiple', {
19
+ params: { count },
20
+ });
21
+ }, ...(ngDevMode ? [{ debugName: "hintText" }] : /* istanbul ignore next */ []));
22
+ this.onClosed = new EventEmitter();
23
+ }
24
+ getActionLabel(action) {
25
+ return this.composerActionRegistry().getActionLabel(action);
26
+ }
27
+ getActionTooltip(action) {
28
+ return this.composerActionRegistry().getActionTooltip(action);
29
+ }
30
+ choose(action) {
31
+ const event = new AXComponentCloseEvent();
32
+ event.component = this;
33
+ event.data = action;
34
+ this.onClosed.emit(event);
35
+ }
36
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationComposerActionChoiceDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
37
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.2.9", type: AXConversationComposerActionChoiceDialogComponent, isStandalone: true, selector: "ax-conversation-composer-action-choice-dialog", inputs: { actions: { classPropertyName: "actions", publicName: "actions", isSignal: true, isRequired: true, transformFunction: null }, fileCount: { classPropertyName: "fileCount", publicName: "fileCount", isSignal: true, isRequired: false, transformFunction: null }, composerActionRegistry: { classPropertyName: "composerActionRegistry", publicName: "composerActionRegistry", isSignal: true, isRequired: true, transformFunction: null }, __popup__: { classPropertyName: "__popup__", publicName: "__popup__", isSignal: true, isRequired: false, transformFunction: null } }, providers: [{ provide: AXClosableComponent, useExisting: AXConversationComposerActionChoiceDialogComponent }], ngImport: i0, template: `
38
+ <div class="composer-action-choice" role="dialog" aria-modal="true">
39
+ <p class="composer-action-choice__hint">{{ hintText() }}</p>
40
+ <ul class="composer-action-choice__list" role="listbox">
41
+ @for (action of actions(); track action.id) {
42
+ <li role="presentation">
43
+ <button
44
+ type="button"
45
+ class="composer-action-choice__option"
46
+ role="option"
47
+ (click)="choose(action)"
48
+ [attr.aria-label]="getActionLabel(action)"
49
+ >
50
+ <span class="composer-action-choice__icon" aria-hidden="true">
51
+ <i [class]="action.icon"></i>
52
+ </span>
53
+ <span class="composer-action-choice__text">
54
+ <span class="composer-action-choice__title">{{ getActionLabel(action) }}</span>
55
+ @if (getActionTooltip(action); as tip) {
56
+ <span class="composer-action-choice__subtitle">{{ tip }}</span>
57
+ }
58
+ </span>
59
+ <i class="fa-light fa-chevron-right composer-action-choice__chevron" aria-hidden="true"></i>
60
+ </button>
61
+ </li>
62
+ }
63
+ </ul>
64
+ </div>
65
+ `, isInline: true, styles: [":host{display:block}.composer-action-choice{display:flex;flex-direction:column;gap:.75rem;padding:.5rem;min-width:16rem}.composer-action-choice__hint{margin:0;font-size:.8125rem;line-height:1.45;color:rgba(var(--ax-sys-color-on-surface),.7)}.composer-action-choice__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.composer-action-choice__option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem .75rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius, .5rem);background:rgb(var(--ax-sys-color-surface));cursor:pointer;text-align:start;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.composer-action-choice__option:hover,.composer-action-choice__option:focus-visible{border-color:rgb(var(--ax-sys-color-primary-500));background:rgba(var(--ax-sys-color-primary-500),.06);outline:none;box-shadow:0 0 0 1px rgba(var(--ax-sys-color-primary-500),.25)}.composer-action-choice__icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex-shrink:0;border-radius:var(--ax-sys-border-radius, .375rem);background:rgba(var(--ax-sys-color-primary-500),.1);color:rgb(var(--ax-sys-color-primary-600));font-size:1.125rem}.composer-action-choice__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.composer-action-choice__title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.composer-action-choice__subtitle{font-size:.75rem;color:rgba(var(--ax-sys-color-on-surface),.6);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-action-choice__chevron{flex-shrink:0;font-size:.75rem;color:rgba(var(--ax-sys-color-on-surface),.45)}\n"], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
66
+ }
67
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.2.9", ngImport: i0, type: AXConversationComposerActionChoiceDialogComponent, decorators: [{
68
+ type: Component,
69
+ args: [{ selector: 'ax-conversation-composer-action-choice-dialog', changeDetection: ChangeDetectionStrategy.OnPush, template: `
70
+ <div class="composer-action-choice" role="dialog" aria-modal="true">
71
+ <p class="composer-action-choice__hint">{{ hintText() }}</p>
72
+ <ul class="composer-action-choice__list" role="listbox">
73
+ @for (action of actions(); track action.id) {
74
+ <li role="presentation">
75
+ <button
76
+ type="button"
77
+ class="composer-action-choice__option"
78
+ role="option"
79
+ (click)="choose(action)"
80
+ [attr.aria-label]="getActionLabel(action)"
81
+ >
82
+ <span class="composer-action-choice__icon" aria-hidden="true">
83
+ <i [class]="action.icon"></i>
84
+ </span>
85
+ <span class="composer-action-choice__text">
86
+ <span class="composer-action-choice__title">{{ getActionLabel(action) }}</span>
87
+ @if (getActionTooltip(action); as tip) {
88
+ <span class="composer-action-choice__subtitle">{{ tip }}</span>
89
+ }
90
+ </span>
91
+ <i class="fa-light fa-chevron-right composer-action-choice__chevron" aria-hidden="true"></i>
92
+ </button>
93
+ </li>
94
+ }
95
+ </ul>
96
+ </div>
97
+ `, providers: [{ provide: AXClosableComponent, useExisting: AXConversationComposerActionChoiceDialogComponent }], styles: [":host{display:block}.composer-action-choice{display:flex;flex-direction:column;gap:.75rem;padding:.5rem;min-width:16rem}.composer-action-choice__hint{margin:0;font-size:.8125rem;line-height:1.45;color:rgba(var(--ax-sys-color-on-surface),.7)}.composer-action-choice__list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.composer-action-choice__option{display:flex;align-items:center;gap:.75rem;width:100%;padding:.625rem .75rem;border:1px solid rgb(var(--ax-sys-color-border-light-surface));border-radius:var(--ax-sys-border-radius, .5rem);background:rgb(var(--ax-sys-color-surface));cursor:pointer;text-align:start;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.composer-action-choice__option:hover,.composer-action-choice__option:focus-visible{border-color:rgb(var(--ax-sys-color-primary-500));background:rgba(var(--ax-sys-color-primary-500),.06);outline:none;box-shadow:0 0 0 1px rgba(var(--ax-sys-color-primary-500),.25)}.composer-action-choice__icon{display:flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex-shrink:0;border-radius:var(--ax-sys-border-radius, .375rem);background:rgba(var(--ax-sys-color-primary-500),.1);color:rgb(var(--ax-sys-color-primary-600));font-size:1.125rem}.composer-action-choice__text{flex:1;min-width:0;display:flex;flex-direction:column;gap:.125rem}.composer-action-choice__title{font-size:.875rem;font-weight:600;color:rgb(var(--ax-sys-color-on-surface))}.composer-action-choice__subtitle{font-size:.75rem;color:rgba(var(--ax-sys-color-on-surface),.6);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.composer-action-choice__chevron{flex-shrink:0;font-size:.75rem;color:rgba(var(--ax-sys-color-on-surface),.45)}\n"] }]
98
+ }], propDecorators: { actions: [{ type: i0.Input, args: [{ isSignal: true, alias: "actions", required: true }] }], fileCount: [{ type: i0.Input, args: [{ isSignal: true, alias: "fileCount", required: false }] }], composerActionRegistry: [{ type: i0.Input, args: [{ isSignal: true, alias: "composerActionRegistry", required: true }] }], __popup__: [{ type: i0.Input, args: [{ isSignal: true, alias: "__popup__", required: false }] }] } });
99
+
100
+ export { AXConversationComposerActionChoiceDialogComponent };
101
+ //# sourceMappingURL=acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"acorex-components-conversation-composer-action-choice-dialog.component-C28hl7iD.mjs","sources":["../../../../packages/components/conversation/src/lib/components/message-list/composer-action-choice-dialog.component.ts"],"sourcesContent":["import { AXClosableComponent, AXComponentCloseEvent } from '@acorex/cdk/common';\nimport type { AXPopupRef } from '@acorex/components/popup';\nimport { AXTranslationService } from '@acorex/core/translation';\nimport { ChangeDetectionStrategy, Component, EventEmitter, computed, inject, input } from '@angular/core';\nimport type { AXConversationComposerAction, AXConversationComposerActionRegistry } from '../../registries/composer-action.registry';\n\n@Component({\n selector: 'ax-conversation-composer-action-choice-dialog',\n changeDetection: ChangeDetectionStrategy.OnPush,\n template: `\n <div class=\"composer-action-choice\" role=\"dialog\" aria-modal=\"true\">\n <p class=\"composer-action-choice__hint\">{{ hintText() }}</p>\n <ul class=\"composer-action-choice__list\" role=\"listbox\">\n @for (action of actions(); track action.id) {\n <li role=\"presentation\">\n <button\n type=\"button\"\n class=\"composer-action-choice__option\"\n role=\"option\"\n (click)=\"choose(action)\"\n [attr.aria-label]=\"getActionLabel(action)\"\n >\n <span class=\"composer-action-choice__icon\" aria-hidden=\"true\">\n <i [class]=\"action.icon\"></i>\n </span>\n <span class=\"composer-action-choice__text\">\n <span class=\"composer-action-choice__title\">{{ getActionLabel(action) }}</span>\n @if (getActionTooltip(action); as tip) {\n <span class=\"composer-action-choice__subtitle\">{{ tip }}</span>\n }\n </span>\n <i class=\"fa-light fa-chevron-right composer-action-choice__chevron\" aria-hidden=\"true\"></i>\n </button>\n </li>\n }\n </ul>\n </div>\n `,\n styles: [\n `\n :host {\n display: block;\n }\n\n .composer-action-choice {\n display: flex;\n flex-direction: column;\n gap: 0.75rem;\n padding: 0.5rem;\n min-width: 16rem;\n }\n\n .composer-action-choice__hint {\n margin: 0;\n font-size: 0.8125rem;\n line-height: 1.45;\n color: rgba(var(--ax-sys-color-on-surface), 0.7);\n }\n\n .composer-action-choice__list {\n list-style: none;\n margin: 0;\n padding: 0;\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n }\n\n .composer-action-choice__option {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n width: 100%;\n padding: 0.625rem 0.75rem;\n border: 1px solid rgb(var(--ax-sys-color-border-light-surface));\n border-radius: var(--ax-sys-border-radius, 0.5rem);\n background: rgb(var(--ax-sys-color-surface));\n cursor: pointer;\n text-align: start;\n transition:\n border-color 0.15s ease,\n background-color 0.15s ease,\n box-shadow 0.15s ease;\n }\n\n .composer-action-choice__option:hover,\n .composer-action-choice__option:focus-visible {\n border-color: rgb(var(--ax-sys-color-primary-500));\n background: rgba(var(--ax-sys-color-primary-500), 0.06);\n outline: none;\n box-shadow: 0 0 0 1px rgba(var(--ax-sys-color-primary-500), 0.25);\n }\n\n .composer-action-choice__icon {\n display: flex;\n align-items: center;\n justify-content: center;\n width: 2.5rem;\n height: 2.5rem;\n flex-shrink: 0;\n border-radius: var(--ax-sys-border-radius, 0.375rem);\n background: rgba(var(--ax-sys-color-primary-500), 0.1);\n color: rgb(var(--ax-sys-color-primary-600));\n font-size: 1.125rem;\n }\n\n .composer-action-choice__text {\n flex: 1;\n min-width: 0;\n display: flex;\n flex-direction: column;\n gap: 0.125rem;\n }\n\n .composer-action-choice__title {\n font-size: 0.875rem;\n font-weight: 600;\n color: rgb(var(--ax-sys-color-on-surface));\n }\n\n .composer-action-choice__subtitle {\n font-size: 0.75rem;\n color: rgba(var(--ax-sys-color-on-surface), 0.6);\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n }\n\n .composer-action-choice__chevron {\n flex-shrink: 0;\n font-size: 0.75rem;\n color: rgba(var(--ax-sys-color-on-surface), 0.45);\n }\n `,\n ],\n providers: [{ provide: AXClosableComponent, useExisting: AXConversationComposerActionChoiceDialogComponent }],\n})\nexport class AXConversationComposerActionChoiceDialogComponent {\n private readonly translation = inject(AXTranslationService);\n\n readonly actions = input.required<AXConversationComposerAction[]>();\n readonly fileCount = input(1);\n readonly composerActionRegistry = input.required<AXConversationComposerActionRegistry>();\n readonly __popup__ = input<AXPopupRef | undefined>();\n\n readonly hintText = computed(() => {\n const count = this.fileCount();\n if (count === 1) {\n return this.translation.translateSync('@acorex:chat.dialog.choose-send-option.hint-single');\n }\n return this.translation.translateSync('@acorex:chat.dialog.choose-send-option.hint-multiple', {\n params: { count },\n });\n });\n\n readonly onClosed = new EventEmitter<AXComponentCloseEvent>();\n\n getActionLabel(action: AXConversationComposerAction): string {\n return this.composerActionRegistry().getActionLabel(action);\n }\n\n getActionTooltip(action: AXConversationComposerAction): string | undefined {\n return this.composerActionRegistry().getActionTooltip(action);\n }\n\n choose(action: AXConversationComposerAction): void {\n const event = new AXComponentCloseEvent();\n event.component = this;\n event.data = action;\n this.onClosed.emit(event);\n }\n}\n"],"names":[],"mappings":"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"}