stream-chat 8.25.0 → 8.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/src/types.ts CHANGED
@@ -41,6 +41,8 @@ export type DefaultGenerics = {
41
41
  commandType: LiteralStringForUnion;
42
42
  eventType: UR;
43
43
  messageType: UR;
44
+ pollOptionType: UR;
45
+ pollType: UR;
44
46
  reactionType: UR;
45
47
  userType: UR;
46
48
  };
@@ -51,6 +53,8 @@ export type ExtendableGenerics = {
51
53
  commandType: string;
52
54
  eventType: UR;
53
55
  messageType: UR;
56
+ pollOptionType: UR;
57
+ pollType: UR;
54
58
  reactionType: UR;
55
59
  userType: UR;
56
60
  };
@@ -93,6 +97,7 @@ export type AppSettingsAPIResponse<StreamChatGenerics extends ExtendableGenerics
93
97
  message_retention?: string;
94
98
  mutes?: boolean;
95
99
  name?: string;
100
+ polls?: boolean;
96
101
  push_notifications?: boolean;
97
102
  quotes?: boolean;
98
103
  reactions?: boolean;
@@ -452,6 +457,8 @@ export type FormatMessageResponse<StreamChatGenerics extends ExtendableGenerics
452
457
  commandType: StreamChatGenerics['commandType'];
453
458
  eventType: StreamChatGenerics['eventType'];
454
459
  messageType: {};
460
+ pollOptionType: StreamChatGenerics['pollOptionType'];
461
+ pollType: StreamChatGenerics['pollType'];
455
462
  reactionType: StreamChatGenerics['reactionType'];
456
463
  userType: StreamChatGenerics['userType'];
457
464
  }>,
@@ -614,6 +621,7 @@ export type MessageResponse<
614
621
  export type MessageResponseBase<
615
622
  StreamChatGenerics extends ExtendableGenerics = DefaultGenerics
616
623
  > = MessageBase<StreamChatGenerics> & {
624
+ poll: PollResponse<StreamChatGenerics>;
617
625
  type: MessageLabel;
618
626
  args?: string;
619
627
  before_message_send_failed?: boolean;
@@ -890,6 +898,7 @@ export type CreateChannelOptions<StreamChatGenerics extends ExtendableGenerics =
890
898
  mutes?: boolean;
891
899
  name?: string;
892
900
  permissions?: PermissionObject[];
901
+ polls?: boolean;
893
902
  push_notifications?: boolean;
894
903
  quotes?: boolean;
895
904
  reactions?: boolean;
@@ -1159,6 +1168,8 @@ export type Event<StreamChatGenerics extends ExtendableGenerics = DefaultGeneric
1159
1168
  mode?: string;
1160
1169
  online?: boolean;
1161
1170
  parent_id?: string;
1171
+ poll?: PollResponse<StreamChatGenerics>;
1172
+ poll_vote?: PollVote<StreamChatGenerics>;
1162
1173
  queriedChannels?: {
1163
1174
  channels: ChannelAPIResponse<StreamChatGenerics>[];
1164
1175
  isLatestMessageSet?: boolean;
@@ -1365,6 +1376,8 @@ export type ChannelFilters<StreamChatGenerics extends ExtendableGenerics = Defau
1365
1376
  commandType: StreamChatGenerics['commandType'];
1366
1377
  eventType: StreamChatGenerics['eventType'];
1367
1378
  messageType: StreamChatGenerics['messageType'];
1379
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1380
+ pollType: StreamChatGenerics['pollType'];
1368
1381
  reactionType: StreamChatGenerics['reactionType'];
1369
1382
  userType: StreamChatGenerics['userType'];
1370
1383
  }>,
@@ -1378,6 +1391,8 @@ export type ChannelFilters<StreamChatGenerics extends ExtendableGenerics = Defau
1378
1391
  commandType: StreamChatGenerics['commandType'];
1379
1392
  eventType: StreamChatGenerics['eventType'];
1380
1393
  messageType: StreamChatGenerics['messageType'];
1394
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1395
+ pollType: StreamChatGenerics['pollType'];
1381
1396
  reactionType: StreamChatGenerics['reactionType'];
1382
1397
  userType: StreamChatGenerics['userType'];
1383
1398
  }>[Key]
@@ -1390,6 +1405,8 @@ export type ChannelFilters<StreamChatGenerics extends ExtendableGenerics = Defau
1390
1405
  commandType: StreamChatGenerics['commandType'];
1391
1406
  eventType: StreamChatGenerics['eventType'];
1392
1407
  messageType: StreamChatGenerics['messageType'];
1408
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1409
+ pollType: StreamChatGenerics['pollType'];
1393
1410
  reactionType: StreamChatGenerics['reactionType'];
1394
1411
  userType: StreamChatGenerics['userType'];
1395
1412
  }>[Key]
@@ -1397,6 +1414,94 @@ export type ChannelFilters<StreamChatGenerics extends ExtendableGenerics = Defau
1397
1414
  }
1398
1415
  >;
1399
1416
 
1417
+ export type QueryPollsOptions = Pager;
1418
+
1419
+ export type VotesFiltersOptions = {
1420
+ is_answer?: boolean;
1421
+ option_id?: string;
1422
+ user_id?: string;
1423
+ };
1424
+
1425
+ export type QueryVotesOptions = Pager;
1426
+
1427
+ export type QueryPollsFilters = QueryFilters<
1428
+ {
1429
+ id?: RequireOnlyOne<Pick<QueryFilter<PollResponse['id']>, '$eq' | '$in'>> | PrimitiveFilter<PollResponse['id']>;
1430
+ } & {
1431
+ user_id?:
1432
+ | RequireOnlyOne<Pick<QueryFilter<VotesFiltersOptions['user_id']>, '$eq' | '$in'>>
1433
+ | PrimitiveFilter<VotesFiltersOptions['user_id']>;
1434
+ } & {
1435
+ is_closed?:
1436
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['is_closed']>, '$eq'>>
1437
+ | PrimitiveFilter<PollResponse['is_closed']>;
1438
+ } & {
1439
+ max_votes_allowed?:
1440
+ | RequireOnlyOne<
1441
+ Pick<QueryFilter<PollResponse['max_votes_allowed']>, '$eq' | '$ne' | '$gt' | '$lt' | '$gte' | '$lte'>
1442
+ >
1443
+ | PrimitiveFilter<PollResponse['max_votes_allowed']>;
1444
+ } & {
1445
+ allow_answers?:
1446
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['allow_answers']>, '$eq'>>
1447
+ | PrimitiveFilter<PollResponse['allow_answers']>;
1448
+ } & {
1449
+ allow_user_suggested_options?:
1450
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['allow_user_suggested_options']>, '$eq'>>
1451
+ | PrimitiveFilter<PollResponse['allow_user_suggested_options']>;
1452
+ } & {
1453
+ voting_visibility?:
1454
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['voting_visibility']>, '$eq'>>
1455
+ | PrimitiveFilter<PollResponse['voting_visibility']>;
1456
+ } & {
1457
+ created_at?:
1458
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['created_at']>, '$eq' | '$gt' | '$lt' | '$gte' | '$lte'>>
1459
+ | PrimitiveFilter<PollResponse['created_at']>;
1460
+ } & {
1461
+ created_by_id?:
1462
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['created_by_id']>, '$eq' | '$in'>>
1463
+ | PrimitiveFilter<PollResponse['created_by_id']>;
1464
+ } & {
1465
+ updated_at?:
1466
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['updated_at']>, '$eq' | '$gt' | '$lt' | '$gte' | '$lte'>>
1467
+ | PrimitiveFilter<PollResponse['updated_at']>;
1468
+ } & {
1469
+ name?:
1470
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['name']>, '$eq' | '$in'>>
1471
+ | PrimitiveFilter<PollResponse['name']>;
1472
+ }
1473
+ >;
1474
+
1475
+ export type QueryVotesFilters = QueryFilters<
1476
+ {
1477
+ id?: RequireOnlyOne<Pick<QueryFilter<PollResponse['id']>, '$eq' | '$in'>> | PrimitiveFilter<PollResponse['id']>;
1478
+ } & {
1479
+ option_id?:
1480
+ | RequireOnlyOne<Pick<QueryFilter<VotesFiltersOptions['option_id']>, '$eq' | '$in'>>
1481
+ | PrimitiveFilter<VotesFiltersOptions['option_id']>;
1482
+ } & {
1483
+ is_answer?:
1484
+ | RequireOnlyOne<Pick<QueryFilter<VotesFiltersOptions['is_answer']>, '$eq'>>
1485
+ | PrimitiveFilter<VotesFiltersOptions['is_answer']>;
1486
+ } & {
1487
+ user_id?:
1488
+ | RequireOnlyOne<Pick<QueryFilter<VotesFiltersOptions['user_id']>, '$eq' | '$in'>>
1489
+ | PrimitiveFilter<VotesFiltersOptions['user_id']>;
1490
+ } & {
1491
+ created_at?:
1492
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['created_at']>, '$eq' | '$gt' | '$lt' | '$gte' | '$lte'>>
1493
+ | PrimitiveFilter<PollResponse['created_at']>;
1494
+ } & {
1495
+ created_by_id?:
1496
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['created_by_id']>, '$eq' | '$in'>>
1497
+ | PrimitiveFilter<PollResponse['created_by_id']>;
1498
+ } & {
1499
+ updated_at?:
1500
+ | RequireOnlyOne<Pick<QueryFilter<PollResponse['updated_at']>, '$eq' | '$gt' | '$lt' | '$gte' | '$lte'>>
1501
+ | PrimitiveFilter<PollResponse['updated_at']>;
1502
+ }
1503
+ >;
1504
+
1400
1505
  export type ContainsOperator<CustomType = {}> = {
1401
1506
  [Key in keyof CustomType]?: CustomType[Key] extends (infer ContainType)[]
1402
1507
  ?
@@ -1429,6 +1534,8 @@ export type MessageFilters<StreamChatGenerics extends ExtendableGenerics = Defau
1429
1534
  commandType: StreamChatGenerics['commandType'];
1430
1535
  eventType: StreamChatGenerics['eventType'];
1431
1536
  messageType: {};
1537
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1538
+ pollType: StreamChatGenerics['pollType'];
1432
1539
  reactionType: StreamChatGenerics['reactionType'];
1433
1540
  userType: StreamChatGenerics['userType'];
1434
1541
  }>,
@@ -1442,6 +1549,8 @@ export type MessageFilters<StreamChatGenerics extends ExtendableGenerics = Defau
1442
1549
  commandType: StreamChatGenerics['commandType'];
1443
1550
  eventType: StreamChatGenerics['eventType'];
1444
1551
  messageType: {};
1552
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1553
+ pollType: StreamChatGenerics['pollType'];
1445
1554
  reactionType: StreamChatGenerics['reactionType'];
1446
1555
  userType: StreamChatGenerics['userType'];
1447
1556
  }>[Key]
@@ -1454,6 +1563,8 @@ export type MessageFilters<StreamChatGenerics extends ExtendableGenerics = Defau
1454
1563
  commandType: StreamChatGenerics['commandType'];
1455
1564
  eventType: StreamChatGenerics['eventType'];
1456
1565
  messageType: {};
1566
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1567
+ pollType: StreamChatGenerics['pollType'];
1457
1568
  reactionType: StreamChatGenerics['reactionType'];
1458
1569
  userType: StreamChatGenerics['userType'];
1459
1570
  }>[Key]
@@ -1532,6 +1643,8 @@ export type UserFilters<StreamChatGenerics extends ExtendableGenerics = DefaultG
1532
1643
  commandType: StreamChatGenerics['commandType'];
1533
1644
  eventType: StreamChatGenerics['eventType'];
1534
1645
  messageType: StreamChatGenerics['messageType'];
1646
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1647
+ pollType: StreamChatGenerics['pollType'];
1535
1648
  reactionType: StreamChatGenerics['reactionType'];
1536
1649
  userType: {};
1537
1650
  }>,
@@ -1545,6 +1658,8 @@ export type UserFilters<StreamChatGenerics extends ExtendableGenerics = DefaultG
1545
1658
  commandType: StreamChatGenerics['commandType'];
1546
1659
  eventType: StreamChatGenerics['eventType'];
1547
1660
  messageType: StreamChatGenerics['messageType'];
1661
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1662
+ pollType: StreamChatGenerics['pollType'];
1548
1663
  reactionType: StreamChatGenerics['reactionType'];
1549
1664
  userType: {};
1550
1665
  }>[Key]
@@ -1557,6 +1672,8 @@ export type UserFilters<StreamChatGenerics extends ExtendableGenerics = DefaultG
1557
1672
  commandType: StreamChatGenerics['commandType'];
1558
1673
  eventType: StreamChatGenerics['eventType'];
1559
1674
  messageType: StreamChatGenerics['messageType'];
1675
+ pollOptionType: StreamChatGenerics['pollOptionType'];
1676
+ pollType: StreamChatGenerics['pollType'];
1560
1677
  reactionType: StreamChatGenerics['reactionType'];
1561
1678
  userType: {};
1562
1679
  }>[Key]
@@ -1631,6 +1748,26 @@ export type QuerySort<StreamChatGenerics extends ExtendableGenerics = DefaultGen
1631
1748
  | SearchMessageSort<StreamChatGenerics>
1632
1749
  | UserSort<StreamChatGenerics>;
1633
1750
 
1751
+ export type PollSort = PollSortBase | Array<PollSortBase>;
1752
+
1753
+ export type PollSortBase = {
1754
+ created_at?: AscDesc;
1755
+ id?: AscDesc;
1756
+ is_closed?: AscDesc;
1757
+ name?: AscDesc;
1758
+ updated_at?: AscDesc;
1759
+ };
1760
+
1761
+ export type VoteSort = VoteSortBase | Array<VoteSortBase>;
1762
+
1763
+ export type VoteSortBase = {
1764
+ created_at?: AscDesc;
1765
+ id?: AscDesc;
1766
+ is_closed?: AscDesc;
1767
+ name?: AscDesc;
1768
+ updated_at?: AscDesc;
1769
+ };
1770
+
1634
1771
  /**
1635
1772
  * Base Types
1636
1773
  */
@@ -1820,6 +1957,7 @@ export type ChannelConfigFields = {
1820
1957
  message_retention?: string;
1821
1958
  mutes?: boolean;
1822
1959
  name?: string;
1960
+ polls?: boolean;
1823
1961
  push_notifications?: boolean;
1824
1962
  quotes?: boolean;
1825
1963
  reactions?: boolean;
@@ -2103,7 +2241,8 @@ export type EndpointName =
2103
2241
  | 'ListImports'
2104
2242
  | 'UpsertPushProvider'
2105
2243
  | 'DeletePushProvider'
2106
- | 'ListPushProviders';
2244
+ | 'ListPushProviders'
2245
+ | 'CreatePoll';
2107
2246
 
2108
2247
  export type ExportChannelRequest = {
2109
2248
  id: string;
@@ -2203,6 +2342,7 @@ export type MessageBase<
2203
2342
  pin_expires?: string | null;
2204
2343
  pinned?: boolean;
2205
2344
  pinned_at?: string | null;
2345
+ poll_id?: string;
2206
2346
  quoted_message_id?: string;
2207
2347
  show_in_channel?: boolean;
2208
2348
  silent?: boolean;
@@ -2479,8 +2619,8 @@ export type DeleteType = 'soft' | 'hard' | 'pruning';
2479
2619
  DeleteUserOptions specifies a collection of one or more `user_ids` to be deleted.
2480
2620
 
2481
2621
  `user`:
2482
- - soft: marks user as deleted and retains all user data
2483
- - pruning: marks user as deleted and nullifies user information
2622
+ - soft: marks user as deleted and retains all user data
2623
+ - pruning: marks user as deleted and nullifies user information
2484
2624
  - hard: deletes user completely - this requires hard option for messages and conversation as well
2485
2625
  `conversations`:
2486
2626
  - soft: marks all conversation channels as deleted (same effect as Delete Channels with 'hard' option disabled)
@@ -2743,3 +2883,152 @@ export class ErrorFromResponse<T> extends Error {
2743
2883
  response?: AxiosResponse<T>;
2744
2884
  status?: number;
2745
2885
  }
2886
+
2887
+ export type QueryPollsResponse<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
2888
+ polls: PollResponse<StreamChatGenerics>[];
2889
+ next?: string;
2890
+ };
2891
+
2892
+ export type CreatePollAPIResponse<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
2893
+ poll: PollResponse<StreamChatGenerics>;
2894
+ };
2895
+
2896
+ export type GetPollAPIResponse<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
2897
+ poll: PollResponse<StreamChatGenerics>;
2898
+ };
2899
+
2900
+ export type UpdatePollAPIResponse<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
2901
+ poll: PollResponse<StreamChatGenerics>;
2902
+ };
2903
+
2904
+ export type PollResponse<
2905
+ StreamChatGenerics extends ExtendableGenerics = DefaultGenerics
2906
+ > = StreamChatGenerics['pollType'] & {
2907
+ answers_count: number;
2908
+ created_at: string;
2909
+ created_by: UserResponse<StreamChatGenerics> | null;
2910
+ created_by_id: string;
2911
+ enforce_unique_vote: boolean;
2912
+ id: string;
2913
+ latest_answers: PollVote<StreamChatGenerics>[];
2914
+ latest_votes_by_option: Record<string, PollVote<StreamChatGenerics>[]>;
2915
+ max_votes_allowed: number;
2916
+ name: string;
2917
+ options: PollOption<StreamChatGenerics>[];
2918
+ updated_at: string;
2919
+ vote_count: number;
2920
+ vote_counts_by_option: Record<string, number>;
2921
+ allow_answers?: boolean;
2922
+ allow_user_suggested_options?: boolean;
2923
+ channel?: ChannelAPIResponse<StreamChatGenerics> | null;
2924
+ cid?: string;
2925
+ description?: string;
2926
+ is_closed?: boolean;
2927
+ own_votes?: PollVote<StreamChatGenerics>[];
2928
+ voting_visibility?: VotingVisibility;
2929
+ };
2930
+
2931
+ export type PollOption<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
2932
+ created_at: string;
2933
+ id: string;
2934
+ poll_id: string;
2935
+ text: string;
2936
+ updated_at: string;
2937
+ vote_count: number;
2938
+ votes?: PollVote<StreamChatGenerics>[];
2939
+ };
2940
+
2941
+ export enum VotingVisibility {
2942
+ anonymous = 'anonymous',
2943
+ public = 'public',
2944
+ }
2945
+
2946
+ export type PollData<
2947
+ StreamChatGenerics extends ExtendableGenerics = DefaultGenerics
2948
+ > = StreamChatGenerics['pollType'] & {
2949
+ name: string;
2950
+ allow_answers?: boolean;
2951
+ allow_user_suggested_options?: boolean;
2952
+ description?: string;
2953
+ enforce_unique_vote?: boolean;
2954
+ id?: string;
2955
+ is_closed?: boolean;
2956
+ max_votes_allowed?: number;
2957
+ options?: PollOptionData<StreamChatGenerics>[];
2958
+ user_id?: string;
2959
+ voting_visibility?: VotingVisibility;
2960
+ };
2961
+
2962
+ export type PartialPollUpdate<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
2963
+ // id: string;
2964
+ set?: Partial<PollResponse<StreamChatGenerics>>;
2965
+ unset?: Array<keyof PollResponse<StreamChatGenerics>>;
2966
+ };
2967
+
2968
+ export type PollOptionData<
2969
+ StreamChatGenerics extends ExtendableGenerics = DefaultGenerics
2970
+ > = StreamChatGenerics['pollType'] & {
2971
+ text: string;
2972
+ id?: string;
2973
+ position?: number;
2974
+ };
2975
+
2976
+ export type PartialPollOptionUpdate<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
2977
+ set?: Partial<PollOptionResponse<StreamChatGenerics>>;
2978
+ unset?: Array<keyof PollOptionResponse<StreamChatGenerics>>;
2979
+ };
2980
+
2981
+ export type PollVoteData = {
2982
+ answer_text?: string;
2983
+ is_answer?: boolean;
2984
+ option_id?: string;
2985
+ };
2986
+
2987
+ export type PollPaginationOptions = {
2988
+ limit?: number;
2989
+ next?: string;
2990
+ };
2991
+
2992
+ export type CreatePollOptionAPIResponse<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
2993
+ poll_option: PollOptionResponse<StreamChatGenerics>;
2994
+ };
2995
+
2996
+ export type GetPollOptionAPIResponse<
2997
+ StreamChatGenerics extends ExtendableGenerics = DefaultGenerics
2998
+ > = CreatePollOptionAPIResponse<StreamChatGenerics>;
2999
+ export type UpdatePollOptionAPIResponse<
3000
+ StreamChatGenerics extends ExtendableGenerics = DefaultGenerics
3001
+ > = CreatePollOptionAPIResponse<StreamChatGenerics>;
3002
+
3003
+ export type PollOptionResponse<
3004
+ StreamChatGenerics extends ExtendableGenerics = DefaultGenerics
3005
+ > = StreamChatGenerics['pollType'] & {
3006
+ created_at: string;
3007
+ id: string;
3008
+ poll_id: string;
3009
+ position: number;
3010
+ text: string;
3011
+ updated_at: string;
3012
+ vote_count: number;
3013
+ votes?: PollVote<StreamChatGenerics>[];
3014
+ };
3015
+
3016
+ export type PollVote<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
3017
+ created_at: string;
3018
+ id: string;
3019
+ is_answer: boolean;
3020
+ poll_id: string;
3021
+ user_id: string;
3022
+ answer_text?: string;
3023
+ option_id?: string;
3024
+ user?: UserResponse<StreamChatGenerics>;
3025
+ };
3026
+
3027
+ export type PollVotesAPIResponse<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
3028
+ votes: PollVote<StreamChatGenerics>[];
3029
+ next?: string;
3030
+ };
3031
+
3032
+ export type CastVoteAPIResponse<StreamChatGenerics extends ExtendableGenerics = DefaultGenerics> = {
3033
+ vote: PollVote<StreamChatGenerics>;
3034
+ };