@acorex/components 22.2.7 → 22.2.9

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 (28) hide show
  1. package/fesm2022/acorex-components-audio-wave.mjs +24 -3
  2. package/fesm2022/acorex-components-audio-wave.mjs.map +1 -1
  3. package/fesm2022/{acorex-components-conversation-acorex-components-conversation-CjuzzYML.mjs → acorex-components-conversation-acorex-components-conversation-CJ2TAxPI.mjs} +839 -139
  4. package/fesm2022/acorex-components-conversation-acorex-components-conversation-CJ2TAxPI.mjs.map +1 -0
  5. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-COT96F_v.mjs +87 -0
  6. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-COT96F_v.mjs.map +1 -0
  7. package/fesm2022/{acorex-components-conversation-picker-rename-file-dialog.component-r-53kDO7.mjs → acorex-components-conversation-picker-rename-file-dialog.component-veZdIY3W.mjs} +2 -2
  8. package/fesm2022/{acorex-components-conversation-picker-rename-file-dialog.component-r-53kDO7.mjs.map → acorex-components-conversation-picker-rename-file-dialog.component-veZdIY3W.mjs.map} +1 -1
  9. package/fesm2022/acorex-components-conversation.mjs +1 -1
  10. package/fesm2022/acorex-components-file-viewer.mjs +145 -66
  11. package/fesm2022/acorex-components-file-viewer.mjs.map +1 -1
  12. package/fesm2022/acorex-components-menu.mjs +96 -16
  13. package/fesm2022/acorex-components-menu.mjs.map +1 -1
  14. package/fesm2022/acorex-components-rest-api-generator.mjs +403 -0
  15. package/fesm2022/acorex-components-rest-api-generator.mjs.map +1 -0
  16. package/fesm2022/acorex-components-tree-view.mjs +36 -4
  17. package/fesm2022/acorex-components-tree-view.mjs.map +1 -1
  18. package/package.json +7 -3
  19. package/rest-api-generator/README.md +3 -0
  20. package/types/acorex-components-audio-wave.d.ts +8 -0
  21. package/types/acorex-components-conversation.d.ts +116 -11
  22. package/types/acorex-components-file-viewer.d.ts +6 -0
  23. package/types/acorex-components-menu.d.ts +15 -3
  24. package/types/acorex-components-rest-api-generator.d.ts +129 -0
  25. package/types/acorex-components-tree-view.d.ts +17 -0
  26. package/fesm2022/acorex-components-conversation-acorex-components-conversation-CjuzzYML.mjs.map +0 -1
  27. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-AO1evM19.mjs +0 -85
  28. package/fesm2022/acorex-components-conversation-image-picker-editor-dialog.component-AO1evM19.mjs.map +0 -1
package/package.json CHANGED
@@ -1,9 +1,9 @@
1
1
  {
2
2
  "name": "@acorex/components",
3
- "version": "22.2.7",
3
+ "version": "22.2.9",
4
4
  "peerDependencies": {
5
- "@acorex/core": "22.2.7",
6
- "@acorex/cdk": "22.2.7",
5
+ "@acorex/core": "22.2.9",
6
+ "@acorex/cdk": "22.2.9",
7
7
  "@angular/aria": ">=22.1.0",
8
8
  "polytype": ">=0.17.0",
9
9
  "hammerjs": ">=2.0.8",
@@ -349,6 +349,10 @@
349
349
  "types": "./types/acorex-components-rate-picker.d.ts",
350
350
  "default": "./fesm2022/acorex-components-rate-picker.mjs"
351
351
  },
352
+ "./rest-api-generator": {
353
+ "types": "./types/acorex-components-rest-api-generator.d.ts",
354
+ "default": "./fesm2022/acorex-components-rest-api-generator.mjs"
355
+ },
352
356
  "./result": {
353
357
  "types": "./types/acorex-components-result.d.ts",
354
358
  "default": "./fesm2022/acorex-components-result.mjs"
@@ -0,0 +1,3 @@
1
+ # @acorex/components/rest-api-generator
2
+
3
+ Secondary entry point of `@acorex/components`. It can be used by importing from `@acorex/components/rest-api-generator`.
@@ -172,6 +172,14 @@ declare class AXAudioWaveComponent {
172
172
  * @ignore
173
173
  */
174
174
  private bindEvents;
175
+ /**
176
+ * @ignore
177
+ */
178
+ private swallowAbort;
179
+ /**
180
+ * @ignore
181
+ */
182
+ private isAbortError;
175
183
  /**
176
184
  * @ignore
177
185
  */
@@ -20,9 +20,9 @@ import { AXFileTypeRegistryService, AXFileTypeExtensionHint, AXFileTypeOpenConte
20
20
  import { AXToastService } from '@acorex/components/toast';
21
21
  import { AXValidationRuleResult } from '@acorex/core/validation';
22
22
  import { AXMapMarker } from '@acorex/components/map';
23
+ import { AXWaveConfig, AXAudioWaveChangeEvent } from '@acorex/components/audio-wave';
23
24
  import { AXRangeSliderValue } from '@acorex/components/range-slider';
24
25
  import { SafeHtml } from '@angular/platform-browser';
25
- import { AXWaveConfig, AXAudioWaveChangeEvent } from '@acorex/components/audio-wave';
26
26
  import * as i1 from '@angular/common';
27
27
  import * as i2 from '@angular/forms';
28
28
 
@@ -185,6 +185,7 @@ interface AXConversationFileMediaItem extends AXConversationMediaItemFields {
185
185
  mimeType: string;
186
186
  thumbnailUrl?: string;
187
187
  extension?: string;
188
+ duration?: number;
188
189
  }
189
190
  interface AXConversationFilePayload {
190
191
  type: 'file';
@@ -4654,6 +4655,7 @@ declare class AXConversationNewDialogComponent extends AXBasePageComponent {
4654
4655
  private readonly translation;
4655
4656
  private readonly config;
4656
4657
  private readonly destroyRef;
4658
+ private readonly popupService;
4657
4659
  private searchDebounceTimer?;
4658
4660
  constructor();
4659
4661
  /**
@@ -4665,6 +4667,7 @@ declare class AXConversationNewDialogComponent extends AXBasePageComponent {
4665
4667
  readonly selectedUserIds: _angular_core.WritableSignal<string[]>;
4666
4668
  readonly groupTitle: _angular_core.WritableSignal<string>;
4667
4669
  readonly groupAvatar: _angular_core.WritableSignal<string>;
4670
+ readonly groupAvatarFileName: _angular_core.WritableSignal<string>;
4668
4671
  readonly searchQuery: _angular_core.WritableSignal<string>;
4669
4672
  readonly creating: _angular_core.WritableSignal<boolean>;
4670
4673
  /** For 2+ users: step 1 = pick users, step 2 = title + avatar. */
@@ -4681,11 +4684,19 @@ declare class AXConversationNewDialogComponent extends AXBasePageComponent {
4681
4684
  readonly usersListEmptyTpl: _angular_core.Signal<TemplateRef<unknown>>;
4682
4685
  readonly usersListLoadingTpl: _angular_core.Signal<TemplateRef<unknown>>;
4683
4686
  readonly usersList: _angular_core.Signal<AXListComponent>;
4687
+ private readonly groupNameInput;
4688
+ private readonly groupPhotoInput;
4689
+ readonly groupPhotoAriaLabel: _angular_core.Signal<string>;
4684
4690
  readonly usersListDataSource: AXDataSource<unknown>;
4685
4691
  onCancel(): void;
4686
4692
  onSelectedUsersChange(ids: string[]): void;
4687
4693
  onNextToGroupDetails(): void;
4688
4694
  onBackFromGroupDetails(): void;
4695
+ onPickGroupPhoto(): void;
4696
+ onClearGroupPhoto(): void;
4697
+ onEditGroupPhoto(): Promise<void>;
4698
+ onGroupPhotoSelected(event: Event): Promise<void>;
4699
+ private openGroupPhotoEditor;
4689
4700
  onSearchChange(value: string): void;
4690
4701
  isUserSelected(id: string): boolean;
4691
4702
  userFromItem(item: unknown): AXConversationParticipant | null;
@@ -4947,7 +4958,9 @@ declare class AXConversationFileFileTypeProvider extends AXFileTypeInfoProvider
4947
4958
  static ɵprov: _angular_core.ɵɵInjectableDeclaration<AXConversationFileFileTypeProvider>;
4948
4959
  }
4949
4960
 
4950
- declare function fileItemFromUpload(file: File, result: AXConversationUploaderResult): AXConversationFileMediaItem;
4961
+ declare function fileItemFromUpload(file: File, result: AXConversationUploaderResult, extras?: {
4962
+ duration?: number;
4963
+ }): AXConversationFileMediaItem;
4951
4964
  declare function mergeFileUploadResult(payload: AXConversationMessagePayload, result: AXUploadResult): AXConversationMessagePayload;
4952
4965
  declare function applyFileLocalPreview(payload: AXConversationMessagePayload, localUrl: string, mimeType?: string): AXConversationMessagePayload;
4953
4966
 
@@ -5001,6 +5014,7 @@ declare class AXConversationFilePickerComponent implements OnDestroy, AXConversa
5001
5014
  cancel(): void;
5002
5015
  ngOnDestroy(): void;
5003
5016
  private dismissPicker;
5017
+ private revokePreview;
5004
5018
  getHeaderTitle(): string;
5005
5019
  truncateFileName(fileName: string): string;
5006
5020
  onAddMoreFiles(): void;
@@ -5390,32 +5404,71 @@ declare class AXConversationVoiceRecorderComponent implements AXConversationComp
5390
5404
  readonly recordingComplete: _angular_core.OutputEmitterRef<Blob>;
5391
5405
  readonly recordingCancelled: _angular_core.OutputEmitterRef<void>;
5392
5406
  readonly isRecording: _angular_core.WritableSignal<boolean>;
5407
+ readonly isPreview: _angular_core.WritableSignal<boolean>;
5408
+ readonly isPlayingPreview: _angular_core.WritableSignal<boolean>;
5393
5409
  readonly isUploading: _angular_core.WritableSignal<boolean>;
5394
5410
  readonly uploadProgress: _angular_core.WritableSignal<number>;
5395
5411
  readonly recordingDuration: _angular_core.WritableSignal<number>;
5412
+ readonly previewUrl: _angular_core.WritableSignal<string>;
5413
+ readonly livePeaks: _angular_core.WritableSignal<number[]>;
5414
+ readonly liveBarCount: _angular_core.WritableSignal<number>;
5396
5415
  private recordingStartTime;
5397
5416
  private timerInterval?;
5398
5417
  private mediaRecorder?;
5399
5418
  private audioChunks;
5400
5419
  private activeStream?;
5401
5420
  private cancelled;
5421
+ private sendAfterStop;
5422
+ private sendInFlight;
5423
+ private awaitingPreviewData;
5424
+ private previewBlob;
5402
5425
  private uploadAbortController?;
5426
+ private audioContext?;
5427
+ private analyser?;
5428
+ private timeDomain;
5429
+ private rafId;
5430
+ private lastLivePeakAt;
5431
+ private waveResizeObserver?;
5432
+ private readonly waveWrapRef;
5433
+ private readonly waveRef;
5403
5434
  readonly formattedTime: _angular_core.Signal<string>;
5404
- protected readonly waveBars: number[];
5435
+ readonly canSend: _angular_core.Signal<boolean>;
5436
+ readonly liveDisplayBars: _angular_core.Signal<{
5437
+ index: number;
5438
+ recorded: boolean;
5439
+ height: number;
5440
+ }[]>;
5441
+ readonly waveConfig: _angular_core.Signal<AXWaveConfig>;
5405
5442
  constructor();
5406
5443
  activate(): Promise<void>;
5407
5444
  startRecording(): Promise<void>;
5408
5445
  private dismissHost;
5409
- /** Stop recording and send */
5446
+ toggleStopOrContinue(): void;
5410
5447
  stopRecording(): void;
5448
+ sendRecording(): void;
5449
+ deleteRecording(): void;
5411
5450
  cancelRecording(): void;
5412
- /** Close the voice recorder */
5413
5451
  cancel(): void;
5452
+ togglePreview(): void;
5453
+ onWaveStatusChanged(event: AXAudioWaveChangeEvent): void;
5414
5454
  abortInProgressUploads(): void;
5415
- /** Clear timer */
5455
+ private pauseRecording;
5456
+ private continueRecording;
5457
+ private flushPreviewIfWaiting;
5458
+ private buildRecordingBlob;
5459
+ private discardActiveRecorder;
5460
+ private releaseStream;
5461
+ private startLiveWave;
5462
+ private observeWaveWidth;
5463
+ private updateBarCount;
5464
+ private tickLiveWave;
5465
+ private stopLiveWave;
5466
+ private enterPreview;
5467
+ private pausePreview;
5468
+ private clearPreview;
5469
+ private clearPreviewUrl;
5416
5470
  private clearTimer;
5417
5471
  getUploadingLabel(): string;
5418
- /** Send voice message */
5419
5472
  private sendVoiceMessage;
5420
5473
  private stopAndCleanup;
5421
5474
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXConversationVoiceRecorderComponent, never>;
@@ -5537,6 +5590,7 @@ declare class AXConversationAudioAttachmentComponent {
5537
5590
  private readonly platformId;
5538
5591
  protected readonly translation: AXTranslationService;
5539
5592
  readonly item: _angular_core.InputSignal<AXConversationAudioMediaItem>;
5593
+ readonly look: _angular_core.InputSignal<"file" | "player">;
5540
5594
  readonly playingChange: _angular_core.OutputEmitterRef<boolean>;
5541
5595
  readonly timeUpdate: _angular_core.OutputEmitterRef<number>;
5542
5596
  readonly durationChange: _angular_core.OutputEmitterRef<number>;
@@ -5556,9 +5610,12 @@ declare class AXConversationAudioAttachmentComponent {
5556
5610
  readonly effectiveDuration: _angular_core.Signal<number>;
5557
5611
  readonly sliderMax: _angular_core.Signal<number>;
5558
5612
  readonly currentTimeLabel: _angular_core.Signal<string>;
5613
+ readonly durationLabel: _angular_core.Signal<string>;
5559
5614
  readonly downloadName: _angular_core.Signal<string>;
5560
5615
  constructor();
5561
5616
  togglePlay(): void;
5617
+ onPlayClick(event: AXClickEvent): void;
5618
+ onNativePlayClick(event: Event): void;
5562
5619
  pause(): void;
5563
5620
  setPlaybackRate(rate: number): void;
5564
5621
  setMuted(muted: boolean): void;
@@ -5571,10 +5628,16 @@ declare class AXConversationAudioAttachmentComponent {
5571
5628
  onError(): void;
5572
5629
  onCoverError(): void;
5573
5630
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXConversationAudioAttachmentComponent, never>;
5574
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXConversationAudioAttachmentComponent, "ax-conversation-audio-attachment", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; }, { "playingChange": "playingChange"; "timeUpdate": "timeUpdate"; "durationChange": "durationChange"; "playbackEnded": "playbackEnded"; "playbackError": "playbackError"; }, never, never, true, never>;
5631
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXConversationAudioAttachmentComponent, "ax-conversation-audio-attachment", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; "look": { "alias": "look"; "required": false; "isSignal": true; }; }, { "playingChange": "playingChange"; "timeUpdate": "timeUpdate"; "durationChange": "durationChange"; "playbackEnded": "playbackEnded"; "playbackError": "playbackError"; }, never, never, true, never>;
5575
5632
  }
5576
5633
 
5634
+ type AXConversationFileVisualKind = 'image' | 'video' | 'audio' | 'file';
5635
+
5577
5636
  declare class AXConversationFileAttachmentComponent {
5637
+ private readonly platformId;
5638
+ private readonly document;
5639
+ protected readonly translation: AXTranslationService;
5640
+ private readonly thumbImage;
5578
5641
  readonly item: _angular_core.InputSignal<AXConversationFileMediaItem>;
5579
5642
  private readonly mediaReference;
5580
5643
  private readonly resolvedUrl;
@@ -5583,6 +5646,11 @@ declare class AXConversationFileAttachmentComponent {
5583
5646
  readonly fileSize: _angular_core.Signal<number>;
5584
5647
  readonly fileExtension: _angular_core.Signal<string>;
5585
5648
  readonly formattedSize: _angular_core.Signal<string>;
5649
+ readonly kind: _angular_core.Signal<AXConversationFileVisualKind>;
5650
+ readonly isMedia: _angular_core.Signal<boolean>;
5651
+ readonly thumbUrl: _angular_core.Signal<string>;
5652
+ readonly previewSrc: _angular_core.Signal<string>;
5653
+ openImage(event: Event): void;
5586
5654
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXConversationFileAttachmentComponent, never>;
5587
5655
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXConversationFileAttachmentComponent, "ax-conversation-file-attachment", never, { "item": { "alias": "item"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
5588
5656
  }
@@ -5804,19 +5872,56 @@ declare class AXConversationFallbackRendererComponent implements AXConversationM
5804
5872
  declare class AXConversationFileRendererComponent extends AXConversationMessageRendererCopyHostComponent {
5805
5873
  private readonly fileTypes;
5806
5874
  private readonly translation;
5875
+ private readonly destroyRef;
5876
+ private readonly infoBarService;
5877
+ private readonly audioAttachments;
5878
+ private readonly _contentState;
5879
+ private readonly activeTrackIndex;
5880
+ private readonly isPlaying;
5881
+ private readonly currentTime;
5882
+ private readonly duration;
5883
+ readonly playbackSpeed: _angular_core.WritableSignal<number>;
5884
+ readonly isMuted: _angular_core.WritableSignal<boolean>;
5885
+ private lastBannerSyncAt;
5886
+ private readonly speeds;
5887
+ private readonly bannerTogglePlay;
5888
+ private readonly bannerClose;
5889
+ private readonly bannerCycleSpeed;
5890
+ private readonly bannerToggleMute;
5807
5891
  readonly message: _angular_core.InputSignal<AXConversationMessage>;
5808
5892
  readonly rendererState: _angular_core.Signal<{
5809
5893
  deliveryStatus: _acorex_components_conversation.AXConversationMessageStatus;
5810
- contentState: "ready";
5894
+ contentState: AXConversationMessageRendererContentState;
5811
5895
  }>;
5812
5896
  readonly payload: _angular_core.Signal<AXConversationFilePayload>;
5813
- readonly files: _angular_core.Signal<_acorex_components_conversation.AXConversationFileMediaItem[]>;
5897
+ readonly files: _angular_core.Signal<AXConversationFileMediaItem[]>;
5814
5898
  readonly caption: _angular_core.Signal<string>;
5899
+ readonly fileRows: _angular_core.Signal<{
5900
+ file: AXConversationFileMediaItem;
5901
+ isAudio: boolean;
5902
+ audio: _acorex_components_conversation.AXConversationAudioMediaItem;
5903
+ trackIndex: number;
5904
+ }[]>;
5815
5905
  copy(): Promise<string>;
5906
+ constructor();
5907
+ isAudioFile(file: AXConversationFileMediaItem): boolean;
5908
+ onPlayingChange(trackIndex: number, playing: boolean): void;
5909
+ onTimeUpdate(trackIndex: number, time: number): void;
5910
+ onDurationChange(trackIndex: number, duration: number): void;
5911
+ onPlaybackEnded(trackIndex: number): void;
5912
+ onPlaybackError(): void;
5913
+ togglePlay(): void;
5914
+ cyclePlaybackSpeed(): void;
5915
+ toggleMute(): void;
5916
+ private pauseOtherTracks;
5917
+ private pausePlayback;
5918
+ private applyPlaybackSettings;
5919
+ private syncInfoBarBanner;
5816
5920
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXConversationFileRendererComponent, never>;
5817
5921
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXConversationFileRendererComponent, "ax-conversation-file-renderer", never, { "message": { "alias": "message"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
5818
5922
  }
5819
5923
 
5924
+ declare function fileItemAsAudioMedia(item: AXConversationFileMediaItem): AXConversationAudioMediaItem;
5820
5925
  declare function normalizeFilePayload(payload: AXConversationFilePayload): AXConversationFilePayload;
5821
5926
 
5822
5927
  declare class AXConversationImageRendererComponent extends AXConversationMessageRendererCopyHostComponent {
@@ -6578,5 +6683,5 @@ declare function getErrorMessage(code: string, params?: Record<string, string |
6578
6683
  */
6579
6684
  type AXConversationErrorCode = typeof AX_CONVERSATION_MESSAGE_ERRORS[keyof typeof AX_CONVERSATION_MESSAGE_ERRORS]['code'] | typeof AX_CONVERSATION_FILE_ERRORS[keyof typeof AX_CONVERSATION_FILE_ERRORS]['code'] | typeof AX_CONVERSATION_USER_ERRORS[keyof typeof AX_CONVERSATION_USER_ERRORS]['code'] | typeof AX_CONVERSATION_ERRORS[keyof typeof AX_CONVERSATION_ERRORS]['code'] | typeof AX_CONVERSATION_CONNECTION_ERRORS[keyof typeof AX_CONVERSATION_CONNECTION_ERRORS]['code'] | typeof AX_CONVERSATION_LOCATION_ERRORS[keyof typeof AX_CONVERSATION_LOCATION_ERRORS]['code'] | typeof AX_CONVERSATION_URL_ERRORS[keyof typeof AX_CONVERSATION_URL_ERRORS]['code'];
6580
6685
 
6581
- export { AXConversationApi, AXConversationApiLoggerService, AXConversationAudioAttachmentComponent, AXConversationAudioFileTypeProvider, AXConversationAudioPickerComponent, AXConversationAudioRendererComponent, AXConversationAvatarComponent, AXConversationAvatarPickerComponent, AXConversationBaseRegistry, AXConversationComposerActionRegistry, AXConversationComposerComponent, AXConversationComposerFileTypesProvider, AXConversationComposerGenerationStateService, AXConversationComposerPopupComponent, AXConversationComposerService, AXConversationComposerTabRegistry, AXConversationContainerComponent, AXConversationContainerDirective, AXConversationDateUtilsService, AXConversationDeleteDialogComponent, AXConversationEmojiTabComponent, AXConversationErrorHandlerService, AXConversationFallbackRendererComponent, AXConversationFileAttachmentComponent, AXConversationFileFileTypeProvider, AXConversationFilePickerComponent, AXConversationFileRendererComponent, AXConversationForwardMessageDialogComponent, AXConversationImageAttachmentComponent, AXConversationImageFileTypeProvider, AXConversationImagePickerComponent, AXConversationImageRendererComponent, AXConversationInfiniteScrollDirective, AXConversationInfoBarActionRegistry, AXConversationInfoBarComponent, AXConversationInfoBarSearchComponent, AXConversationInfoBarService, AXConversationItemActionRegistry, AXConversationLocationPickerComponent, AXConversationLocationRendererComponent, AXConversationMediaPlaybackInfoBarBannerComponent, AXConversationMessageActionRegistry, AXConversationMessageApi, AXConversationMessageListComponent, AXConversationMessageListNoActiveDefaultComponent, AXConversationMessageListService, AXConversationMessageRendererCopyHostComponent, AXConversationMessageRendererRegistry, AXConversationMessageRendererStateComponent, AXConversationMessageUtilsService, AXConversationModule, AXConversationNewDialogComponent, AXConversationPickerCaptionComponent, AXConversationPickerEmptyComponent, AXConversationPickerFooterComponent, AXConversationPickerHeaderComponent, AXConversationPickerOptionsComponent, AXConversationPickerShellComponent, AXConversationPickerToolbarComponent, AXConversationRealtimeApi, AXConversationRegistryComponentOutletComponent, AXConversationRegistryService, AXConversationService, AXConversationSidebarComponent, AXConversationSidebarService, AXConversationStickerRendererComponent, AXConversationStickerTabComponent, AXConversationSystemRendererComponent, AXConversationTabRegistry, AXConversationTextRendererComponent, AXConversationUserApi, AXConversationVideoAttachmentComponent, AXConversationVideoFileTypeProvider, AXConversationVideoPickerComponent, AXConversationVideoRendererComponent, AXConversationVoiceFileTypeProvider, AXConversationVoiceRecorderComponent, AXConversationVoiceRendererComponent, AX_CONVERSATION_AUDIO_CATALOG, AX_CONVERSATION_AUDIO_PRESENTATION, AX_CONVERSATION_AUDIO_RENDERER, AX_CONVERSATION_BUILTIN_COMPOSER_TABS, AX_CONVERSATION_COMPOSER_AUDIO_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_CONFIG, AX_CONVERSATION_CONNECTION_ERRORS, AX_CONVERSATION_CONVERSATION_AVATAR_COMPONENT, AX_CONVERSATION_DEFAULT_COMPOSER_ACTIONS, AX_CONVERSATION_DEFAULT_COMPOSER_TABS, AX_CONVERSATION_DEFAULT_CONVERSATION_ITEM_ACTIONS, AX_CONVERSATION_DEFAULT_CONVERSATION_TABS, AX_CONVERSATION_DEFAULT_GROUP_ICON, AX_CONVERSATION_DEFAULT_INFO_BAR_ACTIONS, AX_CONVERSATION_DEFAULT_MESSAGE_ACTIONS, AX_CONVERSATION_DEFAULT_MESSAGE_LIST_BACKGROUND, AX_CONVERSATION_DEFAULT_MESSAGE_LIST_BACKGROUND_PRESET_ID, AX_CONVERSATION_DEFAULT_MESSAGE_LIST_THEME_BACKGROUND, AX_CONVERSATION_DEFAULT_MESSAGE_RENDERERS, AX_CONVERSATION_DEFAULT_ROOM_PREFERENCES, AX_CONVERSATION_DEFAULT_USER_ICON, AX_CONVERSATION_ERRORS, AX_CONVERSATION_ERROR_HANDLER_CONFIG, AX_CONVERSATION_ERROR_MESSAGES, AX_CONVERSATION_FALLBACK_RENDERER, AX_CONVERSATION_FILE_CATALOG, AX_CONVERSATION_FILE_ERRORS, AX_CONVERSATION_FILE_PRESENTATION, AX_CONVERSATION_FILE_RENDERER, AX_CONVERSATION_FILE_TYPES_READY, AX_CONVERSATION_IMAGE_CATALOG, AX_CONVERSATION_IMAGE_PRESENTATION, 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_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_ERRORS, AX_CONVERSATION_LOCATION_RENDERER, AX_CONVERSATION_MESSAGE_DELETE_ACTION, AX_CONVERSATION_MESSAGE_EDIT_ACTION, AX_CONVERSATION_MESSAGE_ERRORS, AX_CONVERSATION_MESSAGE_FORWARD_ACTION, AX_CONVERSATION_MESSAGE_LIST_BACKGROUND_PRESETS, AX_CONVERSATION_MESSAGE_REPLY_ACTION, AX_CONVERSATION_MESSAGE_TYPE_FILE_TYPE, AX_CONVERSATION_PEER_AVATAR_TYPES, AX_CONVERSATION_REGISTRY_CONFIG, AX_CONVERSATION_STICKER_API_KEY, AX_CONVERSATION_STICKER_RENDERER, AX_CONVERSATION_SYSTEM_RENDERER, AX_CONVERSATION_TAB_ALL, AX_CONVERSATION_TAB_ARCHIVED, AX_CONVERSATION_TAB_BOT, AX_CONVERSATION_TAB_CHANNELS, AX_CONVERSATION_TAB_GROUPS, AX_CONVERSATION_TAB_PRIVATE, AX_CONVERSATION_TAB_UNREAD, AX_CONVERSATION_TEXT_RENDERER, AX_CONVERSATION_URL_ERRORS, AX_CONVERSATION_USER_AVATAR_COMPONENT, AX_CONVERSATION_USER_ERRORS, AX_CONVERSATION_VIDEO_CATALOG, AX_CONVERSATION_VIDEO_PRESENTATION, AX_CONVERSATION_VIDEO_RENDERER, AX_CONVERSATION_VOICE_CATALOG, AX_CONVERSATION_VOICE_PRESENTATION, AX_CONVERSATION_VOICE_RENDERER, AX_DEFAULT_CONVERSATION_CONFIG, abortPickerUploads, applyAudioLocalPreview, applyFileLocalPreview, applyLocalPreview, applyVideoLocalPreview, applyVoiceLocalPreview, audioItemFromUpload, bindMediaRendererContentState, buildMediaGalleryTiles, canShowRendererContentError, cleanupPickerUploads, conversationAudioUtilities, conversationFileUtilities, conversationImageUtilities, conversationVideoUtilities, conversationVoiceUtilities, copyWithFileTypeFallback, createConversationAudioFileType, createConversationFileFileType, createConversationImageFileType, createConversationVideoFileType, createConversationVoiceFileType, createLocalPreviewUrl, createObjectUrl, createPickerDragHandlers, createPickerUploadItemId, createResolvedMediaUrlSignal, deleteUploadedPickerMedia, dismissComposerPickerHost, ensureConversationFileCatalogRegistered, fetchConversationMediaPage, fileItemFromUpload, filesFromClipboardEvent, filterMessagesByMediaCategory, filterSupplementalInfoPanelMessages, findExistingPrivateConversation, formatDuration, formatErrorMessage, formatFileByteSize, formatFileSize, formatMediaDuration, formatPickerValidationMessage, getActiveComposerPickerPasteHandler, getConversationMediaCategories, getConversationProfileFields, getErrorMessage, getMessageAudioItems, getMessageVideoItems, getPickerCancelUploadLabel, getPrivatePeerParticipant, hasRegistryComponent, inferFileExtensionHintFromMessage, isAttachmentListCategory, isComposerTabEnabled, isConversationReactionsEnabled, isConversationRoomCreator, isGenericPrivateConversationTitle, isGridMediaCategory, isGroupLikeConversation, isMessageDeliveryPending, isMessageListThemeBackground, isMessageVisibleAfterHistoryCutoff, isNonPersistableMediaUrl, isPickerItemReadyToSend, isSameMessageListBackground, isUploadAborted, limitFilesToCapacity, mediaCopyText, mergeAudioUploadResult, mergeFileUploadResult, mergeInfoPanelMessages, mergeUploadResult, mergeVideoUploadResult, mergeVoiceUploadResult, mergeWithDefaults, messageContainsLink, normalizeAudioPayload, normalizeFilePayload, normalizeImagePayload, normalizeMessageListBackgroundValue, normalizeVideoPayload, notifyMaxFilesCapacityExceeded, notifyPickerValidationErrors, openWithFileType, pickDisplayMediaUrl, pickEarliestJoinedParticipant, pickerItemToMediaReference, pickerItemToUploadResult, provideConversation, provideConversationComposerFileTypes, provideConversationFileCatalog, registerComposerPickerPasteHandler, reportMediaLoadError, resolveComposerMaxFiles, resolveConversationAvatarDisplay, resolveConversationComposerTabs, resolveConversationForViewer, resolveConversationMessageFileType, resolveConversationPeerParticipant, resolveConversationPeerUserId, resolveConversationTitleForViewer, resolveGalleryImageUrl, resolveImageDisplayUrl, resolveMessageListBackgroundRaw, resolveMessageListBackgroundStyle, resolveParticipantProfile, resolvePersistableMediaUrl, resolvePersistedThumbnailUrl, resolvePrivatePeerParticipant, resolvePrivatePeerUserId, resolveUserAvatarDisplay, resolveVideoThumbnailUrl, revokeObjectUrl, revokePickerBlobPreviews, sanitizeInput, shouldUseUserAvatarForConversation, sortUsersForForward, syncPlaybackInfoBarBanner, toUploaderReference as toMediaItemUploaderReference, toUploaderReference$1 as toUploaderReference, uploadPickerFile, usesDefaultMessageListWallpaper, validateConversationId, validateEmail, validateLatitude, validateLongitude, validateMessagePayload, validateMessageText, validateMessageType, validateUrl, validateUserId, validateUserIds, videoItemFromUpload };
6686
+ export { AXConversationApi, AXConversationApiLoggerService, AXConversationAudioAttachmentComponent, AXConversationAudioFileTypeProvider, AXConversationAudioPickerComponent, AXConversationAudioRendererComponent, AXConversationAvatarComponent, AXConversationAvatarPickerComponent, AXConversationBaseRegistry, AXConversationComposerActionRegistry, AXConversationComposerComponent, AXConversationComposerFileTypesProvider, AXConversationComposerGenerationStateService, AXConversationComposerPopupComponent, AXConversationComposerService, AXConversationComposerTabRegistry, AXConversationContainerComponent, AXConversationContainerDirective, AXConversationDateUtilsService, AXConversationDeleteDialogComponent, AXConversationEmojiTabComponent, AXConversationErrorHandlerService, AXConversationFallbackRendererComponent, AXConversationFileAttachmentComponent, AXConversationFileFileTypeProvider, AXConversationFilePickerComponent, AXConversationFileRendererComponent, AXConversationForwardMessageDialogComponent, AXConversationImageAttachmentComponent, AXConversationImageFileTypeProvider, AXConversationImagePickerComponent, AXConversationImageRendererComponent, AXConversationInfiniteScrollDirective, AXConversationInfoBarActionRegistry, AXConversationInfoBarComponent, AXConversationInfoBarSearchComponent, AXConversationInfoBarService, AXConversationItemActionRegistry, AXConversationLocationPickerComponent, AXConversationLocationRendererComponent, AXConversationMediaPlaybackInfoBarBannerComponent, AXConversationMessageActionRegistry, AXConversationMessageApi, AXConversationMessageListComponent, AXConversationMessageListNoActiveDefaultComponent, AXConversationMessageListService, AXConversationMessageRendererCopyHostComponent, AXConversationMessageRendererRegistry, AXConversationMessageRendererStateComponent, AXConversationMessageUtilsService, AXConversationModule, AXConversationNewDialogComponent, AXConversationPickerCaptionComponent, AXConversationPickerEmptyComponent, AXConversationPickerFooterComponent, AXConversationPickerHeaderComponent, AXConversationPickerOptionsComponent, AXConversationPickerShellComponent, AXConversationPickerToolbarComponent, AXConversationRealtimeApi, AXConversationRegistryComponentOutletComponent, AXConversationRegistryService, AXConversationService, AXConversationSidebarComponent, AXConversationSidebarService, AXConversationStickerRendererComponent, AXConversationStickerTabComponent, AXConversationSystemRendererComponent, AXConversationTabRegistry, AXConversationTextRendererComponent, AXConversationUserApi, AXConversationVideoAttachmentComponent, AXConversationVideoFileTypeProvider, AXConversationVideoPickerComponent, AXConversationVideoRendererComponent, AXConversationVoiceFileTypeProvider, AXConversationVoiceRecorderComponent, AXConversationVoiceRendererComponent, AX_CONVERSATION_AUDIO_CATALOG, AX_CONVERSATION_AUDIO_PRESENTATION, AX_CONVERSATION_AUDIO_RENDERER, AX_CONVERSATION_BUILTIN_COMPOSER_TABS, AX_CONVERSATION_COMPOSER_AUDIO_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_CONFIG, AX_CONVERSATION_CONNECTION_ERRORS, AX_CONVERSATION_CONVERSATION_AVATAR_COMPONENT, AX_CONVERSATION_DEFAULT_COMPOSER_ACTIONS, AX_CONVERSATION_DEFAULT_COMPOSER_TABS, AX_CONVERSATION_DEFAULT_CONVERSATION_ITEM_ACTIONS, AX_CONVERSATION_DEFAULT_CONVERSATION_TABS, AX_CONVERSATION_DEFAULT_GROUP_ICON, AX_CONVERSATION_DEFAULT_INFO_BAR_ACTIONS, AX_CONVERSATION_DEFAULT_MESSAGE_ACTIONS, AX_CONVERSATION_DEFAULT_MESSAGE_LIST_BACKGROUND, AX_CONVERSATION_DEFAULT_MESSAGE_LIST_BACKGROUND_PRESET_ID, AX_CONVERSATION_DEFAULT_MESSAGE_LIST_THEME_BACKGROUND, AX_CONVERSATION_DEFAULT_MESSAGE_RENDERERS, AX_CONVERSATION_DEFAULT_ROOM_PREFERENCES, AX_CONVERSATION_DEFAULT_USER_ICON, AX_CONVERSATION_ERRORS, AX_CONVERSATION_ERROR_HANDLER_CONFIG, AX_CONVERSATION_ERROR_MESSAGES, AX_CONVERSATION_FALLBACK_RENDERER, AX_CONVERSATION_FILE_CATALOG, AX_CONVERSATION_FILE_ERRORS, AX_CONVERSATION_FILE_PRESENTATION, AX_CONVERSATION_FILE_RENDERER, AX_CONVERSATION_FILE_TYPES_READY, AX_CONVERSATION_IMAGE_CATALOG, AX_CONVERSATION_IMAGE_PRESENTATION, 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_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_ERRORS, AX_CONVERSATION_LOCATION_RENDERER, AX_CONVERSATION_MESSAGE_DELETE_ACTION, AX_CONVERSATION_MESSAGE_EDIT_ACTION, AX_CONVERSATION_MESSAGE_ERRORS, AX_CONVERSATION_MESSAGE_FORWARD_ACTION, AX_CONVERSATION_MESSAGE_LIST_BACKGROUND_PRESETS, AX_CONVERSATION_MESSAGE_REPLY_ACTION, AX_CONVERSATION_MESSAGE_TYPE_FILE_TYPE, AX_CONVERSATION_PEER_AVATAR_TYPES, AX_CONVERSATION_REGISTRY_CONFIG, AX_CONVERSATION_STICKER_API_KEY, AX_CONVERSATION_STICKER_RENDERER, AX_CONVERSATION_SYSTEM_RENDERER, AX_CONVERSATION_TAB_ALL, AX_CONVERSATION_TAB_ARCHIVED, AX_CONVERSATION_TAB_BOT, AX_CONVERSATION_TAB_CHANNELS, AX_CONVERSATION_TAB_GROUPS, AX_CONVERSATION_TAB_PRIVATE, AX_CONVERSATION_TAB_UNREAD, AX_CONVERSATION_TEXT_RENDERER, AX_CONVERSATION_URL_ERRORS, AX_CONVERSATION_USER_AVATAR_COMPONENT, AX_CONVERSATION_USER_ERRORS, AX_CONVERSATION_VIDEO_CATALOG, AX_CONVERSATION_VIDEO_PRESENTATION, AX_CONVERSATION_VIDEO_RENDERER, AX_CONVERSATION_VOICE_CATALOG, AX_CONVERSATION_VOICE_PRESENTATION, AX_CONVERSATION_VOICE_RENDERER, AX_DEFAULT_CONVERSATION_CONFIG, abortPickerUploads, applyAudioLocalPreview, applyFileLocalPreview, applyLocalPreview, applyVideoLocalPreview, applyVoiceLocalPreview, audioItemFromUpload, bindMediaRendererContentState, buildMediaGalleryTiles, canShowRendererContentError, cleanupPickerUploads, conversationAudioUtilities, conversationFileUtilities, conversationImageUtilities, conversationVideoUtilities, conversationVoiceUtilities, copyWithFileTypeFallback, createConversationAudioFileType, createConversationFileFileType, createConversationImageFileType, createConversationVideoFileType, createConversationVoiceFileType, createLocalPreviewUrl, createObjectUrl, createPickerDragHandlers, createPickerUploadItemId, createResolvedMediaUrlSignal, deleteUploadedPickerMedia, dismissComposerPickerHost, ensureConversationFileCatalogRegistered, fetchConversationMediaPage, fileItemAsAudioMedia, fileItemFromUpload, filesFromClipboardEvent, filterMessagesByMediaCategory, filterSupplementalInfoPanelMessages, findExistingPrivateConversation, formatDuration, formatErrorMessage, formatFileByteSize, formatFileSize, formatMediaDuration, formatPickerValidationMessage, getActiveComposerPickerPasteHandler, getConversationMediaCategories, getConversationProfileFields, getErrorMessage, getMessageAudioItems, getMessageVideoItems, getPickerCancelUploadLabel, getPrivatePeerParticipant, hasRegistryComponent, inferFileExtensionHintFromMessage, isAttachmentListCategory, isComposerTabEnabled, isConversationReactionsEnabled, isConversationRoomCreator, isGenericPrivateConversationTitle, isGridMediaCategory, isGroupLikeConversation, isMessageDeliveryPending, isMessageListThemeBackground, isMessageVisibleAfterHistoryCutoff, isNonPersistableMediaUrl, isPickerItemReadyToSend, isSameMessageListBackground, isUploadAborted, limitFilesToCapacity, mediaCopyText, mergeAudioUploadResult, mergeFileUploadResult, mergeInfoPanelMessages, mergeUploadResult, mergeVideoUploadResult, mergeVoiceUploadResult, mergeWithDefaults, messageContainsLink, normalizeAudioPayload, normalizeFilePayload, normalizeImagePayload, normalizeMessageListBackgroundValue, normalizeVideoPayload, notifyMaxFilesCapacityExceeded, notifyPickerValidationErrors, openWithFileType, pickDisplayMediaUrl, pickEarliestJoinedParticipant, pickerItemToMediaReference, pickerItemToUploadResult, provideConversation, provideConversationComposerFileTypes, provideConversationFileCatalog, registerComposerPickerPasteHandler, reportMediaLoadError, resolveComposerMaxFiles, resolveConversationAvatarDisplay, resolveConversationComposerTabs, resolveConversationForViewer, resolveConversationMessageFileType, resolveConversationPeerParticipant, resolveConversationPeerUserId, resolveConversationTitleForViewer, resolveGalleryImageUrl, resolveImageDisplayUrl, resolveMessageListBackgroundRaw, resolveMessageListBackgroundStyle, resolveParticipantProfile, resolvePersistableMediaUrl, resolvePersistedThumbnailUrl, resolvePrivatePeerParticipant, resolvePrivatePeerUserId, resolveUserAvatarDisplay, resolveVideoThumbnailUrl, revokeObjectUrl, revokePickerBlobPreviews, sanitizeInput, shouldUseUserAvatarForConversation, sortUsersForForward, syncPlaybackInfoBarBanner, toUploaderReference as toMediaItemUploaderReference, toUploaderReference$1 as toUploaderReference, uploadPickerFile, usesDefaultMessageListWallpaper, validateConversationId, validateEmail, validateLatitude, validateLongitude, validateMessagePayload, validateMessageText, validateMessageType, validateUrl, validateUserId, validateUserIds, videoItemFromUpload };
6582
6687
  export type { AXConversation, AXConversationApiError, AXConversationApiLogEntry, AXConversationApiName, AXConversationAudioMediaItem, AXConversationAudioPayload, AXConversationAvatarComponents, AXConversationAvatarDisplay, AXConversationAvatarKind, AXConversationBlockReportReason, AXConversationCleanupPickerUploadsOptions, AXConversationComposerAction, AXConversationComposerActionComponent, AXConversationComposerActionContext, AXConversationComposerGenerationPhase, AXConversationComposerPickerUploadItem, AXConversationComposerPrimaryButtonMode, AXConversationComposerTab, AXConversationComposerTabFeature, AXConversationConfig, AXConversationConnectionStatus, AXConversationConversationAvatarComponent, AXConversationCreateData, AXConversationDateSeparatorKind, AXConversationDeleteDialogMode, AXConversationDeleteDialogResult, AXConversationDeleteMessageCommand, AXConversationDeleteOptions, AXConversationDropdownMenuItem, AXConversationEditMessageCommand, AXConversationError, AXConversationErrorCode, AXConversationErrorHandlerConfig, AXConversationErrorMessage, AXConversationErrorSeverity, AXConversationFeatures, AXConversationFileMediaItem, AXConversationFilePayload, AXConversationFilter, AXConversationFilters, AXConversationForwardUserSortEntry, AXConversationGroupedReaction, AXConversationImageMediaItem, AXConversationImagePayload, AXConversationInfoBarAction, AXConversationInfoBarActionComponent, AXConversationInfoBarActionContext, AXConversationInfoBarActiveBanner, AXConversationInfoBarActiveComponent, AXConversationInfoProfileField, AXConversationItemAction, AXConversationItemActionContext, AXConversationLink, AXConversationLinkPreview, AXConversationLoadMessagesResult, AXConversationLocationPayload, AXConversationMediaCategory, AXConversationMediaCategoryId, AXConversationMediaGalleryTile, AXConversationMediaItemFields, AXConversationMediaPageResult, AXConversationMention, AXConversationMessage, AXConversationMessageAction, AXConversationMessageActionContext, AXConversationMessageClusterRole, AXConversationMessageDateGroup, AXConversationMessageForwardData, AXConversationMessageInfoBarBannerComponent, AXConversationMessageListBackground, AXConversationMessageListBackgroundPreset, AXConversationMessageListEmptyComponent, AXConversationMessageListThemeBackground, AXConversationMessagePayload, AXConversationMessageRenderer, AXConversationMessageRendererCapabilities, AXConversationMessageRendererComponent, AXConversationMessageRendererContentState, AXConversationMessageRendererState, AXConversationMessageSearchFilters, AXConversationMessageStatus, AXConversationMessageType, AXConversationMetadata, AXConversationOptions, AXConversationOutletSkeleton, AXConversationPaginatedResult, AXConversationPagination, AXConversationPaginationState, AXConversationParticipant, AXConversationParticipantRole, AXConversationParticipantUpdate, AXConversationPickerPasteHandler, AXConversationPinnedMessage, AXConversationPlaybackBannerInputs, AXConversationPollOption, AXConversationPollPayload, AXConversationPresenceStatus, AXConversationPresenceUpdate, AXConversationReaction, AXConversationReadReceipt, AXConversationRegistryComponentRef, AXConversationRegistryConfiguration, AXConversationRegistryItem, AXConversationRoomPreferences, AXConversationRoomPreferencesMap, AXConversationSendMessageCommand, AXConversationSendMessageOptions, AXConversationSendMessageUploadSource, AXConversationSettingsUpdate, AXConversationSidebarTabsOrientation, AXConversationSort, AXConversationStickerPayload, AXConversationSystemPayload, AXConversationTab, AXConversationTextFormat, AXConversationTextPayload, AXConversationType, AXConversationTypingIndicator, AXConversationUpdateData, AXConversationUploadOptions, AXConversationUploaderFilePreview, AXConversationUploaderReference, AXConversationUploaderResult, AXConversationUser, AXConversationUserAvatarComponent, AXConversationUserPresence, AXConversationUserProfile, AXConversationUserProfileUpdate, AXConversationUserSearchFilters, AXConversationValidationResult, AXConversationVideoMediaItem, AXConversationVideoPayload, AXConversationVoicePayload };
@@ -259,6 +259,7 @@ declare class AXFileViewerImageComponent implements AXFileTypeViewComponent<AXFi
259
259
  private readonly service;
260
260
  readonly src: _angular_core.WritableSignal<string>;
261
261
  readonly loading: _angular_core.WritableSignal<boolean>;
262
+ private loadedId;
262
263
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerImageComponent, never>;
263
264
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerImageComponent, "ax-file-viewer-image", never, { "payload": { "alias": "payload"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
264
265
  }
@@ -267,8 +268,10 @@ declare class AXFileViewerVideoComponent implements AXFileTypeViewComponent<AXFi
267
268
  #private;
268
269
  readonly payload: _angular_core.InputSignal<AXFileViewerViewPayload>;
269
270
  private readonly service;
271
+ private readonly mediaEl;
270
272
  readonly src: _angular_core.WritableSignal<string>;
271
273
  readonly loading: _angular_core.WritableSignal<boolean>;
274
+ private loadedId;
272
275
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerVideoComponent, never>;
273
276
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerVideoComponent, "ax-file-viewer-video", never, { "payload": { "alias": "payload"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
274
277
  }
@@ -277,8 +280,10 @@ declare class AXFileViewerAudioComponent implements AXFileTypeViewComponent<AXFi
277
280
  #private;
278
281
  readonly payload: _angular_core.InputSignal<AXFileViewerViewPayload>;
279
282
  private readonly service;
283
+ private readonly mediaEl;
280
284
  readonly src: _angular_core.WritableSignal<string>;
281
285
  readonly loading: _angular_core.WritableSignal<boolean>;
286
+ private loadedId;
282
287
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerAudioComponent, never>;
283
288
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerAudioComponent, "ax-file-viewer-audio", never, { "payload": { "alias": "payload"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
284
289
  }
@@ -290,6 +295,7 @@ declare class AXFileViewerPdfComponent implements AXFileTypeViewComponent<AXFile
290
295
  private readonly sanitizer;
291
296
  readonly safeSrc: _angular_core.WritableSignal<SafeResourceUrl>;
292
297
  readonly loading: _angular_core.WritableSignal<boolean>;
298
+ private loadedId;
293
299
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXFileViewerPdfComponent, never>;
294
300
  static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXFileViewerPdfComponent, "ax-file-viewer-pdf", never, { "payload": { "alias": "payload"; "required": true; "isSignal": true; }; }, {}, never, never, true, never>;
295
301
  }
@@ -72,6 +72,7 @@ type AXContextMenuItemsClickEvent = AXMenuItemClickBaseEvent<AXContextMenuCompon
72
72
  * @category Components
73
73
  */
74
74
  declare class AXContextMenuComponent extends NXComponent {
75
+ protected readonly supportsHeader = true;
75
76
  readonly orientation: _angular_core.InputSignal<AXOrientation>;
76
77
  readonly openOn: _angular_core.InputSignal<AXMenuOpenTrigger>;
77
78
  readonly closeOn: _angular_core.InputSignal<AXMenuCloseTrigger>;
@@ -115,6 +116,10 @@ declare class AXContextMenuComponent extends NXComponent {
115
116
  private backdropElement;
116
117
  private originalNextSibling;
117
118
  private originalParent;
119
+ private readonly headerSlot;
120
+ private floatingHeader;
121
+ private headerOriginalParent;
122
+ private headerOriginalNextSibling;
118
123
  protected items: _angular_core.WritableSignal<AXMenuItem[]>;
119
124
  /** @ignore */
120
125
  private setupCloseOnRouteChange;
@@ -130,13 +135,19 @@ declare class AXContextMenuComponent extends NXComponent {
130
135
  private internalShowAt;
131
136
  /**
132
137
  * Positions the menu at `point`, flipping when it would overflow the viewport.
133
- * Uses a temporary visible layout pass so parents that hide the host (e.g. side-menu `display: none`) do not yield a zero-sized rect.
138
+ * When a floating header is present, positions header and panel as one clamped block.
134
139
  */
135
140
  private positionAtPoint;
136
141
  /** Measures menu size even when an ancestor hides the host with `display: none`. */
137
142
  private measureMenuRect;
143
+ /** Measures the floating header bar using the same hidden-layout pass as the menu panel. */
144
+ private measureFloatingRect;
138
145
  /** @ignore */
139
146
  private createBackdrop;
147
+ /** Moves the projected header slot into the backdrop as a floating sibling of the panel. */
148
+ private floatHeaderToBackdrop;
149
+ /** Restores the header slot to its original parent before the backdrop is removed. */
150
+ private restoreFloatingHeader;
140
151
  /** @ignore */
141
152
  private resolveContextMenuTarget;
142
153
  /** @ignore */
@@ -147,7 +158,7 @@ declare class AXContextMenuComponent extends NXComponent {
147
158
  /** @ignore */
148
159
  get __hostClass(): any;
149
160
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXContextMenuComponent, never>;
150
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXContextMenuComponent, "ax-context-menu", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "openOn": { "alias": "openOn"; "required": false; "isSignal": true; }; "closeOn": { "alias": "closeOn"; "required": false; "isSignal": true; }; "closeOnRouteChange": { "alias": "closeOnRouteChange"; "required": false; "isSignal": true; }; "originalItems": { "alias": "items"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "onItemClick": "onItemClick"; "onOpening": "onOpening"; "onClose": "onClose"; }, never, ["ax-menu-item,ax-divider,ax-title,ng-container"], true, never>;
161
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXContextMenuComponent, "ax-context-menu", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "openOn": { "alias": "openOn"; "required": false; "isSignal": true; }; "closeOn": { "alias": "closeOn"; "required": false; "isSignal": true; }; "closeOnRouteChange": { "alias": "closeOnRouteChange"; "required": false; "isSignal": true; }; "originalItems": { "alias": "items"; "required": false; "isSignal": true; }; "target": { "alias": "target"; "required": false; "isSignal": true; }; }, { "onItemClick": "onItemClick"; "onOpening": "onOpening"; "onClose": "onClose"; }, never, ["ax-header", "ax-menu-item,ax-divider,ax-title,ng-container"], true, never>;
151
162
  }
152
163
 
153
164
  type AXMenuItemClickEvent = AXMenuItemClickBaseEvent<AXMenuItemComponent>;
@@ -301,6 +312,7 @@ type AXMenuItemsClickEvent = AXMenuItemClickBaseEvent<AXMenuComponent>;
301
312
  * @category Components
302
313
  */
303
314
  declare class AXMenuComponent extends NXComponent {
315
+ protected readonly supportsHeader = false;
304
316
  constructor();
305
317
  orientation: _angular_core.InputSignal<AXOrientation>;
306
318
  openOn: _angular_core.InputSignal<AXMenuOpenTrigger>;
@@ -318,7 +330,7 @@ declare class AXMenuComponent extends NXComponent {
318
330
  */
319
331
  close(): void;
320
332
  static ɵfac: _angular_core.ɵɵFactoryDeclaration<AXMenuComponent, never>;
321
- static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXMenuComponent, "ax-menu", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "openOn": { "alias": "openOn"; "required": false; "isSignal": true; }; "closeOn": { "alias": "closeOn"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "hasArrow": { "alias": "hasArrow"; "required": false; "isSignal": true; }; }, { "onItemClick": "onItemClick"; }, never, ["ax-menu-item,ax-divider,ax-title,ng-container"], true, never>;
333
+ static ɵcmp: _angular_core.ɵɵComponentDeclaration<AXMenuComponent, "ax-menu", never, { "orientation": { "alias": "orientation"; "required": false; "isSignal": true; }; "openOn": { "alias": "openOn"; "required": false; "isSignal": true; }; "closeOn": { "alias": "closeOn"; "required": false; "isSignal": true; }; "items": { "alias": "items"; "required": false; "isSignal": true; }; "hasArrow": { "alias": "hasArrow"; "required": false; "isSignal": true; }; }, { "onItemClick": "onItemClick"; }, never, ["ax-header", "ax-menu-item,ax-divider,ax-title,ng-container"], true, never>;
322
334
  }
323
335
 
324
336
  declare class AXMenuModule {
@@ -0,0 +1,129 @@
1
+ import * as i0 from '@angular/core';
2
+ import { AXValueChangedEvent } from '@acorex/cdk/common';
3
+ import * as i1 from '@acorex/components/text-box';
4
+ import * as i2 from '@acorex/components/decorators';
5
+ import * as i3 from '@acorex/components/select-box';
6
+ import * as i4 from '@acorex/components/tabs';
7
+ import * as i5 from '@acorex/components/button';
8
+ import * as i6 from '@acorex/components/text-area';
9
+ import * as i7 from '@acorex/components/selection-list';
10
+ import * as i8 from '@angular/forms';
11
+
12
+ type Queries = {
13
+ tempId?: string;
14
+ [key: string]: string;
15
+ };
16
+ type HeadersFix = {
17
+ Authorization: string;
18
+ ContentType: string;
19
+ };
20
+ type HeadersDynamic = {
21
+ tempId?: string;
22
+ [key: string]: string;
23
+ };
24
+ type Headers = HeadersFix & HeadersDynamic;
25
+ type AXRestApiOutput = {
26
+ url: string;
27
+ method: 'GET' | 'POST' | 'DELETE' | 'PUT' | 'PATCH';
28
+ body: string;
29
+ headers: Headers;
30
+ queries: Queries[];
31
+ };
32
+
33
+ declare class AXRestApiGeneratorService {
34
+ outPutJSON: i0.WritableSignal<AXRestApiOutput>;
35
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXRestApiGeneratorService, never>;
36
+ static ɵprov: i0.ɵɵInjectableDeclaration<AXRestApiGeneratorService>;
37
+ }
38
+
39
+ declare class AXQueryParamsComponent {
40
+ #private;
41
+ protected service: AXRestApiGeneratorService;
42
+ protected queryParamsArray: i0.WritableSignal<Queries[]>;
43
+ protected addQueryParamsHandler(): void;
44
+ protected removeQueryParamsHandler(id: string): void;
45
+ protected queryParamsValueHandler(e: AXValueChangedEvent<any>, id: string): void;
46
+ protected queryParamsKeyHandler(e: AXValueChangedEvent<any>, id: string): void;
47
+ protected setInitialState(item: Queries, type: string): string;
48
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXQueryParamsComponent, never>;
49
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXQueryParamsComponent, "ax-query-params", never, {}, {}, never, never, true, never>;
50
+ }
51
+
52
+ declare class AXRequestBodyComponent {
53
+ #private;
54
+ protected service: AXRestApiGeneratorService;
55
+ protected value: i0.WritableSignal<any>;
56
+ protected selectedItem: i0.WritableSignal<{
57
+ id: any;
58
+ text: string;
59
+ placeHolder: string;
60
+ }>;
61
+ protected items: {
62
+ id: number;
63
+ text: string;
64
+ placeHolder: string;
65
+ }[];
66
+ protected bodyReqHandler(e: AXValueChangedEvent<any>): void;
67
+ protected bodyTextHandler(e: AXValueChangedEvent<any>): void;
68
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXRequestBodyComponent, never>;
69
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXRequestBodyComponent, "ax-request-body", never, {}, {}, never, never, true, never>;
70
+ }
71
+
72
+ declare class AXRequestHeadersComponent {
73
+ #private;
74
+ protected service: AXRestApiGeneratorService;
75
+ protected headersArray: i0.WritableSignal<HeadersDynamic[]>;
76
+ protected addHeadersHandler(): void;
77
+ protected removeHeadersHandler(id: string): void;
78
+ protected headersValueHandler(e: AXValueChangedEvent<any>, id: string): void;
79
+ protected headersKeyHandler(e: AXValueChangedEvent<any>, id: string): void;
80
+ protected setInitialState(item: HeadersDynamic, type: string): string;
81
+ protected filterUnnecessaryKey(): {
82
+ [key: string]: string;
83
+ Authorization: string;
84
+ ContentType: string;
85
+ tempId?: string;
86
+ }[];
87
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXRequestHeadersComponent, never>;
88
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXRequestHeadersComponent, "ax-request-headers", never, {}, {}, never, never, true, never>;
89
+ }
90
+
91
+ declare class AXRestApiAuthComponent {
92
+ #private;
93
+ protected service: AXRestApiGeneratorService;
94
+ protected value: i0.WritableSignal<any>;
95
+ protected selectedItem: i0.WritableSignal<{
96
+ id: any;
97
+ text: string;
98
+ placeHolder: string;
99
+ }>;
100
+ protected items: {
101
+ id: number;
102
+ text: string;
103
+ placeHolder: string;
104
+ }[];
105
+ protected authTypeHandler(e: AXValueChangedEvent<any>): void;
106
+ protected authInputHandler(e: AXValueChangedEvent<any>): void;
107
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXRestApiAuthComponent, never>;
108
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXRestApiAuthComponent, "ax-rest-api-auth", never, {}, {}, never, never, true, never>;
109
+ }
110
+
111
+ declare class AXRestApiGeneratorComponent {
112
+ #private;
113
+ readonly value: i0.InputSignal<AXRestApiOutput>;
114
+ onValueChange: i0.OutputEmitterRef<AXRestApiOutput>;
115
+ protected service: AXRestApiGeneratorService;
116
+ protected urlHandler(e: AXValueChangedEvent<any>): void;
117
+ protected methodHandler(e: AXValueChangedEvent<any>): void;
118
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXRestApiGeneratorComponent, never>;
119
+ static ɵcmp: i0.ɵɵComponentDeclaration<AXRestApiGeneratorComponent, "ax-rest-api-generator", never, { "value": { "alias": "value"; "required": false; "isSignal": true; }; }, { "onValueChange": "onValueChange"; }, never, never, true, never>;
120
+ }
121
+
122
+ declare class AXRestApiGeneratorModule {
123
+ static ɵfac: i0.ɵɵFactoryDeclaration<AXRestApiGeneratorModule, never>;
124
+ static ɵmod: i0.ɵɵNgModuleDeclaration<AXRestApiGeneratorModule, never, [typeof i1.AXTextBoxModule, typeof i2.AXDecoratorModule, typeof i3.AXSelectBoxModule, typeof i4.AXTabsModule, typeof i5.AXButtonModule, typeof i6.AXTextAreaModule, typeof i7.AXSelectionListModule, typeof i8.FormsModule, typeof AXRestApiGeneratorComponent, typeof AXQueryParamsComponent, typeof AXRequestBodyComponent, typeof AXRestApiAuthComponent, typeof AXRequestHeadersComponent], [typeof AXRestApiGeneratorComponent, typeof AXQueryParamsComponent, typeof AXRequestBodyComponent, typeof AXRestApiAuthComponent, typeof AXRequestHeadersComponent]>;
125
+ static ɵinj: i0.ɵɵInjectorDeclaration<AXRestApiGeneratorModule>;
126
+ }
127
+
128
+ export { AXQueryParamsComponent, AXRequestBodyComponent, AXRequestHeadersComponent, AXRestApiAuthComponent, AXRestApiGeneratorComponent, AXRestApiGeneratorModule, AXRestApiGeneratorService };
129
+ export type { AXRestApiOutput, Headers, HeadersDynamic, HeadersFix, Queries };
@@ -1,6 +1,7 @@
1
1
  import * as _angular_core from '@angular/core';
2
2
  import { TemplateRef, EventEmitter } from '@angular/core';
3
3
  import { AXEvent, AXHtmlEvent, AXValueChangedEvent } from '@acorex/cdk/common';
4
+ import { AXGestureEvent } from '@acorex/cdk/gesture';
4
5
  import { AXDropListDroppedEvent } from '@acorex/cdk/drag-drop';
5
6
 
6
7
  /**
@@ -724,6 +725,22 @@ declare class AXTreeViewComponent {
724
725
  * Handle node double click
725
726
  */
726
727
  onNodeDoubleClickHandle(node: AXTreeViewNode, event: Event): Promise<void>;
728
+ /**
729
+ * Handle tap gesture on a node (single click).
730
+ */
731
+ onNodeGestureTap(node: AXTreeViewNode, event: AXGestureEvent): void;
732
+ /**
733
+ * Handle double-tap gesture on a node.
734
+ */
735
+ onNodeGestureDoubleTap(node: AXTreeViewNode, event: AXGestureEvent): void;
736
+ /**
737
+ * Handle native click when gesture recognition is disabled for the node.
738
+ */
739
+ onNodeNativeClick(node: AXTreeViewNode, event: Event): void;
740
+ /**
741
+ * Handle native double-click when gesture recognition is disabled for the node.
742
+ */
743
+ onNodeNativeDoubleClick(node: AXTreeViewNode, event: Event): void;
727
744
  /**
728
745
  * Handle node click handle
729
746
  */