AttachmentService
The AttachmentService
manages the uploads of a message input.
You can read more about uploads in the Stream API documentation. You can use Stream's API or the dashboard to customize the file and image upload configuration.
Type parameters
Name | Type |
---|---|
T | extends DefaultStreamChatGenerics = DefaultStreamChatGenerics |
Properties
attachmentUploadInProgressCounter$
• attachmentUploadInProgressCounter$: Observable
\<number
>
Emits the number of uploads in progress.
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:25
attachmentUploads$
• attachmentUploads$: Observable
\<AttachmentUpload
\<DefaultStreamChatGenerics
>[]>
Emits the state of the uploads (AttachmentUpload[]
), it adds a state (success
, error
or uploading
) to each file the user selects for upload. It is used by the AttachmentPreviewList
to display the attachment previews.
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:29
Methods
addAttachment
▸ addAttachment(attachment
): void
You can add custom image
, video
and file
attachments using this method.
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
Parameters
Name | Type |
---|---|
attachment | Attachment \<T > |
Returns
void
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:120
createFromAttachments
▸ createFromAttachments(attachments
): void
Maps attachments received from the Stream API to uploads. This is useful when editing a message.
Parameters
Name | Type | Description |
---|---|---|
attachments | Attachment \<T >[] | Attachemnts received with the message |
Returns
void
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:206
deleteAttachment
▸ deleteAttachment(upload
): Promise
\<void
>
Deletes an attachment, the attachment can have any state (error
, uploading
or success
).
Parameters
Name | Type |
---|---|
upload | AttachmentUpload \<DefaultStreamChatGenerics > |
Returns
Promise
\<void
>
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:145
filesSelected
▸ filesSelected(fileList
): Promise
\<undefined
| boolean
>
Uploads the selected files, and creates preview for image files. The result is propagated throught the attachmentUploads$
stream.
Parameters
Name | Type | Description |
---|---|---|
fileList | null | File [] | FileList | The files selected by the user, if you have Blobs instead of Files, you can convert them with this method: https://developer.mozilla.org/en-US/docs/Web/API/File/File |
Returns
Promise
\<undefined
| boolean
>
A promise with true or false. If false is returned the upload was canceled because of a client side error. The error is emitted via the NotificationService
.
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:62
mapToAttachments
▸ mapToAttachments(): Attachment
\<DefaultGenerics
>[]
Maps the current uploads to a format that can be sent along with the message to the Stream API.
Returns
Attachment
\<DefaultGenerics
>[]
the attachments
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:175
resetAttachmentUploads
▸ resetAttachmentUploads(): void
Resets the attachments uploads (for example after the message with the attachments sent successfully)
Returns
void
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:53
retryAttachmentUpload
▸ retryAttachmentUpload(file
): Promise
\<void
>
Retries to upload an attachment.
Parameters
Name | Type |
---|---|
file | File |
Returns
Promise
\<void
>
A promise with the result
Defined in
projects/stream-chat-angular/src/lib/attachment.service.ts:130