File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 234234 "react" : " ^19.0.0" ,
235235 "react-dom" : " ^19.0.0" ,
236236 "semantic-release" : " ^25.0.2" ,
237- "stream-chat" : " ^9.38.0 " ,
237+ "stream-chat" : " ^9.41.1 " ,
238238 "ts-jest" : " ^29.2.5" ,
239239 "typescript" : " ^5.4.5" ,
240240 "typescript-eslint" : " ^8.17.0"
Original file line number Diff line number Diff line change 11import { generateMessage , generateReaction , generateUser } from 'mock-builders' ;
2+ import { fromPartial } from '@total-typescript/shoehorn' ;
23import {
34 countReactions ,
45 getTestClientWithUser ,
@@ -12,6 +13,7 @@ import {
1213 getMessageActions ,
1314 getNonImageAttachments ,
1415 getReadByTooltipText ,
16+ isMessageBlocked ,
1517 isUserMuted ,
1618 mapToUserNameOrId ,
1719 MESSAGE_ACTIONS ,
@@ -514,4 +516,40 @@ describe('Message utils', () => {
514516 ) ;
515517 } ) ;
516518 } ) ;
519+
520+ describe ( 'isMessageBlocked function' , ( ) => {
521+ it ( 'returns true when message.shadowed is true' , ( ) => {
522+ const message =
523+ fromPartial <
524+ LocalMessage >
525+ {
526+ shadowed : true ,
527+ type : 'regular' ,
528+ } ;
529+ expect ( isMessageBlocked ( message ) ) . toBe ( true ) ;
530+ } ) ;
531+
532+ it ( 'returns true for moderation remove error messages when not shadowed' , ( ) => {
533+ const message =
534+ fromPartial <
535+ LocalMessage >
536+ {
537+ moderation : { action : 'remove' } ,
538+ shadowed : false ,
539+ type : 'error' ,
540+ } ;
541+ expect ( isMessageBlocked ( message ) ) . toBe ( true ) ;
542+ } ) ;
543+
544+ it ( 'returns false when message is not shadowed and not a moderation remove error' , ( ) => {
545+ const message =
546+ fromPartial <
547+ LocalMessage >
548+ {
549+ shadowed : false ,
550+ type : 'regular' ,
551+ } ;
552+ expect ( isMessageBlocked ( message ) ) . toBe ( false ) ;
553+ } ) ;
554+ } ) ;
517555} ) ;
Original file line number Diff line number Diff line change @@ -497,11 +497,12 @@ export const isMessageBounced = (
497497 message . moderation ?. action === 'bounce' ) ;
498498
499499export const isMessageBlocked = (
500- message : Pick < LocalMessage , 'type' | 'moderation' | 'moderation_details' > ,
500+ message : Pick < LocalMessage , 'type' | 'moderation' | 'moderation_details' | 'shadowed' > ,
501501) =>
502- message . type === 'error' &&
503- ( message . moderation_details ?. action === 'MESSAGE_RESPONSE_ACTION_REMOVE' ||
504- message . moderation ?. action === 'remove' ) ;
502+ message . shadowed ||
503+ ( message . type === 'error' &&
504+ ( message . moderation_details ?. action === 'MESSAGE_RESPONSE_ACTION_REMOVE' ||
505+ message . moderation ?. action === 'remove' ) ) ;
505506
506507export const isMessageEdited = ( message : Pick < LocalMessage , 'message_text_updated_at' > ) =>
507508 ! ! message . message_text_updated_at ;
Original file line number Diff line number Diff line change @@ -11936,10 +11936,10 @@ stdin-discarder@^0.2.2:
1193611936 resolved "https://registry.yarnpkg.com/stdin-discarder/-/stdin-discarder-0.2.2.tgz#390037f44c4ae1a1ae535c5fe38dc3aba8d997be"
1193711937 integrity sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==
1193811938
11939- stream-chat@^9.38.0 :
11940- version "9.38.0 "
11941- resolved "https://registry.yarnpkg.com/stream-chat/-/stream-chat-9.38.0 .tgz#5c13eb8bbc2fa4adb774687b0c9c51f129d1b458 "
11942- integrity sha512-nyTFKHnhGfk1Op/xuZzPKzM9uNTy4TBma69+ApwGj/UtrK2pT6rSaU0Qy/oAqub+Bh7jR2/5vlV/8FWJ2BObFg ==
11939+ stream-chat@^9.41.1 :
11940+ version "9.41.1 "
11941+ resolved "https://registry.yarnpkg.com/stream-chat/-/stream-chat-9.41.1 .tgz#a877c8aa800d78b497eec2fad636345d4422309c "
11942+ integrity sha512-W8zjfINYol2UtdRMz2t/NN2GyjDrvb4pJgKmhtuRYzCY1u0Cjezcsu5OCNgyAM0QsenlY6tRqnvAU8Qam5R49Q ==
1194311943 dependencies:
1194411944 "@types/jsonwebtoken" "^9.0.8"
1194511945 "@types/ws" "^8.5.14"
You can’t perform that action at this time.
0 commit comments