@planningcenter/chat-react-native 4.1.1-qa-staging.1 → 4.1.1-qa-staging.5
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/build/index.d.ts +1 -1
- package/build/index.d.ts.map +1 -1
- package/build/index.js +1 -1
- package/build/index.js.map +1 -1
- package/build/navigation/index.d.ts +2 -2
- package/build/navigation/index.d.ts.map +1 -1
- package/build/navigation/index.js +4 -4
- package/build/navigation/index.js.map +1 -1
- package/build/screens/conversation_new/components/services_form.js +9 -8
- package/build/screens/conversation_new/components/services_form.js.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.d.ts.map +1 -1
- package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js +1 -2
- package/build/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.js.map +1 -1
- package/package.json +3 -3
- package/src/__tests__/screens/conversation_new/components/services_form.test.tsx +91 -0
- package/src/components/conversation/__tests__/message_list.test.tsx +7 -1
- package/src/index.tsx +1 -1
- package/src/navigation/index.tsx +3 -4
- package/src/screens/conversation_new/components/services_form.tsx +5 -5
- package/src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx +3 -2
package/build/index.d.ts
CHANGED
|
@@ -16,5 +16,5 @@ export type { ENV, TemporaryDefaultColorsType } from './utils';
|
|
|
16
16
|
export * from './utils/client';
|
|
17
17
|
export * from './utils/host_bridge';
|
|
18
18
|
export * from './utils/native_adapters';
|
|
19
|
-
export { ResponseError } from './utils/response_error';
|
|
19
|
+
export { isResponseLike, ResponseError } from './utils/response_error';
|
|
20
20
|
//# sourceMappingURL=index.d.ts.map
|
package/build/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAA;AAE7B,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACvF,cAAc,yBAAyB,CAAA;AACvC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAC3D,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAA;AACtF,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,sBAAsB,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAC9D,YAAY,EAAE,GAAG,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAC9D,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,OAAO,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,sBAAsB,CAAA;AAE7B,cAAc,cAAc,CAAA;AAC5B,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,WAAW,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AACvF,cAAc,yBAAyB,CAAA;AACvC,cAAc,4BAA4B,CAAA;AAC1C,cAAc,cAAc,CAAA;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAA;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,gCAAgC,CAAA;AAC5D,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,0BAA0B,CAAA;AAC3D,cAAc,WAAW,CAAA;AACzB,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAA;AACtF,cAAc,SAAS,CAAA;AACvB,OAAO,EAAE,sBAAsB,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,SAAS,CAAA;AAC9D,YAAY,EAAE,GAAG,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAC9D,cAAc,gBAAgB,CAAA;AAC9B,cAAc,qBAAqB,CAAA;AACnC,cAAc,yBAAyB,CAAA;AACvC,OAAO,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA"}
|
package/build/index.js
CHANGED
|
@@ -15,5 +15,5 @@ export { platformFontWeightBold, Session, Uri } from './utils';
|
|
|
15
15
|
export * from './utils/client';
|
|
16
16
|
export * from './utils/host_bridge';
|
|
17
17
|
export * from './utils/native_adapters';
|
|
18
|
-
export { ResponseError } from './utils/response_error';
|
|
18
|
+
export { isResponseLike, ResponseError } from './utils/response_error';
|
|
19
19
|
//# sourceMappingURL=index.js.map
|
package/build/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["ApiProvider","chatQueryClient","useFocusManager","ScreenLayout","CustomEvent","default","Event","AgeCheckUnderageScreen","platformFontWeightBold","Session","Uri","ResponseError"],"sources":["../src/index.tsx"],"sourcesContent":["import './icons/font_awesome'\n\nexport * from './components'\nexport * from './hooks'\nexport { ApiProvider, chatQueryClient, useFocusManager } from './contexts/api_provider'\nexport * from './contexts/chat_context'\nexport * from './contexts/session_context'\nexport * from './navigation'\nexport { ScreenLayout } from './navigation/screenLayout'\nexport { CustomEvent } from './polyfills/events/CustomEvent'\nexport { default as Event } from './polyfills/events/Event'\nexport * from './screens'\nexport { AgeCheckUnderageScreen } from './screens/age_check/age_check_underage_screen' // TODO: add to barrel\nexport * from './types'\nexport { platformFontWeightBold, Session, Uri } from './utils'\nexport type { ENV, TemporaryDefaultColorsType } from './utils'\nexport * from './utils/client'\nexport * from './utils/host_bridge'\nexport * from './utils/native_adapters'\nexport { ResponseError } from './utils/response_error'\n"],"mappings":"AAAA,OAAO,sBAAsB;AAE7B,cAAc,cAAc;AAC5B,cAAc,SAAS;AACvB,SAASA,WAAW,EAAEC,eAAe,EAAEC,eAAe,QAAQ,yBAAyB;AACvF,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,cAAc;AAC5B,SAASC,YAAY,QAAQ,2BAA2B;AACxD,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,SAASC,OAAO,IAAIC,KAAK,QAAQ,0BAA0B;AAC3D,cAAc,WAAW;AACzB,SAASC,sBAAsB,QAAQ,+CAA+C,EAAC;AACvF,cAAc,SAAS;AACvB,SAASC,sBAAsB,EAAEC,OAAO,EAAEC,GAAG,QAAQ,SAAS;AAE9D,cAAc,gBAAgB;AAC9B,cAAc,qBAAqB;AACnC,cAAc,yBAAyB;AACvC,SAASC,aAAa,QAAQ,wBAAwB","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["ApiProvider","chatQueryClient","useFocusManager","ScreenLayout","CustomEvent","default","Event","AgeCheckUnderageScreen","platformFontWeightBold","Session","Uri","isResponseLike","ResponseError"],"sources":["../src/index.tsx"],"sourcesContent":["import './icons/font_awesome'\n\nexport * from './components'\nexport * from './hooks'\nexport { ApiProvider, chatQueryClient, useFocusManager } from './contexts/api_provider'\nexport * from './contexts/chat_context'\nexport * from './contexts/session_context'\nexport * from './navigation'\nexport { ScreenLayout } from './navigation/screenLayout'\nexport { CustomEvent } from './polyfills/events/CustomEvent'\nexport { default as Event } from './polyfills/events/Event'\nexport * from './screens'\nexport { AgeCheckUnderageScreen } from './screens/age_check/age_check_underage_screen' // TODO: add to barrel\nexport * from './types'\nexport { platformFontWeightBold, Session, Uri } from './utils'\nexport type { ENV, TemporaryDefaultColorsType } from './utils'\nexport * from './utils/client'\nexport * from './utils/host_bridge'\nexport * from './utils/native_adapters'\nexport { isResponseLike, ResponseError } from './utils/response_error'\n"],"mappings":"AAAA,OAAO,sBAAsB;AAE7B,cAAc,cAAc;AAC5B,cAAc,SAAS;AACvB,SAASA,WAAW,EAAEC,eAAe,EAAEC,eAAe,QAAQ,yBAAyB;AACvF,cAAc,yBAAyB;AACvC,cAAc,4BAA4B;AAC1C,cAAc,cAAc;AAC5B,SAASC,YAAY,QAAQ,2BAA2B;AACxD,SAASC,WAAW,QAAQ,gCAAgC;AAC5D,SAASC,OAAO,IAAIC,KAAK,QAAQ,0BAA0B;AAC3D,cAAc,WAAW;AACzB,SAASC,sBAAsB,QAAQ,+CAA+C,EAAC;AACvF,cAAc,SAAS;AACvB,SAASC,sBAAsB,EAAEC,OAAO,EAAEC,GAAG,QAAQ,SAAS;AAE9D,cAAc,gBAAgB;AAC9B,cAAc,qBAAqB;AACnC,cAAc,yBAAyB;AACvC,SAASC,cAAc,EAAEC,aAAa,QAAQ,wBAAwB","ignoreList":[]}
|
|
@@ -65,7 +65,7 @@ export declare const NewConversationStack: import("@react-navigation/core").Type
|
|
|
65
65
|
readonly ConversationSelectDirectMessageRecipients: {
|
|
66
66
|
readonly screen: typeof ConversationSelectDirectMessageRecipientsScreen;
|
|
67
67
|
readonly if: () => boolean;
|
|
68
|
-
readonly options: ({ navigation
|
|
68
|
+
readonly options: ({ navigation }: {
|
|
69
69
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
70
70
|
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
71
71
|
theme: ReactNavigation.Theme;
|
|
@@ -248,7 +248,7 @@ export declare const ChatStack: import("@react-navigation/core").TypedNavigator<
|
|
|
248
248
|
readonly ConversationSelectDirectMessageRecipients: {
|
|
249
249
|
readonly screen: typeof ConversationSelectDirectMessageRecipientsScreen;
|
|
250
250
|
readonly if: () => boolean;
|
|
251
|
-
readonly options: ({ navigation
|
|
251
|
+
readonly options: ({ navigation }: {
|
|
252
252
|
route: import("@react-navigation/core").RouteProp<import("@react-navigation/routers").ParamListBase, string>;
|
|
253
253
|
navigation: import("@react-navigation/native-stack").NativeStackNavigationProp<import("@react-navigation/routers").ParamListBase, string, string | undefined>;
|
|
254
254
|
theme: ReactNavigation.Theme;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/navigation/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAGL,4BAA4B,EAC7B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAShE,OAAO,EACL,uBAAuB,EAExB,MAAM,yDAAyD,CAAA;AAChE,OAAO,EACL,kBAAkB,EAGnB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAAE,eAAe,EAA0B,MAAM,8BAA8B,CAAA;AACtF,OAAO,EACL,yBAAyB,EAE1B,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AAWlF,OAAO,EACL,yCAAyC,EAE1C,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEL,kBAAkB,EAEnB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,EAAE,+CAA+C,EAAE,MAAM,gGAAgG,CAAA;AAIhK,OAAO,EACL,4BAA4B,EAE7B,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAA;AAEnF,OAAO,EACL,kCAAkC,EAEnC,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EAAE,+BAA+B,EAAE,MAAM,+CAA+C,CAAA;AAC/F,OAAO,EACL,oBAAoB,EAErB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAA8B,MAAM,kCAAkC,CAAA;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAA;AACpF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAA;AACvF,OAAO,EAAE,eAAe,EAA0B,MAAM,6BAA6B,CAAA;AACrF,OAAO,EAAE,eAAe,EAA0B,MAAM,8BAA8B,CAAA;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EACL,yBAAyB,EAE1B,MAAM,yCAAyC,CAAA;AAGhD,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAA;AAO/D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;kCALA,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/navigation/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAA;AAC1D,OAAO,EAGL,4BAA4B,EAC7B,MAAM,gCAAgC,CAAA;AACvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAA;AAShE,OAAO,EACL,uBAAuB,EAExB,MAAM,yDAAyD,CAAA;AAChE,OAAO,EACL,kBAAkB,EAGnB,MAAM,+CAA+C,CAAA;AACtD,OAAO,EAAE,eAAe,EAA0B,MAAM,8BAA8B,CAAA;AACtF,OAAO,EACL,yBAAyB,EAE1B,MAAM,sDAAsD,CAAA;AAC7D,OAAO,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AAWlF,OAAO,EACL,yCAAyC,EAE1C,MAAM,0DAA0D,CAAA;AACjE,OAAO,EAEL,kBAAkB,EAEnB,MAAM,gCAAgC,CAAA;AAEvC,OAAO,EAAE,+CAA+C,EAAE,MAAM,gGAAgG,CAAA;AAIhK,OAAO,EACL,4BAA4B,EAE7B,MAAM,4CAA4C,CAAA;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,+CAA+C,CAAA;AAEnF,OAAO,EACL,kCAAkC,EAEnC,MAAM,mDAAmD,CAAA;AAC1D,OAAO,EAAE,+BAA+B,EAAE,MAAM,+CAA+C,CAAA;AAC/F,OAAO,EACL,oBAAoB,EAErB,MAAM,mCAAmC,CAAA;AAC1C,OAAO,EAAE,mBAAmB,EAA8B,MAAM,kCAAkC,CAAA;AAClG,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAA;AAC/C,OAAO,EAAE,0BAA0B,EAAE,MAAM,yCAAyC,CAAA;AACpF,OAAO,EAAE,2BAA2B,EAAE,MAAM,2CAA2C,CAAA;AACvF,OAAO,EAAE,eAAe,EAA0B,MAAM,6BAA6B,CAAA;AACrF,OAAO,EAAE,eAAe,EAA0B,MAAM,8BAA8B,CAAA;AACtF,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAA;AAC3D,OAAO,EACL,yBAAyB,EAE1B,MAAM,yCAAyC,CAAA;AAGhD,OAAO,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAA;AAO/D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;kCALA,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmF3D,CAAA;AAEF,eAAO,MAAM,SAAS;;;;;;;;;;;kCArFW,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;8CAA5B,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4S3D,CAAA;AAEF,KAAK,kBAAkB,GAAG,eAAe,CAAC,OAAO,SAAS,CAAC,CAAA;AAE3D,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,eAAe,CAAC;QACxB,UAAU,aAAc,SAAQ,kBAAkB;SAAG;KACtD;CACF"}
|
|
@@ -83,12 +83,12 @@ export const NewConversationStack = createNativeStackNavigator({
|
|
|
83
83
|
screen: ConversationSelectDirectMessageRecipientsScreen,
|
|
84
84
|
if: useDirectMessagesEligible,
|
|
85
85
|
options: ({
|
|
86
|
-
navigation
|
|
87
|
-
route
|
|
86
|
+
navigation
|
|
88
87
|
}) => composeOptions({
|
|
89
|
-
title: 'New conversation'
|
|
88
|
+
title: 'New conversation',
|
|
89
|
+
headerBackVisible: false
|
|
90
90
|
}, withRightClose({
|
|
91
|
-
onPress:
|
|
91
|
+
onPress: navigation.goBack
|
|
92
92
|
}))
|
|
93
93
|
},
|
|
94
94
|
ConversationFilterRecipients: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["createNativeStackNavigator","CardStyleInterpolators","React","composeOptions","withMinimalBack","withRightClose","withRightDone","useDirectMessagesEligible","useQualifiedByAge","AttachmentActionsScreen","AttachmentActionsScreenOptions","AvatarPickerScreen","AvatarPickerScreenOptions","AvatarPickerCreateScreenOptions","BugReportScreen","BugReportScreenOptions","MessageReadReceiptsScreen","MessageReadReceiptsScreenOptions","ConversationDetailsScreen","ConversationFilterReceipientsScreenOptions","ConversationFilterRecipientsScreen","ConversationFiltersScreen","ConversationFiltersScreenOptions","ConversationNewScreen","ConversationNotificationLevelSelectScreen","ConversationNotificationLevelSelectScreenOptions","ConversationScreen","ConversationScreenTitle","ConversationNewEntryScreen","ConversationSelectDirectMessageRecipientsScreen","ConversationSelectGroupRecipientsScreen","ConversationSelectTeamsILeadRecipientsScreen","ConversationSelectTypeScreen","ConversationSelectTypeScreenOptions","ConversationsScreen","GetHelpScreen","GroupNotificationLevelSelectScreen","GroupNotificationLevelSelectScreenOptions","GroupNotificationSettingsScreen","MessageActionsScreen","MessageActionsScreenOptions","MessageReportScreen","MessageReportScreenOptions","NotFound","NotificationSettingsScreen","PreferredAppSelectionScreen","ReactionsScreen","ReactionsScreenOptions","SendGiphyScreen","SendGiphyScreenOptions","SettingsScreen","SystemMessagePeopleScreen","SystemMessagePeopleScreenOptions","TeamConversationScreen","isLiquidGlassEnabled","ScreenLayoutWithChatAccessGate","jsx","_jsx","globalScreenOptions","headerBackButtonDisplayMode","headerShadowVisible","NewConversationStack","initialRouteName","screenOptions","screenLayout","screens","ConversationNewEntry","screen","options","navigation","title","headerBackVisible","onPress","goBack","ConversationSelectGroupRecipients","route","popTo","params","ConversationSelectTeamsILeadRecipients","ConversationSelectDirectMessageRecipients","if","ConversationFilterRecipients","ConversationNew","headerLeft","chat_group_graph_id","group_source_app_name","AvatarPicker","ChatStack","Conversations","headerTitle","ConversationFilters","Conversation","props","conversation_id","badge","deleted","muted","children","getParent","ConversationReply","TeamConversation","animation","cardStyleInterpolator","forNoAnimation","ConversationDetails","presentation","ChatSettings","NotificationSettings","getState","index","PreferredAppSelection","GroupNotificationSettings","GroupNotificationLevelSelect","ConversationNotificationLevelSelect","New","headerShown","GroupConversationNew","SendGiphy","MessageActions","MessageReport","AttachmentActions","ConversationSelectType","Reactions","SystemMessagePeople","MessageReadReceipts","BugReport","GetHelp","linking","path"],"sources":["../../src/navigation/index.tsx"],"sourcesContent":["import { StaticParamList } from '@react-navigation/native'\nimport {\n createNativeStackNavigator,\n NativeStackHeaderRightProps,\n NativeStackNavigationOptions,\n} from '@react-navigation/native-stack'\nimport { CardStyleInterpolators } from '@react-navigation/stack'\nimport React from 'react'\nimport {\n composeOptions,\n withMinimalBack,\n withRightClose,\n withRightDone,\n} from '../components/display/platform_modal_header_buttons'\nimport { useDirectMessagesEligible, useQualifiedByAge } from '../hooks'\nimport {\n AttachmentActionsScreen,\n AttachmentActionsScreenOptions,\n} from '../screens/attachment_actions/attachment_actions_screen'\nimport {\n AvatarPickerScreen,\n AvatarPickerScreenOptions,\n AvatarPickerCreateScreenOptions,\n} from '../screens/avatar_picker/avatar_picker_screen'\nimport { BugReportScreen, BugReportScreenOptions } from '../screens/bug_report_screen'\nimport {\n MessageReadReceiptsScreen,\n MessageReadReceiptsScreenOptions,\n} from '../screens/conversation/message_read_receipts_screen'\nimport { ConversationDetailsScreen } from '../screens/conversation_details_screen'\nimport {\n ConversationFilterReceipientsScreenOptions,\n ConversationFilterRecipientsScreen,\n} from '../screens/conversation_filter_recipients/conversation_filter_recipients_screen'\nimport { ConversationFiltersParams } from '../screens/conversation_filters/screen_props'\nimport {\n ConversationFiltersScreen,\n ConversationFiltersScreenOptions,\n} from '../screens/conversation_filters_screen'\nimport { ConversationNewScreen } from '../screens/conversation_new/conversation_new_screen'\nimport {\n ConversationNotificationLevelSelectScreen,\n ConversationNotificationLevelSelectScreenOptions,\n} from '../screens/conversation_notification_level_select_screen'\nimport {\n ConversationRouteProps,\n ConversationScreen,\n ConversationScreenTitle,\n} from '../screens/conversation_screen'\nimport { ConversationNewEntryScreen } from '../screens/conversation_select_recipients/conversation_new_entry_screen'\nimport { ConversationSelectDirectMessageRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen'\nimport { ConversationSelectGroupRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_group_recipients_screen'\nimport { ConversationSelectTeamsILeadRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen'\nimport { ConversationSelectRecipientsParams } from '../screens/conversation_select_recipients/types/screen_props'\nimport {\n ConversationSelectTypeScreen,\n ConversationSelectTypeScreenOptions,\n} from '../screens/conversation_select_type_screen'\nimport { ConversationsScreen } from '../screens/conversations/conversations_screen'\nimport { GetHelpScreen } from '../screens/get_help_screen'\nimport {\n GroupNotificationLevelSelectScreen,\n GroupNotificationLevelSelectScreenOptions,\n} from '../screens/group_notification_level_select_screen'\nimport { GroupNotificationSettingsScreen } from '../screens/group_notification_settings_screen'\nimport {\n MessageActionsScreen,\n MessageActionsScreenOptions,\n} from '../screens/message_actions_screen'\nimport { MessageReportScreen, MessageReportScreenOptions } from '../screens/message_report_screen'\nimport { NotFound } from '../screens/not_found'\nimport { NotificationSettingsScreen } from '../screens/notification_settings_screen'\nimport { PreferredAppSelectionScreen } from '../screens/preferred_app_selection_screen'\nimport { ReactionsScreen, ReactionsScreenOptions } from '../screens/reactions_screen'\nimport { SendGiphyScreen, SendGiphyScreenOptions } from '../screens/send_giphy_screen'\nimport { SettingsScreen } from '../screens/settings_screen'\nimport {\n SystemMessagePeopleScreen,\n SystemMessagePeopleScreenOptions,\n} from '../screens/system_message_people_screen'\nimport { TeamConversationScreen } from '../screens/team_conversation_screen'\nimport { isLiquidGlassEnabled } from '../utils/liquid_glass'\nimport { ScreenLayoutWithChatAccessGate } from './screenLayout'\n\nconst globalScreenOptions: () => NativeStackNavigationOptions = () => ({\n headerBackButtonDisplayMode: 'minimal',\n ...(isLiquidGlassEnabled() ? { headerShadowVisible: false } : {}),\n})\n\nexport const NewConversationStack = createNativeStackNavigator({\n initialRouteName: 'ConversationNewEntry',\n screenOptions: globalScreenOptions,\n screenLayout: ScreenLayoutWithChatAccessGate,\n screens: {\n ConversationNewEntry: {\n screen: ConversationNewEntryScreen,\n options: ({ navigation }) =>\n composeOptions(\n {\n title: 'New conversation',\n headerBackVisible: false,\n },\n withRightClose({ onPress: navigation.goBack })\n ),\n },\n ConversationSelectGroupRecipients: {\n screen: ConversationSelectGroupRecipientsScreen,\n options: ({ navigation, route }) =>\n composeOptions(\n {\n title: 'New conversation',\n },\n withRightClose({\n onPress: () => navigation.popTo('Conversations', route.params),\n })\n ),\n },\n ConversationSelectTeamsILeadRecipients: {\n screen: ConversationSelectTeamsILeadRecipientsScreen,\n options: ({ navigation, route }) =>\n composeOptions(\n {\n title: 'New conversation',\n },\n withRightClose({\n onPress: () => navigation.popTo('Conversations', route.params),\n })\n ),\n },\n ConversationSelectDirectMessageRecipients: {\n screen: ConversationSelectDirectMessageRecipientsScreen,\n if: useDirectMessagesEligible,\n options: ({ navigation, route }) =>\n composeOptions(\n {\n title: 'New conversation',\n },\n withRightClose({\n onPress: () => navigation.popTo('Conversations', route.params),\n })\n ),\n },\n ConversationFilterRecipients: {\n screen: ConversationFilterRecipientsScreen,\n options: ConversationFilterReceipientsScreenOptions,\n },\n ConversationNew: {\n screen: ConversationNewScreen,\n options: ({ navigation, route }) =>\n composeOptions(\n {\n title: 'New conversation',\n headerLeft: () => null,\n },\n withRightClose({\n onPress: () => {\n const { chat_group_graph_id, group_source_app_name } =\n route.params as ConversationSelectRecipientsParams\n navigation.popTo('Conversations', { chat_group_graph_id, group_source_app_name })\n },\n })\n ),\n },\n AvatarPicker: {\n screen: AvatarPickerScreen,\n options: AvatarPickerCreateScreenOptions,\n },\n },\n})\n\nexport const ChatStack = createNativeStackNavigator({\n screenOptions: globalScreenOptions,\n screenLayout: ScreenLayoutWithChatAccessGate,\n screens: {\n Conversations: {\n screen: ConversationsScreen,\n options: ({ route, navigation }) =>\n composeOptions(\n {\n headerTitle: (route.params as { title?: string })?.title ?? 'Chat',\n headerBackVisible: false,\n },\n withRightClose({ onPress: navigation.goBack })\n ),\n },\n ConversationFilters: {\n screen: ConversationFiltersScreen,\n options: ConversationFiltersScreenOptions,\n },\n Conversation: {\n screen: ConversationScreen,\n options: ({ route, navigation }) =>\n composeOptions(\n {\n headerTitle: (props: NativeStackHeaderRightProps) => {\n const { conversation_id, title, badge, deleted, muted } =\n route.params as ConversationRouteProps\n\n return (\n <ConversationScreenTitle\n conversation_id={conversation_id}\n badge={badge}\n deleted={deleted}\n muted={muted}\n {...props}\n >\n {title ?? 'Conversation'}\n </ConversationScreenTitle>\n )\n },\n },\n withMinimalBack({\n onPress: () => {\n const params = route.params as ConversationRouteProps\n if ((params as ConversationFiltersParams)?.chat_group_graph_id) {\n // Ensure that conversations with a graph id pass them back to the conversation list\n const { chat_group_graph_id } = params\n navigation.popTo('Conversations', { chat_group_graph_id })\n } else {\n navigation.goBack()\n }\n },\n }),\n withRightClose({ onPress: () => navigation.getParent()?.goBack() })\n ),\n },\n ConversationReply: {\n screen: ConversationScreen,\n options: ({ route, navigation }) =>\n composeOptions(\n { title: (route.params as ConversationRouteProps)?.title ?? 'Reply' },\n withMinimalBack({ onPress: navigation.goBack })\n ),\n },\n TeamConversation: {\n screen: TeamConversationScreen,\n if: useQualifiedByAge,\n options: {\n title: 'Finding conversation...',\n animation: 'none',\n cardStyleInterpolator: CardStyleInterpolators.forNoAnimation,\n },\n },\n ConversationDetails: {\n screen: ConversationDetailsScreen,\n options: ({ navigation }) =>\n composeOptions(\n {\n presentation: 'modal',\n title: 'Conversation details',\n },\n withRightDone({ onPress: navigation.goBack })\n ),\n },\n AvatarPicker: {\n screen: AvatarPickerScreen,\n options: AvatarPickerScreenOptions,\n },\n ChatSettings: {\n screen: SettingsScreen,\n options: ({ navigation }) =>\n composeOptions({ title: 'Chat settings' }, withMinimalBack({ onPress: navigation.goBack })),\n },\n NotificationSettings: {\n screen: NotificationSettingsScreen,\n options: ({ navigation }) =>\n navigation.getState().index === 0\n ? composeOptions(\n { title: 'Chat notifications' },\n withRightClose({ onPress: navigation.goBack })\n )\n : composeOptions(\n { title: 'Chat notifications' },\n withMinimalBack({ onPress: navigation.goBack })\n ),\n },\n PreferredAppSelection: {\n screen: PreferredAppSelectionScreen,\n options: ({ navigation }) =>\n composeOptions({ title: 'Preferred app' }, withMinimalBack({ onPress: navigation.goBack })),\n },\n GroupNotificationSettings: {\n screen: GroupNotificationSettingsScreen,\n options: ({ route, navigation }) => {\n const title = (route.params as { title?: string })?.title || 'Group Settings'\n\n // The dismiss button only shows when this is the entry screen (e.g.\n // deep links); deeper in the stack the back button covers dismissal.\n return navigation.getState().index === 0\n ? composeOptions(\n {\n title,\n },\n withRightClose({ onPress: navigation.goBack })\n )\n : composeOptions({ title }, withMinimalBack({ onPress: navigation.goBack }))\n },\n },\n GroupNotificationLevelSelect: {\n screen: GroupNotificationLevelSelectScreen,\n options: GroupNotificationLevelSelectScreenOptions,\n },\n ConversationNotificationLevelSelect: {\n screen: ConversationNotificationLevelSelectScreen,\n options: ConversationNotificationLevelSelectScreenOptions,\n },\n New: {\n screen: NewConversationStack,\n if: useQualifiedByAge,\n options: {\n headerShown: false,\n presentation: 'modal',\n },\n },\n GroupConversationNew: {\n screen: ConversationNewScreen,\n if: useQualifiedByAge,\n options: ({ navigation }) =>\n composeOptions(\n {\n title: 'New conversation',\n headerLeft: () => null,\n },\n withRightClose({ onPress: () => navigation.getParent()?.goBack() })\n ),\n },\n SendGiphy: {\n screen: SendGiphyScreen,\n options: SendGiphyScreenOptions,\n },\n MessageActions: {\n screen: MessageActionsScreen,\n // Something about sheetAllowedDetents declared inline breaks TS\n options: MessageActionsScreenOptions,\n },\n MessageReport: {\n screen: MessageReportScreen,\n options: MessageReportScreenOptions,\n },\n AttachmentActions: {\n screen: AttachmentActionsScreen,\n options: AttachmentActionsScreenOptions,\n },\n ConversationSelectType: {\n screen: ConversationSelectTypeScreen,\n options: ConversationSelectTypeScreenOptions,\n },\n Reactions: {\n screen: ReactionsScreen,\n options: ReactionsScreenOptions,\n },\n SystemMessagePeople: {\n screen: SystemMessagePeopleScreen,\n options: SystemMessagePeopleScreenOptions,\n },\n MessageReadReceipts: {\n screen: MessageReadReceiptsScreen,\n options: MessageReadReceiptsScreenOptions,\n },\n BugReport: {\n screen: BugReportScreen,\n options: BugReportScreenOptions,\n },\n GetHelp: {\n screen: GetHelpScreen,\n options: ({ navigation }) =>\n composeOptions(\n {\n headerTitle: 'Get help',\n headerBackVisible: false,\n presentation: 'modal',\n },\n withRightClose({ onPress: navigation.goBack })\n ),\n },\n NotFound: {\n screen: NotFound,\n options: {\n title: '404',\n },\n linking: {\n path: '*',\n },\n },\n },\n})\n\ntype ChatStackParamList = StaticParamList<typeof ChatStack>\n\ndeclare global {\n namespace ReactNavigation {\n interface RootParamList extends ChatStackParamList {}\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["createNativeStackNavigator","CardStyleInterpolators","React","composeOptions","withMinimalBack","withRightClose","withRightDone","useDirectMessagesEligible","useQualifiedByAge","AttachmentActionsScreen","AttachmentActionsScreenOptions","AvatarPickerScreen","AvatarPickerScreenOptions","AvatarPickerCreateScreenOptions","BugReportScreen","BugReportScreenOptions","MessageReadReceiptsScreen","MessageReadReceiptsScreenOptions","ConversationDetailsScreen","ConversationFilterReceipientsScreenOptions","ConversationFilterRecipientsScreen","ConversationFiltersScreen","ConversationFiltersScreenOptions","ConversationNewScreen","ConversationNotificationLevelSelectScreen","ConversationNotificationLevelSelectScreenOptions","ConversationScreen","ConversationScreenTitle","ConversationNewEntryScreen","ConversationSelectDirectMessageRecipientsScreen","ConversationSelectGroupRecipientsScreen","ConversationSelectTeamsILeadRecipientsScreen","ConversationSelectTypeScreen","ConversationSelectTypeScreenOptions","ConversationsScreen","GetHelpScreen","GroupNotificationLevelSelectScreen","GroupNotificationLevelSelectScreenOptions","GroupNotificationSettingsScreen","MessageActionsScreen","MessageActionsScreenOptions","MessageReportScreen","MessageReportScreenOptions","NotFound","NotificationSettingsScreen","PreferredAppSelectionScreen","ReactionsScreen","ReactionsScreenOptions","SendGiphyScreen","SendGiphyScreenOptions","SettingsScreen","SystemMessagePeopleScreen","SystemMessagePeopleScreenOptions","TeamConversationScreen","isLiquidGlassEnabled","ScreenLayoutWithChatAccessGate","jsx","_jsx","globalScreenOptions","headerBackButtonDisplayMode","headerShadowVisible","NewConversationStack","initialRouteName","screenOptions","screenLayout","screens","ConversationNewEntry","screen","options","navigation","title","headerBackVisible","onPress","goBack","ConversationSelectGroupRecipients","route","popTo","params","ConversationSelectTeamsILeadRecipients","ConversationSelectDirectMessageRecipients","if","ConversationFilterRecipients","ConversationNew","headerLeft","chat_group_graph_id","group_source_app_name","AvatarPicker","ChatStack","Conversations","headerTitle","ConversationFilters","Conversation","props","conversation_id","badge","deleted","muted","children","getParent","ConversationReply","TeamConversation","animation","cardStyleInterpolator","forNoAnimation","ConversationDetails","presentation","ChatSettings","NotificationSettings","getState","index","PreferredAppSelection","GroupNotificationSettings","GroupNotificationLevelSelect","ConversationNotificationLevelSelect","New","headerShown","GroupConversationNew","SendGiphy","MessageActions","MessageReport","AttachmentActions","ConversationSelectType","Reactions","SystemMessagePeople","MessageReadReceipts","BugReport","GetHelp","linking","path"],"sources":["../../src/navigation/index.tsx"],"sourcesContent":["import { StaticParamList } from '@react-navigation/native'\nimport {\n createNativeStackNavigator,\n NativeStackHeaderRightProps,\n NativeStackNavigationOptions,\n} from '@react-navigation/native-stack'\nimport { CardStyleInterpolators } from '@react-navigation/stack'\nimport React from 'react'\nimport {\n composeOptions,\n withMinimalBack,\n withRightClose,\n withRightDone,\n} from '../components/display/platform_modal_header_buttons'\nimport { useDirectMessagesEligible, useQualifiedByAge } from '../hooks'\nimport {\n AttachmentActionsScreen,\n AttachmentActionsScreenOptions,\n} from '../screens/attachment_actions/attachment_actions_screen'\nimport {\n AvatarPickerScreen,\n AvatarPickerScreenOptions,\n AvatarPickerCreateScreenOptions,\n} from '../screens/avatar_picker/avatar_picker_screen'\nimport { BugReportScreen, BugReportScreenOptions } from '../screens/bug_report_screen'\nimport {\n MessageReadReceiptsScreen,\n MessageReadReceiptsScreenOptions,\n} from '../screens/conversation/message_read_receipts_screen'\nimport { ConversationDetailsScreen } from '../screens/conversation_details_screen'\nimport {\n ConversationFilterReceipientsScreenOptions,\n ConversationFilterRecipientsScreen,\n} from '../screens/conversation_filter_recipients/conversation_filter_recipients_screen'\nimport { ConversationFiltersParams } from '../screens/conversation_filters/screen_props'\nimport {\n ConversationFiltersScreen,\n ConversationFiltersScreenOptions,\n} from '../screens/conversation_filters_screen'\nimport { ConversationNewScreen } from '../screens/conversation_new/conversation_new_screen'\nimport {\n ConversationNotificationLevelSelectScreen,\n ConversationNotificationLevelSelectScreenOptions,\n} from '../screens/conversation_notification_level_select_screen'\nimport {\n ConversationRouteProps,\n ConversationScreen,\n ConversationScreenTitle,\n} from '../screens/conversation_screen'\nimport { ConversationNewEntryScreen } from '../screens/conversation_select_recipients/conversation_new_entry_screen'\nimport { ConversationSelectDirectMessageRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen'\nimport { ConversationSelectGroupRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_group_recipients_screen'\nimport { ConversationSelectTeamsILeadRecipientsScreen } from '../screens/conversation_select_recipients/conversation_select_teams_i_lead_recipients_screen'\nimport { ConversationSelectRecipientsParams } from '../screens/conversation_select_recipients/types/screen_props'\nimport {\n ConversationSelectTypeScreen,\n ConversationSelectTypeScreenOptions,\n} from '../screens/conversation_select_type_screen'\nimport { ConversationsScreen } from '../screens/conversations/conversations_screen'\nimport { GetHelpScreen } from '../screens/get_help_screen'\nimport {\n GroupNotificationLevelSelectScreen,\n GroupNotificationLevelSelectScreenOptions,\n} from '../screens/group_notification_level_select_screen'\nimport { GroupNotificationSettingsScreen } from '../screens/group_notification_settings_screen'\nimport {\n MessageActionsScreen,\n MessageActionsScreenOptions,\n} from '../screens/message_actions_screen'\nimport { MessageReportScreen, MessageReportScreenOptions } from '../screens/message_report_screen'\nimport { NotFound } from '../screens/not_found'\nimport { NotificationSettingsScreen } from '../screens/notification_settings_screen'\nimport { PreferredAppSelectionScreen } from '../screens/preferred_app_selection_screen'\nimport { ReactionsScreen, ReactionsScreenOptions } from '../screens/reactions_screen'\nimport { SendGiphyScreen, SendGiphyScreenOptions } from '../screens/send_giphy_screen'\nimport { SettingsScreen } from '../screens/settings_screen'\nimport {\n SystemMessagePeopleScreen,\n SystemMessagePeopleScreenOptions,\n} from '../screens/system_message_people_screen'\nimport { TeamConversationScreen } from '../screens/team_conversation_screen'\nimport { isLiquidGlassEnabled } from '../utils/liquid_glass'\nimport { ScreenLayoutWithChatAccessGate } from './screenLayout'\n\nconst globalScreenOptions: () => NativeStackNavigationOptions = () => ({\n headerBackButtonDisplayMode: 'minimal',\n ...(isLiquidGlassEnabled() ? { headerShadowVisible: false } : {}),\n})\n\nexport const NewConversationStack = createNativeStackNavigator({\n initialRouteName: 'ConversationNewEntry',\n screenOptions: globalScreenOptions,\n screenLayout: ScreenLayoutWithChatAccessGate,\n screens: {\n ConversationNewEntry: {\n screen: ConversationNewEntryScreen,\n options: ({ navigation }) =>\n composeOptions(\n {\n title: 'New conversation',\n headerBackVisible: false,\n },\n withRightClose({ onPress: navigation.goBack })\n ),\n },\n ConversationSelectGroupRecipients: {\n screen: ConversationSelectGroupRecipientsScreen,\n options: ({ navigation, route }) =>\n composeOptions(\n {\n title: 'New conversation',\n },\n withRightClose({\n onPress: () => navigation.popTo('Conversations', route.params),\n })\n ),\n },\n ConversationSelectTeamsILeadRecipients: {\n screen: ConversationSelectTeamsILeadRecipientsScreen,\n options: ({ navigation, route }) =>\n composeOptions(\n {\n title: 'New conversation',\n },\n withRightClose({\n onPress: () => navigation.popTo('Conversations', route.params),\n })\n ),\n },\n ConversationSelectDirectMessageRecipients: {\n screen: ConversationSelectDirectMessageRecipientsScreen,\n if: useDirectMessagesEligible,\n options: ({ navigation }) =>\n composeOptions(\n {\n title: 'New conversation',\n headerBackVisible: false,\n },\n withRightClose({ onPress: navigation.goBack })\n ),\n },\n ConversationFilterRecipients: {\n screen: ConversationFilterRecipientsScreen,\n options: ConversationFilterReceipientsScreenOptions,\n },\n ConversationNew: {\n screen: ConversationNewScreen,\n options: ({ navigation, route }) =>\n composeOptions(\n {\n title: 'New conversation',\n headerLeft: () => null,\n },\n withRightClose({\n onPress: () => {\n const { chat_group_graph_id, group_source_app_name } =\n route.params as ConversationSelectRecipientsParams\n navigation.popTo('Conversations', { chat_group_graph_id, group_source_app_name })\n },\n })\n ),\n },\n AvatarPicker: {\n screen: AvatarPickerScreen,\n options: AvatarPickerCreateScreenOptions,\n },\n },\n})\n\nexport const ChatStack = createNativeStackNavigator({\n screenOptions: globalScreenOptions,\n screenLayout: ScreenLayoutWithChatAccessGate,\n screens: {\n Conversations: {\n screen: ConversationsScreen,\n options: ({ route, navigation }) =>\n composeOptions(\n {\n headerTitle: (route.params as { title?: string })?.title ?? 'Chat',\n headerBackVisible: false,\n },\n withRightClose({ onPress: navigation.goBack })\n ),\n },\n ConversationFilters: {\n screen: ConversationFiltersScreen,\n options: ConversationFiltersScreenOptions,\n },\n Conversation: {\n screen: ConversationScreen,\n options: ({ route, navigation }) =>\n composeOptions(\n {\n headerTitle: (props: NativeStackHeaderRightProps) => {\n const { conversation_id, title, badge, deleted, muted } =\n route.params as ConversationRouteProps\n\n return (\n <ConversationScreenTitle\n conversation_id={conversation_id}\n badge={badge}\n deleted={deleted}\n muted={muted}\n {...props}\n >\n {title ?? 'Conversation'}\n </ConversationScreenTitle>\n )\n },\n },\n withMinimalBack({\n onPress: () => {\n const params = route.params as ConversationRouteProps\n if ((params as ConversationFiltersParams)?.chat_group_graph_id) {\n // Ensure that conversations with a graph id pass them back to the conversation list\n const { chat_group_graph_id } = params\n navigation.popTo('Conversations', { chat_group_graph_id })\n } else {\n navigation.goBack()\n }\n },\n }),\n withRightClose({ onPress: () => navigation.getParent()?.goBack() })\n ),\n },\n ConversationReply: {\n screen: ConversationScreen,\n options: ({ route, navigation }) =>\n composeOptions(\n { title: (route.params as ConversationRouteProps)?.title ?? 'Reply' },\n withMinimalBack({ onPress: navigation.goBack })\n ),\n },\n TeamConversation: {\n screen: TeamConversationScreen,\n if: useQualifiedByAge,\n options: {\n title: 'Finding conversation...',\n animation: 'none',\n cardStyleInterpolator: CardStyleInterpolators.forNoAnimation,\n },\n },\n ConversationDetails: {\n screen: ConversationDetailsScreen,\n options: ({ navigation }) =>\n composeOptions(\n {\n presentation: 'modal',\n title: 'Conversation details',\n },\n withRightDone({ onPress: navigation.goBack })\n ),\n },\n AvatarPicker: {\n screen: AvatarPickerScreen,\n options: AvatarPickerScreenOptions,\n },\n ChatSettings: {\n screen: SettingsScreen,\n options: ({ navigation }) =>\n composeOptions({ title: 'Chat settings' }, withMinimalBack({ onPress: navigation.goBack })),\n },\n NotificationSettings: {\n screen: NotificationSettingsScreen,\n options: ({ navigation }) =>\n navigation.getState().index === 0\n ? composeOptions(\n { title: 'Chat notifications' },\n withRightClose({ onPress: navigation.goBack })\n )\n : composeOptions(\n { title: 'Chat notifications' },\n withMinimalBack({ onPress: navigation.goBack })\n ),\n },\n PreferredAppSelection: {\n screen: PreferredAppSelectionScreen,\n options: ({ navigation }) =>\n composeOptions({ title: 'Preferred app' }, withMinimalBack({ onPress: navigation.goBack })),\n },\n GroupNotificationSettings: {\n screen: GroupNotificationSettingsScreen,\n options: ({ route, navigation }) => {\n const title = (route.params as { title?: string })?.title || 'Group Settings'\n\n // The dismiss button only shows when this is the entry screen (e.g.\n // deep links); deeper in the stack the back button covers dismissal.\n return navigation.getState().index === 0\n ? composeOptions(\n {\n title,\n },\n withRightClose({ onPress: navigation.goBack })\n )\n : composeOptions({ title }, withMinimalBack({ onPress: navigation.goBack }))\n },\n },\n GroupNotificationLevelSelect: {\n screen: GroupNotificationLevelSelectScreen,\n options: GroupNotificationLevelSelectScreenOptions,\n },\n ConversationNotificationLevelSelect: {\n screen: ConversationNotificationLevelSelectScreen,\n options: ConversationNotificationLevelSelectScreenOptions,\n },\n New: {\n screen: NewConversationStack,\n if: useQualifiedByAge,\n options: {\n headerShown: false,\n presentation: 'modal',\n },\n },\n GroupConversationNew: {\n screen: ConversationNewScreen,\n if: useQualifiedByAge,\n options: ({ navigation }) =>\n composeOptions(\n {\n title: 'New conversation',\n headerLeft: () => null,\n },\n withRightClose({ onPress: () => navigation.getParent()?.goBack() })\n ),\n },\n SendGiphy: {\n screen: SendGiphyScreen,\n options: SendGiphyScreenOptions,\n },\n MessageActions: {\n screen: MessageActionsScreen,\n // Something about sheetAllowedDetents declared inline breaks TS\n options: MessageActionsScreenOptions,\n },\n MessageReport: {\n screen: MessageReportScreen,\n options: MessageReportScreenOptions,\n },\n AttachmentActions: {\n screen: AttachmentActionsScreen,\n options: AttachmentActionsScreenOptions,\n },\n ConversationSelectType: {\n screen: ConversationSelectTypeScreen,\n options: ConversationSelectTypeScreenOptions,\n },\n Reactions: {\n screen: ReactionsScreen,\n options: ReactionsScreenOptions,\n },\n SystemMessagePeople: {\n screen: SystemMessagePeopleScreen,\n options: SystemMessagePeopleScreenOptions,\n },\n MessageReadReceipts: {\n screen: MessageReadReceiptsScreen,\n options: MessageReadReceiptsScreenOptions,\n },\n BugReport: {\n screen: BugReportScreen,\n options: BugReportScreenOptions,\n },\n GetHelp: {\n screen: GetHelpScreen,\n options: ({ navigation }) =>\n composeOptions(\n {\n headerTitle: 'Get help',\n headerBackVisible: false,\n presentation: 'modal',\n },\n withRightClose({ onPress: navigation.goBack })\n ),\n },\n NotFound: {\n screen: NotFound,\n options: {\n title: '404',\n },\n linking: {\n path: '*',\n },\n },\n },\n})\n\ntype ChatStackParamList = StaticParamList<typeof ChatStack>\n\ndeclare global {\n namespace ReactNavigation {\n interface RootParamList extends ChatStackParamList {}\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -54,6 +54,7 @@ export const ServicesForm = t0 => {
|
|
|
54
54
|
}
|
|
55
55
|
const safetyLockEnabled = t2;
|
|
56
56
|
const [selectedPlanId, setSelectedPlanId] = useState(initialPlanId);
|
|
57
|
+
const [filterByPlan, setFilterByPlan] = useState(!!initialPlanId);
|
|
57
58
|
let t3;
|
|
58
59
|
if ($[4] !== initialTeamIds) {
|
|
59
60
|
t3 = uniq(initialTeamIds) || [];
|
|
@@ -70,6 +71,7 @@ export const ServicesForm = t0 => {
|
|
|
70
71
|
t4 = () => {
|
|
71
72
|
setSelectedTeamIds(initialState);
|
|
72
73
|
setSelectedPlanId(initialPlanId);
|
|
74
|
+
setFilterByPlan(!!initialPlanId);
|
|
73
75
|
};
|
|
74
76
|
t5 = [initialState, initialPlanId];
|
|
75
77
|
$[6] = initialPlanId;
|
|
@@ -92,8 +94,7 @@ export const ServicesForm = t0 => {
|
|
|
92
94
|
t6 = $[11];
|
|
93
95
|
}
|
|
94
96
|
const removeSelection = t6;
|
|
95
|
-
const
|
|
96
|
-
const activePlanId = filerByPlan ? selectedPlanId : undefined;
|
|
97
|
+
const activePlanId = filterByPlan ? selectedPlanId : undefined;
|
|
97
98
|
let t7;
|
|
98
99
|
if ($[12] !== activePlanId || $[13] !== safetyLockEnabled || $[14] !== selectedTeamIds) {
|
|
99
100
|
t7 = {
|
|
@@ -131,12 +132,12 @@ export const ServicesForm = t0 => {
|
|
|
131
132
|
validationPending
|
|
132
133
|
} = useConversationValidate(t8);
|
|
133
134
|
let t9;
|
|
134
|
-
if ($[20] !==
|
|
135
|
+
if ($[20] !== activePlanId || $[21] !== selectedTeamIds) {
|
|
135
136
|
t9 = {
|
|
136
137
|
teamIds: selectedTeamIds,
|
|
137
|
-
planId:
|
|
138
|
+
planId: activePlanId
|
|
138
139
|
};
|
|
139
|
-
$[20] =
|
|
140
|
+
$[20] = activePlanId;
|
|
140
141
|
$[21] = selectedTeamIds;
|
|
141
142
|
$[22] = t9;
|
|
142
143
|
} else {
|
|
@@ -202,13 +203,13 @@ export const ServicesForm = t0 => {
|
|
|
202
203
|
isLoadingConversationCheck
|
|
203
204
|
} = useFindOrCreateServicesConversation(t12);
|
|
204
205
|
let t13;
|
|
205
|
-
if ($[34] !== avatarSelection || $[35] !== customAvatarsEnabled || $[36] !==
|
|
206
|
+
if ($[34] !== avatarSelection || $[35] !== customAvatarsEnabled || $[36] !== filterByPlan || $[37] !== isMemberError || $[38] !== members || $[39] !== removeSelection || $[40] !== selectedPlanId || $[41] !== selectedTeamIds || $[42] !== selectionHasConversation || $[43] !== teamFilterType) {
|
|
206
207
|
t13 = /*#__PURE__*/_jsx(FormContent, {
|
|
207
208
|
selectedTeamIds: selectedTeamIds,
|
|
208
209
|
removeSelection: removeSelection,
|
|
209
210
|
selectedPlanId: selectedPlanId,
|
|
210
211
|
setSelectedPlanId: setSelectedPlanId,
|
|
211
|
-
filterByPlan:
|
|
212
|
+
filterByPlan: filterByPlan,
|
|
212
213
|
setFilterByPlan: setFilterByPlan,
|
|
213
214
|
members: members,
|
|
214
215
|
isMemberError: isMemberError,
|
|
@@ -219,7 +220,7 @@ export const ServicesForm = t0 => {
|
|
|
219
220
|
});
|
|
220
221
|
$[34] = avatarSelection;
|
|
221
222
|
$[35] = customAvatarsEnabled;
|
|
222
|
-
$[36] =
|
|
223
|
+
$[36] = filterByPlan;
|
|
223
224
|
$[37] = isMemberError;
|
|
224
225
|
$[38] = members;
|
|
225
226
|
$[39] = removeSelection;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"services_form.js","names":["StackActions","useNavigation","uniq","React","useCallback","useEffect","useMemo","useState","StyleSheet","View","Badge","Banner","ChildNotice","Heading","Switch","TextButton","ActionButton","useApiClient","useFindOrCreateServicesConversation","useServicesChatConversationPayload","useServicesTeams","useTeamMembersForNewConversation","patchConversationAvatar","useConversationValidate","availableFeatures","useFeatures","useUploadClient","pluralize","Haptic","tokens","AvatarSelectionRow","FilterByPlan","Divider","FormList","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ServicesForm","t0","$","_c","initialTeamIds","initialPlanId","teamFilterType","avatarSelection","styles","useStyles","apiClient","uploadClient","featureEnabled","t1","custom_conversation_avatars","customAvatarsEnabled","t2","conversation_safety_lock","safetyLockEnabled","selectedPlanId","setSelectedPlanId","t3","initialState","selectedTeamIds","setSelectedTeamIds","t4","t5","t6","teamId","filter","id","removeSelection","filerByPlan","setFilterByPlan","activePlanId","undefined","t7","teamIds","planId","enabled","payload","isLoading","isLoadingPayload","t8","warnings","validationPending","t9","members","isError","isMemberError","t10","_temp","adultMembers","navigation","t11","conversation","t12","created","getParent","goBack","dispatch","push","conversation_id","notificationSuccess","kind","onSuccess","mutate","createConversation","isPending","selectionHasConversation","isLoadingConversationCheck","t13","FormContent","t14","t15","length","t16","t17","disabled","title","infoText","t18","formContainer","style","children","filterByPlan","servicesTeams","team","includes","value","selectedTeams","teamCountHeader","memberCount","_temp2","childMembers","hasChildren","formContent","toSection","Symbol","for","variant","impactLight","navigate","screen","params","source_app_name","team_ids","team_filter_type","accessibilityLabel","textStyle","onPress","toSectionRow","badgeRow","team_0","serviceTypeAcronyms","join","label","teamName","iconNameRight","map","onValueChange","t19","filterByPlanSectionLead","t20","t21","filterByPlanSection","t22","t23","t24","memberSection","t25","t26","t27","banner","showMembers","t28","appearance","description","t29","t30","member","child","sectionPadding","create","flex","paddingBottom","padding","gap","flexDirection","alignItems","flexWrap","groupName","fontSize","justifyContent","filterByPlanSectionRow","titleInput","marginTop","fontSizeLg"],"sources":["../../../../src/screens/conversation_new/components/services_form.tsx"],"sourcesContent":["import { StackActions, useNavigation } from '@react-navigation/native'\nimport { uniq } from 'lodash'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { Badge, Banner, ChildNotice, Heading, Switch, TextButton } from '../../../components'\nimport { ActionButton } from '../../../components/display/action_button'\nimport { useApiClient } from '../../../hooks'\nimport { useFindOrCreateServicesConversation } from '../../../hooks/services/use_find_or_create_services_conversation'\nimport { useServicesChatConversationPayload } from '../../../hooks/services/use_services_chat_conversation_payload'\nimport { useServicesTeams } from '../../../hooks/services/use_services_team'\nimport { useTeamMembersForNewConversation } from '../../../hooks/services/use_team_members_for_new_conversation'\nimport {\n type AvatarUpdatePayload,\n patchConversationAvatar,\n} from '../../../hooks/use_conversation_avatar_update'\nimport { useConversationValidate } from '../../../hooks/use_conversation_validate'\nimport { availableFeatures, useFeatures } from '../../../hooks/use_features'\nimport { useUploadClient } from '../../../hooks/use_upload_client'\nimport { MemberResource } from '../../../types'\nimport { pluralize } from '../../../utils'\nimport { Haptic } from '../../../utils/native_adapters'\nimport { tokens } from '../../../vendor/tapestry/tokens'\nimport { TeamFilterTypes } from '../../conversation_filter_recipients/types'\nimport { AvatarSelectionRow } from './avatar_selection_row'\nimport { FilterByPlan } from './filter_by_plan'\nimport { Divider, FormList } from './form_list'\n\ntype ServicesFormProps = {\n initialTeamIds?: number[]\n initialPlanId?: number\n teamFilterType?: TeamFilterTypes\n avatarSelection?: AvatarUpdatePayload\n}\n\nexport const ServicesForm = ({\n initialTeamIds,\n initialPlanId,\n teamFilterType,\n avatarSelection,\n}: ServicesFormProps) => {\n const styles = useStyles()\n const apiClient = useApiClient()\n const uploadClient = useUploadClient()\n const { featureEnabled } = useFeatures()\n const customAvatarsEnabled = featureEnabled(availableFeatures.custom_conversation_avatars)\n const safetyLockEnabled = featureEnabled(availableFeatures.conversation_safety_lock)\n const [selectedPlanId, setSelectedPlanId] = useState<number | undefined>(initialPlanId)\n const initialState = useMemo(() => uniq(initialTeamIds) || [], [initialTeamIds]) // Uniq here because services can send duplicates in the teams_i_lead response.\n const [selectedTeamIds, setSelectedTeamIds] = useState<number[]>(initialState)\n\n // Sync with fresh props when they change (from navigation)\n useEffect(() => {\n setSelectedTeamIds(initialState)\n setSelectedPlanId(initialPlanId)\n }, [initialState, initialPlanId])\n\n const removeSelection = useCallback(\n (teamId: number) => {\n setSelectedTeamIds(selectedTeamIds.filter(id => id !== teamId))\n },\n [selectedTeamIds]\n )\n\n const [filerByPlan, setFilterByPlan] = useState(false)\n\n const activePlanId = filerByPlan ? selectedPlanId : undefined\n\n const { payload, isLoading: isLoadingPayload } = useServicesChatConversationPayload({\n teamIds: selectedTeamIds,\n planId: activePlanId,\n enabled: safetyLockEnabled,\n })\n\n const { warnings, validationPending } = useConversationValidate({\n payload,\n isLoadingPayload,\n enabled: safetyLockEnabled,\n })\n\n const { members, isError: isMemberError } = useTeamMembersForNewConversation({\n teamIds: selectedTeamIds,\n planId: selectedPlanId,\n })\n const adultMembers = useMemo(() => members.filter(member => !member.child), [members])\n\n const navigation = useNavigation()\n const {\n mutate: createConversation,\n isPending,\n selectionHasConversation,\n isLoadingConversationCheck,\n } = useFindOrCreateServicesConversation({\n teamIds: selectedTeamIds,\n planId: activePlanId,\n onSuccess: (conversation, { created }) => {\n navigation.getParent()?.goBack()\n navigation.dispatch(\n StackActions.push('Conversation', {\n conversation_id: conversation.id,\n })\n )\n if (created) {\n Haptic.notificationSuccess()\n if (avatarSelection && avatarSelection.kind !== 'clear') {\n patchConversationAvatar(apiClient, uploadClient, conversation.id, avatarSelection)\n }\n }\n },\n })\n\n return (\n <View style={styles.formContainer}>\n <FormList\n memberData={adultMembers}\n FormContent={\n <FormContent\n selectedTeamIds={selectedTeamIds}\n removeSelection={removeSelection}\n selectedPlanId={selectedPlanId}\n setSelectedPlanId={setSelectedPlanId}\n filterByPlan={filerByPlan}\n setFilterByPlan={setFilterByPlan}\n members={members}\n isMemberError={isMemberError}\n teamFilterType={teamFilterType}\n avatarSelection={avatarSelection}\n selectionHasConversation={selectionHasConversation}\n customAvatarsEnabled={customAvatarsEnabled}\n />\n }\n />\n <ActionButton\n disabled={\n !selectedTeamIds.length ||\n isPending ||\n isLoadingConversationCheck ||\n validationPending ||\n warnings.length > 0\n }\n title={selectionHasConversation ? 'Open conversation' : 'Start conversation'}\n onPress={createConversation}\n infoText=\"Conversation will be automatically updated if any members are added or removed from included teams.\"\n loading={isLoadingConversationCheck}\n warnings={warnings}\n />\n </View>\n )\n}\n\ninterface FormContentProps {\n selectedTeamIds: number[]\n removeSelection: (teamId: number) => void\n selectedPlanId?: number\n setSelectedPlanId: (planId: number | undefined) => void\n filterByPlan: boolean\n setFilterByPlan: (value: boolean) => void\n members: MemberResource[]\n isMemberError: boolean\n teamFilterType?: TeamFilterTypes\n avatarSelection?: AvatarUpdatePayload\n selectionHasConversation: boolean\n customAvatarsEnabled: boolean\n}\n\nfunction FormContent({\n selectedTeamIds,\n removeSelection,\n selectedPlanId,\n setSelectedPlanId,\n filterByPlan,\n setFilterByPlan,\n members,\n isMemberError,\n teamFilterType,\n avatarSelection,\n selectionHasConversation,\n customAvatarsEnabled,\n}: FormContentProps) {\n const navigation = useNavigation()\n const servicesTeams = useServicesTeams()\n const selectedTeams = useMemo(() => {\n return servicesTeams.filter(team => selectedTeamIds.includes(team.value.teamId))\n }, [selectedTeamIds, servicesTeams])\n\n const styles = useStyles()\n const teamCountHeader = pluralize(selectedTeamIds.length, 'team')\n const memberCount = members.length\n const childMembers = useMemo(() => members.filter(member => member.child), [members])\n const hasChildren = childMembers.length > 0\n\n filterByPlan = filterByPlan && !!selectedTeamIds.length\n\n return (\n <View style={styles.formContent}>\n <View style={styles.toSection}>\n <View style={styles.toSectionRow}>\n <Heading variant=\"h3\">To:</Heading>\n <TextButton\n accessibilityLabel=\"Select teams\"\n textStyle={styles.teamCountHeader}\n onPress={() => {\n Haptic.impactLight()\n navigation.navigate('New', {\n screen: 'ConversationFilterRecipients',\n params: {\n source_app_name: 'Services',\n team_ids: selectedTeamIds,\n team_filter_type: teamFilterType,\n },\n })\n }}\n >\n {teamCountHeader}\n </TextButton>\n </View>\n <View style={styles.toSectionRow}>\n {selectedTeams.map(team => {\n const serviceTypeAcronyms = team.serviceTypeAcronyms.join(', ')\n const label = `${team.teamName} | ${serviceTypeAcronyms}`\n\n return (\n <View key={team.value.teamId} style={styles.badgeRow}>\n <Badge\n iconNameRight=\"general.x\"\n label={label}\n onPress={() => removeSelection(team.value.teamId)}\n />\n </View>\n )\n })}\n </View>\n </View>\n <Divider />\n <View style={styles.filterByPlanSection}>\n <View style={styles.filterByPlanSectionLead}>\n <Heading variant=\"h3\">Filter by plan</Heading>\n <Switch\n value={filterByPlan}\n onValueChange={value => {\n setFilterByPlan(value)\n if (!value) {\n setSelectedPlanId(undefined)\n }\n }}\n disabled={!selectedTeamIds.length}\n />\n </View>\n {filterByPlan && (\n <FilterByPlan\n teamIds={selectedTeamIds}\n selectedPlanId={selectedPlanId}\n onPlanSelect={setSelectedPlanId}\n />\n )}\n </View>\n <Divider />\n {!selectionHasConversation && customAvatarsEnabled && (\n <>\n <AvatarSelectionRow avatarSelection={avatarSelection} />\n <Divider />\n </>\n )}\n <View style={styles.memberSection}>\n <Heading variant=\"h3\">{pluralize(memberCount, 'member')} selected</Heading>\n {hasChildren && (\n <ChildNotice childMembers={childMembers} showMembers={true} style={styles.banner} />\n )}\n {isMemberError && (\n <Banner\n appearance=\"error\"\n description=\"There was an issue loading team members, please refresh and try again.\"\n style={styles.banner}\n />\n )}\n </View>\n </View>\n )\n}\n\nconst useStyles = () => {\n const sectionPadding = 16\n\n return StyleSheet.create({\n formContainer: {\n flex: 1,\n },\n formContent: {\n paddingBottom: sectionPadding,\n flex: 1,\n },\n toSection: {\n padding: sectionPadding,\n gap: 8,\n },\n toSectionRow: {\n flexDirection: 'row',\n gap: 8,\n alignItems: 'baseline',\n flexWrap: 'wrap',\n },\n badgeRow: {\n flexDirection: 'row',\n },\n groupName: {\n fontSize: 18,\n },\n filterByPlanSection: {\n padding: sectionPadding,\n gap: 12,\n },\n filterByPlanSectionLead: {\n flexDirection: 'row',\n gap: 8,\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n filterByPlanSectionRow: {\n flexDirection: 'row',\n gap: 8,\n },\n titleInput: {\n fontSize: 18,\n },\n memberSection: {\n padding: sectionPadding,\n paddingBottom: 0,\n },\n banner: {\n marginTop: 16,\n },\n teamCountHeader: {\n fontSize: tokens.fontSizeLg,\n },\n })\n}\n"],"mappings":";AAAA,SAASA,YAAY,EAAEC,aAAa,QAAQ,0BAA0B;AACtE,SAASC,IAAI,QAAQ,QAAQ;AAC7B,OAAOC,KAAK,IAAIC,WAAW,EAAEC,SAAS,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,OAAO;AACxE,SAASC,UAAU,EAAEC,IAAI,QAAQ,cAAc;AAC/C,SAASC,KAAK,EAAEC,MAAM,EAAEC,WAAW,EAAEC,OAAO,EAAEC,MAAM,EAAEC,UAAU,QAAQ,qBAAqB;AAC7F,SAASC,YAAY,QAAQ,2CAA2C;AACxE,SAASC,YAAY,QAAQ,gBAAgB;AAC7C,SAASC,mCAAmC,QAAQ,kEAAkE;AACtH,SAASC,kCAAkC,QAAQ,gEAAgE;AACnH,SAASC,gBAAgB,QAAQ,2CAA2C;AAC5E,SAASC,gCAAgC,QAAQ,+DAA+D;AAChH,SAEEC,uBAAuB,QAClB,+CAA+C;AACtD,SAASC,uBAAuB,QAAQ,0CAA0C;AAClF,SAASC,iBAAiB,EAAEC,WAAW,QAAQ,6BAA6B;AAC5E,SAASC,eAAe,QAAQ,kCAAkC;AAElE,SAASC,SAAS,QAAQ,gBAAgB;AAC1C,SAASC,MAAM,QAAQ,gCAAgC;AACvD,SAASC,MAAM,QAAQ,iCAAiC;AAExD,SAASC,kBAAkB,QAAQ,wBAAwB;AAC3D,SAASC,YAAY,QAAQ,kBAAkB;AAC/C,SAASC,OAAO,EAAEC,QAAQ,QAAQ,aAAa;AAAA,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA,EAAAC,QAAA,IAAAC,SAAA;AAS/C,OAAO,MAAMC,YAAY,GAAGC,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAC;IAAAC,cAAA;IAAAC,aAAA;IAAAC,cAAA;IAAAC;EAAA,IAAAN,EAKT;EAClB,MAAAO,MAAA,GAAeC,SAAS,CAAC,CAAC;EAC1B,MAAAC,SAAA,GAAkBjC,YAAY,CAAC,CAAC;EAChC,MAAAkC,YAAA,GAAqBzB,eAAe,CAAC,CAAC;EACtC;IAAA0B;EAAA,IAA2B3B,WAAW,CAAC,CAAC;EAAA,IAAA4B,EAAA;EAAA,IAAAX,CAAA,QAAAU,cAAA;IACXC,EAAA,GAAAD,cAAc,CAAC5B,iBAAiB,CAAA8B,2BAA4B,CAAC;IAAAZ,CAAA,MAAAU,cAAA;IAAAV,CAAA,MAAAW,EAAA;EAAA;IAAAA,EAAA,GAAAX,CAAA;EAAA;EAA1F,MAAAa,oBAAA,GAA6BF,EAA6D;EAAA,IAAAG,EAAA;EAAA,IAAAd,CAAA,QAAAU,cAAA;IAChEI,EAAA,GAAAJ,cAAc,CAAC5B,iBAAiB,CAAAiC,wBAAyB,CAAC;IAAAf,CAAA,MAAAU,cAAA;IAAAV,CAAA,MAAAc,EAAA;EAAA;IAAAA,EAAA,GAAAd,CAAA;EAAA;EAApF,MAAAgB,iBAAA,GAA0BF,EAA0D;EACpF,OAAAG,cAAA,EAAAC,iBAAA,IAA4CrD,QAAQ,CAAqBsC,aAAa,CAAC;EAAA,IAAAgB,EAAA;EAAA,IAAAnB,CAAA,QAAAE,cAAA;IACpDiB,EAAA,GAAA3D,IAAI,CAAC0C,cAAoB,CAAC,IAA1B,EAA0B;IAAAF,CAAA,MAAAE,cAAA;IAAAF,CAAA,MAAAmB,EAAA;EAAA;IAAAA,EAAA,GAAAnB,CAAA;EAAA;EAA7D,MAAAoB,YAAA,GAAmCD,EAA0B;EAC7D,OAAAE,eAAA,EAAAC,kBAAA,IAA8CzD,QAAQ,CAAWuD,YAAY,CAAC;EAAA,IAAAG,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAxB,CAAA,QAAAG,aAAA,IAAAH,CAAA,QAAAoB,YAAA;IAGpEG,EAAA,GAAAA,CAAA;MACRD,kBAAkB,CAACF,YAAY,CAAC;MAChCF,iBAAiB,CAACf,aAAa,CAAC;IAAA,CACjC;IAAEqB,EAAA,IAACJ,YAAY,EAAEjB,aAAa,CAAC;IAAAH,CAAA,MAAAG,aAAA;IAAAH,CAAA,MAAAoB,YAAA;IAAApB,CAAA,MAAAuB,EAAA;IAAAvB,CAAA,MAAAwB,EAAA;EAAA;IAAAD,EAAA,GAAAvB,CAAA;IAAAwB,EAAA,GAAAxB,CAAA;EAAA;EAHhCrC,SAAS,CAAC4D,EAGT,EAAEC,EAA6B,CAAC;EAAA,IAAAC,EAAA;EAAA,IAAAzB,CAAA,SAAAqB,eAAA;IAG/BI,EAAA,GAAAC,MAAA;MACEJ,kBAAkB,CAACD,eAAe,CAAAM,MAAO,CAACC,EAAA,IAAMA,EAAE,KAAKF,MAAM,CAAC,CAAC;IAAA,CAChE;IAAA1B,CAAA,OAAAqB,eAAA;IAAArB,CAAA,OAAAyB,EAAA;EAAA;IAAAA,EAAA,GAAAzB,CAAA;EAAA;EAHH,MAAA6B,eAAA,GAAwBJ,EAKvB;EAED,OAAAK,WAAA,EAAAC,eAAA,IAAuClE,QAAQ,CAAC,KAAK,CAAC;EAEtD,MAAAmE,YAAA,GAAqBF,WAAW,GAAXb,cAAwC,GAAxCgB,SAAwC;EAAA,IAAAC,EAAA;EAAA,IAAAlC,CAAA,SAAAgC,YAAA,IAAAhC,CAAA,SAAAgB,iBAAA,IAAAhB,CAAA,SAAAqB,eAAA;IAEuBa,EAAA;MAAAC,OAAA,EACzEd,eAAe;MAAAe,MAAA,EAChBJ,YAAY;MAAAK,OAAA,EACXrB;IACX,CAAC;IAAAhB,CAAA,OAAAgC,YAAA;IAAAhC,CAAA,OAAAgB,iBAAA;IAAAhB,CAAA,OAAAqB,eAAA;IAAArB,CAAA,OAAAkC,EAAA;EAAA;IAAAA,EAAA,GAAAlC,CAAA;EAAA;EAJD;IAAAsC,OAAA;IAAAC,SAAA,EAAAC;EAAA,IAAiD/D,kCAAkC,CAACyD,EAInF,CAAC;EAAA,IAAAO,EAAA;EAAA,IAAAzC,CAAA,SAAAwC,gBAAA,IAAAxC,CAAA,SAAAsC,OAAA,IAAAtC,CAAA,SAAAgB,iBAAA;IAE8DyB,EAAA;MAAAH,OAAA;MAAAE,gBAAA;MAAAH,OAAA,EAGrDrB;IACX,CAAC;IAAAhB,CAAA,OAAAwC,gBAAA;IAAAxC,CAAA,OAAAsC,OAAA;IAAAtC,CAAA,OAAAgB,iBAAA;IAAAhB,CAAA,OAAAyC,EAAA;EAAA;IAAAA,EAAA,GAAAzC,CAAA;EAAA;EAJD;IAAA0C,QAAA;IAAAC;EAAA,IAAwC9D,uBAAuB,CAAC4D,EAI/D,CAAC;EAAA,IAAAG,EAAA;EAAA,IAAA5C,CAAA,SAAAiB,cAAA,IAAAjB,CAAA,SAAAqB,eAAA;IAE2EuB,EAAA;MAAAT,OAAA,EAClEd,eAAe;MAAAe,MAAA,EAChBnB;IACV,CAAC;IAAAjB,CAAA,OAAAiB,cAAA;IAAAjB,CAAA,OAAAqB,eAAA;IAAArB,CAAA,OAAA4C,EAAA;EAAA;IAAAA,EAAA,GAAA5C,CAAA;EAAA;EAHD;IAAA6C,OAAA;IAAAC,OAAA,EAAAC;EAAA,IAA4CpE,gCAAgC,CAACiE,EAG5E,CAAC;EAAA,IAAAI,GAAA;EAAA,IAAAhD,CAAA,SAAA6C,OAAA;IACiCG,GAAA,GAAAH,OAAO,CAAAlB,MAAO,CAACsB,KAAuB,CAAC;IAAAjD,CAAA,OAAA6C,OAAA;IAAA7C,CAAA,OAAAgD,GAAA;EAAA;IAAAA,GAAA,GAAAhD,CAAA;EAAA;EAA1E,MAAAkD,YAAA,GAAmCF,GAAuC;EAE1E,MAAAG,UAAA,GAAmB5F,aAAa,CAAC,CAAC;EAAA,IAAA6F,GAAA;EAAA,IAAApD,CAAA,SAAAQ,SAAA,IAAAR,CAAA,SAAAK,eAAA,IAAAL,CAAA,SAAAmD,UAAA,IAAAnD,CAAA,SAAAS,YAAA;IASrB2C,GAAA,GAAAA,CAAAC,YAAA,EAAAC,GAAA;MAAe;QAAAC;MAAA,IAAAD,GAAW;MACnCH,UAAU,CAAAK,SAAU,CAAS,CAAC,EAAAC,MAAE,CAAD,CAAC;MAChCN,UAAU,CAAAO,QAAS,CACjBpG,YAAY,CAAAqG,IAAK,CAAC,cAAc,EAAE;QAAAC,eAAA,EACfP,YAAY,CAAAzB;MAC/B,CAAC,CACH,CAAC;MACD,IAAI2B,OAAO;QACTrE,MAAM,CAAA2E,mBAAoB,CAAC,CAAC;QAC5B,IAAIxD,eAAmD,IAAhCA,eAAe,CAAAyD,IAAK,KAAK,OAAO;UACrDlF,uBAAuB,CAAC4B,SAAS,EAAEC,YAAY,EAAE4C,YAAY,CAAAzB,EAAG,EAAEvB,eAAe,CAAC;QAAA;MACnF;IACF,CACF;IAAAL,CAAA,OAAAQ,SAAA;IAAAR,CAAA,OAAAK,eAAA;IAAAL,CAAA,OAAAmD,UAAA;IAAAnD,CAAA,OAAAS,YAAA;IAAAT,CAAA,OAAAoD,GAAA;EAAA;IAAAA,GAAA,GAAApD,CAAA;EAAA;EAAA,IAAAsD,GAAA;EAAA,IAAAtD,CAAA,SAAAgC,YAAA,IAAAhC,CAAA,SAAAqB,eAAA,IAAArB,CAAA,SAAAoD,GAAA;IAhBqCE,GAAA;MAAAnB,OAAA,EAC7Bd,eAAe;MAAAe,MAAA,EAChBJ,YAAY;MAAA+B,SAAA,EACTX;IAcb,CAAC;IAAApD,CAAA,OAAAgC,YAAA;IAAAhC,CAAA,OAAAqB,eAAA;IAAArB,CAAA,OAAAoD,GAAA;IAAApD,CAAA,OAAAsD,GAAA;EAAA;IAAAA,GAAA,GAAAtD,CAAA;EAAA;EAtBD;IAAAgE,MAAA,EAAAC,kBAAA;IAAAC,SAAA;IAAAC,wBAAA;IAAAC;EAAA,IAKI5F,mCAAmC,CAAC8E,GAiBvC,CAAC;EAAA,IAAAe,GAAA;EAAA,IAAArE,CAAA,SAAAK,eAAA,IAAAL,CAAA,SAAAa,oBAAA,IAAAb,CAAA,SAAA8B,WAAA,IAAA9B,CAAA,SAAA+C,aAAA,IAAA/C,CAAA,SAAA6C,OAAA,IAAA7C,CAAA,SAAA6B,eAAA,IAAA7B,CAAA,SAAAiB,cAAA,IAAAjB,CAAA,SAAAqB,eAAA,IAAArB,CAAA,SAAAmE,wBAAA,IAAAnE,CAAA,SAAAI,cAAA;IAOMiE,GAAA,gBAAA5E,IAAA,CAAC6E,WAAW;MACOjD,eAAe,EAAfA,eAAe;MACfQ,eAAe,EAAfA,eAAe;MAChBZ,cAAc,EAAdA,cAAc;MACXC,iBAAiB,EAAjBA,iBAAiB;MACtBY,YAAW,EAAXA,WAAW;MACRC,eAAe,EAAfA,eAAe;MACvBc,OAAO,EAAPA,OAAO;MACDE,aAAa,EAAbA,aAAa;MACZ3C,cAAc,EAAdA,cAAc;MACbC,eAAe,EAAfA,eAAe;MACN8D,wBAAwB,EAAxBA,wBAAwB;MAC5BtD,oBAAoB,EAApBA;IAAoB,CAC3C,CAAC;IAAAb,CAAA,OAAAK,eAAA;IAAAL,CAAA,OAAAa,oBAAA;IAAAb,CAAA,OAAA8B,WAAA;IAAA9B,CAAA,OAAA+C,aAAA;IAAA/C,CAAA,OAAA6C,OAAA;IAAA7C,CAAA,OAAA6B,eAAA;IAAA7B,CAAA,OAAAiB,cAAA;IAAAjB,CAAA,OAAAqB,eAAA;IAAArB,CAAA,OAAAmE,wBAAA;IAAAnE,CAAA,OAAAI,cAAA;IAAAJ,CAAA,OAAAqE,GAAA;EAAA;IAAAA,GAAA,GAAArE,CAAA;EAAA;EAAA,IAAAuE,GAAA;EAAA,IAAAvE,CAAA,SAAAkD,YAAA,IAAAlD,CAAA,SAAAqE,GAAA;IAhBNE,GAAA,gBAAA9E,IAAA,CAACF,QAAQ;MACK2D,UAAY,EAAZA,YAAY;MAEtBoB,WAaE,EAbFD;IAaE,CAEL,CAAC;IAAArE,CAAA,OAAAkD,YAAA;IAAAlD,CAAA,OAAAqE,GAAA;IAAArE,CAAA,OAAAuE,GAAA;EAAA;IAAAA,GAAA,GAAAvE,CAAA;EAAA;EAGE,MAAAwE,GAAA,IAACnD,eAAe,CAAAoD,MACP,IADTP,SAE0B,IAF1BE,0BAGiB,IAHjBzB,iBAImB,IAAnBD,QAAQ,CAAA+B,MAAO,GAAG,CAAC;EAEd,MAAAC,GAAA,GAAAP,wBAAwB,GAAxB,mBAAqE,GAArE,oBAAqE;EAAA,IAAAQ,GAAA;EAAA,IAAA3E,CAAA,SAAAiE,kBAAA,IAAAjE,CAAA,SAAAoE,0BAAA,IAAApE,CAAA,SAAAwE,GAAA,IAAAxE,CAAA,SAAA0E,GAAA,IAAA1E,CAAA,SAAA0C,QAAA;IAR9EiC,GAAA,gBAAAlF,IAAA,CAACnB,YAAY;MAETsG,QAImB,EAJnBJ,GAImB;MAEdK,KAAqE,EAArEH,GAAqE;MACnET,OAAkB,EAAlBA,kBAAkB;MAClBa,QAAqG,EAArG,qGAAqG;MACrGV,OAA0B,EAA1BA,0BAA0B;MACzB1B,QAAQ,EAARA;IAAQ,CACnB,CAAC;IAAA1C,CAAA,OAAAiE,kBAAA;IAAAjE,CAAA,OAAAoE,0BAAA;IAAApE,CAAA,OAAAwE,GAAA;IAAAxE,CAAA,OAAA0E,GAAA;IAAA1E,CAAA,OAAA0C,QAAA;IAAA1C,CAAA,OAAA2E,GAAA;EAAA;IAAAA,GAAA,GAAA3E,CAAA;EAAA;EAAA,IAAA+E,GAAA;EAAA,IAAA/E,CAAA,SAAAM,MAAA,CAAA0E,aAAA,IAAAhF,CAAA,SAAAuE,GAAA,IAAAvE,CAAA,SAAA2E,GAAA;IAjCJI,GAAA,gBAAApF,KAAA,CAAC5B,IAAI;MAAQkH,KAAoB,EAApB3E,MAAM,CAAA0E,aAAc;MAAAE,QAAA,GAC/BX,GAkBE,EACFI,GAaE;IAAA,CACE,CAAC;IAAA3E,CAAA,OAAAM,MAAA,CAAA0E,aAAA;IAAAhF,CAAA,OAAAuE,GAAA;IAAAvE,CAAA,OAAA2E,GAAA;IAAA3E,CAAA,OAAA+E,GAAA;EAAA;IAAAA,GAAA,GAAA/E,CAAA;EAAA;EAAA,OAlCP+E,GAkCO;AAAA,CAEV;AAiBD,SAAAT,YAAAvE,EAAA;EAAA,MAAAC,CAAA,GAAAC,EAAA;EAAqB;IAAAoB,eAAA;IAAAQ,eAAA;IAAAZ,cAAA;IAAAC,iBAAA;IAAAiE,YAAA;IAAApD,eAAA;IAAAc,OAAA;IAAAE,aAAA;IAAA3C,cAAA;IAAAC,eAAA;IAAA8D,wBAAA;IAAAtD;EAAA,IAAAd,EAaF;EACjB,MAAAoD,UAAA,GAAmB5F,aAAa,CAAC,CAAC;EAClC,MAAA6H,aAAA,GAAsB1G,gBAAgB,CAAC,CAAC;EAAA,IAAAiC,EAAA;EAAA,IAAAX,CAAA,QAAAqB,eAAA,IAAArB,CAAA,QAAAoF,aAAA;IAAA,IAAAtE,EAAA;IAAA,IAAAd,CAAA,QAAAqB,eAAA;MAEVP,EAAA,GAAAuE,IAAA,IAAQhE,eAAe,CAAAiE,QAAS,CAACD,IAAI,CAAAE,KAAM,CAAA7D,MAAO,CAAC;MAAA1B,CAAA,MAAAqB,eAAA;MAAArB,CAAA,MAAAc,EAAA;IAAA;MAAAA,EAAA,GAAAd,CAAA;IAAA;IAAxEW,EAAA,GAAAyE,aAAa,CAAAzD,MAAO,CAACb,EAAmD,CAAC;IAAAd,CAAA,MAAAqB,eAAA;IAAArB,CAAA,MAAAoF,aAAA;IAAApF,CAAA,MAAAW,EAAA;EAAA;IAAAA,EAAA,GAAAX,CAAA;EAAA;EADlF,MAAAwF,aAAA,GACE7E,EAAgF;EAGlF,MAAAL,MAAA,GAAeC,SAAS,CAAC,CAAC;EAAA,IAAAO,EAAA;EAAA,IAAAd,CAAA,QAAAqB,eAAA,CAAAoD,MAAA;IACF3D,EAAA,GAAA7B,SAAS,CAACoC,eAAe,CAAAoD,MAAO,EAAE,MAAM,CAAC;IAAAzE,CAAA,MAAAqB,eAAA,CAAAoD,MAAA;IAAAzE,CAAA,MAAAc,EAAA;EAAA;IAAAA,EAAA,GAAAd,CAAA;EAAA;EAAjE,MAAAyF,eAAA,GAAwB3E,EAAyC;EACjE,MAAA4E,WAAA,GAAoB7C,OAAO,CAAA4B,MAAO;EAAA,IAAAtD,EAAA;EAAA,IAAAnB,CAAA,QAAA6C,OAAA;IACC1B,EAAA,GAAA0B,OAAO,CAAAlB,MAAO,CAACgE,MAAsB,CAAC;IAAA3F,CAAA,MAAA6C,OAAA;IAAA7C,CAAA,MAAAmB,EAAA;EAAA;IAAAA,EAAA,GAAAnB,CAAA;EAAA;EAAzE,MAAA4F,YAAA,GAAmCzE,EAAsC;EACzE,MAAA0E,WAAA,GAAoBD,YAAY,CAAAnB,MAAO,GAAG,CAAC;EAE3CU,YAAA,CAAAA,CAAA,CAAeA,YAAwC,CAAAA,EAAA,CAAxCA,CAAiBA,CAAC9D,eAAe,CAAAoD,MAAO;EAGxC,MAAAlD,EAAA,GAAAjB,MAAM,CAAAwF,WAAY;EAChB,MAAAtE,EAAA,GAAAlB,MAAM,CAAAyF,SAAU;EAAA,IAAAtE,EAAA;EAAA,IAAAzB,CAAA,QAAAgG,MAAA,CAAAC,GAAA;IAEzBxE,EAAA,gBAAAhC,IAAA,CAACtB,OAAO;MAAS+H,OAAI,EAAJ,IAAI;MAAAhB,QAAA,EAAC;IAAG,CAAS,CAAC;IAAAlF,CAAA,MAAAyB,EAAA;EAAA;IAAAA,EAAA,GAAAzB,CAAA;EAAA;EAAA,IAAAkC,EAAA;EAAA,IAAAlC,CAAA,SAAAmD,UAAA,IAAAnD,CAAA,SAAAqB,eAAA,IAAArB,CAAA,SAAAI,cAAA;IAIxB8B,EAAA,GAAAA,CAAA;MACPhD,MAAM,CAAAiH,WAAY,CAAC,CAAC;MACpBhD,UAAU,CAAAiD,QAAS,CAAC,KAAK,EAAE;QAAAC,MAAA,EACjB,8BAA8B;QAAAC,MAAA,EAC9B;UAAAC,eAAA,EACW,UAAU;UAAAC,QAAA,EACjBnF,eAAe;UAAAoF,gBAAA,EACPrG;QACpB;MACF,CAAC,CAAC;IAAA,CACH;IAAAJ,CAAA,OAAAmD,UAAA;IAAAnD,CAAA,OAAAqB,eAAA;IAAArB,CAAA,OAAAI,cAAA;IAAAJ,CAAA,OAAAkC,EAAA;EAAA;IAAAA,EAAA,GAAAlC,CAAA;EAAA;EAAA,IAAAyC,EAAA;EAAA,IAAAzC,CAAA,SAAAM,MAAA,CAAAmF,eAAA,IAAAzF,CAAA,SAAAkC,EAAA,IAAAlC,CAAA,SAAAyF,eAAA;IAbHhD,EAAA,gBAAAhD,IAAA,CAACpB,UAAU;MACUqI,kBAAc,EAAd,cAAc;MACtBC,SAAsB,EAAtBrG,MAAM,CAAAmF,eAAgB;MACxBmB,OAUR,EAVQ1E,EAUR;MAAAgD,QAAA,EAEAO;IAAe,CACN,CAAC;IAAAzF,CAAA,OAAAM,MAAA,CAAAmF,eAAA;IAAAzF,CAAA,OAAAkC,EAAA;IAAAlC,CAAA,OAAAyF,eAAA;IAAAzF,CAAA,OAAAyC,EAAA;EAAA;IAAAA,EAAA,GAAAzC,CAAA;EAAA;EAAA,IAAA4C,EAAA;EAAA,IAAA5C,CAAA,SAAAM,MAAA,CAAAuG,YAAA,IAAA7G,CAAA,SAAAyC,EAAA;IAlBfG,EAAA,gBAAAjD,KAAA,CAAC5B,IAAI;MAAQkH,KAAmB,EAAnB3E,MAAM,CAAAuG,YAAa;MAAA3B,QAAA,GAC9BzD,EAAmC,EACnCgB,EAgBa;IAAA,CACT,CAAC;IAAAzC,CAAA,OAAAM,MAAA,CAAAuG,YAAA;IAAA7G,CAAA,OAAAyC,EAAA;IAAAzC,CAAA,OAAA4C,EAAA;EAAA;IAAAA,EAAA,GAAA5C,CAAA;EAAA;EACM,MAAAgD,GAAA,GAAA1C,MAAM,CAAAuG,YAAa;EAAA,IAAAzD,GAAA;EAAA,IAAApD,CAAA,SAAA6B,eAAA,IAAA7B,CAAA,SAAAwF,aAAA,IAAAxF,CAAA,SAAAM,MAAA,CAAAwG,QAAA;IAAA,IAAAxD,GAAA;IAAA,IAAAtD,CAAA,SAAA6B,eAAA,IAAA7B,CAAA,SAAAM,MAAA,CAAAwG,QAAA;MACXxD,GAAA,GAAAyD,MAAA;QACjB,MAAAC,mBAAA,GAA4B3B,MAAI,CAAA2B,mBAAoB,CAAAC,IAAK,CAAC,IAAI,CAAC;QAC/D,MAAAC,KAAA,GAAc,GAAG7B,MAAI,CAAA8B,QAAS,MAAMH,mBAAmB,EAAE;QAAA,oBAGvDvH,IAAA,CAAC1B,IAAI;UAAgCkH,KAAe,EAAf3E,MAAM,CAAAwG,QAAS;UAAA5B,QAAA,eAClDzF,IAAA,CAACzB,KAAK;YACUoJ,aAAW,EAAX,WAAW;YAClBF,KAAK,EAALA,KAAK;YACHN,OAAwC,EAAxCA,CAAA,KAAM/E,eAAe,CAACwD,MAAI,CAAAE,KAAM,CAAA7D,MAAO;UAAC,CAClD;QAAC,GALO2D,MAAI,CAAAE,KAAM,CAAA7D,MAMf,CAAC;MAAA,CAEV;MAAA1B,CAAA,OAAA6B,eAAA;MAAA7B,CAAA,OAAAM,MAAA,CAAAwG,QAAA;MAAA9G,CAAA,OAAAsD,GAAA;IAAA;MAAAA,GAAA,GAAAtD,CAAA;IAAA;IAbAoD,GAAA,GAAAoC,aAAa,CAAA6B,GAAI,CAAC/D,GAalB,CAAC;IAAAtD,CAAA,OAAA6B,eAAA;IAAA7B,CAAA,OAAAwF,aAAA;IAAAxF,CAAA,OAAAM,MAAA,CAAAwG,QAAA;IAAA9G,CAAA,OAAAoD,GAAA;EAAA;IAAAA,GAAA,GAAApD,CAAA;EAAA;EAAA,IAAAsD,GAAA;EAAA,IAAAtD,CAAA,SAAAM,MAAA,CAAAuG,YAAA,IAAA7G,CAAA,SAAAoD,GAAA;IAdJE,GAAA,gBAAA7D,IAAA,CAAC1B,IAAI;MAAQkH,KAAmB,EAAnBjC,GAAmB;MAAAkC,QAAA,EAC7B9B;IAaC,CACE,CAAC;IAAApD,CAAA,OAAAM,MAAA,CAAAuG,YAAA;IAAA7G,CAAA,OAAAoD,GAAA;IAAApD,CAAA,OAAAsD,GAAA;EAAA;IAAAA,GAAA,GAAAtD,CAAA;EAAA;EAAA,IAAAqE,GAAA;EAAA,IAAArE,CAAA,SAAAM,MAAA,CAAAyF,SAAA,IAAA/F,CAAA,SAAAsD,GAAA,IAAAtD,CAAA,SAAA4C,EAAA;IApCTyB,GAAA,gBAAA1E,KAAA,CAAC5B,IAAI;MAAQkH,KAAgB,EAAhBzD,EAAgB;MAAA0D,QAAA,GAC3BtC,EAmBO,EACPU,GAeO;IAAA,CACH,CAAC;IAAAtD,CAAA,OAAAM,MAAA,CAAAyF,SAAA;IAAA/F,CAAA,OAAAsD,GAAA;IAAAtD,CAAA,OAAA4C,EAAA;IAAA5C,CAAA,OAAAqE,GAAA;EAAA;IAAAA,GAAA,GAAArE,CAAA;EAAA;EAAA,IAAAuE,GAAA;EAAA,IAAAvE,CAAA,SAAAgG,MAAA,CAAAC,GAAA;IACP1B,GAAA,gBAAA9E,IAAA,CAACH,OAAO,IAAE,CAAC;IAAAU,CAAA,OAAAuE,GAAA;EAAA;IAAAA,GAAA,GAAAvE,CAAA;EAAA;EAAA,IAAAwE,GAAA;EAAA,IAAAxE,CAAA,SAAAgG,MAAA,CAAAC,GAAA;IAGPzB,GAAA,gBAAA/E,IAAA,CAACtB,OAAO;MAAS+H,OAAI,EAAJ,IAAI;MAAAhB,QAAA,EAAC;IAAc,CAAS,CAAC;IAAAlF,CAAA,OAAAwE,GAAA;EAAA;IAAAA,GAAA,GAAAxE,CAAA;EAAA;EAAA,IAAA0E,GAAA;EAAA,IAAA1E,CAAA,SAAA+B,eAAA,IAAA/B,CAAA,SAAAkB,iBAAA;IAG7BwD,GAAA,GAAAa,KAAA;MACbxD,eAAe,CAACwD,KAAK,CAAC;MACtB,IAAI,CAACA,KAAK;QACRrE,iBAAiB,CAACe,SAAS,CAAC;MAAA;IAC7B,CACF;IAAAjC,CAAA,OAAA+B,eAAA;IAAA/B,CAAA,OAAAkB,iBAAA;IAAAlB,CAAA,OAAA0E,GAAA;EAAA;IAAAA,GAAA,GAAA1E,CAAA;EAAA;EACS,MAAA2E,GAAA,IAACtD,eAAe,CAAAoD,MAAO;EAAA,IAAAM,GAAA;EAAA,IAAA/E,CAAA,SAAAmF,YAAA,IAAAnF,CAAA,SAAA0E,GAAA,IAAA1E,CAAA,SAAA2E,GAAA;IARnCI,GAAA,gBAAAtF,IAAA,CAACrB,MAAM;MACE+G,KAAY,EAAZA,YAAY;MACJmC,aAKd,EALc5C,GAKd;MACSE,QAAuB,EAAvBD;IAAuB,CAClC,CAAC;IAAA3E,CAAA,OAAAmF,YAAA;IAAAnF,CAAA,OAAA0E,GAAA;IAAA1E,CAAA,OAAA2E,GAAA;IAAA3E,CAAA,OAAA+E,GAAA;EAAA;IAAAA,GAAA,GAAA/E,CAAA;EAAA;EAAA,IAAAuH,GAAA;EAAA,IAAAvH,CAAA,SAAAM,MAAA,CAAAkH,uBAAA,IAAAxH,CAAA,SAAA+E,GAAA;IAXJwC,GAAA,gBAAA5H,KAAA,CAAC5B,IAAI;MAAQkH,KAA8B,EAA9B3E,MAAM,CAAAkH,uBAAwB;MAAAtC,QAAA,GACzCV,GAA8C,EAC9CO,GASE;IAAA,CACE,CAAC;IAAA/E,CAAA,OAAAM,MAAA,CAAAkH,uBAAA;IAAAxH,CAAA,OAAA+E,GAAA;IAAA/E,CAAA,OAAAuH,GAAA;EAAA;IAAAA,GAAA,GAAAvH,CAAA;EAAA;EAAA,IAAAyH,GAAA;EAAA,IAAAzH,CAAA,SAAAmF,YAAA,IAAAnF,CAAA,SAAAiB,cAAA,IAAAjB,CAAA,SAAAqB,eAAA,IAAArB,CAAA,SAAAkB,iBAAA;IACNuG,GAAA,GAAAtC,YAMA,iBANA1F,IAAA,CACEJ,YAAY;MACFgC,OAAe,EAAfA,eAAe;MACRJ,cAAc,EAAdA,cAAc;MAChBC,YAAiB,EAAjBA;IAAiB,CAEnC,CAAC;IAAAlB,CAAA,OAAAmF,YAAA;IAAAnF,CAAA,OAAAiB,cAAA;IAAAjB,CAAA,OAAAqB,eAAA;IAAArB,CAAA,OAAAkB,iBAAA;IAAAlB,CAAA,OAAAyH,GAAA;EAAA;IAAAA,GAAA,GAAAzH,CAAA;EAAA;EAAA,IAAA0H,GAAA;EAAA,IAAA1H,CAAA,SAAAM,MAAA,CAAAqH,mBAAA,IAAA3H,CAAA,SAAAuH,GAAA,IAAAvH,CAAA,SAAAyH,GAAA;IApBHC,GAAA,gBAAA/H,KAAA,CAAC5B,IAAI;MAAQkH,KAA0B,EAA1B3E,MAAM,CAAAqH,mBAAoB;MAAAzC,QAAA,GACrCqC,GAYO,EACNE,GAMA;IAAA,CACG,CAAC;IAAAzH,CAAA,OAAAM,MAAA,CAAAqH,mBAAA;IAAA3H,CAAA,OAAAuH,GAAA;IAAAvH,CAAA,OAAAyH,GAAA;IAAAzH,CAAA,OAAA0H,GAAA;EAAA;IAAAA,GAAA,GAAA1H,CAAA;EAAA;EAAA,IAAA4H,GAAA;EAAA,IAAA5H,CAAA,SAAAgG,MAAA,CAAAC,GAAA;IACP2B,GAAA,gBAAAnI,IAAA,CAACH,OAAO,IAAE,CAAC;IAAAU,CAAA,OAAA4H,GAAA;EAAA;IAAAA,GAAA,GAAA5H,CAAA;EAAA;EAAA,IAAA6H,GAAA;EAAA,IAAA7H,CAAA,SAAAK,eAAA,IAAAL,CAAA,SAAAa,oBAAA,IAAAb,CAAA,SAAAmE,wBAAA;IACV0D,GAAA,IAAC1D,wBAAgD,IAAjDtD,oBAKA,iBALAlB,KAAA,CAAAE,SAAA;MAAAqF,QAAA,gBAEGzF,IAAA,CAACL,kBAAkB;QAAkBiB,eAAe,EAAfA;MAAe,CAAG,CAAC,eACxDZ,IAAA,CAACH,OAAO,IAAE,CAAC;IAAA,CAEf,CAAC;IAAAU,CAAA,OAAAK,eAAA;IAAAL,CAAA,OAAAa,oBAAA;IAAAb,CAAA,OAAAmE,wBAAA;IAAAnE,CAAA,OAAA6H,GAAA;EAAA;IAAAA,GAAA,GAAA7H,CAAA;EAAA;EACY,MAAA8H,GAAA,GAAAxH,MAAM,CAAAyH,aAAc;EAAA,IAAAC,GAAA;EAAA,IAAAhI,CAAA,SAAA0F,WAAA;IACRsC,GAAA,GAAA/I,SAAS,CAACyG,WAAW,EAAE,QAAQ,CAAC;IAAA1F,CAAA,OAAA0F,WAAA;IAAA1F,CAAA,OAAAgI,GAAA;EAAA;IAAAA,GAAA,GAAAhI,CAAA;EAAA;EAAA,IAAAiI,GAAA;EAAA,IAAAjI,CAAA,SAAAgI,GAAA;IAAvDC,GAAA,gBAAAtI,KAAA,CAACxB,OAAO;MAAS+H,OAAI,EAAJ,IAAI;MAAAhB,QAAA,GAAE8C,GAAgC,EAAC,WAAS;IAAA,CAAS,CAAC;IAAAhI,CAAA,OAAAgI,GAAA;IAAAhI,CAAA,OAAAiI,GAAA;EAAA;IAAAA,GAAA,GAAAjI,CAAA;EAAA;EAAA,IAAAkI,GAAA;EAAA,IAAAlI,CAAA,SAAA4F,YAAA,IAAA5F,CAAA,SAAA6F,WAAA,IAAA7F,CAAA,SAAAM,MAAA,CAAA6H,MAAA;IAC1ED,GAAA,GAAArC,WAEA,iBAFApG,IAAA,CACEvB,WAAW;MAAe0H,YAAY,EAAZA,YAAY;MAAewC,WAAI,EAAJ,IAAI;MAASnD,KAAa,EAAb3E,MAAM,CAAA6H;IAAO,CAClF,CAAC;IAAAnI,CAAA,OAAA4F,YAAA;IAAA5F,CAAA,OAAA6F,WAAA;IAAA7F,CAAA,OAAAM,MAAA,CAAA6H,MAAA;IAAAnI,CAAA,OAAAkI,GAAA;EAAA;IAAAA,GAAA,GAAAlI,CAAA;EAAA;EAAA,IAAAqI,GAAA;EAAA,IAAArI,CAAA,SAAA+C,aAAA,IAAA/C,CAAA,SAAAM,MAAA,CAAA6H,MAAA;IACAE,GAAA,GAAAtF,aAMA,iBANAtD,IAAA,CACExB,MAAM;MACMqK,UAAO,EAAP,OAAO;MACNC,WAAwE,EAAxE,wEAAwE;MAC7EtD,KAAa,EAAb3E,MAAM,CAAA6H;IAAO,CAExB,CAAC;IAAAnI,CAAA,OAAA+C,aAAA;IAAA/C,CAAA,OAAAM,MAAA,CAAA6H,MAAA;IAAAnI,CAAA,OAAAqI,GAAA;EAAA;IAAAA,GAAA,GAAArI,CAAA;EAAA;EAAA,IAAAwI,GAAA;EAAA,IAAAxI,CAAA,SAAAM,MAAA,CAAAyH,aAAA,IAAA/H,CAAA,SAAAiI,GAAA,IAAAjI,CAAA,SAAAkI,GAAA,IAAAlI,CAAA,SAAAqI,GAAA;IAXHG,GAAA,gBAAA7I,KAAA,CAAC5B,IAAI;MAAQkH,KAAoB,EAApB6C,GAAoB;MAAA5C,QAAA,GAC/B+C,GAA2E,EAC1EC,GAEA,EACAG,GAMA;IAAA,CACG,CAAC;IAAArI,CAAA,OAAAM,MAAA,CAAAyH,aAAA;IAAA/H,CAAA,OAAAiI,GAAA;IAAAjI,CAAA,OAAAkI,GAAA;IAAAlI,CAAA,OAAAqI,GAAA;IAAArI,CAAA,OAAAwI,GAAA;EAAA;IAAAA,GAAA,GAAAxI,CAAA;EAAA;EAAA,IAAAyI,GAAA;EAAA,IAAAzI,CAAA,SAAAM,MAAA,CAAAwF,WAAA,IAAA9F,CAAA,SAAAqE,GAAA,IAAArE,CAAA,SAAA0H,GAAA,IAAA1H,CAAA,SAAA6H,GAAA,IAAA7H,CAAA,SAAAwI,GAAA;IAjFTC,GAAA,gBAAA9I,KAAA,CAAC5B,IAAI;MAAQkH,KAAkB,EAAlB1D,EAAkB;MAAA2D,QAAA,GAC7Bb,GAqCO,EACPE,GAAW,EACXmD,GAqBO,EACPE,GAAW,EACVC,GAKA,EACDW,GAYO;IAAA,CACH,CAAC;IAAAxI,CAAA,OAAAM,MAAA,CAAAwF,WAAA;IAAA9F,CAAA,OAAAqE,GAAA;IAAArE,CAAA,OAAA0H,GAAA;IAAA1H,CAAA,OAAA6H,GAAA;IAAA7H,CAAA,OAAAwI,GAAA;IAAAxI,CAAA,OAAAyI,GAAA;EAAA;IAAAA,GAAA,GAAAzI,CAAA;EAAA;EAAA,OAlFPyI,GAkFO;AAAA;AA/GX,SAAA9C,OAAA+C,MAAA;EAAA,OAuB8DA,MAAM,CAAAC,KAAM;AAAA;AA4F1E,MAAMpI,SAAS,GAAGA,CAAA,KAAM;EACtB,MAAMqI,cAAc,GAAG,EAAE;EAEzB,OAAO9K,UAAU,CAAC+K,MAAM,CAAC;IACvB7D,aAAa,EAAE;MACb8D,IAAI,EAAE;IACR,CAAC;IACDhD,WAAW,EAAE;MACXiD,aAAa,EAAEH,cAAc;MAC7BE,IAAI,EAAE;IACR,CAAC;IACD/C,SAAS,EAAE;MACTiD,OAAO,EAAEJ,cAAc;MACvBK,GAAG,EAAE;IACP,CAAC;IACDpC,YAAY,EAAE;MACZqC,aAAa,EAAE,KAAK;MACpBD,GAAG,EAAE,CAAC;MACNE,UAAU,EAAE,UAAU;MACtBC,QAAQ,EAAE;IACZ,CAAC;IACDtC,QAAQ,EAAE;MACRoC,aAAa,EAAE;IACjB,CAAC;IACDG,SAAS,EAAE;MACTC,QAAQ,EAAE;IACZ,CAAC;IACD3B,mBAAmB,EAAE;MACnBqB,OAAO,EAAEJ,cAAc;MACvBK,GAAG,EAAE;IACP,CAAC;IACDzB,uBAAuB,EAAE;MACvB0B,aAAa,EAAE,KAAK;MACpBD,GAAG,EAAE,CAAC;MACNM,cAAc,EAAE,eAAe;MAC/BJ,UAAU,EAAE;IACd,CAAC;IACDK,sBAAsB,EAAE;MACtBN,aAAa,EAAE,KAAK;MACpBD,GAAG,EAAE;IACP,CAAC;IACDQ,UAAU,EAAE;MACVH,QAAQ,EAAE;IACZ,CAAC;IACDvB,aAAa,EAAE;MACbiB,OAAO,EAAEJ,cAAc;MACvBG,aAAa,EAAE;IACjB,CAAC;IACDZ,MAAM,EAAE;MACNuB,SAAS,EAAE;IACb,CAAC;IACDjE,eAAe,EAAE;MACf6D,QAAQ,EAAEnK,MAAM,CAACwK;IACnB;EACF,CAAC,CAAC;AACJ,CAAC;AA5S2B,SAAA1G,MAAAyF,MAAA;EAAA,OAiDkC,CAACA,MAAM,CAAAC,KAAM;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"services_form.js","names":["StackActions","useNavigation","uniq","React","useCallback","useEffect","useMemo","useState","StyleSheet","View","Badge","Banner","ChildNotice","Heading","Switch","TextButton","ActionButton","useApiClient","useFindOrCreateServicesConversation","useServicesChatConversationPayload","useServicesTeams","useTeamMembersForNewConversation","patchConversationAvatar","useConversationValidate","availableFeatures","useFeatures","useUploadClient","pluralize","Haptic","tokens","AvatarSelectionRow","FilterByPlan","Divider","FormList","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","ServicesForm","t0","$","_c","initialTeamIds","initialPlanId","teamFilterType","avatarSelection","styles","useStyles","apiClient","uploadClient","featureEnabled","t1","custom_conversation_avatars","customAvatarsEnabled","t2","conversation_safety_lock","safetyLockEnabled","selectedPlanId","setSelectedPlanId","filterByPlan","setFilterByPlan","t3","initialState","selectedTeamIds","setSelectedTeamIds","t4","t5","t6","teamId","filter","id","removeSelection","activePlanId","undefined","t7","teamIds","planId","enabled","payload","isLoading","isLoadingPayload","t8","warnings","validationPending","t9","members","isError","isMemberError","t10","_temp","adultMembers","navigation","t11","conversation","t12","created","getParent","goBack","dispatch","push","conversation_id","notificationSuccess","kind","onSuccess","mutate","createConversation","isPending","selectionHasConversation","isLoadingConversationCheck","t13","FormContent","t14","t15","length","t16","t17","disabled","title","infoText","t18","formContainer","style","children","servicesTeams","team","includes","value","selectedTeams","teamCountHeader","memberCount","_temp2","childMembers","hasChildren","formContent","toSection","Symbol","for","variant","impactLight","navigate","screen","params","source_app_name","team_ids","team_filter_type","accessibilityLabel","textStyle","onPress","toSectionRow","badgeRow","team_0","serviceTypeAcronyms","join","label","teamName","iconNameRight","map","onValueChange","t19","filterByPlanSectionLead","t20","t21","filterByPlanSection","t22","t23","t24","memberSection","t25","t26","t27","banner","showMembers","t28","appearance","description","t29","t30","member","child","sectionPadding","create","flex","paddingBottom","padding","gap","flexDirection","alignItems","flexWrap","groupName","fontSize","justifyContent","filterByPlanSectionRow","titleInput","marginTop","fontSizeLg"],"sources":["../../../../src/screens/conversation_new/components/services_form.tsx"],"sourcesContent":["import { StackActions, useNavigation } from '@react-navigation/native'\nimport { uniq } from 'lodash'\nimport React, { useCallback, useEffect, useMemo, useState } from 'react'\nimport { StyleSheet, View } from 'react-native'\nimport { Badge, Banner, ChildNotice, Heading, Switch, TextButton } from '../../../components'\nimport { ActionButton } from '../../../components/display/action_button'\nimport { useApiClient } from '../../../hooks'\nimport { useFindOrCreateServicesConversation } from '../../../hooks/services/use_find_or_create_services_conversation'\nimport { useServicesChatConversationPayload } from '../../../hooks/services/use_services_chat_conversation_payload'\nimport { useServicesTeams } from '../../../hooks/services/use_services_team'\nimport { useTeamMembersForNewConversation } from '../../../hooks/services/use_team_members_for_new_conversation'\nimport {\n type AvatarUpdatePayload,\n patchConversationAvatar,\n} from '../../../hooks/use_conversation_avatar_update'\nimport { useConversationValidate } from '../../../hooks/use_conversation_validate'\nimport { availableFeatures, useFeatures } from '../../../hooks/use_features'\nimport { useUploadClient } from '../../../hooks/use_upload_client'\nimport { MemberResource } from '../../../types'\nimport { pluralize } from '../../../utils'\nimport { Haptic } from '../../../utils/native_adapters'\nimport { tokens } from '../../../vendor/tapestry/tokens'\nimport { TeamFilterTypes } from '../../conversation_filter_recipients/types'\nimport { AvatarSelectionRow } from './avatar_selection_row'\nimport { FilterByPlan } from './filter_by_plan'\nimport { Divider, FormList } from './form_list'\n\ntype ServicesFormProps = {\n initialTeamIds?: number[]\n initialPlanId?: number\n teamFilterType?: TeamFilterTypes\n avatarSelection?: AvatarUpdatePayload\n}\n\nexport const ServicesForm = ({\n initialTeamIds,\n initialPlanId,\n teamFilterType,\n avatarSelection,\n}: ServicesFormProps) => {\n const styles = useStyles()\n const apiClient = useApiClient()\n const uploadClient = useUploadClient()\n const { featureEnabled } = useFeatures()\n const customAvatarsEnabled = featureEnabled(availableFeatures.custom_conversation_avatars)\n const safetyLockEnabled = featureEnabled(availableFeatures.conversation_safety_lock)\n const [selectedPlanId, setSelectedPlanId] = useState<number | undefined>(initialPlanId)\n const [filterByPlan, setFilterByPlan] = useState(!!initialPlanId)\n const initialState = useMemo(() => uniq(initialTeamIds) || [], [initialTeamIds]) // Uniq here because services can send duplicates in the teams_i_lead response.\n const [selectedTeamIds, setSelectedTeamIds] = useState<number[]>(initialState)\n\n // Sync with fresh props when they change (from navigation)\n useEffect(() => {\n setSelectedTeamIds(initialState)\n setSelectedPlanId(initialPlanId)\n setFilterByPlan(!!initialPlanId)\n }, [initialState, initialPlanId])\n\n const removeSelection = useCallback(\n (teamId: number) => {\n setSelectedTeamIds(selectedTeamIds.filter(id => id !== teamId))\n },\n [selectedTeamIds]\n )\n\n const activePlanId = filterByPlan ? selectedPlanId : undefined\n\n const { payload, isLoading: isLoadingPayload } = useServicesChatConversationPayload({\n teamIds: selectedTeamIds,\n planId: activePlanId,\n enabled: safetyLockEnabled,\n })\n\n const { warnings, validationPending } = useConversationValidate({\n payload,\n isLoadingPayload,\n enabled: safetyLockEnabled,\n })\n\n const { members, isError: isMemberError } = useTeamMembersForNewConversation({\n teamIds: selectedTeamIds,\n planId: activePlanId,\n })\n const adultMembers = useMemo(() => members.filter(member => !member.child), [members])\n\n const navigation = useNavigation()\n const {\n mutate: createConversation,\n isPending,\n selectionHasConversation,\n isLoadingConversationCheck,\n } = useFindOrCreateServicesConversation({\n teamIds: selectedTeamIds,\n planId: activePlanId,\n onSuccess: (conversation, { created }) => {\n navigation.getParent()?.goBack()\n navigation.dispatch(\n StackActions.push('Conversation', {\n conversation_id: conversation.id,\n })\n )\n if (created) {\n Haptic.notificationSuccess()\n if (avatarSelection && avatarSelection.kind !== 'clear') {\n patchConversationAvatar(apiClient, uploadClient, conversation.id, avatarSelection)\n }\n }\n },\n })\n\n return (\n <View style={styles.formContainer}>\n <FormList\n memberData={adultMembers}\n FormContent={\n <FormContent\n selectedTeamIds={selectedTeamIds}\n removeSelection={removeSelection}\n selectedPlanId={selectedPlanId}\n setSelectedPlanId={setSelectedPlanId}\n filterByPlan={filterByPlan}\n setFilterByPlan={setFilterByPlan}\n members={members}\n isMemberError={isMemberError}\n teamFilterType={teamFilterType}\n avatarSelection={avatarSelection}\n selectionHasConversation={selectionHasConversation}\n customAvatarsEnabled={customAvatarsEnabled}\n />\n }\n />\n <ActionButton\n disabled={\n !selectedTeamIds.length ||\n isPending ||\n isLoadingConversationCheck ||\n validationPending ||\n warnings.length > 0\n }\n title={selectionHasConversation ? 'Open conversation' : 'Start conversation'}\n onPress={createConversation}\n infoText=\"Conversation will be automatically updated if any members are added or removed from included teams.\"\n loading={isLoadingConversationCheck}\n warnings={warnings}\n />\n </View>\n )\n}\n\ninterface FormContentProps {\n selectedTeamIds: number[]\n removeSelection: (teamId: number) => void\n selectedPlanId?: number\n setSelectedPlanId: (planId: number | undefined) => void\n filterByPlan: boolean\n setFilterByPlan: (value: boolean) => void\n members: MemberResource[]\n isMemberError: boolean\n teamFilterType?: TeamFilterTypes\n avatarSelection?: AvatarUpdatePayload\n selectionHasConversation: boolean\n customAvatarsEnabled: boolean\n}\n\nfunction FormContent({\n selectedTeamIds,\n removeSelection,\n selectedPlanId,\n setSelectedPlanId,\n filterByPlan,\n setFilterByPlan,\n members,\n isMemberError,\n teamFilterType,\n avatarSelection,\n selectionHasConversation,\n customAvatarsEnabled,\n}: FormContentProps) {\n const navigation = useNavigation()\n const servicesTeams = useServicesTeams()\n const selectedTeams = useMemo(() => {\n return servicesTeams.filter(team => selectedTeamIds.includes(team.value.teamId))\n }, [selectedTeamIds, servicesTeams])\n\n const styles = useStyles()\n const teamCountHeader = pluralize(selectedTeamIds.length, 'team')\n const memberCount = members.length\n const childMembers = useMemo(() => members.filter(member => member.child), [members])\n const hasChildren = childMembers.length > 0\n\n filterByPlan = filterByPlan && !!selectedTeamIds.length\n\n return (\n <View style={styles.formContent}>\n <View style={styles.toSection}>\n <View style={styles.toSectionRow}>\n <Heading variant=\"h3\">To:</Heading>\n <TextButton\n accessibilityLabel=\"Select teams\"\n textStyle={styles.teamCountHeader}\n onPress={() => {\n Haptic.impactLight()\n navigation.navigate('New', {\n screen: 'ConversationFilterRecipients',\n params: {\n source_app_name: 'Services',\n team_ids: selectedTeamIds,\n team_filter_type: teamFilterType,\n },\n })\n }}\n >\n {teamCountHeader}\n </TextButton>\n </View>\n <View style={styles.toSectionRow}>\n {selectedTeams.map(team => {\n const serviceTypeAcronyms = team.serviceTypeAcronyms.join(', ')\n const label = `${team.teamName} | ${serviceTypeAcronyms}`\n\n return (\n <View key={team.value.teamId} style={styles.badgeRow}>\n <Badge\n iconNameRight=\"general.x\"\n label={label}\n onPress={() => removeSelection(team.value.teamId)}\n />\n </View>\n )\n })}\n </View>\n </View>\n <Divider />\n <View style={styles.filterByPlanSection}>\n <View style={styles.filterByPlanSectionLead}>\n <Heading variant=\"h3\">Filter by plan</Heading>\n <Switch\n value={filterByPlan}\n onValueChange={value => {\n setFilterByPlan(value)\n if (!value) {\n setSelectedPlanId(undefined)\n }\n }}\n disabled={!selectedTeamIds.length}\n />\n </View>\n {filterByPlan && (\n <FilterByPlan\n teamIds={selectedTeamIds}\n selectedPlanId={selectedPlanId}\n onPlanSelect={setSelectedPlanId}\n />\n )}\n </View>\n <Divider />\n {!selectionHasConversation && customAvatarsEnabled && (\n <>\n <AvatarSelectionRow avatarSelection={avatarSelection} />\n <Divider />\n </>\n )}\n <View style={styles.memberSection}>\n <Heading variant=\"h3\">{pluralize(memberCount, 'member')} selected</Heading>\n {hasChildren && (\n <ChildNotice childMembers={childMembers} showMembers={true} style={styles.banner} />\n )}\n {isMemberError && (\n <Banner\n appearance=\"error\"\n description=\"There was an issue loading team members, please refresh and try again.\"\n style={styles.banner}\n />\n )}\n </View>\n </View>\n )\n}\n\nconst useStyles = () => {\n const sectionPadding = 16\n\n return StyleSheet.create({\n formContainer: {\n flex: 1,\n },\n formContent: {\n paddingBottom: sectionPadding,\n flex: 1,\n },\n toSection: {\n padding: sectionPadding,\n gap: 8,\n },\n toSectionRow: {\n flexDirection: 'row',\n gap: 8,\n alignItems: 'baseline',\n flexWrap: 'wrap',\n },\n badgeRow: {\n flexDirection: 'row',\n },\n groupName: {\n fontSize: 18,\n },\n filterByPlanSection: {\n padding: sectionPadding,\n gap: 12,\n },\n filterByPlanSectionLead: {\n flexDirection: 'row',\n gap: 8,\n justifyContent: 'space-between',\n alignItems: 'center',\n },\n filterByPlanSectionRow: {\n flexDirection: 'row',\n gap: 8,\n },\n titleInput: {\n fontSize: 18,\n },\n memberSection: {\n padding: sectionPadding,\n paddingBottom: 0,\n },\n banner: {\n marginTop: 16,\n },\n teamCountHeader: {\n fontSize: tokens.fontSizeLg,\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation_select_direct_message_recipients_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,uCAAuC,EAAE,MAAM,sBAAsB,CAAA;AAI9E,wBAAgB,+CAA+C,CAAC,EAC9D,KAAK,GACN,EAAE,uCAAuC,
|
|
1
|
+
{"version":3,"file":"conversation_select_direct_message_recipients_screen.d.ts","sourceRoot":"","sources":["../../../src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx"],"names":[],"mappings":"AAgBA,OAAO,EAAE,uCAAuC,EAAE,MAAM,sBAAsB,CAAA;AAI9E,wBAAgB,+CAA+C,CAAC,EAC9D,KAAK,GACN,EAAE,uCAAuC,2CAyHzC"}
|
|
@@ -134,8 +134,7 @@ export function ConversationSelectDirectMessageRecipientsScreen(t0) {
|
|
|
134
134
|
let t11;
|
|
135
135
|
if ($[17] !== navigation) {
|
|
136
136
|
t11 = conversationId => {
|
|
137
|
-
navigation.getParent()?.
|
|
138
|
-
navigation.dispatch(StackActions.push("Conversation", {
|
|
137
|
+
navigation.getParent()?.dispatch(StackActions.replace("Conversation", {
|
|
139
138
|
conversation_id: conversationId
|
|
140
139
|
}));
|
|
141
140
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversation_select_direct_message_recipients_screen.js","names":["PlatformPressable","StackActions","useNavigation","useEffect","useRef","useState","FlatList","Pressable","StyleSheet","View","Avatar","Badge","Banner","Icon","KeyboardView","Spinner","Text","ActionButton","AutoFocusAwareTextInput","ComponentErrorBoundary","useTheme","useDirectMessageAffiliations","useDirectMessageCandidates","useDirectMessageConversationValidate","useFindOrCreateDirectMessageConversation","availableFeatures","useFeatures","ResultsHeading","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MAX_RECIPIENTS","ConversationSelectDirectMessageRecipientsScreen","t0","$","_c","route","t1","params","preselected_people","t2","t3","undefined","styles","useStyles","navigation","featureEnabled","searchTerm","setSearchTerm","debouncedTerm","setDebouncedTerm","t4","Map","map","_temp","selectedPeople","setSelectedPeople","searchInputRef","t5","t6","timer","setTimeout","clearTimeout","t7","size","person_0","prev","set","person","id","dm_search_clear_fix","current","clear","selectPerson","t8","Symbol","for","prev_0","next","delete","removePerson","t9","keys","recipientIds","t10","warnings","validationPending","t11","conversationId","getParent","goBack","dispatch","push","conversation_id","handleSuccess","t12","onSuccess","findOrCreateConversation","directMessageExists","isFinding","isError","t13","bb0","t14","values","value","name","split","firstName","buttonText","errorBanner","appearance","description","style","t15","t16","ToField","onClear","t17","t18","CandidateResults","t19","fallback","children","t20","candidateResultsContainer","t21","length","t22","t23","t24","disabled","loading","onPress","t25","type","groups","teams","under_18","directMessagesDisabled","onSearchChange","onRemove","colors","hasSelections","toField","toLabel","clearButton","hitSlop","toFieldHeader","toInputArea","PersonChip","textColorDefaultPlaceholder","toTextInput","autoFocus","placeholder","placeholderTextColor","returnKeyType","avatar","sourceUri","showFallback","chipName","chipRemoveIcon","accessibilityLabel","chip","term","onSelect","data","isFetching","resultsDescription","emptyStateIcon","emptyStateTitle","emptyStateSubtitle","variant","emptyState","isAtLimit","c","has","filter","unselectedCandidates","hasTruncated","meta","totalCount","CandidateList","candidateBadges","candidate","badges","title","candidateAffiliationNames","flatMap","get","candidates","_temp2","available","T0","dmDisabled","_temp3","_temp4","item","item_0","CandidateItem","affiliationNames","unavailableHeader","unavailableLabel","truncatedFooter","truncatedText","keyboardShouldPersistTaps","keyExtractor","renderItem","ListHeaderComponent","ListFooterComponent","c_0","candidateDisabled","row","rowName","rowAffiliations","numberOfLines","join","badgeRow","_temp5","rowInfo","accessibilityRole","accessibilityState","borderColorDefaultBase","borderColorDefaultDim","iconColorDefaultSecondary","interaction","textColorDefaultPrimary","textColorDefaultSecondary","create","flex","paddingHorizontal","paddingTop","paddingBottom","flexDirection","justifyContent","alignItems","marginBottom","fontWeight","color","flexWrap","gap","borderWidth","borderColor","borderRadius","paddingVertical","minWidth","fontSize","paddingLeft","paddingRight","margin","textAlign","borderBottomWidth","marginTop","opacity"],"sources":["../../../src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx"],"sourcesContent":["import { PlatformPressable } from '@react-navigation/elements'\nimport { StackActions, useNavigation } from '@react-navigation/native'\nimport { RefObject, useEffect, useRef, useState } from 'react'\nimport { FlatList, Pressable, StyleSheet, TextInput, View } from 'react-native'\nimport { Avatar, Badge, Banner, Icon, KeyboardView, Spinner, Text } from '../../components'\nimport { ActionButton } from '../../components/display/action_button'\nimport { AutoFocusAwareTextInput } from '../../components/display/text_input'\nimport { ComponentErrorBoundary } from '../../components/page/component_error_boundary'\nimport { useTheme } from '../../hooks'\nimport { useDirectMessageAffiliations } from '../../hooks/direct_messages/use_direct_message_affiliations'\nimport { useDirectMessageCandidates } from '../../hooks/direct_messages/use_direct_message_candidates'\nimport { useDirectMessageConversationValidate } from '../../hooks/direct_messages/use_direct_message_conversation_validate'\nimport { useFindOrCreateDirectMessageConversation } from '../../hooks/direct_messages/use_find_or_create_direct_message_conversation'\nimport { availableFeatures, useFeatures } from '../../hooks/use_features'\nimport { DirectMessageCandidateResource } from '../../types/resources/direct_message_candidate'\nimport { ResultsHeading } from './components/results_heading'\nimport { ConversationSelectRecipientsScreenProps } from './types/screen_props'\n\nconst MAX_RECIPIENTS = 9\n\nexport function ConversationSelectDirectMessageRecipientsScreen({\n route,\n}: ConversationSelectRecipientsScreenProps) {\n const { preselected_people = [] } = route.params ?? {}\n const styles = useStyles()\n const navigation = useNavigation()\n const { featureEnabled } = useFeatures()\n const [searchTerm, setSearchTerm] = useState('')\n const [debouncedTerm, setDebouncedTerm] = useState('')\n const [selectedPeople, setSelectedPeople] = useState<Map<string, DirectMessageCandidateResource>>(\n () =>\n new Map(\n preselected_people.map(person => [\n person.id,\n {\n ...person,\n type: 'DirectMessageCandidate' as const,\n groups: [],\n teams: [],\n under_18: false,\n directMessagesDisabled: false,\n },\n ])\n )\n )\n const searchInputRef = useRef<TextInput>(null)\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedTerm(searchTerm), 200)\n return () => clearTimeout(timer)\n }, [searchTerm])\n\n const selectPerson = (person: DirectMessageCandidateResource) => {\n if (selectedPeople.size >= MAX_RECIPIENTS) return\n setSelectedPeople(prev => new Map(prev).set(person.id, person))\n setSearchTerm('')\n setDebouncedTerm('')\n // Controlled TextInput can retain stale native text on iOS when the value\n // is cleared while it stays focused (keyboardShouldPersistTaps keeps it\n // focused through the tap) — clear() forces the native view to sync. Gated\n // so EAP reporters can toggle the fix on their devices to confirm it.\n if (featureEnabled(availableFeatures.dm_search_clear_fix)) {\n searchInputRef.current?.clear()\n }\n }\n\n const removePerson = (id: string) => {\n setSelectedPeople(prev => {\n const next = new Map(prev)\n next.delete(id)\n return next\n })\n }\n\n const recipientIds = [...selectedPeople.keys()]\n const { warnings, validationPending } = useDirectMessageConversationValidate({ recipientIds })\n\n const handleSuccess = (conversationId: number) => {\n navigation.getParent()?.goBack()\n navigation.dispatch(StackActions.push('Conversation', { conversation_id: conversationId }))\n }\n\n const { findOrCreateConversation, directMessageExists, isFinding, isError } =\n useFindOrCreateDirectMessageConversation({ recipientIds, onSuccess: handleSuccess })\n\n const buttonText = (() => {\n if (selectedPeople.size === 0) return 'Start conversation'\n if (selectedPeople.size === 1) {\n const firstName = selectedPeople.values().next().value!.name.split(' ')[0]\n return directMessageExists ? `Open message with ${firstName}` : `Message ${firstName}`\n }\n return directMessageExists\n ? `Open direct message (${selectedPeople.size})`\n : `Start direct message (${selectedPeople.size})`\n })()\n\n return (\n <KeyboardView>\n {isError && (\n <Banner\n appearance=\"error\"\n description=\"There was an issue starting the conversation. Please try again.\"\n style={styles.errorBanner}\n />\n )}\n <ToField\n selectedPeople={selectedPeople}\n searchTerm={searchTerm}\n onSearchChange={setSearchTerm}\n onRemove={removePerson}\n onClear={() => setSelectedPeople(new Map())}\n searchInputRef={searchInputRef}\n />\n <View style={styles.candidateResultsContainer}>\n <ComponentErrorBoundary\n key={debouncedTerm}\n fallback={\n <Banner\n appearance=\"error\"\n description=\"Couldn't load people right now. Try again.\"\n style={styles.errorBanner}\n />\n }\n >\n <CandidateResults\n term={debouncedTerm}\n selectedPeople={selectedPeople}\n onSelect={selectPerson}\n />\n </ComponentErrorBoundary>\n </View>\n <ActionButton\n title={buttonText}\n disabled={\n selectedPeople.size === 0 || validationPending || warnings.length > 0 || isFinding\n }\n loading={validationPending || isFinding}\n onPress={() => findOrCreateConversation(recipientIds)}\n warnings={warnings}\n />\n </KeyboardView>\n )\n}\n\nfunction ToField({\n selectedPeople,\n searchTerm,\n onSearchChange,\n onRemove,\n onClear,\n searchInputRef,\n}: {\n selectedPeople: Map<string, DirectMessageCandidateResource>\n searchTerm: string\n onSearchChange: (term: string) => void\n onRemove: (id: string) => void\n onClear: () => void\n searchInputRef: RefObject<TextInput | null>\n}) {\n const styles = useStyles()\n const { colors } = useTheme()\n const hasSelections = selectedPeople.size > 0\n\n return (\n <View style={styles.toField}>\n <View style={styles.toFieldHeader}>\n <Text style={styles.toLabel}>To</Text>\n {hasSelections && (\n <Pressable onPress={onClear} hitSlop={8}>\n <Text style={styles.clearButton}>Clear</Text>\n </Pressable>\n )}\n </View>\n <View style={styles.toInputArea}>\n {[...selectedPeople.values()].map(person => (\n <PersonChip key={person.id} person={person} onRemove={onRemove} />\n ))}\n <AutoFocusAwareTextInput\n autoFocus\n inputRef={searchInputRef}\n placeholder=\"Search\"\n placeholderTextColor={colors.textColorDefaultPlaceholder}\n value={searchTerm}\n onChangeText={onSearchChange}\n style={styles.toTextInput}\n returnKeyType=\"search\"\n />\n </View>\n </View>\n )\n}\n\nfunction PersonChip({\n person,\n onRemove,\n}: {\n person: DirectMessageCandidateResource\n onRemove: (id: string) => void\n}) {\n const styles = useStyles()\n\n return (\n <View style={styles.chip}>\n <Avatar sourceUri={person.avatar} size=\"sm\" showFallback={!person.avatar} />\n <Text style={styles.chipName}>{person.name}</Text>\n <Pressable\n onPress={() => onRemove(person.id)}\n hitSlop={8}\n accessibilityLabel={`Remove ${person.name}`}\n >\n <Icon name=\"general.x\" size={12} style={styles.chipRemoveIcon} />\n </Pressable>\n </View>\n )\n}\n\nfunction CandidateResults({\n term,\n selectedPeople,\n onSelect,\n}: {\n term: string\n selectedPeople: Map<string, DirectMessageCandidateResource>\n onSelect: (candidate: DirectMessageCandidateResource) => void\n}) {\n const styles = useStyles()\n const { data, isFetching } = useDirectMessageCandidates(term)\n const { groups, teams, resultsDescription } = useDirectMessageAffiliations()\n\n if (term.length < 1) {\n if (selectedPeople.size > 0) return null\n\n return (\n <View style={styles.emptyState}>\n <Icon name=\"churchCenter.people\" size={40} style={styles.emptyStateIcon} />\n <Text style={styles.emptyStateTitle}>Search for people to direct message</Text>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n Start a conversation with people in your groups and teams.\n </Text>\n </View>\n )\n }\n\n const isAtLimit = selectedPeople.size >= MAX_RECIPIENTS\n\n if (isAtLimit) {\n return (\n <View style={styles.emptyState}>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n You can add up to {MAX_RECIPIENTS} people to a direct message.\n </Text>\n </View>\n )\n }\n\n const unselectedCandidates = (data?.data ?? []).filter(c => !selectedPeople.has(c.id))\n const hasTruncated = (data?.meta.totalCount ?? 0) > (data?.data.length ?? 0)\n\n if (isFetching && unselectedCandidates.length === 0) {\n return (\n <View style={styles.emptyState}>\n <Spinner />\n </View>\n )\n }\n\n if (!isFetching && unselectedCandidates.length === 0) {\n return (\n <View style={styles.emptyState}>\n <Icon name=\"general.search\" size={32} style={styles.emptyStateIcon} />\n <Text style={styles.emptyStateTitle}>No matches for \"{term}\"</Text>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n Try a different name, or check that you share a group or team with them.\n </Text>\n </View>\n )\n }\n\n return (\n <CandidateList\n candidates={unselectedCandidates}\n hasTruncated={hasTruncated}\n description={resultsDescription}\n groups={groups}\n teams={teams}\n onSelect={onSelect}\n />\n )\n}\n\nfunction candidateBadges(candidate: DirectMessageCandidateResource) {\n const badges = []\n if (candidate.directMessagesDisabled) badges.push({ title: 'DMs off' })\n if (candidate.under_18) badges.push({ title: 'Under 18' })\n return badges\n}\n\nfunction candidateAffiliationNames(\n candidate: DirectMessageCandidateResource,\n groups: Map<number, string>,\n teams: Map<number, string>\n) {\n return [\n ...candidate.groups.flatMap(id => {\n const name = groups.get(id)\n return name ? [name] : []\n }),\n ...candidate.teams.flatMap(id => {\n const name = teams.get(id)\n return name ? [name] : []\n }),\n ]\n}\n\nfunction CandidateList({\n candidates,\n hasTruncated,\n description,\n groups,\n teams,\n onSelect,\n}: {\n candidates: DirectMessageCandidateResource[]\n hasTruncated: boolean\n description: string | null\n groups: Map<number, string>\n teams: Map<number, string>\n onSelect: (candidate: DirectMessageCandidateResource) => void\n}) {\n const styles = useStyles()\n const available = candidates.filter(c => !c.directMessagesDisabled)\n const dmDisabled = candidates.filter(c => c.directMessagesDisabled)\n\n return (\n <FlatList<DirectMessageCandidateResource>\n data={available}\n keyboardShouldPersistTaps=\"handled\"\n keyExtractor={item => item.id}\n renderItem={({ item }) => (\n <CandidateItem\n candidate={item}\n badges={candidateBadges(item)}\n affiliationNames={candidateAffiliationNames(item, groups, teams)}\n onSelect={() => onSelect(item)}\n />\n )}\n ListHeaderComponent={<ResultsHeading description={description} />}\n ListFooterComponent={\n <>\n {dmDisabled.length > 0 && (\n <>\n <View style={styles.unavailableHeader}>\n <Text variant=\"secondary\" style={styles.unavailableLabel}>\n Unavailable for direct messages\n </Text>\n </View>\n {dmDisabled.map(candidate => (\n <CandidateItem\n key={candidate.id}\n candidate={candidate}\n badges={candidateBadges(candidate)}\n affiliationNames={candidateAffiliationNames(candidate, groups, teams)}\n disabled\n />\n ))}\n </>\n )}\n {hasTruncated && (\n <View style={styles.truncatedFooter}>\n <Text variant=\"secondary\" style={styles.truncatedText}>\n Keep typing to narrow your results.\n </Text>\n </View>\n )}\n </>\n }\n />\n )\n}\n\nfunction CandidateItem({\n candidate,\n badges,\n affiliationNames,\n onSelect,\n disabled = false,\n}: {\n candidate: DirectMessageCandidateResource\n badges: { title: string }[]\n affiliationNames: string[]\n onSelect?: () => void\n disabled?: boolean\n}) {\n const styles = useStyles()\n\n return (\n <PlatformPressable\n onPress={disabled ? undefined : onSelect}\n accessibilityRole=\"button\"\n accessibilityLabel={`Select ${candidate.name}`}\n accessibilityState={{ disabled }}\n >\n <View style={[styles.row, disabled && styles.candidateDisabled]}>\n <Avatar sourceUri={candidate.avatar} size=\"lg\" showFallback={!candidate.avatar} />\n <View style={styles.rowInfo}>\n <Text style={styles.rowName}>{candidate.name}</Text>\n {affiliationNames.length > 0 && (\n <Text style={styles.rowAffiliations} numberOfLines={2}>\n {affiliationNames.join(', ')}\n </Text>\n )}\n {badges.length > 0 && (\n <View style={styles.badgeRow}>\n {badges.map(({ title }) => (\n <Badge key={title} label={title} />\n ))}\n </View>\n )}\n </View>\n </View>\n </PlatformPressable>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n candidateResultsContainer: {\n flex: 1,\n },\n toField: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n toFieldHeader: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n marginBottom: 8,\n },\n toLabel: {\n fontWeight: '600',\n color: colors.textColorDefaultSecondary,\n },\n clearButton: {\n color: colors.interaction,\n },\n toInputArea: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'center',\n gap: 6,\n borderWidth: 1,\n borderColor: colors.borderColorDefaultBase,\n borderRadius: 8,\n paddingHorizontal: 10,\n paddingVertical: 8,\n },\n toTextInput: {\n flex: 1,\n minWidth: 80,\n color: colors.textColorDefaultPrimary,\n fontSize: 16,\n paddingVertical: 2,\n },\n chip: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n borderWidth: 1,\n borderColor: colors.borderColorDefaultBase,\n borderRadius: 100,\n paddingLeft: 4,\n paddingRight: 6,\n paddingVertical: 3,\n },\n chipName: {\n fontSize: 14,\n },\n chipRemoveIcon: {\n color: colors.iconColorDefaultSecondary,\n },\n errorBanner: {\n margin: 16,\n },\n emptyState: {\n alignItems: 'center',\n paddingTop: 32,\n paddingHorizontal: 32,\n gap: 8,\n },\n emptyStateIcon: {\n color: colors.iconColorDefaultSecondary,\n marginBottom: 4,\n },\n emptyStateTitle: {\n fontWeight: '600',\n textAlign: 'center',\n },\n emptyStateSubtitle: {\n textAlign: 'center',\n fontSize: 14,\n },\n row: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 12,\n paddingHorizontal: 16,\n paddingVertical: 12,\n borderBottomWidth: 1,\n borderColor: colors.borderColorDefaultDim,\n },\n rowInfo: {\n flex: 1,\n gap: 2,\n },\n rowName: {\n fontSize: 15,\n fontWeight: '500',\n },\n rowAffiliations: {\n fontSize: 12,\n color: colors.textColorDefaultSecondary,\n },\n badgeRow: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n gap: 4,\n marginTop: 4,\n },\n\n candidateDisabled: {\n opacity: 0.5,\n },\n unavailableHeader: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n unavailableLabel: {\n fontSize: 13,\n },\n truncatedFooter: {\n paddingHorizontal: 16,\n paddingTop: 12,\n paddingBottom: 8,\n },\n truncatedText: {\n fontSize: 13,\n textAlign: 'center',\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"conversation_select_direct_message_recipients_screen.js","names":["PlatformPressable","StackActions","useNavigation","useEffect","useRef","useState","FlatList","Pressable","StyleSheet","View","Avatar","Badge","Banner","Icon","KeyboardView","Spinner","Text","ActionButton","AutoFocusAwareTextInput","ComponentErrorBoundary","useTheme","useDirectMessageAffiliations","useDirectMessageCandidates","useDirectMessageConversationValidate","useFindOrCreateDirectMessageConversation","availableFeatures","useFeatures","ResultsHeading","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MAX_RECIPIENTS","ConversationSelectDirectMessageRecipientsScreen","t0","$","_c","route","t1","params","preselected_people","t2","t3","undefined","styles","useStyles","navigation","featureEnabled","searchTerm","setSearchTerm","debouncedTerm","setDebouncedTerm","t4","Map","map","_temp","selectedPeople","setSelectedPeople","searchInputRef","t5","t6","timer","setTimeout","clearTimeout","t7","size","person_0","prev","set","person","id","dm_search_clear_fix","current","clear","selectPerson","t8","Symbol","for","prev_0","next","delete","removePerson","t9","keys","recipientIds","t10","warnings","validationPending","t11","conversationId","getParent","dispatch","replace","conversation_id","handleSuccess","t12","onSuccess","findOrCreateConversation","directMessageExists","isFinding","isError","t13","bb0","t14","values","value","name","split","firstName","buttonText","errorBanner","appearance","description","style","t15","t16","ToField","onClear","t17","t18","CandidateResults","t19","fallback","children","t20","candidateResultsContainer","t21","length","t22","t23","t24","disabled","loading","onPress","t25","type","groups","teams","under_18","directMessagesDisabled","onSearchChange","onRemove","colors","hasSelections","toField","toLabel","clearButton","hitSlop","toFieldHeader","toInputArea","PersonChip","textColorDefaultPlaceholder","toTextInput","autoFocus","placeholder","placeholderTextColor","returnKeyType","avatar","sourceUri","showFallback","chipName","chipRemoveIcon","accessibilityLabel","chip","term","onSelect","data","isFetching","resultsDescription","emptyStateIcon","emptyStateTitle","emptyStateSubtitle","variant","emptyState","isAtLimit","c","has","filter","unselectedCandidates","hasTruncated","meta","totalCount","CandidateList","candidateBadges","candidate","badges","push","title","candidateAffiliationNames","flatMap","get","candidates","_temp2","available","T0","dmDisabled","_temp3","_temp4","item","item_0","CandidateItem","affiliationNames","unavailableHeader","unavailableLabel","truncatedFooter","truncatedText","keyboardShouldPersistTaps","keyExtractor","renderItem","ListHeaderComponent","ListFooterComponent","c_0","candidateDisabled","row","rowName","rowAffiliations","numberOfLines","join","badgeRow","_temp5","rowInfo","accessibilityRole","accessibilityState","borderColorDefaultBase","borderColorDefaultDim","iconColorDefaultSecondary","interaction","textColorDefaultPrimary","textColorDefaultSecondary","create","flex","paddingHorizontal","paddingTop","paddingBottom","flexDirection","justifyContent","alignItems","marginBottom","fontWeight","color","flexWrap","gap","borderWidth","borderColor","borderRadius","paddingVertical","minWidth","fontSize","paddingLeft","paddingRight","margin","textAlign","borderBottomWidth","marginTop","opacity"],"sources":["../../../src/screens/conversation_select_recipients/conversation_select_direct_message_recipients_screen.tsx"],"sourcesContent":["import { PlatformPressable } from '@react-navigation/elements'\nimport { StackActions, useNavigation } from '@react-navigation/native'\nimport { RefObject, useEffect, useRef, useState } from 'react'\nimport { FlatList, Pressable, StyleSheet, TextInput, View } from 'react-native'\nimport { Avatar, Badge, Banner, Icon, KeyboardView, Spinner, Text } from '../../components'\nimport { ActionButton } from '../../components/display/action_button'\nimport { AutoFocusAwareTextInput } from '../../components/display/text_input'\nimport { ComponentErrorBoundary } from '../../components/page/component_error_boundary'\nimport { useTheme } from '../../hooks'\nimport { useDirectMessageAffiliations } from '../../hooks/direct_messages/use_direct_message_affiliations'\nimport { useDirectMessageCandidates } from '../../hooks/direct_messages/use_direct_message_candidates'\nimport { useDirectMessageConversationValidate } from '../../hooks/direct_messages/use_direct_message_conversation_validate'\nimport { useFindOrCreateDirectMessageConversation } from '../../hooks/direct_messages/use_find_or_create_direct_message_conversation'\nimport { availableFeatures, useFeatures } from '../../hooks/use_features'\nimport { DirectMessageCandidateResource } from '../../types/resources/direct_message_candidate'\nimport { ResultsHeading } from './components/results_heading'\nimport { ConversationSelectRecipientsScreenProps } from './types/screen_props'\n\nconst MAX_RECIPIENTS = 9\n\nexport function ConversationSelectDirectMessageRecipientsScreen({\n route,\n}: ConversationSelectRecipientsScreenProps) {\n const { preselected_people = [] } = route.params ?? {}\n const styles = useStyles()\n const navigation = useNavigation()\n const { featureEnabled } = useFeatures()\n const [searchTerm, setSearchTerm] = useState('')\n const [debouncedTerm, setDebouncedTerm] = useState('')\n const [selectedPeople, setSelectedPeople] = useState<Map<string, DirectMessageCandidateResource>>(\n () =>\n new Map(\n preselected_people.map(person => [\n person.id,\n {\n ...person,\n type: 'DirectMessageCandidate' as const,\n groups: [],\n teams: [],\n under_18: false,\n directMessagesDisabled: false,\n },\n ])\n )\n )\n const searchInputRef = useRef<TextInput>(null)\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedTerm(searchTerm), 200)\n return () => clearTimeout(timer)\n }, [searchTerm])\n\n const selectPerson = (person: DirectMessageCandidateResource) => {\n if (selectedPeople.size >= MAX_RECIPIENTS) return\n setSelectedPeople(prev => new Map(prev).set(person.id, person))\n setSearchTerm('')\n setDebouncedTerm('')\n // Controlled TextInput can retain stale native text on iOS when the value\n // is cleared while it stays focused (keyboardShouldPersistTaps keeps it\n // focused through the tap) — clear() forces the native view to sync. Gated\n // so EAP reporters can toggle the fix on their devices to confirm it.\n if (featureEnabled(availableFeatures.dm_search_clear_fix)) {\n searchInputRef.current?.clear()\n }\n }\n\n const removePerson = (id: string) => {\n setSelectedPeople(prev => {\n const next = new Map(prev)\n next.delete(id)\n return next\n })\n }\n\n const recipientIds = [...selectedPeople.keys()]\n const { warnings, validationPending } = useDirectMessageConversationValidate({ recipientIds })\n\n const handleSuccess = (conversationId: number) => {\n navigation\n .getParent()\n ?.dispatch(StackActions.replace('Conversation', { conversation_id: conversationId }))\n }\n\n const { findOrCreateConversation, directMessageExists, isFinding, isError } =\n useFindOrCreateDirectMessageConversation({ recipientIds, onSuccess: handleSuccess })\n\n const buttonText = (() => {\n if (selectedPeople.size === 0) return 'Start conversation'\n if (selectedPeople.size === 1) {\n const firstName = selectedPeople.values().next().value!.name.split(' ')[0]\n return directMessageExists ? `Open message with ${firstName}` : `Message ${firstName}`\n }\n return directMessageExists\n ? `Open direct message (${selectedPeople.size})`\n : `Start direct message (${selectedPeople.size})`\n })()\n\n return (\n <KeyboardView>\n {isError && (\n <Banner\n appearance=\"error\"\n description=\"There was an issue starting the conversation. Please try again.\"\n style={styles.errorBanner}\n />\n )}\n <ToField\n selectedPeople={selectedPeople}\n searchTerm={searchTerm}\n onSearchChange={setSearchTerm}\n onRemove={removePerson}\n onClear={() => setSelectedPeople(new Map())}\n searchInputRef={searchInputRef}\n />\n <View style={styles.candidateResultsContainer}>\n <ComponentErrorBoundary\n key={debouncedTerm}\n fallback={\n <Banner\n appearance=\"error\"\n description=\"Couldn't load people right now. Try again.\"\n style={styles.errorBanner}\n />\n }\n >\n <CandidateResults\n term={debouncedTerm}\n selectedPeople={selectedPeople}\n onSelect={selectPerson}\n />\n </ComponentErrorBoundary>\n </View>\n <ActionButton\n title={buttonText}\n disabled={\n selectedPeople.size === 0 || validationPending || warnings.length > 0 || isFinding\n }\n loading={validationPending || isFinding}\n onPress={() => findOrCreateConversation(recipientIds)}\n warnings={warnings}\n />\n </KeyboardView>\n )\n}\n\nfunction ToField({\n selectedPeople,\n searchTerm,\n onSearchChange,\n onRemove,\n onClear,\n searchInputRef,\n}: {\n selectedPeople: Map<string, DirectMessageCandidateResource>\n searchTerm: string\n onSearchChange: (term: string) => void\n onRemove: (id: string) => void\n onClear: () => void\n searchInputRef: RefObject<TextInput | null>\n}) {\n const styles = useStyles()\n const { colors } = useTheme()\n const hasSelections = selectedPeople.size > 0\n\n return (\n <View style={styles.toField}>\n <View style={styles.toFieldHeader}>\n <Text style={styles.toLabel}>To</Text>\n {hasSelections && (\n <Pressable onPress={onClear} hitSlop={8}>\n <Text style={styles.clearButton}>Clear</Text>\n </Pressable>\n )}\n </View>\n <View style={styles.toInputArea}>\n {[...selectedPeople.values()].map(person => (\n <PersonChip key={person.id} person={person} onRemove={onRemove} />\n ))}\n <AutoFocusAwareTextInput\n autoFocus\n inputRef={searchInputRef}\n placeholder=\"Search\"\n placeholderTextColor={colors.textColorDefaultPlaceholder}\n value={searchTerm}\n onChangeText={onSearchChange}\n style={styles.toTextInput}\n returnKeyType=\"search\"\n />\n </View>\n </View>\n )\n}\n\nfunction PersonChip({\n person,\n onRemove,\n}: {\n person: DirectMessageCandidateResource\n onRemove: (id: string) => void\n}) {\n const styles = useStyles()\n\n return (\n <View style={styles.chip}>\n <Avatar sourceUri={person.avatar} size=\"sm\" showFallback={!person.avatar} />\n <Text style={styles.chipName}>{person.name}</Text>\n <Pressable\n onPress={() => onRemove(person.id)}\n hitSlop={8}\n accessibilityLabel={`Remove ${person.name}`}\n >\n <Icon name=\"general.x\" size={12} style={styles.chipRemoveIcon} />\n </Pressable>\n </View>\n )\n}\n\nfunction CandidateResults({\n term,\n selectedPeople,\n onSelect,\n}: {\n term: string\n selectedPeople: Map<string, DirectMessageCandidateResource>\n onSelect: (candidate: DirectMessageCandidateResource) => void\n}) {\n const styles = useStyles()\n const { data, isFetching } = useDirectMessageCandidates(term)\n const { groups, teams, resultsDescription } = useDirectMessageAffiliations()\n\n if (term.length < 1) {\n if (selectedPeople.size > 0) return null\n\n return (\n <View style={styles.emptyState}>\n <Icon name=\"churchCenter.people\" size={40} style={styles.emptyStateIcon} />\n <Text style={styles.emptyStateTitle}>Search for people to direct message</Text>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n Start a conversation with people in your groups and teams.\n </Text>\n </View>\n )\n }\n\n const isAtLimit = selectedPeople.size >= MAX_RECIPIENTS\n\n if (isAtLimit) {\n return (\n <View style={styles.emptyState}>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n You can add up to {MAX_RECIPIENTS} people to a direct message.\n </Text>\n </View>\n )\n }\n\n const unselectedCandidates = (data?.data ?? []).filter(c => !selectedPeople.has(c.id))\n const hasTruncated = (data?.meta.totalCount ?? 0) > (data?.data.length ?? 0)\n\n if (isFetching && unselectedCandidates.length === 0) {\n return (\n <View style={styles.emptyState}>\n <Spinner />\n </View>\n )\n }\n\n if (!isFetching && unselectedCandidates.length === 0) {\n return (\n <View style={styles.emptyState}>\n <Icon name=\"general.search\" size={32} style={styles.emptyStateIcon} />\n <Text style={styles.emptyStateTitle}>No matches for \"{term}\"</Text>\n <Text variant=\"secondary\" style={styles.emptyStateSubtitle}>\n Try a different name, or check that you share a group or team with them.\n </Text>\n </View>\n )\n }\n\n return (\n <CandidateList\n candidates={unselectedCandidates}\n hasTruncated={hasTruncated}\n description={resultsDescription}\n groups={groups}\n teams={teams}\n onSelect={onSelect}\n />\n )\n}\n\nfunction candidateBadges(candidate: DirectMessageCandidateResource) {\n const badges = []\n if (candidate.directMessagesDisabled) badges.push({ title: 'DMs off' })\n if (candidate.under_18) badges.push({ title: 'Under 18' })\n return badges\n}\n\nfunction candidateAffiliationNames(\n candidate: DirectMessageCandidateResource,\n groups: Map<number, string>,\n teams: Map<number, string>\n) {\n return [\n ...candidate.groups.flatMap(id => {\n const name = groups.get(id)\n return name ? [name] : []\n }),\n ...candidate.teams.flatMap(id => {\n const name = teams.get(id)\n return name ? [name] : []\n }),\n ]\n}\n\nfunction CandidateList({\n candidates,\n hasTruncated,\n description,\n groups,\n teams,\n onSelect,\n}: {\n candidates: DirectMessageCandidateResource[]\n hasTruncated: boolean\n description: string | null\n groups: Map<number, string>\n teams: Map<number, string>\n onSelect: (candidate: DirectMessageCandidateResource) => void\n}) {\n const styles = useStyles()\n const available = candidates.filter(c => !c.directMessagesDisabled)\n const dmDisabled = candidates.filter(c => c.directMessagesDisabled)\n\n return (\n <FlatList<DirectMessageCandidateResource>\n data={available}\n keyboardShouldPersistTaps=\"handled\"\n keyExtractor={item => item.id}\n renderItem={({ item }) => (\n <CandidateItem\n candidate={item}\n badges={candidateBadges(item)}\n affiliationNames={candidateAffiliationNames(item, groups, teams)}\n onSelect={() => onSelect(item)}\n />\n )}\n ListHeaderComponent={<ResultsHeading description={description} />}\n ListFooterComponent={\n <>\n {dmDisabled.length > 0 && (\n <>\n <View style={styles.unavailableHeader}>\n <Text variant=\"secondary\" style={styles.unavailableLabel}>\n Unavailable for direct messages\n </Text>\n </View>\n {dmDisabled.map(candidate => (\n <CandidateItem\n key={candidate.id}\n candidate={candidate}\n badges={candidateBadges(candidate)}\n affiliationNames={candidateAffiliationNames(candidate, groups, teams)}\n disabled\n />\n ))}\n </>\n )}\n {hasTruncated && (\n <View style={styles.truncatedFooter}>\n <Text variant=\"secondary\" style={styles.truncatedText}>\n Keep typing to narrow your results.\n </Text>\n </View>\n )}\n </>\n }\n />\n )\n}\n\nfunction CandidateItem({\n candidate,\n badges,\n affiliationNames,\n onSelect,\n disabled = false,\n}: {\n candidate: DirectMessageCandidateResource\n badges: { title: string }[]\n affiliationNames: string[]\n onSelect?: () => void\n disabled?: boolean\n}) {\n const styles = useStyles()\n\n return (\n <PlatformPressable\n onPress={disabled ? undefined : onSelect}\n accessibilityRole=\"button\"\n accessibilityLabel={`Select ${candidate.name}`}\n accessibilityState={{ disabled }}\n >\n <View style={[styles.row, disabled && styles.candidateDisabled]}>\n <Avatar sourceUri={candidate.avatar} size=\"lg\" showFallback={!candidate.avatar} />\n <View style={styles.rowInfo}>\n <Text style={styles.rowName}>{candidate.name}</Text>\n {affiliationNames.length > 0 && (\n <Text style={styles.rowAffiliations} numberOfLines={2}>\n {affiliationNames.join(', ')}\n </Text>\n )}\n {badges.length > 0 && (\n <View style={styles.badgeRow}>\n {badges.map(({ title }) => (\n <Badge key={title} label={title} />\n ))}\n </View>\n )}\n </View>\n </View>\n </PlatformPressable>\n )\n}\n\nconst useStyles = () => {\n const { colors } = useTheme()\n\n return StyleSheet.create({\n candidateResultsContainer: {\n flex: 1,\n },\n toField: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n toFieldHeader: {\n flexDirection: 'row',\n justifyContent: 'space-between',\n alignItems: 'center',\n marginBottom: 8,\n },\n toLabel: {\n fontWeight: '600',\n color: colors.textColorDefaultSecondary,\n },\n clearButton: {\n color: colors.interaction,\n },\n toInputArea: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n alignItems: 'center',\n gap: 6,\n borderWidth: 1,\n borderColor: colors.borderColorDefaultBase,\n borderRadius: 8,\n paddingHorizontal: 10,\n paddingVertical: 8,\n },\n toTextInput: {\n flex: 1,\n minWidth: 80,\n color: colors.textColorDefaultPrimary,\n fontSize: 16,\n paddingVertical: 2,\n },\n chip: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 4,\n borderWidth: 1,\n borderColor: colors.borderColorDefaultBase,\n borderRadius: 100,\n paddingLeft: 4,\n paddingRight: 6,\n paddingVertical: 3,\n },\n chipName: {\n fontSize: 14,\n },\n chipRemoveIcon: {\n color: colors.iconColorDefaultSecondary,\n },\n errorBanner: {\n margin: 16,\n },\n emptyState: {\n alignItems: 'center',\n paddingTop: 32,\n paddingHorizontal: 32,\n gap: 8,\n },\n emptyStateIcon: {\n color: colors.iconColorDefaultSecondary,\n marginBottom: 4,\n },\n emptyStateTitle: {\n fontWeight: '600',\n textAlign: 'center',\n },\n emptyStateSubtitle: {\n textAlign: 'center',\n fontSize: 14,\n },\n row: {\n flexDirection: 'row',\n alignItems: 'center',\n gap: 12,\n paddingHorizontal: 16,\n paddingVertical: 12,\n borderBottomWidth: 1,\n borderColor: colors.borderColorDefaultDim,\n },\n rowInfo: {\n flex: 1,\n gap: 2,\n },\n rowName: {\n fontSize: 15,\n fontWeight: '500',\n },\n rowAffiliations: {\n fontSize: 12,\n color: colors.textColorDefaultSecondary,\n },\n badgeRow: {\n flexDirection: 'row',\n flexWrap: 'wrap',\n gap: 4,\n marginTop: 4,\n },\n\n candidateDisabled: {\n opacity: 0.5,\n },\n unavailableHeader: {\n paddingHorizontal: 16,\n paddingTop: 16,\n paddingBottom: 8,\n },\n unavailableLabel: {\n fontSize: 13,\n },\n truncatedFooter: {\n paddingHorizontal: 16,\n paddingTop: 12,\n paddingBottom: 8,\n },\n truncatedText: {\n fontSize: 13,\n textAlign: 'center',\n },\n })\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@planningcenter/chat-react-native",
|
|
3
|
-
"version": "4.1.1-qa-staging.
|
|
3
|
+
"version": "4.1.1-qa-staging.5",
|
|
4
4
|
"description": "",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -33,7 +33,7 @@
|
|
|
33
33
|
"dependencies": {
|
|
34
34
|
"@fortawesome/fontawesome-svg-core": "^7.2.0",
|
|
35
35
|
"@fortawesome/react-native-fontawesome": "^0.3.2",
|
|
36
|
-
"@planningcenter/emoji-keyboard": "4.1.1-qa-staging.
|
|
36
|
+
"@planningcenter/emoji-keyboard": "4.1.1-qa-staging.5",
|
|
37
37
|
"lodash-inflection": "^1.5.0"
|
|
38
38
|
},
|
|
39
39
|
"peerDependencies": {
|
|
@@ -84,5 +84,5 @@
|
|
|
84
84
|
"sf-symbols-typescript": "^2.2.0",
|
|
85
85
|
"typescript": "~6.0.3"
|
|
86
86
|
},
|
|
87
|
-
"gitHead": "
|
|
87
|
+
"gitHead": "81cceed0ff382f2413a5632ea1908edbfb107039"
|
|
88
88
|
}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { DefaultTheme, ThemeProvider } from '@react-navigation/native'
|
|
2
|
+
import { render } from '@testing-library/react-native'
|
|
3
|
+
import React from 'react'
|
|
4
|
+
import { SafeAreaProvider } from 'react-native-safe-area-context'
|
|
5
|
+
import { useFindOrCreateServicesConversation } from '../../../../hooks/services/use_find_or_create_services_conversation'
|
|
6
|
+
import { useTeamMembersForNewConversation } from '../../../../hooks/services/use_team_members_for_new_conversation'
|
|
7
|
+
import { ServicesForm } from '../../../../screens/conversation_new/components/services_form'
|
|
8
|
+
|
|
9
|
+
jest.mock('react-native-reanimated', () => ({
|
|
10
|
+
...jest.requireActual('react-native-reanimated/mock'),
|
|
11
|
+
LayoutAnimationConfig: ({ children }: { children: React.ReactNode }) => children,
|
|
12
|
+
}))
|
|
13
|
+
jest.mock('@react-navigation/native', () => ({
|
|
14
|
+
...jest.requireActual('@react-navigation/native'),
|
|
15
|
+
useNavigation: () => ({ navigate: jest.fn(), dispatch: jest.fn(), getParent: () => undefined }),
|
|
16
|
+
}))
|
|
17
|
+
jest.mock('../../../../hooks/use_api_client', () => ({ useApiClient: () => ({}) }))
|
|
18
|
+
jest.mock('../../../../hooks/use_upload_client', () => ({ useUploadClient: () => ({}) }))
|
|
19
|
+
jest.mock('../../../../hooks/use_features', () => ({
|
|
20
|
+
...jest.requireActual('../../../../hooks/use_features'),
|
|
21
|
+
useFeatures: () => ({ features: [], featureEnabled: () => false }),
|
|
22
|
+
}))
|
|
23
|
+
jest.mock('../../../../hooks/use_conversation_validate', () => ({
|
|
24
|
+
useConversationValidate: () => ({ warnings: [], validationPending: false }),
|
|
25
|
+
}))
|
|
26
|
+
jest.mock('../../../../hooks/services/use_services_chat_conversation_payload', () => ({
|
|
27
|
+
useServicesChatConversationPayload: () => ({ payload: undefined, isLoading: false }),
|
|
28
|
+
}))
|
|
29
|
+
jest.mock('../../../../hooks/services/use_services_team', () => ({
|
|
30
|
+
useServicesTeams: () => [],
|
|
31
|
+
}))
|
|
32
|
+
jest.mock('../../../../hooks/services/use_team_plans', () => ({
|
|
33
|
+
useTeamPlans: () => ({
|
|
34
|
+
planOptions: [],
|
|
35
|
+
isFetching: false,
|
|
36
|
+
isError: false,
|
|
37
|
+
findPlan: () => undefined,
|
|
38
|
+
}),
|
|
39
|
+
}))
|
|
40
|
+
jest.mock('../../../../hooks/services/use_team_members_for_new_conversation', () => ({
|
|
41
|
+
useTeamMembersForNewConversation: jest.fn(() => ({ members: [], isError: false })),
|
|
42
|
+
}))
|
|
43
|
+
jest.mock('../../../../hooks/services/use_find_or_create_services_conversation', () => ({
|
|
44
|
+
useFindOrCreateServicesConversation: jest.fn(() => ({
|
|
45
|
+
mutate: jest.fn(),
|
|
46
|
+
isPending: false,
|
|
47
|
+
selectionHasConversation: false,
|
|
48
|
+
isLoadingConversationCheck: false,
|
|
49
|
+
})),
|
|
50
|
+
}))
|
|
51
|
+
|
|
52
|
+
const mockedFindOrCreate = jest.mocked(useFindOrCreateServicesConversation)
|
|
53
|
+
const mockedTeamMembers = jest.mocked(useTeamMembersForNewConversation)
|
|
54
|
+
|
|
55
|
+
const latestArgs = <T extends jest.Mock>(mock: T) => mock.mock.calls.at(-1)?.[0]
|
|
56
|
+
|
|
57
|
+
const safeAreaMetrics = {
|
|
58
|
+
frame: { x: 0, y: 0, width: 390, height: 844 },
|
|
59
|
+
insets: { top: 0, right: 0, bottom: 0, left: 0 },
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
const renderForm = (props: { initialPlanId?: number } = {}) =>
|
|
63
|
+
render(
|
|
64
|
+
<SafeAreaProvider initialMetrics={safeAreaMetrics}>
|
|
65
|
+
<ThemeProvider value={DefaultTheme}>
|
|
66
|
+
<ServicesForm initialTeamIds={[1, 2]} {...props} />
|
|
67
|
+
</ThemeProvider>
|
|
68
|
+
</SafeAreaProvider>
|
|
69
|
+
)
|
|
70
|
+
|
|
71
|
+
describe('ServicesForm', () => {
|
|
72
|
+
beforeEach(() => {
|
|
73
|
+
jest.clearAllMocks()
|
|
74
|
+
})
|
|
75
|
+
|
|
76
|
+
it('filters by plan when opened from a plan', () => {
|
|
77
|
+
const { getByRole } = renderForm({ initialPlanId: 42 })
|
|
78
|
+
|
|
79
|
+
expect(getByRole('switch').props.value).toBe(true)
|
|
80
|
+
expect(latestArgs(mockedFindOrCreate)).toMatchObject({ teamIds: [1, 2], planId: 42 })
|
|
81
|
+
expect(latestArgs(mockedTeamMembers)).toMatchObject({ teamIds: [1, 2], planId: 42 })
|
|
82
|
+
})
|
|
83
|
+
|
|
84
|
+
it('does not filter by plan when opened without a plan', () => {
|
|
85
|
+
const { getByRole } = renderForm()
|
|
86
|
+
|
|
87
|
+
expect(getByRole('switch').props.value).toBe(false)
|
|
88
|
+
expect(latestArgs(mockedFindOrCreate)).toMatchObject({ teamIds: [1, 2], planId: undefined })
|
|
89
|
+
expect(latestArgs(mockedTeamMembers)).toMatchObject({ teamIds: [1, 2], planId: undefined })
|
|
90
|
+
})
|
|
91
|
+
})
|
|
@@ -222,6 +222,7 @@ describe('MessageList', () => {
|
|
|
222
222
|
const pending = buildMessage(50, {
|
|
223
223
|
id: `${messageId(50)}-temp`,
|
|
224
224
|
text: 'hello there',
|
|
225
|
+
idempotentKey: 'key-50',
|
|
225
226
|
mine: true,
|
|
226
227
|
author: me,
|
|
227
228
|
pending: true,
|
|
@@ -235,7 +236,12 @@ describe('MessageList', () => {
|
|
|
235
236
|
expect(screen.getByTestId(`message-${pending.id}`)).toBeTruthy()
|
|
236
237
|
renderSpy.mockClear()
|
|
237
238
|
|
|
238
|
-
const echo = buildMessage(50, {
|
|
239
|
+
const echo = buildMessage(50, {
|
|
240
|
+
text: 'hello there',
|
|
241
|
+
idempotentKey: 'key-50',
|
|
242
|
+
mine: true,
|
|
243
|
+
author: me,
|
|
244
|
+
})
|
|
239
245
|
act(() => updateCacheWithMessage(queryClient, messagesQueryKey, echo, 'message.created'))
|
|
240
246
|
|
|
241
247
|
expect(screen.queryByTestId(`message-${pending.id}`)).toBeNull()
|
package/src/index.tsx
CHANGED
|
@@ -17,4 +17,4 @@ export type { ENV, TemporaryDefaultColorsType } from './utils'
|
|
|
17
17
|
export * from './utils/client'
|
|
18
18
|
export * from './utils/host_bridge'
|
|
19
19
|
export * from './utils/native_adapters'
|
|
20
|
-
export { ResponseError } from './utils/response_error'
|
|
20
|
+
export { isResponseLike, ResponseError } from './utils/response_error'
|
package/src/navigation/index.tsx
CHANGED
|
@@ -130,14 +130,13 @@ export const NewConversationStack = createNativeStackNavigator({
|
|
|
130
130
|
ConversationSelectDirectMessageRecipients: {
|
|
131
131
|
screen: ConversationSelectDirectMessageRecipientsScreen,
|
|
132
132
|
if: useDirectMessagesEligible,
|
|
133
|
-
options: ({ navigation
|
|
133
|
+
options: ({ navigation }) =>
|
|
134
134
|
composeOptions(
|
|
135
135
|
{
|
|
136
136
|
title: 'New conversation',
|
|
137
|
+
headerBackVisible: false,
|
|
137
138
|
},
|
|
138
|
-
withRightClose({
|
|
139
|
-
onPress: () => navigation.popTo('Conversations', route.params),
|
|
140
|
-
})
|
|
139
|
+
withRightClose({ onPress: navigation.goBack })
|
|
141
140
|
),
|
|
142
141
|
},
|
|
143
142
|
ConversationFilterRecipients: {
|
|
@@ -45,6 +45,7 @@ export const ServicesForm = ({
|
|
|
45
45
|
const customAvatarsEnabled = featureEnabled(availableFeatures.custom_conversation_avatars)
|
|
46
46
|
const safetyLockEnabled = featureEnabled(availableFeatures.conversation_safety_lock)
|
|
47
47
|
const [selectedPlanId, setSelectedPlanId] = useState<number | undefined>(initialPlanId)
|
|
48
|
+
const [filterByPlan, setFilterByPlan] = useState(!!initialPlanId)
|
|
48
49
|
const initialState = useMemo(() => uniq(initialTeamIds) || [], [initialTeamIds]) // Uniq here because services can send duplicates in the teams_i_lead response.
|
|
49
50
|
const [selectedTeamIds, setSelectedTeamIds] = useState<number[]>(initialState)
|
|
50
51
|
|
|
@@ -52,6 +53,7 @@ export const ServicesForm = ({
|
|
|
52
53
|
useEffect(() => {
|
|
53
54
|
setSelectedTeamIds(initialState)
|
|
54
55
|
setSelectedPlanId(initialPlanId)
|
|
56
|
+
setFilterByPlan(!!initialPlanId)
|
|
55
57
|
}, [initialState, initialPlanId])
|
|
56
58
|
|
|
57
59
|
const removeSelection = useCallback(
|
|
@@ -61,9 +63,7 @@ export const ServicesForm = ({
|
|
|
61
63
|
[selectedTeamIds]
|
|
62
64
|
)
|
|
63
65
|
|
|
64
|
-
const
|
|
65
|
-
|
|
66
|
-
const activePlanId = filerByPlan ? selectedPlanId : undefined
|
|
66
|
+
const activePlanId = filterByPlan ? selectedPlanId : undefined
|
|
67
67
|
|
|
68
68
|
const { payload, isLoading: isLoadingPayload } = useServicesChatConversationPayload({
|
|
69
69
|
teamIds: selectedTeamIds,
|
|
@@ -79,7 +79,7 @@ export const ServicesForm = ({
|
|
|
79
79
|
|
|
80
80
|
const { members, isError: isMemberError } = useTeamMembersForNewConversation({
|
|
81
81
|
teamIds: selectedTeamIds,
|
|
82
|
-
planId:
|
|
82
|
+
planId: activePlanId,
|
|
83
83
|
})
|
|
84
84
|
const adultMembers = useMemo(() => members.filter(member => !member.child), [members])
|
|
85
85
|
|
|
@@ -118,7 +118,7 @@ export const ServicesForm = ({
|
|
|
118
118
|
removeSelection={removeSelection}
|
|
119
119
|
selectedPlanId={selectedPlanId}
|
|
120
120
|
setSelectedPlanId={setSelectedPlanId}
|
|
121
|
-
filterByPlan={
|
|
121
|
+
filterByPlan={filterByPlan}
|
|
122
122
|
setFilterByPlan={setFilterByPlan}
|
|
123
123
|
members={members}
|
|
124
124
|
isMemberError={isMemberError}
|
|
@@ -76,8 +76,9 @@ export function ConversationSelectDirectMessageRecipientsScreen({
|
|
|
76
76
|
const { warnings, validationPending } = useDirectMessageConversationValidate({ recipientIds })
|
|
77
77
|
|
|
78
78
|
const handleSuccess = (conversationId: number) => {
|
|
79
|
-
navigation
|
|
80
|
-
|
|
79
|
+
navigation
|
|
80
|
+
.getParent()
|
|
81
|
+
?.dispatch(StackActions.replace('Conversation', { conversation_id: conversationId }))
|
|
81
82
|
}
|
|
82
83
|
|
|
83
84
|
const { findOrCreateConversation, directMessageExists, isFinding, isError } =
|