stream-chat 9.50.3 → 10.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/dist/cjs/index.browser.js +19798 -14472
- package/dist/cjs/index.browser.js.map +4 -4
- package/dist/cjs/index.node.js +19817 -14482
- package/dist/cjs/index.node.js.map +4 -4
- package/dist/esm/index.mjs +19795 -14469
- package/dist/esm/index.mjs.map +4 -4
- package/dist/types/ChannelManager.d.ts +221 -0
- package/dist/types/EventHandlerPipeline.d.ts +104 -0
- package/dist/types/api-client.d.ts +26 -0
- package/dist/types/campaign.d.ts +0 -44
- package/dist/types/channel.d.ts +454 -479
- package/dist/types/channel_batch_updater.d.ts +0 -93
- package/dist/types/channel_state.d.ts +53 -201
- package/dist/types/client.d.ts +451 -1920
- package/dist/types/client_state.d.ts +4 -4
- package/dist/types/configuration/InstanceConfigurationService.d.ts +26 -0
- package/dist/types/configuration/index.d.ts +1 -0
- package/dist/types/configuration/types.d.ts +53 -0
- package/dist/types/connection.d.ts +49 -41
- package/dist/types/connection_fallback.d.ts +6 -4
- package/dist/types/constants.d.ts +0 -4
- package/dist/types/custom_types.d.ts +2 -0
- package/dist/types/entityStore/EntityStore.d.ts +111 -0
- package/dist/types/entityStore/StoreBackedItemIndex.d.ts +60 -0
- package/dist/types/entityStore/applyReactionLocally.d.ts +26 -0
- package/dist/types/entityStore/index.d.ts +2 -0
- package/dist/types/errors.d.ts +10 -2
- package/dist/types/gen/chat/ChannelApi.d.ts +45 -0
- package/dist/types/gen/chat/ChatApi.d.ts +334 -0
- package/dist/types/gen/model-decoders/decoders.d.ts +3 -0
- package/dist/types/gen/model-decoders/event-decoder-mapping.d.ts +6 -0
- package/dist/types/gen/models/index.d.ts +8836 -0
- package/dist/types/gen/moderation/ModerationApi.d.ts +50 -0
- package/dist/types/gen-imports.d.ts +3 -0
- package/dist/types/index.d.ts +8 -7
- package/dist/types/insights.d.ts +9 -8
- package/dist/types/logger.d.ts +9 -0
- package/dist/types/messageComposer/LocationComposer.d.ts +7 -4
- package/dist/types/messageComposer/attachmentIdentity.d.ts +2 -2
- package/dist/types/messageComposer/attachmentManager.d.ts +8 -4
- package/dist/types/messageComposer/configuration/types.d.ts +11 -11
- package/dist/types/messageComposer/linkPreviewsManager.d.ts +25 -13
- package/dist/types/messageComposer/messageComposer.d.ts +10 -10
- package/dist/types/messageComposer/middleware/messageComposer/types.d.ts +3 -3
- package/dist/types/messageComposer/middleware/pollComposer/types.d.ts +4 -7
- package/dist/types/messageComposer/middleware/textComposer/commandUtils.d.ts +3 -3
- package/dist/types/messageComposer/middleware/textComposer/commands.d.ts +7 -7
- package/dist/types/messageComposer/middleware/textComposer/mentions.d.ts +218 -4
- package/dist/types/messageComposer/middleware/textComposer/types.d.ts +9 -4
- package/dist/types/messageComposer/pollComposer.d.ts +5 -4
- package/dist/types/messageComposer/textComposer.d.ts +8 -3
- package/dist/types/messageComposer/types.d.ts +6 -28
- package/dist/types/messageDelivery/MessageDeliveryReporter.d.ts +40 -25
- package/dist/types/messageDelivery/MessageReceiptsTracker.d.ts +53 -12
- package/dist/types/messageOperations/MessageOperationStatePolicy.d.ts +19 -0
- package/dist/types/messageOperations/MessageOperations.d.ts +17 -0
- package/dist/types/messageOperations/index.d.ts +3 -0
- package/dist/types/messageOperations/types.d.ts +49 -0
- package/dist/types/moderation.d.ts +21 -203
- package/dist/types/notifications/types.d.ts +8 -7
- package/dist/types/offline-support/offline_support_api.d.ts +111 -87
- package/dist/types/offline-support/offline_sync_manager.d.ts +0 -7
- package/dist/types/offline-support/types.d.ts +19 -23
- package/dist/types/offline-support/util.d.ts +4 -2
- package/dist/types/pagination/FilterBuilder.d.ts +1 -1
- package/dist/types/pagination/ItemIndex.d.ts +25 -0
- package/dist/types/pagination/cursorDerivation/createdAtAroundPaginationFlags.d.ts +9 -0
- package/dist/types/pagination/cursorDerivation/idAroundPaginationFlags.d.ts +6 -0
- package/dist/types/pagination/cursorDerivation/index.d.ts +1 -0
- package/dist/types/pagination/cursorDerivation/linearPaginationFlags.d.ts +6 -0
- package/dist/types/pagination/filterCompiler.d.ts +7 -0
- package/dist/types/pagination/index.d.ts +1 -3
- package/dist/types/pagination/paginators/BasePaginator.d.ts +848 -0
- package/dist/types/pagination/paginators/ChannelPaginator.d.ts +212 -0
- package/dist/types/pagination/paginators/MessageIntervalPaginator.d.ts +282 -0
- package/dist/types/pagination/paginators/MessagePaginator.d.ts +208 -0
- package/dist/types/pagination/paginators/PinnedMessagePaginator.d.ts +39 -0
- package/dist/types/pagination/paginators/ReminderPaginator.d.ts +19 -0
- package/dist/types/pagination/paginators/UserGroupPaginator.d.ts +24 -0
- package/dist/types/pagination/paginators/index.d.ts +7 -0
- package/dist/types/pagination/paginators/stateThrottling.d.ts +2 -0
- package/dist/types/pagination/sortCompiler.d.ts +49 -0
- package/dist/types/pagination/types.normalization.d.ts +11 -0
- package/dist/types/pagination/utility.normalization.d.ts +18 -0
- package/dist/types/pagination/utility.queryChannel.d.ts +26 -0
- package/dist/types/pagination/utility.search.d.ts +13 -0
- package/dist/types/permissions.d.ts +1 -1
- package/dist/types/poll.d.ts +29 -32
- package/dist/types/poll_manager.d.ts +2 -2
- package/dist/types/reminders/Reminder.d.ts +2 -5
- package/dist/types/reminders/ReminderManager.d.ts +2 -9
- package/dist/types/search/MessageSearchSource.d.ts +4 -4
- package/dist/types/search/UserSearchSource.d.ts +1 -1
- package/dist/types/search/types.d.ts +3 -3
- package/dist/types/segment.d.ts +0 -34
- package/dist/types/signing.d.ts +105 -65
- package/dist/types/store.d.ts +1 -0
- package/dist/types/thread.d.ts +70 -34
- package/dist/types/thread_manager.d.ts +3 -3
- package/dist/types/token_manager.d.ts +15 -10
- package/dist/types/types.d.ts +197 -3404
- package/dist/types/utils/FixedSizeQueueCache.d.ts +12 -6
- package/dist/types/utils/WithSubscriptions.d.ts +2 -1
- package/dist/types/utils/concurrency.d.ts +4 -4
- package/dist/types/utils/mergeWith/mergeWith.d.ts +3 -3
- package/dist/types/utils/mergeWith/mergeWithCore.d.ts +8 -3
- package/dist/types/utils/retryable.d.ts +34 -0
- package/dist/types/utils/throttling/throttle.d.ts +36 -0
- package/dist/types/utils.d.ts +100 -194
- package/package.json +7 -3
- package/src/ChannelManager.ts +724 -0
- package/src/CooldownTimer.ts +2 -2
- package/src/EventHandlerPipeline.ts +228 -0
- package/src/LiveLocationManager.ts +12 -11
- package/src/api-client.ts +275 -0
- package/src/campaign.ts +1 -77
- package/src/channel.ts +1344 -1282
- package/src/channel_batch_updater.ts +1 -211
- package/src/channel_state.ts +144 -1013
- package/src/client.ts +936 -3995
- package/src/client_state.ts +4 -4
- package/src/configuration/InstanceConfigurationService.ts +73 -0
- package/src/configuration/index.ts +1 -0
- package/src/configuration/types.ts +81 -0
- package/src/connection.ts +145 -94
- package/src/connection_fallback.ts +29 -27
- package/src/constants.ts +1 -5
- package/src/custom_types.ts +4 -1
- package/src/entityStore/EntityStore.ts +208 -0
- package/src/entityStore/StoreBackedItemIndex.ts +115 -0
- package/src/entityStore/applyReactionLocally.ts +113 -0
- package/src/entityStore/index.ts +2 -0
- package/src/errors.ts +14 -2
- package/src/gen/chat/ChannelApi.ts +275 -0
- package/src/gen/chat/ChatApi.ts +2554 -0
- package/src/gen/model-decoders/decoders.ts +2680 -0
- package/src/gen/model-decoders/event-decoder-mapping.ts +198 -0
- package/src/gen/models/index.ts +12673 -0
- package/src/gen/moderation/ModerationApi.ts +607 -0
- package/src/gen-imports.ts +3 -0
- package/src/index.ts +11 -12
- package/src/insights.ts +6 -5
- package/src/logger.ts +28 -0
- package/src/messageComposer/LocationComposer.ts +9 -5
- package/src/messageComposer/MessageComposerEffectHandlers.ts +1 -0
- package/src/messageComposer/attachmentIdentity.ts +16 -9
- package/src/messageComposer/attachmentManager.ts +13 -8
- package/src/messageComposer/configuration/types.ts +11 -11
- package/src/messageComposer/linkPreviewsManager.ts +9 -10
- package/src/messageComposer/messageComposer.ts +57 -53
- package/src/messageComposer/middleware/messageComposer/attachments.ts +1 -2
- package/src/messageComposer/middleware/messageComposer/cleanData.ts +1 -1
- package/src/messageComposer/middleware/messageComposer/compositionValidation.ts +2 -2
- package/src/messageComposer/middleware/messageComposer/messageComposerState.ts +2 -2
- package/src/messageComposer/middleware/messageComposer/sharedLocation.ts +4 -3
- package/src/messageComposer/middleware/messageComposer/textComposer.ts +2 -2
- package/src/messageComposer/middleware/messageComposer/types.ts +3 -4
- package/src/messageComposer/middleware/messageComposer/userDataInjection.ts +9 -5
- package/src/messageComposer/middleware/pollComposer/state.ts +0 -2
- package/src/messageComposer/middleware/pollComposer/types.ts +4 -7
- package/src/messageComposer/middleware/textComposer/TextComposerMiddlewareExecutor.ts +10 -1
- package/src/messageComposer/middleware/textComposer/commandEffects.ts +4 -4
- package/src/messageComposer/middleware/textComposer/commandUtils.ts +3 -6
- package/src/messageComposer/middleware/textComposer/commands.ts +3 -3
- package/src/messageComposer/middleware/textComposer/mentionUtils.ts +1 -1
- package/src/messageComposer/middleware/textComposer/mentions.ts +31 -15
- package/src/messageComposer/middleware/textComposer/types.ts +9 -4
- package/src/messageComposer/pollComposer.ts +6 -8
- package/src/messageComposer/textComposer.ts +27 -2
- package/src/messageComposer/types.ts +6 -28
- package/src/messageDelivery/MessageDeliveryReporter.ts +101 -45
- package/src/messageDelivery/MessageReceiptsTracker.ts +294 -21
- package/src/messageOperations/MessageOperationStatePolicy.ts +77 -0
- package/src/messageOperations/MessageOperations.ts +212 -0
- package/src/messageOperations/index.ts +10 -0
- package/src/messageOperations/types.ts +64 -0
- package/src/moderation.ts +38 -431
- package/src/notifications/types.ts +8 -7
- package/src/offline-support/offline_support_api.ts +200 -133
- package/src/offline-support/offline_sync_manager.ts +23 -44
- package/src/offline-support/types.ts +23 -26
- package/src/offline-support/util.ts +5 -4
- package/src/pagination/FilterBuilder.ts +4 -1
- package/src/pagination/ItemIndex.ts +25 -0
- package/src/pagination/cursorDerivation/createdAtAroundPaginationFlags.ts +73 -0
- package/src/pagination/cursorDerivation/idAroundPaginationFlags.ts +53 -0
- package/src/pagination/cursorDerivation/index.ts +1 -0
- package/src/pagination/cursorDerivation/linearPaginationFlags.ts +86 -0
- package/src/pagination/filterCompiler.ts +196 -0
- package/src/pagination/index.ts +1 -3
- package/src/pagination/paginators/BasePaginator.ts +2859 -0
- package/src/pagination/paginators/ChannelPaginator.ts +729 -0
- package/src/pagination/paginators/MessageIntervalPaginator.ts +1116 -0
- package/src/pagination/paginators/MessagePaginator.ts +508 -0
- package/src/pagination/paginators/PinnedMessagePaginator.ts +108 -0
- package/src/pagination/paginators/ReminderPaginator.ts +107 -0
- package/src/pagination/paginators/UserGroupPaginator.ts +127 -0
- package/src/pagination/paginators/index.ts +7 -0
- package/src/pagination/paginators/stateThrottling.ts +31 -0
- package/src/pagination/sortCompiler.ts +193 -0
- package/src/pagination/types.normalization.ts +14 -0
- package/src/pagination/utility.normalization.ts +106 -0
- package/src/pagination/utility.queryChannel.ts +84 -0
- package/src/pagination/utility.search.ts +80 -0
- package/src/permissions.ts +7 -8
- package/src/poll.ts +101 -110
- package/src/poll_manager.ts +14 -8
- package/src/reminders/Reminder.ts +2 -5
- package/src/reminders/ReminderManager.ts +19 -21
- package/src/search/BaseSearchSource.ts +0 -3
- package/src/search/ChannelMemberSearchSource.ts +7 -1
- package/src/search/ChannelSearchSource.ts +10 -3
- package/src/search/MessageSearchSource.ts +29 -30
- package/src/search/UserSearchSource.ts +12 -8
- package/src/search/types.ts +3 -4
- package/src/segment.ts +1 -95
- package/src/signing.ts +107 -67
- package/src/store.ts +2 -1
- package/src/thread.ts +562 -238
- package/src/thread_manager.ts +37 -16
- package/src/token_manager.ts +21 -10
- package/src/types.ts +364 -4533
- package/src/uploadManager.ts +8 -0
- package/src/utils/FixedSizeQueueCache.ts +12 -6
- package/src/utils/WithSubscriptions.ts +2 -1
- package/src/utils/concurrency.ts +4 -4
- package/src/utils/mergeWith/mergeWith.ts +3 -3
- package/src/utils/mergeWith/mergeWithCore.ts +140 -164
- package/src/utils/mergeWith/mergeWithDiff.ts +3 -3
- package/src/utils/retryable.ts +117 -0
- package/src/utils/throttling/throttle.ts +130 -0
- package/src/utils.ts +208 -754
- package/dist/types/channel_manager.d.ts +0 -122
- package/dist/types/events.d.ts +0 -72
- package/dist/types/pagination/BasePaginator.d.ts +0 -69
- package/dist/types/pagination/ReminderPaginator.d.ts +0 -16
- package/dist/types/pagination/UserGroupPaginator.d.ts +0 -21
- package/src/channel_manager.ts +0 -830
- package/src/events.ts +0 -75
- package/src/pagination/BasePaginator.ts +0 -184
- package/src/pagination/ReminderPaginator.ts +0 -56
- package/src/pagination/UserGroupPaginator.ts +0 -93
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type {
|
|
1
|
+
import type { ChannelFilters, ChannelMemberResponse, ChannelOptions, ChannelResponse, ChannelSort, ChannelStateResponseFields, DraftResponse, GetApplicationResponse, LocalMessage, MessageResponse, PollResponse_old, QueryChannelsRequest, ReactionFilters, ReactionResponse, ReactionSort, ReadStateResponse } from '../types';
|
|
2
2
|
import type { Channel } from '../channel';
|
|
3
3
|
import type { StreamChat } from '../client';
|
|
4
4
|
export type PrepareBatchDBQueries = [string] | [string, Array<unknown> | Array<Array<unknown>>];
|
|
@@ -6,7 +6,7 @@ export type PrepareBatchDBQueries = [string] | [string, Array<unknown> | Array<A
|
|
|
6
6
|
* Options to insert a reaction into a message.
|
|
7
7
|
*/
|
|
8
8
|
export type DBInsertReactionType = {
|
|
9
|
-
/**
|
|
9
|
+
/** MessageRequest to which the reaction is applied. */
|
|
10
10
|
message: MessageResponse | LocalMessage;
|
|
11
11
|
/** The reaction to insert. */
|
|
12
12
|
reaction: ReactionResponse;
|
|
@@ -33,7 +33,7 @@ export type DBUpsertCidsForQueryType = {
|
|
|
33
33
|
*/
|
|
34
34
|
export type DBUpsertChannelsType = {
|
|
35
35
|
/** Array of channel API responses. */
|
|
36
|
-
channels:
|
|
36
|
+
channels: ChannelStateResponseFields[];
|
|
37
37
|
/** Whether to immediately execute the operation. */
|
|
38
38
|
execute?: boolean;
|
|
39
39
|
/** If true, marks that the latest messages are already set. */
|
|
@@ -44,7 +44,7 @@ export type DBUpsertChannelsType = {
|
|
|
44
44
|
*/
|
|
45
45
|
export type DBUpsertAppSettingsType = {
|
|
46
46
|
/** App settings data. */
|
|
47
|
-
appSettings:
|
|
47
|
+
appSettings: GetApplicationResponse;
|
|
48
48
|
/** ID of the user the settings belong to. */
|
|
49
49
|
userId: string;
|
|
50
50
|
/** Whether to immediately execute the operation. */
|
|
@@ -66,7 +66,7 @@ export type DBUpsertUserSyncStatusType = {
|
|
|
66
66
|
*/
|
|
67
67
|
export type DBUpsertPollType = {
|
|
68
68
|
/** Poll data to be stored. */
|
|
69
|
-
poll:
|
|
69
|
+
poll: PollResponse_old;
|
|
70
70
|
/** Whether to immediately execute the operation. */
|
|
71
71
|
execute?: boolean;
|
|
72
72
|
};
|
|
@@ -86,7 +86,7 @@ export type DBUpsertReadsType = {
|
|
|
86
86
|
/** Channel ID. */
|
|
87
87
|
cid: string;
|
|
88
88
|
/** Array of read statuses. */
|
|
89
|
-
reads:
|
|
89
|
+
reads: ReadStateResponse[];
|
|
90
90
|
/** Whether to immediately execute the operation. */
|
|
91
91
|
execute?: boolean;
|
|
92
92
|
};
|
|
@@ -114,7 +114,7 @@ export type DBUpsertMembersType = {
|
|
|
114
114
|
* Options to update a reaction.
|
|
115
115
|
*/
|
|
116
116
|
export type DBUpdateReactionType = {
|
|
117
|
-
/**
|
|
117
|
+
/** MessageRequest associated with the reaction. */
|
|
118
118
|
message: MessageResponse | LocalMessage;
|
|
119
119
|
/** The updated reaction. */
|
|
120
120
|
reaction: ReactionResponse;
|
|
@@ -125,7 +125,7 @@ export type DBUpdateReactionType = {
|
|
|
125
125
|
* Options to update a message.
|
|
126
126
|
*/
|
|
127
127
|
export type DBUpdateMessageType = {
|
|
128
|
-
/**
|
|
128
|
+
/** MessageRequest to update. */
|
|
129
129
|
message: MessageResponse | LocalMessage;
|
|
130
130
|
/** Whether to immediately execute the operation. */
|
|
131
131
|
execute?: boolean;
|
|
@@ -146,14 +146,10 @@ export type DBGetChannelsForQueryType = {
|
|
|
146
146
|
/** ID of the user. */
|
|
147
147
|
userId: string;
|
|
148
148
|
/** Optional filters for channels. */
|
|
149
|
-
|
|
150
|
-
/** Optional full query options for channels. */
|
|
151
|
-
options?: ChannelOptions;
|
|
152
|
-
/** Optional sorting for the channels. */
|
|
153
|
-
sort?: ChannelSort;
|
|
149
|
+
options?: QueryChannelsRequest;
|
|
154
150
|
};
|
|
155
151
|
/**
|
|
156
|
-
*
|
|
152
|
+
* Payload for retrieving the last sync timestamp for a user.
|
|
157
153
|
*/
|
|
158
154
|
export type DBGetLastSyncedAtType = {
|
|
159
155
|
/** ID of the user. */
|
|
@@ -167,7 +163,7 @@ export type DBGetPendingTasksType = {
|
|
|
167
163
|
messageId?: string;
|
|
168
164
|
};
|
|
169
165
|
/**
|
|
170
|
-
*
|
|
166
|
+
* Payload for retrieving application settings for a user.
|
|
171
167
|
*/
|
|
172
168
|
export type DBGetAppSettingsType = {
|
|
173
169
|
/** ID of the user. */
|
|
@@ -180,21 +176,21 @@ export type DBGetReactionsType = {
|
|
|
180
176
|
/** ID of the message. */
|
|
181
177
|
messageId: string;
|
|
182
178
|
/** Optional filter to apply to reactions. */
|
|
183
|
-
filters?:
|
|
179
|
+
filters?: ReactionFilters;
|
|
184
180
|
/** Optional sorting for reactions. */
|
|
185
181
|
sort?: ReactionSort;
|
|
186
182
|
/** Optional maximum number of reactions to return. */
|
|
187
183
|
limit?: number;
|
|
188
184
|
};
|
|
189
185
|
/**
|
|
190
|
-
*
|
|
186
|
+
* Payload for deleting a pending task by ID.
|
|
191
187
|
*/
|
|
192
188
|
export type DBDeletePendingTaskType = {
|
|
193
189
|
/** ID of the pending task. */
|
|
194
190
|
id: number;
|
|
195
191
|
};
|
|
196
192
|
/**
|
|
197
|
-
*
|
|
193
|
+
* Payload for updating a pending task by ID.
|
|
198
194
|
*/
|
|
199
195
|
export type DBUpdatePendingTaskType = {
|
|
200
196
|
/** ID of the pending task. */
|
|
@@ -260,12 +256,12 @@ export type DBDeleteMessagesForChannelType = {
|
|
|
260
256
|
/** Channel ID. */
|
|
261
257
|
cid: string;
|
|
262
258
|
/** Timestamp before which messages are deleted. */
|
|
263
|
-
truncated_at?:
|
|
259
|
+
truncated_at?: Date;
|
|
264
260
|
/** Whether to immediately execute the operation. */
|
|
265
261
|
execute?: boolean;
|
|
266
262
|
};
|
|
267
263
|
/**
|
|
268
|
-
*
|
|
264
|
+
* Payload for checking whether a channel exists by ID.
|
|
269
265
|
*/
|
|
270
266
|
export type DBChannelExistsType = {
|
|
271
267
|
/** Channel ID. */
|
|
@@ -312,11 +308,11 @@ export interface OfflineDBApi {
|
|
|
312
308
|
updateReaction: (options: DBUpdateReactionType) => Promise<ExecuteBatchDBQueriesType>;
|
|
313
309
|
updateMessage: (options: DBUpdateMessageType) => Promise<ExecuteBatchDBQueriesType>;
|
|
314
310
|
getDraft: (options: DBGetDraftType) => Promise<DraftResponse | null>;
|
|
315
|
-
getChannels: (options: DBGetChannelsType) => Promise<Omit<
|
|
316
|
-
getChannelsForQuery: (options: DBGetChannelsForQueryType) => Promise<Omit<
|
|
311
|
+
getChannels: (options: DBGetChannelsType) => Promise<Omit<ChannelStateResponseFields, 'duration'>[] | null>;
|
|
312
|
+
getChannelsForQuery: (options: DBGetChannelsForQueryType) => Promise<Omit<ChannelStateResponseFields, 'duration'>[] | null>;
|
|
317
313
|
getAllChannelCids: () => Promise<string[]>;
|
|
318
314
|
getLastSyncedAt: (options: DBGetLastSyncedAtType) => Promise<string | undefined>;
|
|
319
|
-
getAppSettings: (options: DBGetAppSettingsType) => Promise<
|
|
315
|
+
getAppSettings: (options: DBGetAppSettingsType) => Promise<GetApplicationResponse | null>;
|
|
320
316
|
getReactions: (options: DBGetReactionsType) => Promise<ReactionResponse[] | null>;
|
|
321
317
|
executeSqlBatch: (queries: ExecuteBatchDBQueriesType) => Promise<unknown>;
|
|
322
318
|
addPendingTask: (task: PendingTask) => Promise<() => Promise<void>>;
|
|
@@ -1,7 +1,9 @@
|
|
|
1
|
-
import type { Attachment
|
|
1
|
+
import type { Attachment } from '../types';
|
|
2
2
|
export declare const isLocalUrl: (value: string | undefined) => boolean;
|
|
3
3
|
export declare const isAttachmentReplayable: (attachment: Attachment) => boolean;
|
|
4
|
-
export declare const isMessageUpdateReplayable: (
|
|
4
|
+
export declare const isMessageUpdateReplayable: (minimalMessage: {
|
|
5
|
+
attachments?: Attachment[];
|
|
6
|
+
}) => boolean;
|
|
5
7
|
export declare const getPendingTaskChannelData: (cid?: string) => {
|
|
6
8
|
channelId?: undefined;
|
|
7
9
|
channelType?: undefined;
|
|
@@ -21,7 +21,7 @@ export type FilterBuilderGenerators<TFilters, TContext extends Record<string, un
|
|
|
21
21
|
generate: (context: TContext) => Partial<TFilters> | null;
|
|
22
22
|
};
|
|
23
23
|
};
|
|
24
|
-
export type FilterBuilderOptions<TFilters, TContext extends Record<string, unknown>> = {
|
|
24
|
+
export type FilterBuilderOptions<TFilters, TContext extends Record<string, unknown> = Record<string, unknown>> = {
|
|
25
25
|
initialFilterConfig?: FilterBuilderGenerators<TFilters, TContext>;
|
|
26
26
|
initialContext?: TContext;
|
|
27
27
|
};
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The minimal CRUD surface a paginator relies on from its item index.
|
|
3
|
+
*
|
|
4
|
+
* The sole implementation is {@link StoreBackedItemIndex}: backed by a shared, client-global store
|
|
5
|
+
* it dedupes content across collections and fans changes out to every holder; backed by a private
|
|
6
|
+
* store (the default, owner-less mode) it behaves as a plain per-instance index. Keeping this as an
|
|
7
|
+
* interface lets `BasePaginator` stay agnostic to which backing a given paginator uses.
|
|
8
|
+
*
|
|
9
|
+
* @template T The domain item type managed by the index.
|
|
10
|
+
*/
|
|
11
|
+
export interface ItemIndexApi<T> {
|
|
12
|
+
setMany(items: T[]): void;
|
|
13
|
+
setOne(item: T): void;
|
|
14
|
+
get(id: string): T | undefined;
|
|
15
|
+
has(id: string): boolean;
|
|
16
|
+
remove(id: string): void;
|
|
17
|
+
clear(): void;
|
|
18
|
+
entries(): [string, T][];
|
|
19
|
+
values(): T[];
|
|
20
|
+
/**
|
|
21
|
+
* Runs `fn`, coalescing any change notifications it produces into a single flush. A private-store
|
|
22
|
+
* (owner-less) index has nothing to fan out and simply runs `fn`.
|
|
23
|
+
*/
|
|
24
|
+
batch<R>(fn: () => R): R;
|
|
25
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { BasePaginator, CursorDeriveContext, PaginationFlags } from '../paginators';
|
|
2
|
+
export declare const deriveCreatedAtAroundPaginationFlags: <T extends {
|
|
3
|
+
id: string;
|
|
4
|
+
created_at: Date;
|
|
5
|
+
}, Q extends {
|
|
6
|
+
created_at_around?: Date | string;
|
|
7
|
+
}, P extends BasePaginator<T, Q>>({ hasMoreHead, hasMoreTail, interval, page, paginator, queryShape, requestedPageSize, }: CursorDeriveContext<T, Q> & {
|
|
8
|
+
paginator: P;
|
|
9
|
+
}) => PaginationFlags;
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CursorDeriveContext, PaginationFlags } from '../paginators';
|
|
2
|
+
export declare const deriveIdAroundPaginationFlags: <T extends {
|
|
3
|
+
id: string;
|
|
4
|
+
}, Q extends {
|
|
5
|
+
id_around?: string;
|
|
6
|
+
}>({ hasMoreHead, hasMoreTail, interval, page, queryShape, requestedPageSize, }: CursorDeriveContext<T, Q>) => PaginationFlags;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './createdAtAroundPaginationFlags';
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { CursorDeriveContext, PaginationFlags } from '../paginators';
|
|
2
|
+
import type { PaginationOptions } from '../../types';
|
|
3
|
+
export declare const deriveLinearPaginationFlags: <T extends {
|
|
4
|
+
id: string;
|
|
5
|
+
created_at: Date;
|
|
6
|
+
}, Q extends PaginationOptions>({ direction, hasMoreHead, hasMoreTail, interval, page, queryShape, requestedPageSize, }: CursorDeriveContext<T, Q>) => PaginationFlags;
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { FieldToDataResolver } from './types.normalization';
|
|
2
|
+
import type { QueryFilters } from '../types';
|
|
3
|
+
export type ItemMatchesFilterOptions<DataSource> = {
|
|
4
|
+
/** Custom resolvers to extract values from an item given a path */
|
|
5
|
+
resolvers?: ReadonlyArray<FieldToDataResolver<DataSource>>;
|
|
6
|
+
};
|
|
7
|
+
export declare function itemMatchesFilter<T>(item: T, filter: QueryFilters<any>, options: ItemMatchesFilterOptions<T>): boolean;
|