stream-chat-angular 6.0.0-beta.5 → 6.0.0-rc.2
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.
- package/README.md +2 -2
- package/assets/i18n/en.d.ts +0 -1
- package/assets/version.d.ts +1 -1
- package/{esm2022 → esm2020}/assets/i18n/en.mjs +1 -2
- package/{esm2022 → esm2020}/assets/version.mjs +2 -2
- package/esm2020/lib/attachment-configuration.service.mjs +182 -0
- package/esm2020/lib/attachment-list/attachment-list.component.mjs +232 -0
- package/esm2020/lib/attachment-preview-list/attachment-preview-list.component.mjs +55 -0
- package/esm2020/lib/attachment.service.mjs +481 -0
- package/esm2020/lib/avatar/avatar.component.mjs +160 -0
- package/esm2020/lib/avatar-placeholder/avatar-placeholder.component.mjs +66 -0
- package/esm2020/lib/channel/channel.component.mjs +45 -0
- package/esm2020/lib/channel-header/channel-header.component.mjs +72 -0
- package/esm2020/lib/channel-list/channel-list.component.mjs +47 -0
- package/esm2020/lib/channel-preview/channel-preview.component.mjs +155 -0
- package/esm2020/lib/channel-query.mjs +77 -0
- package/esm2020/lib/channel.service.mjs +1561 -0
- package/esm2020/lib/chat-client.service.mjs +233 -0
- package/esm2020/lib/custom-templates.service.mjs +244 -0
- package/{esm2022 → esm2020}/lib/date-parser.service.mjs +5 -5
- package/esm2020/lib/file-utils.mjs +35 -0
- package/{esm2022 → esm2020}/lib/get-channel-display-text.mjs +1 -1
- package/esm2020/lib/get-message-translation.mjs +12 -0
- package/esm2020/lib/icon/icon-placeholder/icon-placeholder.component.mjs +28 -0
- package/{esm2022 → esm2020}/lib/icon/icon.component.mjs +5 -5
- package/{esm2022 → esm2020}/lib/icon/icon.module.mjs +11 -11
- package/{esm2022 → esm2020}/lib/icon/loading-indicator/loading-indicator.component.mjs +5 -5
- package/esm2020/lib/icon/loading-indicator-placeholder/loading-indicator-placeholder.component.mjs +20 -0
- package/{esm2022 → esm2020}/lib/list-users.mjs +1 -1
- package/esm2020/lib/message/message.component.mjs +486 -0
- package/esm2020/lib/message-actions-box/message-actions-box.component.mjs +123 -0
- package/esm2020/lib/message-actions.service.mjs +187 -0
- package/esm2020/lib/message-bounce-prompt/message-bounce-prompt.component.mjs +71 -0
- package/esm2020/lib/message-input/autocomplete-textarea/autocomplete-textarea.component.mjs +333 -0
- package/{esm2022 → esm2020}/lib/message-input/emoji-input.service.mjs +7 -7
- package/esm2020/lib/message-input/message-input-config.service.mjs +50 -0
- package/esm2020/lib/message-input/message-input.component.mjs +507 -0
- package/{esm2022 → esm2020}/lib/message-input/textarea/textarea.component.mjs +6 -6
- package/{esm2022 → esm2020}/lib/message-input/textarea.directive.mjs +5 -5
- package/{esm2022 → esm2020}/lib/message-input/voice-recorder.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/message-list/group-styles.mjs +1 -1
- package/esm2020/lib/message-list/message-list.component.mjs +717 -0
- package/esm2020/lib/message-preview.mjs +21 -0
- package/esm2020/lib/message-reactions/message-reactions.component.mjs +168 -0
- package/esm2020/lib/message-reactions-selector/message-reactions-selector.component.mjs +61 -0
- package/{esm2022 → esm2020}/lib/message-reactions.service.mjs +6 -6
- package/esm2020/lib/message-text/message-text.component.mjs +143 -0
- package/esm2020/lib/message.service.mjs +43 -0
- package/{esm2022 → esm2020}/lib/modal/modal.component.mjs +6 -6
- package/esm2020/lib/notification/notification.component.mjs +20 -0
- package/esm2020/lib/notification-list/notification-list.component.mjs +36 -0
- package/{esm2022 → esm2020}/lib/notification.service.mjs +6 -6
- package/esm2020/lib/paginated-list/paginated-list.component.mjs +94 -0
- package/{esm2022 → esm2020}/lib/parse-date.mjs +1 -1
- package/esm2020/lib/read-by.mjs +12 -0
- package/esm2020/lib/stream-autocomplete-textarea.module.mjs +33 -0
- package/{esm2022 → esm2020}/lib/stream-avatar.module.mjs +5 -5
- package/{esm2022 → esm2020}/lib/stream-chat.module.mjs +59 -59
- package/{esm2022 → esm2020}/lib/stream-i18n.service.mjs +6 -6
- package/esm2020/lib/stream-textarea.module.mjs +31 -0
- package/{esm2022 → esm2020}/lib/theme.service.mjs +6 -6
- package/esm2020/lib/thread/thread.component.mjs +51 -0
- package/{esm2022 → esm2020}/lib/transliteration.service.mjs +5 -5
- package/esm2020/lib/types-custom.mjs +2 -0
- package/esm2020/lib/types.mjs +2 -0
- package/esm2020/lib/user-list/user-list.component.mjs +47 -0
- package/esm2020/lib/virtualized-list.service.mjs +271 -0
- package/{esm2022 → esm2020}/lib/virtualized-message-list.service.mjs +1 -1
- package/{esm2022 → esm2020}/lib/voice-recorder/amplitude-recorder.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/voice-recorder/audio-recorder.service.mjs +5 -5
- package/{esm2022 → esm2020}/lib/voice-recorder/media-recorder.mjs +1 -1
- package/esm2020/lib/voice-recorder/mp3-transcoder.mjs +61 -0
- package/esm2020/lib/voice-recorder/transcoder.service.mjs +121 -0
- package/esm2020/lib/voice-recorder/voice-recorder-wavebar/voice-recorder-wavebar.component.mjs +35 -0
- package/esm2020/lib/voice-recorder/voice-recorder.component.mjs +80 -0
- package/{esm2022 → esm2020}/lib/voice-recorder/voice-recorder.module.mjs +9 -9
- package/esm2020/lib/voice-recording/voice-recording-wavebar/voice-recording-wavebar.component.mjs +112 -0
- package/esm2020/lib/voice-recording/voice-recording.component.mjs +91 -0
- package/{esm2022 → esm2020}/lib/voice-recording/voice-recording.module.mjs +5 -5
- package/{esm2022 → esm2020}/lib/wave-form-sampler.mjs +1 -1
- package/esm2020/public-api.mjs +86 -0
- package/esm2020/stream-chat.mjs +2 -0
- package/fesm2015/stream-chat-angular.mjs +9171 -0
- package/fesm2015/stream-chat-angular.mjs.map +1 -0
- package/{fesm2022 → fesm2020}/stream-chat-angular.mjs +1251 -961
- package/fesm2020/stream-chat-angular.mjs.map +1 -0
- package/lib/attachment-configuration.service.d.ts +12 -12
- package/lib/attachment-list/attachment-list.component.d.ts +15 -10
- package/lib/attachment-preview-list/attachment-preview-list.component.d.ts +1 -1
- package/lib/attachment.service.d.ts +12 -10
- package/lib/avatar/avatar.component.d.ts +7 -7
- package/lib/avatar-placeholder/avatar-placeholder.component.d.ts +5 -5
- package/lib/channel/channel.component.d.ts +1 -1
- package/lib/channel-header/channel-header.component.d.ts +2 -2
- package/lib/channel-list/channel-list.component.d.ts +3 -4
- package/lib/channel-preview/channel-preview.component.d.ts +6 -6
- package/lib/channel-query.d.ts +26 -0
- package/lib/channel.service.d.ts +146 -154
- package/lib/chat-client.service.d.ts +17 -15
- package/lib/custom-templates.service.d.ts +50 -50
- package/lib/get-channel-display-text.d.ts +1 -2
- package/lib/get-message-translation.d.ts +3 -3
- package/lib/icon/icon-placeholder/icon-placeholder.component.d.ts +2 -2
- package/lib/icon/icon.component.d.ts +2 -2
- package/lib/icon/loading-indicator-placeholder/loading-indicator-placeholder.component.d.ts +1 -1
- package/lib/message/message.component.d.ts +6 -6
- package/lib/message-actions-box/message-actions-box.component.d.ts +5 -4
- package/lib/message-actions.service.d.ts +10 -10
- package/lib/message-bounce-prompt/message-bounce-prompt.component.d.ts +1 -1
- package/lib/message-input/autocomplete-textarea/autocomplete-textarea.component.d.ts +5 -5
- package/lib/message-input/emoji-input.service.d.ts +2 -2
- package/lib/message-input/message-input-config.service.d.ts +3 -3
- package/lib/message-input/message-input.component.d.ts +10 -33
- package/lib/message-input/textarea/textarea.component.d.ts +3 -3
- package/lib/message-input/textarea.directive.d.ts +1 -1
- package/lib/message-list/group-styles.d.ts +1 -1
- package/lib/message-list/message-list.component.d.ts +3 -2
- package/lib/message-preview.d.ts +2 -3
- package/lib/message-reactions/message-reactions.component.d.ts +9 -8
- package/lib/message-reactions-selector/message-reactions-selector.component.d.ts +6 -5
- package/lib/message-reactions.service.d.ts +4 -4
- package/lib/message-text/message-text.component.d.ts +5 -5
- package/lib/message.service.d.ts +6 -7
- package/lib/modal/modal.component.d.ts +1 -1
- package/lib/notification/notification.component.d.ts +2 -2
- package/lib/notification-list/notification-list.component.d.ts +1 -0
- package/lib/notification.service.d.ts +1 -1
- package/lib/paginated-list/paginated-list.component.d.ts +2 -5
- package/lib/read-by.d.ts +1 -2
- package/lib/stream-i18n.service.d.ts +1 -1
- package/lib/theme.service.d.ts +1 -1
- package/lib/thread/thread.component.d.ts +3 -3
- package/lib/types-custom.d.ts +15 -0
- package/lib/types.d.ts +116 -155
- package/lib/user-list/user-list.component.d.ts +2 -3
- package/lib/virtualized-message-list.service.d.ts +1 -1
- package/lib/voice-recorder/amplitude-recorder.service.d.ts +2 -2
- package/lib/voice-recorder/media-recorder.d.ts +2 -2
- package/lib/voice-recorder/transcoder.service.d.ts +4 -4
- package/lib/voice-recorder/voice-recorder-wavebar/voice-recorder-wavebar.component.d.ts +1 -0
- package/lib/voice-recorder/voice-recorder.component.d.ts +2 -2
- package/lib/voice-recording/voice-recording-wavebar/voice-recording-wavebar.component.d.ts +3 -3
- package/lib/voice-recording/voice-recording.component.d.ts +2 -3
- package/package.json +21 -15
- package/public-api.d.ts +3 -0
- package/src/assets/i18n/en.ts +0 -1
- package/src/assets/version.ts +1 -1
- package/esm2022/lib/attachment-configuration.service.mjs +0 -185
- package/esm2022/lib/attachment-list/attachment-list.component.mjs +0 -212
- package/esm2022/lib/attachment-preview-list/attachment-preview-list.component.mjs +0 -55
- package/esm2022/lib/attachment.service.mjs +0 -479
- package/esm2022/lib/avatar/avatar.component.mjs +0 -157
- package/esm2022/lib/avatar-placeholder/avatar-placeholder.component.mjs +0 -66
- package/esm2022/lib/channel/channel.component.mjs +0 -45
- package/esm2022/lib/channel-header/channel-header.component.mjs +0 -72
- package/esm2022/lib/channel-list/channel-list.component.mjs +0 -50
- package/esm2022/lib/channel-preview/channel-preview.component.mjs +0 -150
- package/esm2022/lib/channel.service.mjs +0 -1393
- package/esm2022/lib/chat-client.service.mjs +0 -227
- package/esm2022/lib/custom-templates.service.mjs +0 -244
- package/esm2022/lib/file-utils.mjs +0 -35
- package/esm2022/lib/get-message-translation.mjs +0 -12
- package/esm2022/lib/icon/icon-placeholder/icon-placeholder.component.mjs +0 -28
- package/esm2022/lib/icon/loading-indicator-placeholder/loading-indicator-placeholder.component.mjs +0 -20
- package/esm2022/lib/message/message.component.mjs +0 -486
- package/esm2022/lib/message-actions-box/message-actions-box.component.mjs +0 -120
- package/esm2022/lib/message-actions.service.mjs +0 -187
- package/esm2022/lib/message-bounce-prompt/message-bounce-prompt.component.mjs +0 -71
- package/esm2022/lib/message-input/autocomplete-textarea/autocomplete-textarea.component.mjs +0 -333
- package/esm2022/lib/message-input/message-input-config.service.mjs +0 -50
- package/esm2022/lib/message-input/message-input.component.mjs +0 -507
- package/esm2022/lib/message-list/message-list.component.mjs +0 -715
- package/esm2022/lib/message-preview.mjs +0 -21
- package/esm2022/lib/message-reactions/message-reactions.component.mjs +0 -165
- package/esm2022/lib/message-reactions-selector/message-reactions-selector.component.mjs +0 -57
- package/esm2022/lib/message-text/message-text.component.mjs +0 -143
- package/esm2022/lib/message.service.mjs +0 -43
- package/esm2022/lib/notification/notification.component.mjs +0 -20
- package/esm2022/lib/notification-list/notification-list.component.mjs +0 -33
- package/esm2022/lib/paginated-list/paginated-list.component.mjs +0 -94
- package/esm2022/lib/read-by.mjs +0 -12
- package/esm2022/lib/stream-autocomplete-textarea.module.mjs +0 -33
- package/esm2022/lib/stream-textarea.module.mjs +0 -31
- package/esm2022/lib/thread/thread.component.mjs +0 -51
- package/esm2022/lib/types.mjs +0 -2
- package/esm2022/lib/user-list/user-list.component.mjs +0 -47
- package/esm2022/lib/virtualized-list.service.mjs +0 -273
- package/esm2022/lib/voice-recorder/mp3-transcoder.mjs +0 -61
- package/esm2022/lib/voice-recorder/transcoder.service.mjs +0 -121
- package/esm2022/lib/voice-recorder/voice-recorder-wavebar/voice-recorder-wavebar.component.mjs +0 -32
- package/esm2022/lib/voice-recorder/voice-recorder.component.mjs +0 -80
- package/esm2022/lib/voice-recording/voice-recording-wavebar/voice-recording-wavebar.component.mjs +0 -112
- package/esm2022/lib/voice-recording/voice-recording.component.mjs +0 -91
- package/esm2022/public-api.mjs +0 -82
- package/fesm2022/stream-chat-angular.mjs.map +0 -1
- /package/{esm2022 → esm2020}/lib/format-duration.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/injection-tokens.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/is-image-attachment.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/is-on-separate-date.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/is-safari.mjs +0 -0
- /package/{esm2022 → esm2020}/lib/message-input/textarea.interface.mjs +0 -0
- /package/{esm2022 → esm2020}/stream-chat-angular.mjs +0 -0
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import { Attachment } from 'stream-chat';
|
|
2
|
-
import { AttachmentConfigration,
|
|
2
|
+
import { AttachmentConfigration, ImageAttachmentConfiguration, VideoAttachmentConfiguration } from './types';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
4
|
/**
|
|
5
5
|
* The `AttachmentConfigurationService` provides customization for certain attributes of attachments displayed inside the message component. If you're using your own CDN, you can integrate resizing features of it by providing your own handlers.
|
|
6
6
|
*/
|
|
7
|
-
export declare class AttachmentConfigurationService
|
|
7
|
+
export declare class AttachmentConfigurationService {
|
|
8
8
|
/**
|
|
9
9
|
* A custom handler can be provided to override the default image attachment (images uploaded from files) configuration. By default the SDK uses fixed image height (a size that's known before image is loaded), if you override that with dynamic image height (for example: height: 100%) the scrolling logic inside the message list can break.
|
|
10
10
|
*/
|
|
11
|
-
customImageAttachmentConfigurationHandler?: (a: Attachment
|
|
11
|
+
customImageAttachmentConfigurationHandler?: (a: Attachment, type: 'gallery' | 'single' | 'carousel', containerElement: HTMLElement) => ImageAttachmentConfiguration;
|
|
12
12
|
/**
|
|
13
13
|
* A custom handler can be provided to override the default video attachment (videos uploaded from files) configuration. By default the SDK uses fixed height (a size that's known before video is loaded), if you override that with dynamic height (for example: height: 100%) the scrolling logic inside the message list can break.
|
|
14
14
|
*/
|
|
15
|
-
customVideoAttachmentConfigurationHandler?: (a: Attachment
|
|
15
|
+
customVideoAttachmentConfigurationHandler?: (a: Attachment, containerElement: HTMLElement) => VideoAttachmentConfiguration;
|
|
16
16
|
/**
|
|
17
17
|
* A custom handler can be provided to override the default giphy attachment (GIFs sent with the /giphy command) configuration. By default the SDK uses fixed height (a size that's known before the GIF is loaded), if you override that with dynamic height (for example: height: 100%) the scrolling logic inside the message list can break.
|
|
18
18
|
*/
|
|
19
|
-
customGiphyAttachmentConfigurationHandler?: (a: Attachment
|
|
19
|
+
customGiphyAttachmentConfigurationHandler?: (a: Attachment) => AttachmentConfigration;
|
|
20
20
|
/**
|
|
21
21
|
* A custom handler can be provided to override the default scraped image attachment (images found in links inside messages) configuration. By default the SDK uses fixed height (a size that's known before image is loaded), if you override that with dynamic height (for example: height: 100%) the scrolling logic inside the message list can break.
|
|
22
22
|
*/
|
|
23
|
-
customScrapedImageAttachmentConfigurationHandler?: (a: Attachment
|
|
23
|
+
customScrapedImageAttachmentConfigurationHandler?: (a: Attachment) => AttachmentConfigration;
|
|
24
24
|
/**
|
|
25
25
|
* You can turn on/off thumbnail generation for video attachments
|
|
26
26
|
*/
|
|
@@ -31,28 +31,28 @@ export declare class AttachmentConfigurationService<T extends DefaultStreamChatG
|
|
|
31
31
|
* @param location Specifies where the image is being displayed
|
|
32
32
|
* @param element The default resizing logics reads the height/max-height and max-width propperties of this element and reduces file size based on the given values. File size reduction is done by Stream's CDN.
|
|
33
33
|
*/
|
|
34
|
-
getImageAttachmentConfiguration(attachment: Attachment
|
|
34
|
+
getImageAttachmentConfiguration(attachment: Attachment, location: 'gallery' | 'single' | 'carousel', element: HTMLElement): ImageAttachmentConfiguration;
|
|
35
35
|
/**
|
|
36
36
|
* Handles the configuration for video attachments, it's possible to provide your own function to override the default logic
|
|
37
37
|
* @param attachment The attachment to configure
|
|
38
38
|
* @param element The default resizing logics reads the height/max-height and max-width propperties of this element and reduces file size based on the given values. File size reduction is done by Stream's CDN.
|
|
39
39
|
*/
|
|
40
|
-
getVideoAttachmentConfiguration(attachment: Attachment
|
|
40
|
+
getVideoAttachmentConfiguration(attachment: Attachment, element: HTMLElement): VideoAttachmentConfiguration;
|
|
41
41
|
/**
|
|
42
42
|
* Handles the configuration for giphy attachments, it's possible to provide your own function to override the default logic
|
|
43
43
|
* @param attachment The attachment to configure
|
|
44
44
|
*/
|
|
45
|
-
getGiphyAttachmentConfiguration(attachment: Attachment
|
|
45
|
+
getGiphyAttachmentConfiguration(attachment: Attachment): AttachmentConfigration;
|
|
46
46
|
/**
|
|
47
47
|
* Handles the configuration for scraped image attachments, it's possible to provide your own function to override the default logic
|
|
48
48
|
* @param attachment The attachment to configure
|
|
49
49
|
*/
|
|
50
|
-
getScrapedImageAttachmentConfiguration(attachment: Attachment
|
|
50
|
+
getScrapedImageAttachmentConfiguration(attachment: Attachment): AttachmentConfigration;
|
|
51
51
|
private addResizingParamsToUrl;
|
|
52
52
|
private getSizingRestrictions;
|
|
53
53
|
private getSizeRestrictions;
|
|
54
54
|
private getCSSSizeRestriction;
|
|
55
55
|
private getValueRepresentationOfCSSProperty;
|
|
56
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AttachmentConfigurationService
|
|
57
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<AttachmentConfigurationService
|
|
56
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AttachmentConfigurationService, never>;
|
|
57
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AttachmentConfigurationService>;
|
|
58
58
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { EventEmitter, OnChanges, OnDestroy, OnInit, SimpleChanges, TemplateRef } from '@angular/core';
|
|
2
2
|
import { Action, Attachment } from 'stream-chat';
|
|
3
|
-
import { ModalContext,
|
|
3
|
+
import { ModalContext, AttachmentConfigration, VideoAttachmentConfiguration, ImageAttachmentConfiguration, AttachmentContext, CustomAttachmentListContext, GalleryAttachment } from '../types';
|
|
4
4
|
import { ChannelService } from '../channel.service';
|
|
5
5
|
import { CustomTemplatesService } from '../custom-templates.service';
|
|
6
6
|
import { AttachmentConfigurationService } from '../attachment-configuration.service';
|
|
@@ -25,23 +25,24 @@ export declare class AttachmentListComponent implements OnChanges, OnInit, OnDes
|
|
|
25
25
|
/**
|
|
26
26
|
* The attachments to display
|
|
27
27
|
*/
|
|
28
|
-
attachments: Attachment
|
|
28
|
+
attachments: Attachment[];
|
|
29
29
|
/**
|
|
30
30
|
* Emits the state of the image carousel window
|
|
31
31
|
*/
|
|
32
32
|
readonly imageModalStateChange: EventEmitter<"closed" | "opened">;
|
|
33
33
|
class: string;
|
|
34
|
-
orderedAttachments: Attachment
|
|
35
|
-
customAttachments: Attachment
|
|
36
|
-
imagesToView: Attachment
|
|
34
|
+
orderedAttachments: (Attachment | GalleryAttachment)[];
|
|
35
|
+
customAttachments: Attachment[];
|
|
36
|
+
imagesToView: Attachment[];
|
|
37
37
|
imagesToViewCurrentIndex: number;
|
|
38
38
|
customAttachmentsTemplate?: TemplateRef<CustomAttachmentListContext>;
|
|
39
39
|
private modalContent;
|
|
40
40
|
private attachmentConfigurations;
|
|
41
41
|
private subscriptions;
|
|
42
42
|
constructor(customTemplatesService: CustomTemplatesService, channelService: ChannelService, attachmentConfigurationService: AttachmentConfigurationService, messageService: MessageService);
|
|
43
|
-
|
|
43
|
+
trackByUrl: (_: number, attachment: Attachment | GalleryAttachment) => string | undefined;
|
|
44
44
|
ngOnInit(): void;
|
|
45
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
45
46
|
ngOnDestroy(): void;
|
|
46
47
|
isImage(attachment: Attachment): boolean;
|
|
47
48
|
isSvg(attachment: Attachment): boolean;
|
|
@@ -50,22 +51,26 @@ export declare class AttachmentListComponent implements OnChanges, OnInit, OnDes
|
|
|
50
51
|
isVideo(attachment: Attachment): boolean | "" | undefined;
|
|
51
52
|
isCard(attachment: Attachment): string | boolean | undefined;
|
|
52
53
|
isVoiceMessage(attachment: Attachment): boolean;
|
|
53
|
-
hasFileSize(attachment: Attachment
|
|
54
|
-
getFileSize(attachment: Attachment
|
|
54
|
+
hasFileSize(attachment: Attachment): boolean | "" | 0 | undefined;
|
|
55
|
+
getFileSize(attachment: Attachment): string;
|
|
55
56
|
getModalContext(): ModalContext;
|
|
56
57
|
trimUrl(url?: string | null): string | null;
|
|
57
58
|
sendAction(action: Action): void;
|
|
59
|
+
trackByActionValue(_: number, item: Action): string | undefined;
|
|
58
60
|
openImageModal(attachments: Attachment[], selectedIndex?: number): void;
|
|
59
61
|
stepImages(dir: -1 | 1): void;
|
|
60
|
-
|
|
62
|
+
trackByImageUrl(_: number, item: Attachment): string | undefined;
|
|
63
|
+
getAttachmentContext(attachment: Attachment): AttachmentContext;
|
|
61
64
|
getImageAttachmentConfiguration(attachment: Attachment, type: 'gallery' | 'single', element: HTMLElement): ImageAttachmentConfiguration;
|
|
62
65
|
getCarouselImageAttachmentConfiguration(attachment: Attachment, element: HTMLElement): ImageAttachmentConfiguration;
|
|
63
66
|
getVideoAttachmentConfiguration(attachment: Attachment, element: HTMLElement): VideoAttachmentConfiguration;
|
|
64
67
|
getCardAttachmentConfiguration(attachment: Attachment): AttachmentConfigration;
|
|
68
|
+
isGalleryType(attachment: Attachment | GalleryAttachment): attachment is GalleryAttachment;
|
|
65
69
|
get isImageModalPrevButtonVisible(): boolean;
|
|
66
70
|
get isImageModalNextButtonVisible(): boolean;
|
|
67
71
|
private createGallery;
|
|
68
72
|
private closeImageModal;
|
|
73
|
+
private getAttachmentUrl;
|
|
69
74
|
static ɵfac: i0.ɵɵFactoryDeclaration<AttachmentListComponent, never>;
|
|
70
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AttachmentListComponent, "stream-attachment-list", never, { "messageId":
|
|
75
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AttachmentListComponent, "stream-attachment-list", never, { "messageId": "messageId"; "parentMessageId": "parentMessageId"; "attachments": "attachments"; }, { "imageModalStateChange": "imageModalStateChange"; }, never, ["*"], false, never>;
|
|
71
76
|
}
|
|
@@ -33,5 +33,5 @@ export declare class AttachmentPreviewListComponent implements OnInit, OnDestroy
|
|
|
33
33
|
attachmentDeleted(upload: AttachmentUpload): void;
|
|
34
34
|
trackByFile(_: number, item: AttachmentUpload): File;
|
|
35
35
|
static ɵfac: i0.ɵɵFactoryDeclaration<AttachmentPreviewListComponent, never>;
|
|
36
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AttachmentPreviewListComponent, "stream-attachment-preview-list", never, { "attachmentUploads$":
|
|
36
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AttachmentPreviewListComponent, "stream-attachment-preview-list", never, { "attachmentUploads$": "attachmentUploads$"; }, { "retryAttachmentUpload": "retryAttachmentUpload"; "deleteAttachment": "deleteAttachment"; }, never, never, false, never>;
|
|
37
37
|
}
|
|
@@ -2,7 +2,7 @@ import { BehaviorSubject, Observable } from 'rxjs';
|
|
|
2
2
|
import { Attachment } from 'stream-chat';
|
|
3
3
|
import { ChannelService } from './channel.service';
|
|
4
4
|
import { NotificationService } from './notification.service';
|
|
5
|
-
import { AttachmentUpload, AudioRecording
|
|
5
|
+
import { AttachmentUpload, AudioRecording } from './types';
|
|
6
6
|
import { ChatClientService } from './chat-client.service';
|
|
7
7
|
import { MessageService } from './message.service';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
@@ -11,7 +11,7 @@ import * as i0 from "@angular/core";
|
|
|
11
11
|
*
|
|
12
12
|
* You can read more about [uploads](/chat/docs/javascript/file_uploads/) in the Stream API documentation. You can use Stream's API or the dashboard to customize the [file](/chat/docs/javascript/app_setting_overview/#file-uploads) and [image upload](/chat/docs/javascript/app_setting_overview/#image-uploads) configuration.
|
|
13
13
|
*/
|
|
14
|
-
export declare class AttachmentService
|
|
14
|
+
export declare class AttachmentService {
|
|
15
15
|
private channelService;
|
|
16
16
|
private notificationService;
|
|
17
17
|
private chatClientService;
|
|
@@ -25,15 +25,15 @@ export declare class AttachmentService<T extends DefaultStreamChatGenerics = Def
|
|
|
25
25
|
*/
|
|
26
26
|
attachmentUploadInProgressCounter$: BehaviorSubject<number>;
|
|
27
27
|
/**
|
|
28
|
-
* Emits the state of the uploads ([`AttachmentUpload[]`](https://github.com/GetStream/stream-chat-angular/blob/master/projects/stream-chat-angular/src/lib/types.ts)), it adds a state (`success`, `error` or `uploading`) to each file the user selects for upload. It is used by the [`AttachmentPreviewList`](/chat/docs/sdk/angular/components/AttachmentPreviewListComponent/) to display the attachment previews.
|
|
28
|
+
* Emits the state of the uploads ([`AttachmentUpload[]`](https://github.com/GetStream/stream-chat-angular/blob/master/projects/stream-chat-angular/src/lib/types.ts)), it adds a state (`success`, `error` or `uploading`) to each file the user selects for upload. It is used by the [`AttachmentPreviewList`](/chat/docs/sdk/angular/v6-rc/components/AttachmentPreviewListComponent/) to display the attachment previews.
|
|
29
29
|
*/
|
|
30
30
|
attachmentUploads$: Observable<AttachmentUpload[]>;
|
|
31
31
|
/**
|
|
32
32
|
* You can get and set the list if uploaded custom attachments
|
|
33
33
|
*
|
|
34
|
-
* By default the SDK components won't display these, but you can provide your own `customAttachmentPreviewListTemplate$` and `customAttachmentListTemplate$` for the [`CustomTemplatesService`](/chat/docs/sdk/angular/services/CustomTemplatesService/).
|
|
34
|
+
* By default the SDK components won't display these, but you can provide your own `customAttachmentPreviewListTemplate$` and `customAttachmentListTemplate$` for the [`CustomTemplatesService`](/chat/docs/sdk/angular/v6-rc/services/CustomTemplatesService/).
|
|
35
35
|
*/
|
|
36
|
-
customAttachments$: BehaviorSubject<Attachment
|
|
36
|
+
customAttachments$: BehaviorSubject<Attachment[]>;
|
|
37
37
|
/**
|
|
38
38
|
* The current number of attachments
|
|
39
39
|
*/
|
|
@@ -67,10 +67,12 @@ export declare class AttachmentService<T extends DefaultStreamChatGenerics = Def
|
|
|
67
67
|
/**
|
|
68
68
|
* You can add custom `image`, `video` and `file` attachments using this method.
|
|
69
69
|
*
|
|
70
|
-
* Note: If you just want to use your own CDN for file uploads, you don't necessary need this method, you can just specify you own upload function in the [`ChannelService`](/chat/docs/sdk/angular/services/ChannelService/)
|
|
70
|
+
* Note: If you just want to use your own CDN for file uploads, you don't necessary need this method, you can just specify you own upload function in the [`ChannelService`](/chat/docs/sdk/angular/v6-rc/services/ChannelService/)
|
|
71
71
|
* @param attachment
|
|
72
|
+
*
|
|
73
|
+
* Will set `isCustomAttachment` to `true` on the attachment. This is a non-standard field, other SDKs will ignore this property.
|
|
72
74
|
*/
|
|
73
|
-
addAttachment(attachment: Attachment
|
|
75
|
+
addAttachment(attachment: Attachment): void;
|
|
74
76
|
/**
|
|
75
77
|
* Retries to upload an attachment.
|
|
76
78
|
* @param file
|
|
@@ -91,12 +93,12 @@ export declare class AttachmentService<T extends DefaultStreamChatGenerics = Def
|
|
|
91
93
|
* Maps attachments received from the Stream API to uploads. This is useful when editing a message.
|
|
92
94
|
* @param attachments Attachemnts received with the message
|
|
93
95
|
*/
|
|
94
|
-
createFromAttachments(attachments: Attachment
|
|
96
|
+
createFromAttachments(attachments: Attachment[]): void;
|
|
95
97
|
private createPreview;
|
|
96
98
|
private uploadAttachments;
|
|
97
99
|
private areAttachmentsHaveValidExtension;
|
|
98
100
|
private areAttachmentsHaveValidSize;
|
|
99
101
|
private isWithinLimit;
|
|
100
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AttachmentService
|
|
101
|
-
static ɵprov: i0.ɵɵInjectableDeclaration<AttachmentService
|
|
102
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<AttachmentService, never>;
|
|
103
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<AttachmentService>;
|
|
102
104
|
}
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { AfterViewInit, ChangeDetectorRef, NgZone, OnChanges, OnDestroy, OnInit, SimpleChanges } from '@angular/core';
|
|
2
2
|
import { Channel, User } from 'stream-chat';
|
|
3
3
|
import { ChatClientService } from '../chat-client.service';
|
|
4
|
-
import { AvatarLocation, AvatarType
|
|
4
|
+
import { AvatarLocation, AvatarType } from '../types';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
/**
|
|
7
7
|
* The `Avatar` component displays the provided image, with fallback to the first letter of the optional name input.
|
|
8
8
|
*/
|
|
9
|
-
export declare class AvatarComponent implements OnChanges, OnInit, AfterViewInit, OnDestroy {
|
|
9
|
+
export declare class AvatarComponent implements OnChanges, OnInit, OnChanges, AfterViewInit, OnDestroy {
|
|
10
10
|
private chatClientService;
|
|
11
11
|
private ngZone;
|
|
12
12
|
private cdRef;
|
|
@@ -25,11 +25,11 @@ export declare class AvatarComponent implements OnChanges, OnInit, AfterViewInit
|
|
|
25
25
|
/**
|
|
26
26
|
* The channel the avatar belongs to (if avatar of a channel is displayed)
|
|
27
27
|
*/
|
|
28
|
-
channel?: Channel
|
|
28
|
+
channel?: Channel;
|
|
29
29
|
/**
|
|
30
30
|
* The user the avatar belongs to (if avatar of a user is displayed)
|
|
31
31
|
*/
|
|
32
|
-
user?: User
|
|
32
|
+
user?: User;
|
|
33
33
|
/**
|
|
34
34
|
* The type of the avatar: channel if channel avatar is displayed, user if user avatar is displayed
|
|
35
35
|
*/
|
|
@@ -51,14 +51,14 @@ export declare class AvatarComponent implements OnChanges, OnInit, AfterViewInit
|
|
|
51
51
|
private isViewInited;
|
|
52
52
|
private subscriptions;
|
|
53
53
|
constructor(chatClientService: ChatClientService, ngZone: NgZone, cdRef: ChangeDetectorRef);
|
|
54
|
-
ngOnChanges(changes: SimpleChanges): void;
|
|
55
54
|
ngOnInit(): void;
|
|
56
|
-
|
|
55
|
+
ngOnChanges(changes: SimpleChanges): void;
|
|
57
56
|
ngOnDestroy(): void;
|
|
58
57
|
private setFallbackChannelImage;
|
|
59
58
|
private setInitials;
|
|
60
59
|
private updateIsOnlineSubscription;
|
|
60
|
+
ngAfterViewInit(): void;
|
|
61
61
|
private getOtherMemberIfOneToOneChannel;
|
|
62
62
|
static ɵfac: i0.ɵɵFactoryDeclaration<AvatarComponent, never>;
|
|
63
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AvatarComponent, "stream-avatar", never, { "name":
|
|
63
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AvatarComponent, "stream-avatar", never, { "name": "name"; "imageUrl": "imageUrl"; "location": "location"; "channel": "channel"; "user": "user"; "type": "type"; "showOnlineIndicator": "showOnlineIndicator"; "initialsType": "initialsType"; }, {}, never, never, false, never>;
|
|
64
64
|
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { OnChanges } from '@angular/core';
|
|
2
2
|
import { Channel, User } from 'stream-chat';
|
|
3
3
|
import { CustomTemplatesService } from '../custom-templates.service';
|
|
4
|
-
import { AvatarContext, AvatarLocation, AvatarType
|
|
4
|
+
import { AvatarContext, AvatarLocation, AvatarType } from '../types';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
/**
|
|
7
|
-
* The `AvatarPlaceholder` component displays the [default avatar](/chat/docs/sdk/angular/components/AvatarComponent/) unless a [custom template](/chat/docs/sdk/angular/services/CustomTemplatesService/) is provided. This component is used by the SDK internally, you likely won't need to use it.
|
|
7
|
+
* The `AvatarPlaceholder` component displays the [default avatar](/chat/docs/sdk/angular/v6-rc/components/AvatarComponent/) unless a [custom template](/chat/docs/sdk/angular/v6-rc/services/CustomTemplatesService/) is provided. This component is used by the SDK internally, you likely won't need to use it.
|
|
8
8
|
*/
|
|
9
9
|
export declare class AvatarPlaceholderComponent implements OnChanges {
|
|
10
10
|
customTemplatesService: CustomTemplatesService;
|
|
@@ -23,11 +23,11 @@ export declare class AvatarPlaceholderComponent implements OnChanges {
|
|
|
23
23
|
/**
|
|
24
24
|
* The channel the avatar belongs to (if avatar of a channel is displayed)
|
|
25
25
|
*/
|
|
26
|
-
channel?: Channel
|
|
26
|
+
channel?: Channel;
|
|
27
27
|
/**
|
|
28
28
|
* The user the avatar belongs to (if avatar of a user is displayed)
|
|
29
29
|
*/
|
|
30
|
-
user?: User
|
|
30
|
+
user?: User;
|
|
31
31
|
/**
|
|
32
32
|
* The type of the avatar: channel if channel avatar is displayed, user if user avatar is displayed
|
|
33
33
|
*/
|
|
@@ -44,5 +44,5 @@ export declare class AvatarPlaceholderComponent implements OnChanges {
|
|
|
44
44
|
constructor(customTemplatesService: CustomTemplatesService);
|
|
45
45
|
ngOnChanges(): void;
|
|
46
46
|
static ɵfac: i0.ɵɵFactoryDeclaration<AvatarPlaceholderComponent, never>;
|
|
47
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<AvatarPlaceholderComponent, "stream-avatar-placeholder", never, { "name":
|
|
47
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<AvatarPlaceholderComponent, "stream-avatar-placeholder", never, { "name": "name"; "imageUrl": "imageUrl"; "location": "location"; "channel": "channel"; "user": "user"; "type": "type"; "initialsType": "initialsType"; "showOnlineIndicator": "showOnlineIndicator"; }, {}, never, never, false, never>;
|
|
48
48
|
}
|
|
@@ -4,7 +4,7 @@ import { ThemeService } from '../theme.service';
|
|
|
4
4
|
import { CustomTemplatesService } from '../custom-templates.service';
|
|
5
5
|
import * as i0 from "@angular/core";
|
|
6
6
|
/**
|
|
7
|
-
* The `Channel` component is a container component that displays the [`ChannelHeader`](/chat/docs/sdk/angular/components/ChannelHeaderComponent/), [`MessageList`](/chat/docs/sdk/angular/components/MessageListComponent), [`NotificationList`](/chat/docs/sdk/angular/components/NotificationListComponent/) and [`MessageInput`](/chat/docs/sdk/angular/components/MessageInputComponent/) components. You can also provide the [`Thread`](/chat/docs/sdk/angular/components/ThreadComponent/) component to use message [threads](/chat/docs/javascript/threads/).
|
|
7
|
+
* The `Channel` component is a container component that displays the [`ChannelHeader`](/chat/docs/sdk/angular/v6-rc/components/ChannelHeaderComponent/), [`MessageList`](/chat/docs/sdk/angular/v6-rc/components/MessageListComponent), [`NotificationList`](/chat/docs/sdk/angular/v6-rc/components/NotificationListComponent/) and [`MessageInput`](/chat/docs/sdk/angular/v6-rc/components/MessageInputComponent/) components. You can also provide the [`Thread`](/chat/docs/sdk/angular/v6-rc/components/ThreadComponent/) component to use message [threads](/chat/docs/javascript/threads/).
|
|
8
8
|
*/
|
|
9
9
|
export declare class ChannelComponent {
|
|
10
10
|
private channelService;
|
|
@@ -3,7 +3,7 @@ import { Channel } from 'stream-chat';
|
|
|
3
3
|
import { ChannelService } from '../channel.service';
|
|
4
4
|
import { ChatClientService } from '../chat-client.service';
|
|
5
5
|
import { CustomTemplatesService } from '../custom-templates.service';
|
|
6
|
-
import { ChannelActionsContext, ChannelHeaderInfoContext
|
|
6
|
+
import { ChannelActionsContext, ChannelHeaderInfoContext } from '../types';
|
|
7
7
|
import * as i0 from "@angular/core";
|
|
8
8
|
/**
|
|
9
9
|
* The `ChannelHeader` component displays the avatar and name of the currently active channel along with member and watcher information. You can read about [the difference between members and watchers](/chat/docs/javascript/watch_channel/#watchers-vs-members) in the platform documentation. Please note that number of watchers is only displayed if the user has [`connect-events` capability](/chat/docs/javascript/channel_capabilities/)
|
|
@@ -15,7 +15,7 @@ export declare class ChannelHeaderComponent implements OnInit, OnDestroy {
|
|
|
15
15
|
private chatClientService;
|
|
16
16
|
channelActionsTemplate?: TemplateRef<ChannelActionsContext>;
|
|
17
17
|
channelHeaderInfoTemplate?: TemplateRef<ChannelHeaderInfoContext>;
|
|
18
|
-
activeChannel: Channel
|
|
18
|
+
activeChannel: Channel | undefined;
|
|
19
19
|
canReceiveConnectEvents: boolean | undefined;
|
|
20
20
|
private subscriptions;
|
|
21
21
|
constructor(channelService: ChannelService, customTemplatesService: CustomTemplatesService, cdRef: ChangeDetectorRef, chatClientService: ChatClientService);
|
|
@@ -4,7 +4,7 @@ import { Channel } from 'stream-chat';
|
|
|
4
4
|
import { ChannelService } from '../channel.service';
|
|
5
5
|
import { CustomTemplatesService } from '../custom-templates.service';
|
|
6
6
|
import { ThemeService } from '../theme.service';
|
|
7
|
-
import { ChannelPreviewContext
|
|
7
|
+
import { ChannelPreviewContext } from '../types';
|
|
8
8
|
import * as i0 from "@angular/core";
|
|
9
9
|
/**
|
|
10
10
|
* The `ChannelList` component renders the list of channels.
|
|
@@ -13,7 +13,7 @@ export declare class ChannelListComponent implements OnDestroy {
|
|
|
13
13
|
private channelService;
|
|
14
14
|
private customTemplatesService;
|
|
15
15
|
private themeService;
|
|
16
|
-
channels$: Observable<Channel
|
|
16
|
+
channels$: Observable<Channel[] | undefined>;
|
|
17
17
|
isError$: Observable<boolean>;
|
|
18
18
|
isInitializing$: Observable<boolean>;
|
|
19
19
|
isLoadingMoreChannels: boolean;
|
|
@@ -24,8 +24,7 @@ export declare class ChannelListComponent implements OnDestroy {
|
|
|
24
24
|
constructor(channelService: ChannelService, customTemplatesService: CustomTemplatesService, themeService: ThemeService);
|
|
25
25
|
ngOnDestroy(): void;
|
|
26
26
|
loadMoreChannels(): Promise<void>;
|
|
27
|
-
|
|
28
|
-
trackByChannelId(_: number, item: Channel<DefaultStreamChatGenerics>): string;
|
|
27
|
+
trackByChannelId(_: number, item: Channel): string;
|
|
29
28
|
static ɵfac: i0.ɵɵFactoryDeclaration<ChannelListComponent, never>;
|
|
30
29
|
static ɵcmp: i0.ɵɵComponentDeclaration<ChannelListComponent, "stream-channel-list", never, {}, {}, never, ["[channel-list-top]", "[channel-list-bottom]"], false, never>;
|
|
31
30
|
}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
|
-
import { OnDestroy, OnInit } from '@angular/core';
|
|
1
|
+
import { NgZone, OnDestroy, OnInit } from '@angular/core';
|
|
2
2
|
import { Channel, FormatMessageResponse } from 'stream-chat';
|
|
3
3
|
import { ChannelService } from '../channel.service';
|
|
4
|
-
import { DefaultStreamChatGenerics } from '../types';
|
|
5
4
|
import { ChatClientService } from '../chat-client.service';
|
|
6
5
|
import { MessageService } from '../message.service';
|
|
7
6
|
import { CustomTemplatesService } from '../custom-templates.service';
|
|
@@ -12,13 +11,14 @@ import * as i0 from "@angular/core";
|
|
|
12
11
|
*/
|
|
13
12
|
export declare class ChannelPreviewComponent implements OnInit, OnDestroy {
|
|
14
13
|
private channelService;
|
|
14
|
+
private ngZone;
|
|
15
15
|
private chatClientService;
|
|
16
16
|
customTemplatesService: CustomTemplatesService;
|
|
17
17
|
private dateParser;
|
|
18
18
|
/**
|
|
19
19
|
* The channel to be displayed
|
|
20
20
|
*/
|
|
21
|
-
channel: Channel
|
|
21
|
+
channel: Channel | undefined;
|
|
22
22
|
isActive: boolean;
|
|
23
23
|
isUnreadMessageWasCalled: boolean;
|
|
24
24
|
isUnread: boolean;
|
|
@@ -26,12 +26,12 @@ export declare class ChannelPreviewComponent implements OnInit, OnDestroy {
|
|
|
26
26
|
latestMessageText: string;
|
|
27
27
|
latestMessageStatus?: 'delivered' | 'read';
|
|
28
28
|
latestMessageTime?: string;
|
|
29
|
-
latestMessage?: FormatMessageResponse
|
|
29
|
+
latestMessage?: FormatMessageResponse;
|
|
30
30
|
displayAs: 'text' | 'html';
|
|
31
31
|
userId?: string;
|
|
32
32
|
private subscriptions;
|
|
33
33
|
private canSendReadEvents;
|
|
34
|
-
constructor(channelService: ChannelService, chatClientService: ChatClientService, messageService: MessageService, customTemplatesService: CustomTemplatesService, dateParser: DateParserService);
|
|
34
|
+
constructor(channelService: ChannelService, ngZone: NgZone, chatClientService: ChatClientService, messageService: MessageService, customTemplatesService: CustomTemplatesService, dateParser: DateParserService);
|
|
35
35
|
ngOnInit(): void;
|
|
36
36
|
ngOnDestroy(): void;
|
|
37
37
|
get avatarImage(): string | undefined;
|
|
@@ -42,5 +42,5 @@ export declare class ChannelPreviewComponent implements OnInit, OnDestroy {
|
|
|
42
42
|
private setLatestMessage;
|
|
43
43
|
private updateUnreadState;
|
|
44
44
|
static ɵfac: i0.ɵɵFactoryDeclaration<ChannelPreviewComponent, never>;
|
|
45
|
-
static ɵcmp: i0.ɵɵComponentDeclaration<ChannelPreviewComponent, "stream-channel-preview", never, { "channel":
|
|
45
|
+
static ɵcmp: i0.ɵɵComponentDeclaration<ChannelPreviewComponent, "stream-channel-preview", never, { "channel": "channel"; }, {}, never, never, false, never>;
|
|
46
46
|
}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { Channel, ChannelFilters, ChannelOptions, ChannelSort } from 'stream-chat';
|
|
2
|
+
import { ChannelService } from './channel.service';
|
|
3
|
+
import { ChannelQueryResult, ChannelQueryType, NextPageConfiguration } from './types';
|
|
4
|
+
import { ChatClientService } from './chat-client.service';
|
|
5
|
+
/**
|
|
6
|
+
* This class allows you to make paginated channel query requests.
|
|
7
|
+
*/
|
|
8
|
+
export declare class ChannelQuery {
|
|
9
|
+
private chatService;
|
|
10
|
+
private channelService;
|
|
11
|
+
private filters;
|
|
12
|
+
private sort;
|
|
13
|
+
private options;
|
|
14
|
+
/**
|
|
15
|
+
* By default the SDK uses an offset based pagination, you can change/extend this by providing your own custom paginator method.
|
|
16
|
+
*
|
|
17
|
+
* The method will be called with the result of the latest channel query.
|
|
18
|
+
*
|
|
19
|
+
* You can return either an offset, or a filter using the [`$lte`/`$gte` operator](/chat/docs/javascript/query_syntax_operators/). If you return a filter, it will be merged with the filter provided for the `init` method.
|
|
20
|
+
*/
|
|
21
|
+
customPaginator?: (channelQueryResult: Channel[]) => NextPageConfiguration;
|
|
22
|
+
private nextPageConfiguration?;
|
|
23
|
+
constructor(chatService: ChatClientService, channelService: ChannelService, filters: ChannelFilters, sort?: ChannelSort, options?: ChannelOptions);
|
|
24
|
+
query(queryType: ChannelQueryType): Promise<ChannelQueryResult>;
|
|
25
|
+
setNextPageConfiguration(channelQueryResult: Channel[]): void;
|
|
26
|
+
}
|