diff --git a/.flowconfig b/.flowconfig index 9c5440a54e..541c22fa10 100644 --- a/.flowconfig +++ b/.flowconfig @@ -28,6 +28,8 @@ esproposal.nullish_coalescing=enable exact_by_default=true +format.bracket_spacing=false + module.file_ext=.js module.file_ext=.json module.file_ext=.ios.js @@ -64,4 +66,4 @@ untyped-import untyped-type-import [version] -^0.149.0 +^0.158.0 diff --git a/android/app/build.gradle b/android/app/build.gradle index c2db15fd5d..de5b0fa703 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -120,6 +120,11 @@ def jscFlavor = 'org.webkit:android-jsc-intl:+' */ def enableHermes = project.ext.react.get("enableHermes", false); +/** + * Architectures to build native code for in debug. + */ +def nativeArchitectures = project.getProperties().get("reactNativeDebugArchitectures") + android { ndkVersion rootProject.ext.ndkVersion compileSdkVersion rootProject.ext.compileSdkVersion @@ -170,6 +175,11 @@ android { debug { minifyEnabled enableProguardInReleaseBuilds proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro" + if (nativeArchitectures) { + ndk { + abiFilters nativeArchitectures.split(',') + } + } } unsigned.initWith(buildTypes.release) unsigned { @@ -244,7 +254,7 @@ dependencies { ]]) debugImplementation("com.facebook.flipper:flipper:${FLIPPER_VERSION}") { - exclude group:'com.facebook.fbjni' + exclude group:'com.facebook.fbjni' } debugImplementation("com.facebook.flipper:flipper-network-plugin:${FLIPPER_VERSION}") { exclude group:'com.facebook.flipper' diff --git a/android/app/src/main/assets/fonts/Metropolis.ttf b/android/app/src/main/assets/fonts/Metropolis.ttf new file mode 100644 index 0000000000..012acd813f Binary files /dev/null and b/android/app/src/main/assets/fonts/Metropolis.ttf differ diff --git a/android/gradle.properties b/android/gradle.properties index 4f518a4e15..c5e9f224f0 100644 --- a/android/gradle.properties +++ b/android/gradle.properties @@ -30,4 +30,4 @@ android.useAndroidX=true android.enableJetifier=true # Version of flipper SDK to use with React Native -FLIPPER_VERSION=0.93.0 +FLIPPER_VERSION=0.99.0 diff --git a/app/actions/remote/entry.ts b/app/actions/remote/entry.ts index 8a698758fe..88569cc847 100644 --- a/app/actions/remote/entry.ts +++ b/app/actions/remote/entry.ts @@ -212,7 +212,9 @@ export const loginEntry = async ({serverUrl, user, deviceToken}: AfterLoginArgs) await operator.batchRecords(models.flat() as Model[]); } - deferredLoginActions(serverUrl, user, prefData, clData, teamData, chData, initialTeam, initialChannel); + const config = clData.config || {} as ClientConfig; + const license = clData.license || {} as ClientLicense; + deferredAppEntryActions(serverUrl, user.id, user.locale, prefData.preferences, config, license, teamData, chData, initialTeam?.id, initialChannel?.id); const error = clData.error || prefData.error || teamData.error || chData?.error; return {error, time: Date.now() - dt, hasTeams: Boolean((myTeams?.length || 0) > 0 && !teamData.error)}; @@ -373,7 +375,12 @@ const fetchAlternateTeamData = async (serverUrl: string, availableTeamIds: strin const deferredAppEntryActions = async ( serverUrl: string, currentUserId: string, currentUserLocale: string, preferences: PreferenceType[] | undefined, config: ClientConfig, license: ClientLicense, teamData: MyTeamsRequest, - chData: MyChannelsRequest | undefined, initialTeamId: string) => { + chData: MyChannelsRequest | undefined, initialTeamId?: string, initialChannelId?: string) => { + // defer fetching posts for initial channel + if (initialChannelId) { + fetchPostsForChannel(serverUrl, initialChannelId); + } + // defer sidebar DM & GM profiles if (chData?.channels?.length && chData.memberships?.length) { const directChannels = chData.channels.filter((c) => c.type === General.DM_CHANNEL || c.type === General.GM_CHANNEL); @@ -384,7 +391,7 @@ const deferredAppEntryActions = async ( } // defer fetching posts for unread channels on initial team - fetchPostsForUnreadChannels(serverUrl, chData.channels, chData.memberships); + fetchPostsForUnreadChannels(serverUrl, chData.channels, chData.memberships, initialChannelId); } // defer groups for team @@ -397,35 +404,3 @@ const deferredAppEntryActions = async ( fetchTeamsChannelsAndUnreadPosts(serverUrl, teamData.teams, teamData.memberships, initialTeamId); } }; - -const deferredLoginActions = async ( - serverUrl: string, user: UserProfile, prefData: MyPreferencesRequest, clData: ConfigAndLicenseRequest, teamData: MyTeamsRequest, - chData?: MyChannelsRequest, initialTeam?: Team, initialChannel?: Channel) => { - // defer fetching posts for initial channel - if (initialChannel) { - fetchPostsForChannel(serverUrl, initialChannel.id); - } - - // defer sidebar DM & GM profiles - if (chData?.channels?.length && chData.memberships?.length) { - const directChannels = chData.channels.filter((c) => c.type === General.DM_CHANNEL || c.type === General.GM_CHANNEL); - const channelsToFetchProfiles = new Set(directChannels); - if (channelsToFetchProfiles.size) { - const teammateDisplayNameSetting = getTeammateNameDisplaySetting(prefData.preferences || [], clData.config, clData.license); - await fetchMissingSidebarInfo(serverUrl, Array.from(channelsToFetchProfiles), user.locale, teammateDisplayNameSetting, user.id); - } - - // defer fetching posts for unread channels on initial team - fetchPostsForUnreadChannels(serverUrl, chData.channels, chData.memberships, initialChannel?.id); - } - - // defer groups for team - if (initialTeam) { - await fetchGroupsForTeam(serverUrl, initialTeam.id); - } - - // defer fetch channels and unread posts for other teams - if (teamData.teams?.length && teamData.memberships?.length) { - fetchTeamsChannelsAndUnreadPosts(serverUrl, teamData.teams, teamData.memberships, initialTeam?.id); - } -}; diff --git a/app/components/channel_icon/index.tsx b/app/components/channel_icon/index.tsx index 4efb076316..79f5de15b1 100644 --- a/app/components/channel_icon/index.tsx +++ b/app/components/channel_icon/index.tsx @@ -59,7 +59,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { group: { color: theme.sidebarText, fontSize: 10, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', }, groupActive: { color: theme.sidebarTextActiveColor, diff --git a/app/components/failed_action/index.tsx b/app/components/failed_action/index.tsx index 3b8bdcc87b..8919c07c52 100644 --- a/app/components/failed_action/index.tsx +++ b/app/components/failed_action/index.tsx @@ -32,7 +32,7 @@ const getStyleFromTheme = makeStyleSheetFromTheme((theme: Theme) => { title: { color: changeOpacity(theme.centerChannelColor, 0.8), fontSize: 20, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', marginBottom: 15, marginTop: 10, }, diff --git a/app/components/post_list/combined_user_activity/combined_user_activity.tsx b/app/components/post_list/combined_user_activity/combined_user_activity.tsx index 2a4c8bb493..5a1217f842 100644 --- a/app/components/post_list/combined_user_activity/combined_user_activity.tsx +++ b/app/components/post_list/combined_user_activity/combined_user_activity.tsx @@ -36,7 +36,8 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { return { baseText: { color: changeOpacity(theme.centerChannelColor, 0.6), - fontSize: 15, + fontSize: 16, + lineHeight: 20, }, body: { flex: 1, diff --git a/app/components/post_list/combined_user_activity/last_users.tsx b/app/components/post_list/combined_user_activity/last_users.tsx index 50c5d8937d..cd03fb49c2 100644 --- a/app/components/post_list/combined_user_activity/last_users.tsx +++ b/app/components/post_list/combined_user_activity/last_users.tsx @@ -25,12 +25,14 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { baseText: { color: theme.centerChannelColor, opacity: 0.6, - fontSize: 15, + fontSize: 16, + lineHeight: 20, }, linkText: { color: theme.linkColor, opacity: 0.8, - fontSize: 15, + fontSize: 16, + lineHeight: 20, }, }; }); diff --git a/app/components/post_list/date_separator/index.tsx b/app/components/post_list/date_separator/index.tsx index 602bf4e9f2..ae8d0502be 100644 --- a/app/components/post_list/date_separator/index.tsx +++ b/app/components/post_list/date_separator/index.tsx @@ -34,8 +34,9 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { }, date: { color: theme.centerChannelColor, - fontSize: 14, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', + fontSize: 12, + lineHeight: 16, }, }; }); diff --git a/app/components/post_list/new_message_line/index.tsx b/app/components/post_list/new_message_line/index.tsx index 30a5a6783c..628cc0fe1b 100644 --- a/app/components/post_list/new_message_line/index.tsx +++ b/app/components/post_list/new_message_line/index.tsx @@ -64,7 +64,8 @@ const getStyleFromTheme = makeStyleSheetFromTheme((theme: Theme) => { backgroundColor: theme.newMessageSeparator, }, text: { - fontSize: 14, + lineHeight: 16, + fontSize: 12, color: theme.newMessageSeparator, }, }; diff --git a/app/components/post_list/post/body/add_members/index.tsx b/app/components/post_list/post/body/add_members/index.tsx index a80b7ceae6..24e637226f 100644 --- a/app/components/post_list/post/body/add_members/index.tsx +++ b/app/components/post_list/post/body/add_members/index.tsx @@ -39,7 +39,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { return { message: { color: changeOpacity(theme.centerChannelColor, 0.6), - fontSize: 15, + fontSize: 16, lineHeight: 20, }, }; diff --git a/app/components/post_list/post/body/content/embedded_bindings/button_binding/index.tsx b/app/components/post_list/post/body/content/embedded_bindings/button_binding/index.tsx index e951c57e94..6df80cc2d9 100644 --- a/app/components/post_list/post/body/content/embedded_bindings/button_binding/index.tsx +++ b/app/components/post_list/post/body/content/embedded_bindings/button_binding/index.tsx @@ -50,7 +50,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { text: { color: STATUS_COLORS.default, fontSize: 15, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', lineHeight: 17, }, }; diff --git a/app/components/post_list/post/body/content/embedded_bindings/embed_title.tsx b/app/components/post_list/post/body/content/embedded_bindings/embed_title.tsx index 4ae871fa37..fb8b85c001 100644 --- a/app/components/post_list/post/body/content/embedded_bindings/embed_title.tsx +++ b/app/components/post_list/post/body/content/embedded_bindings/embed_title.tsx @@ -21,7 +21,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { }, title: { color: theme.centerChannelColor, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', marginBottom: 5, fontSize: 14, lineHeight: 20, diff --git a/app/components/post_list/post/body/content/message_attachments/action_button/index.tsx b/app/components/post_list/post/body/content/message_attachments/action_button/index.tsx index c9fb5c36eb..382eb76060 100644 --- a/app/components/post_list/post/body/content/message_attachments/action_button/index.tsx +++ b/app/components/post_list/post/body/content/message_attachments/action_button/index.tsx @@ -41,7 +41,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { text: { color: STATUS_COLORS.default, fontSize: 15, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', lineHeight: 17, }, }; diff --git a/app/components/post_list/post/body/content/message_attachments/attachment_fields.tsx b/app/components/post_list/post/body/content/message_attachments/attachment_fields.tsx index 0c6522726a..24d325a7f5 100644 --- a/app/components/post_list/post/body/content/message_attachments/attachment_fields.tsx +++ b/app/components/post_list/post/body/content/message_attachments/attachment_fields.tsx @@ -35,7 +35,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { }, heading: { color: theme.centerChannelColor, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', }, table: { flex: 1, diff --git a/app/components/post_list/post/body/content/message_attachments/attachment_title.tsx b/app/components/post_list/post/body/content/message_attachments/attachment_title.tsx index e177a237e1..a92e0201d0 100644 --- a/app/components/post_list/post/body/content/message_attachments/attachment_title.tsx +++ b/app/components/post_list/post/body/content/message_attachments/attachment_title.tsx @@ -26,7 +26,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { title: { color: theme.centerChannelColor, fontSize: 14, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', lineHeight: 20, marginBottom: 5, }, diff --git a/app/components/post_list/post/body/files/file_info.tsx b/app/components/post_list/post/body/files/file_info.tsx index 1ee077dd77..ff41098fa4 100644 --- a/app/components/post_list/post/body/files/file_info.tsx +++ b/app/components/post_list/post/body/files/file_info.tsx @@ -32,7 +32,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { flexDirection: 'column', flexWrap: 'wrap', fontSize: 14, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', color: theme.centerChannelColor, paddingRight: 10, }, diff --git a/app/components/post_list/post/body/message/message.tsx b/app/components/post_list/post/body/message/message.tsx index d5f0086619..726743acd4 100644 --- a/app/components/post_list/post/body/message/message.tsx +++ b/app/components/post_list/post/body/message/message.tsx @@ -42,8 +42,9 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { }, message: { color: theme.centerChannelColor, - fontSize: 15, - lineHeight: 20, + fontFamily: 'OpenSans', + fontSize: 16, + lineHeight: 24, }, pendingPost: { opacity: 0.5, diff --git a/app/components/post_list/post/header/display_name/index.tsx b/app/components/post_list/post/header/display_name/index.tsx index c419c9c009..0a83f7dbba 100644 --- a/app/components/post_list/post/header/display_name/index.tsx +++ b/app/components/post_list/post/header/display_name/index.tsx @@ -28,15 +28,14 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { return { displayName: { color: theme.centerChannelColor, - fontSize: 15, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', + fontSize: 16, + lineHeight: 24, flexGrow: 1, - paddingVertical: 2, }, displayNameContainer: { maxWidth: '60%', marginRight: 5, - marginBottom: 3, }, displayNameContainerBotReplyWidth: { maxWidth: '50%', diff --git a/app/components/post_list/post/header/header.tsx b/app/components/post_list/post/header/header.tsx index de57551dad..0298cd6c66 100644 --- a/app/components/post_list/post/header/header.tsx +++ b/app/components/post_list/post/header/header.tsx @@ -56,6 +56,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { time: { color: theme.centerChannelColor, fontSize: 12, + lineHeight: 16, marginTop: 5, opacity: 0.5, flex: 1, diff --git a/app/components/post_list/post/system_message/__snapshots__/system_message_helpers.test.js.snap b/app/components/post_list/post/system_message/__snapshots__/system_message_helpers.test.js.snap index f9553fe580..e600f34494 100644 --- a/app/components/post_list/post/system_message/__snapshots__/system_message_helpers.test.js.snap +++ b/app/components/post_list/post/system_message/__snapshots__/system_message_helpers.test.js.snap @@ -18,7 +18,7 @@ exports[`renderSystemMessage uses renderer for Channel Display Name update 1`] = Array [ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, }, Object { @@ -37,7 +37,7 @@ exports[`renderSystemMessage uses renderer for Channel Display Name update 1`] = style={ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, } } @@ -67,7 +67,7 @@ exports[`renderSystemMessage uses renderer for Channel Header update 1`] = ` Array [ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, }, Object { @@ -86,7 +86,7 @@ exports[`renderSystemMessage uses renderer for Channel Header update 1`] = ` style={ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, } } @@ -103,7 +103,7 @@ exports[`renderSystemMessage uses renderer for Channel Purpose update 1`] = ` style={ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, } } @@ -130,7 +130,7 @@ exports[`renderSystemMessage uses renderer for Guest added and join to channel 1 Array [ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, }, Object { @@ -149,7 +149,7 @@ exports[`renderSystemMessage uses renderer for Guest added and join to channel 1 style={ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, } } @@ -179,7 +179,7 @@ exports[`renderSystemMessage uses renderer for Guest added and join to channel 2 Array [ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, }, Object { @@ -198,7 +198,7 @@ exports[`renderSystemMessage uses renderer for Guest added and join to channel 2 style={ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, } } @@ -211,7 +211,7 @@ exports[`renderSystemMessage uses renderer for Guest added and join to channel 2 Array [ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, }, Object { @@ -247,7 +247,7 @@ exports[`renderSystemMessage uses renderer for OLD archived channel without a us style={ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, } } @@ -277,7 +277,7 @@ exports[`renderSystemMessage uses renderer for archived channel 1`] = ` Array [ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, }, Object { @@ -296,7 +296,7 @@ exports[`renderSystemMessage uses renderer for archived channel 1`] = ` style={ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, } } @@ -326,7 +326,7 @@ exports[`renderSystemMessage uses renderer for unarchived channel 1`] = ` Array [ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, }, Object { @@ -345,7 +345,7 @@ exports[`renderSystemMessage uses renderer for unarchived channel 1`] = ` style={ Object { "color": "rgba(63,67,80,0.6)", - "fontSize": 15, + "fontSize": 16, "lineHeight": 20, } } diff --git a/app/components/post_list/post/system_message/system_message.tsx b/app/components/post_list/post/system_message/system_message.tsx index 5f5320644a..1f029219cb 100644 --- a/app/components/post_list/post/system_message/system_message.tsx +++ b/app/components/post_list/post/system_message/system_message.tsx @@ -46,7 +46,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { return { systemMessage: { color: changeOpacity(theme.centerChannelColor, 0.6), - fontSize: 15, + fontSize: 16, lineHeight: 20, }, }; diff --git a/app/components/system_header/index.tsx b/app/components/system_header/index.tsx index 28e294cf31..7bbdfc3352 100644 --- a/app/components/system_header/index.tsx +++ b/app/components/system_header/index.tsx @@ -40,7 +40,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { displayName: { color: theme.centerChannelColor, fontSize: 15, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', flexGrow: 1, paddingVertical: 2, }, diff --git a/app/components/tag/index.tsx b/app/components/tag/index.tsx index ddf1306c3c..19343e91ae 100644 --- a/app/components/tag/index.tsx +++ b/app/components/tag/index.tsx @@ -32,8 +32,8 @@ const getStyleFromTheme = makeStyleSheetFromTheme((theme: Theme) => { }, text: { color: theme.centerChannelColor, + fontFamily: 'OpenSans-Semibold', fontSize: 10, - fontWeight: '600', }, title: { backgroundColor: changeOpacity(theme.sidebarHeaderTextColor, 0.15), diff --git a/app/context/theme/index.tsx b/app/context/theme/index.tsx index e575c030c9..d133770047 100644 --- a/app/context/theme/index.tsx +++ b/app/context/theme/index.tsx @@ -59,7 +59,6 @@ const ThemeProvider = ({currentTeamId, children, themes}: Props) => { }; useEffect(() => { - // @ts-expect-error ts module not yet updated const listener = Appearance.addChangeListener(getTheme) as EventSubscription; return () => listener.remove(); diff --git a/app/database/manager/index.ts b/app/database/manager/index.ts index bfa346f00a..91745d3179 100644 --- a/app/database/manager/index.ts +++ b/app/database/manager/index.ts @@ -90,6 +90,7 @@ class DatabaseManager { dbName: databaseFilePath, migrationEvents: this.buildMigrationCallbacks(databaseName), migrations: AppDatabaseMigrations, + jsi: true, schema, }); @@ -131,6 +132,7 @@ class DatabaseManager { dbName: databaseFilePath, migrationEvents: this.buildMigrationCallbacks(databaseName), migrations, + jsi: true, schema, }); diff --git a/app/screens/about/index.tsx b/app/screens/about/index.tsx index 00e9dee474..15bb7634cb 100644 --- a/app/screens/about/index.tsx +++ b/app/screens/about/index.tsx @@ -320,7 +320,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme) => { footerTitleText: { color: changeOpacity(theme.centerChannelColor, 0.5), fontSize: 11, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', lineHeight: 13, }, footerText: { diff --git a/app/screens/channel/channel_nav_bar/channel_title/channel_display_name/index.tsx b/app/screens/channel/channel_nav_bar/channel_title/channel_display_name/index.tsx index 6431af1e4f..36b1d05ebf 100644 --- a/app/screens/channel/channel_nav_bar/channel_title/channel_display_name/index.tsx +++ b/app/screens/channel/channel_nav_bar/channel_title/channel_display_name/index.tsx @@ -46,7 +46,7 @@ const getStyle = makeStyleSheetFromTheme((theme) => { text: { color: theme.sidebarHeaderTextColor, fontSize: 18, - fontWeight: 'bold', + fontFamily: 'OpenSans-Semibold', textAlign: 'center', flex: 0, flexShrink: 1, diff --git a/app/screens/channel/channel_nav_bar/channel_title/index.tsx b/app/screens/channel/channel_nav_bar/channel_title/index.tsx index d162950802..b89121c89c 100644 --- a/app/screens/channel/channel_nav_bar/channel_title/index.tsx +++ b/app/screens/channel/channel_nav_bar/channel_title/index.tsx @@ -141,7 +141,7 @@ const getStyle = makeStyleSheetFromTheme((theme) => { text: { color: theme.sidebarHeaderTextColor, fontSize: 18, - fontWeight: 'bold', + fontFamily: 'OpenSans-Semibold', textAlign: 'center', flex: 0, flexShrink: 1, diff --git a/app/screens/channel/index.tsx b/app/screens/channel/index.tsx index e7b7491b83..226dbacbc3 100644 --- a/app/screens/channel/index.tsx +++ b/app/screens/channel/index.tsx @@ -45,7 +45,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => ({ }, sectionTitle: { fontSize: 16, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', color: theme.centerChannelColor, }, })); diff --git a/app/screens/forgot_password/index.tsx b/app/screens/forgot_password/index.tsx index 05ea25edb8..67b11fb429 100644 --- a/app/screens/forgot_password/index.tsx +++ b/app/screens/forgot_password/index.tsx @@ -173,7 +173,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => ({ borderColor: '#d6e9c6', }, emailId: { - fontWeight: 'bold', + fontFamily: 'OpenSans-Semibold', }, successTxtColor: { color: '#3c763d', diff --git a/app/screens/home/channel_list/index.tsx b/app/screens/home/channel_list/index.tsx index 05c0abecfa..8c5a27722b 100644 --- a/app/screens/home/channel_list/index.tsx +++ b/app/screens/home/channel_list/index.tsx @@ -34,7 +34,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => ({ }, sectionTitle: { fontSize: 24, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', color: theme.centerChannelColor, }, })); diff --git a/app/screens/home/tab_bar/home.tsx b/app/screens/home/tab_bar/home.tsx index cc358d7ed7..9c965039f9 100644 --- a/app/screens/home/tab_bar/home.tsx +++ b/app/screens/home/tab_bar/home.tsx @@ -43,8 +43,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => ({ }, mentions: { fontSize: 10, - fontWeight: 'bold', - fontFamily: 'OpenSans', + fontFamily: 'OpenSans-Semibold', lineHeight: Platform.select({android: 15, ios: 12.6}), borderColor: theme.centerChannelBg, borderWidth: 2, diff --git a/app/screens/login/index.tsx b/app/screens/login/index.tsx index 0dda020314..15135fdd11 100644 --- a/app/screens/login/index.tsx +++ b/app/screens/login/index.tsx @@ -466,7 +466,7 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => ({ marginTop: 15, marginBottom: 15, fontSize: 32, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', }, })); diff --git a/app/screens/login_options/index.tsx b/app/screens/login_options/index.tsx index a18d7e5a3d..ddcb603a9d 100644 --- a/app/screens/login_options/index.tsx +++ b/app/screens/login_options/index.tsx @@ -41,7 +41,7 @@ const getStyles = makeStyleSheetFromTheme((theme: Theme) => ({ marginTop: 15, marginBottom: 15, fontSize: 32, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', }, subheader: { textAlign: 'center', diff --git a/app/screens/mfa/__snapshots__/mfa.test.tsx.snap b/app/screens/mfa/__snapshots__/mfa.test.tsx.snap index 96bdbfee54..8c173a54a3 100644 --- a/app/screens/mfa/__snapshots__/mfa.test.tsx.snap +++ b/app/screens/mfa/__snapshots__/mfa.test.tsx.snap @@ -66,8 +66,8 @@ exports[`*** MFA Screen *** MFA screen should match snapshot 1`] = ` Array [ Object { "color": "#3f4350", + "fontFamily": "OpenSans-Semibold", "fontSize": 32, - "fontWeight": "600", "marginBottom": 15, "marginTop": 15, "textAlign": "center", @@ -75,7 +75,6 @@ exports[`*** MFA Screen *** MFA screen should match snapshot 1`] = ` Object { "color": "rgba(63,67,80,0.6)", "fontSize": 20, - "fontWeight": "400", }, ] } diff --git a/app/screens/mfa/index.tsx b/app/screens/mfa/index.tsx index 3244e7b080..10c65f6948 100644 --- a/app/screens/mfa/index.tsx +++ b/app/screens/mfa/index.tsx @@ -209,12 +209,11 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => ({ marginTop: 15, marginBottom: 15, fontSize: 32, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', }, label: { color: changeOpacity(theme.centerChannelColor, 0.6), fontSize: 20, - fontWeight: '400', }, container: { flex: 1, diff --git a/app/screens/server/index.tsx b/app/screens/server/index.tsx index b9b4911175..694d25b3e8 100644 --- a/app/screens/server/index.tsx +++ b/app/screens/server/index.tsx @@ -401,7 +401,6 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => ({ marginTop: 15, marginBottom: 15, fontSize: 20, - fontWeight: '400', }, connectText: { textAlign: 'center', diff --git a/app/screens/sso/sso_with_redirect_url.tsx b/app/screens/sso/sso_with_redirect_url.tsx index 923c57924f..e036d750a8 100644 --- a/app/screens/sso/sso_with_redirect_url.tsx +++ b/app/screens/sso/sso_with_redirect_url.tsx @@ -146,7 +146,6 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { errorText: { color: changeOpacity(theme.centerChannelColor, 0.6), fontSize: 16, - fontWeight: '400', lineHeight: 23, textAlign: 'center', }, @@ -159,7 +158,6 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { infoText: { color: changeOpacity(theme.centerChannelColor, 0.6), fontSize: 16, - fontWeight: '400', lineHeight: 23, marginBottom: 6, }, diff --git a/app/screens/sso/sso_with_webview.tsx b/app/screens/sso/sso_with_webview.tsx index a3b24dee42..f6a5da2f52 100644 --- a/app/screens/sso/sso_with_webview.tsx +++ b/app/screens/sso/sso_with_webview.tsx @@ -253,7 +253,6 @@ const getStyleSheet = makeStyleSheetFromTheme((theme: Theme) => { errorText: { color: changeOpacity(theme.centerChannelColor, 0.4), fontSize: 16, - fontWeight: '400', lineHeight: 23, paddingHorizontal: 30, }, diff --git a/app/utils/markdown/index.ts b/app/utils/markdown/index.ts index 56bc2813ca..f52a22f1c3 100644 --- a/app/utils/markdown/index.ts +++ b/app/utils/markdown/index.ts @@ -14,60 +14,61 @@ export const getMarkdownTextStyles = makeStyleSheetFromTheme((theme: Theme) => { return { emph: { - fontStyle: 'italic', + fontFamily: 'OpenSans-Italic', }, strong: { - fontWeight: 'bold', + fontFamily: 'OpenSans-Semibold', }, del: { textDecorationLine: 'line-through', }, link: { color: theme.linkColor, + fontFamily: 'OpenSans', }, heading1: { - fontSize: 22, - fontWeight: '700', + fontFamily: 'OpenSans-Bold', + fontSize: 24, lineHeight: 25, }, heading1Text: { paddingBottom: 8, }, heading2: { - fontSize: 20, - fontWeight: '700', + fontFamily: 'OpenSans-Bold', + fontSize: 22, lineHeight: 25, }, heading2Text: { paddingBottom: 8, }, heading3: { - fontSize: 19, - fontWeight: '700', + fontFamily: 'OpenSans-Bold', + fontSize: 21, lineHeight: 25, }, heading3Text: { paddingBottom: 8, }, heading4: { - fontSize: 18, - fontWeight: '700', + fontFamily: 'OpenSans-Bold', + fontSize: 20, lineHeight: 25, }, heading4Text: { paddingBottom: 8, }, heading5: { - fontSize: 17, - fontWeight: '700', + fontFamily: 'OpenSans-Bold', + fontSize: 19, lineHeight: 25, }, heading5Text: { paddingBottom: 8, }, heading6: { - fontSize: 16, - fontWeight: '700', + fontFamily: 'OpenSans-Bold', + fontSize: 18, lineHeight: 25, }, heading6Text: { @@ -82,15 +83,18 @@ export const getMarkdownTextStyles = makeStyleSheetFromTheme((theme: Theme) => { fontFamily: codeFont, }, mention: { + fontFamily: 'OpenSans', color: theme.linkColor, }, error: { + fontFamily: 'OpenSans', color: theme.errorTextColor, }, table_header_row: { - fontWeight: '700', + fontFamily: 'OpenSans-Bold', }, mention_highlight: { + fontFamily: 'OpenSans', backgroundColor: theme.mentionHighlightBg, color: theme.mentionHighlightLink, }, diff --git a/fastlane/Fastfile b/fastlane/Fastfile index 109b0cefb5..5cbe4b5056 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -311,11 +311,13 @@ platform :ios do end end - desc 'Get iOS adhoc profiles' - lane :adhoc do - if ENV['MATCH_TYPE'] != 'adhoc' && !ENV['MATCH_PASSWORD'].nil? && !ENV['MATCH_PASSWORD'].empty? + desc 'Get iOS match profiles' + lane :match do + if !ENV['MATCH_PASSWORD'].nil? && !ENV['MATCH_PASSWORD'].empty? + api_key = get_apple_api_key() match( - type: 'adhoc' + api_key: api_key, + type: ENV['MATCH_TYPE'] || 'adhoc' ) end end @@ -847,12 +849,9 @@ def send_message_to_mattermost(options) end end -def submit_to_testflight(ipa_path) - ipa = (Dir.glob(ipa_path).select { |f| File.file? f}).first - - if !ipa.nil? - UI.success("ipa file #{ipa}") - unless ENV['IOS_API_KEY_ID'].nil? || ENV['IOS_API_KEY_ID'].empty? || +def get_apple_api_key + api_key = '' + unless ENV['IOS_API_KEY_ID'].nil? || ENV['IOS_API_KEY_ID'].empty? || ENV['IOS_API_ISSUER_ID'].nil? || ENV['IOS_API_ISSUER_ID'].empty? || ENV['IOS_API_KEY'].nil? || ENV['IOS_API_KEY'].empty? api_key_path = "#{ENV['IOS_API_KEY_ID']}.p8" @@ -873,6 +872,18 @@ def submit_to_testflight(ipa_path) ) File.delete("../#{api_key_path}") + end + + return api_key +end + +def submit_to_testflight(ipa_path) + ipa = (Dir.glob(ipa_path).select { |f| File.file? f}).first + + if !ipa.nil? + UI.success("ipa file #{ipa}") + api_key = get_apple_api_key() + unless api_key.empty? pilot( ipa: ipa, api_key: api_key diff --git a/fastlane/Gemfile b/fastlane/Gemfile index 1e864103e2..473b20e331 100644 --- a/fastlane/Gemfile +++ b/fastlane/Gemfile @@ -2,6 +2,7 @@ source "https://rubygems.org" gem "fastlane" gem "nokogiri" +gem "slack-notifier", "2.3.2" plugins_path = File.join(File.dirname(__FILE__), '.', 'Pluginfile') eval(File.read(plugins_path), binding) if File.exist?(plugins_path) diff --git a/fastlane/Gemfile.lock b/fastlane/Gemfile.lock index fe835f6c31..5f28d038b9 100644 --- a/fastlane/Gemfile.lock +++ b/fastlane/Gemfile.lock @@ -1,26 +1,27 @@ GEM remote: https://rubygems.org/ specs: - CFPropertyList (3.0.3) + CFPropertyList (3.0.4) + rexml addressable (2.8.0) public_suffix (>= 2.0.2, < 5.0) artifactory (3.0.15) atomos (0.1.3) - aws-eventstream (1.1.1) - aws-partitions (1.492.0) - aws-sdk-core (3.119.1) + aws-eventstream (1.2.0) + aws-partitions (1.510.0) + aws-sdk-core (3.121.1) aws-eventstream (~> 1, >= 1.0.2) aws-partitions (~> 1, >= 1.239.0) aws-sigv4 (~> 1.1) jmespath (~> 1.0) - aws-sdk-kms (1.47.0) - aws-sdk-core (~> 3, >= 3.119.0) + aws-sdk-kms (1.49.0) + aws-sdk-core (~> 3, >= 3.120.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.100.0) - aws-sdk-core (~> 3, >= 3.119.0) + aws-sdk-s3 (1.103.0) + aws-sdk-core (~> 3, >= 3.120.0) aws-sdk-kms (~> 1) - aws-sigv4 (~> 1.1) - aws-sigv4 (1.2.4) + aws-sigv4 (~> 1.4) + aws-sigv4 (1.4.0) aws-eventstream (~> 1, >= 1.0.2) babosa (1.0.4) claide (1.0.3) @@ -34,9 +35,9 @@ GEM domain_name (0.5.20190701) unf (>= 0.0.5, < 1.0.0) dotenv (2.7.6) - emoji_regex (3.2.2) - excon (0.85.0) - faraday (1.7.1) + emoji_regex (3.2.3) + excon (0.86.0) + faraday (1.8.0) faraday-em_http (~> 1.0) faraday-em_synchrony (~> 1.0) faraday-excon (~> 1.1) @@ -61,7 +62,7 @@ GEM faraday_middleware (1.1.0) faraday (~> 1.0) fastimage (2.2.5) - fastlane (2.192.0) + fastlane (2.195.0) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.8, < 3.0.0) artifactory (~> 3.0) @@ -106,7 +107,7 @@ GEM fastlane-plugin-find_replace_string (0.1.0) fastlane-plugin-versioning_android (0.1.0) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.10.0) + google-apis-androidpublisher_v3 (0.11.0) google-apis-core (>= 0.4, < 2.a) google-apis-core (0.4.1) addressable (~> 2.5, >= 2.5.1) @@ -121,14 +122,14 @@ GEM google-apis-core (>= 0.4, < 2.a) google-apis-playcustomapp_v1 (0.5.0) google-apis-core (>= 0.4, < 2.a) - google-apis-storage_v1 (0.6.0) + google-apis-storage_v1 (0.8.0) google-apis-core (>= 0.4, < 2.a) google-cloud-core (1.6.0) google-cloud-env (~> 1.0) google-cloud-errors (~> 1.0) google-cloud-env (1.5.0) faraday (>= 0.17.3, < 2.0) - google-cloud-errors (1.1.0) + google-cloud-errors (1.2.0) google-cloud-storage (1.34.1) addressable (~> 2.5) digest-crc (~> 0.4) @@ -137,20 +138,20 @@ GEM google-cloud-core (~> 1.6) googleauth (>= 0.16.2, < 2.a) mini_mime (~> 1.0) - googleauth (0.17.0) + googleauth (1.0.0) faraday (>= 0.17.3, < 2.0) jwt (>= 1.4, < 3.0) memoist (~> 0.16) multi_json (~> 1.11) os (>= 0.9, < 2.0) - signet (~> 0.14) + signet (>= 0.16, < 2.a) highline (2.0.3) http-cookie (1.0.4) domain_name (~> 0.5) httpclient (2.8.3) jmespath (1.4.0) json (2.5.1) - jwt (2.2.3) + jwt (2.3.0) memoist (0.16.2) mini_magick (4.11.0) mini_mime (1.1.1) @@ -159,7 +160,7 @@ GEM multipart-post (2.0.0) nanaimo (0.3.0) naturally (2.2.1) - nokogiri (1.12.4) + nokogiri (1.12.5) mini_portile2 (~> 2.6.1) racc (~> 1.4) optparse (0.1.1) @@ -178,14 +179,15 @@ GEM ruby2_keywords (0.0.5) rubyzip (2.3.2) security (0.1.3) - signet (0.15.0) - addressable (~> 2.3) + signet (0.16.0) + addressable (~> 2.8) faraday (>= 0.17.3, < 2.0) jwt (>= 1.5, < 3.0) multi_json (~> 1.10) simctl (1.6.8) CFPropertyList naturally + slack-notifier (2.3.2) terminal-notifier (2.0.0) terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) @@ -197,8 +199,8 @@ GEM uber (0.1.0) unf (0.1.4) unf_ext - unf_ext (0.0.7.7) - unicode-display_width (1.7.0) + unf_ext (0.0.8) + unicode-display_width (1.8.0) webrick (1.7.0) word_wrap (1.0.0) xcodeproj (1.21.0) @@ -223,6 +225,7 @@ DEPENDENCIES fastlane-plugin-find_replace_string fastlane-plugin-versioning_android nokogiri + slack-notifier (= 2.3.2) BUNDLED WITH 2.1.4 diff --git a/fastlane/README.md b/fastlane/README.md new file mode 100644 index 0000000000..56833d235f --- /dev/null +++ b/fastlane/README.md @@ -0,0 +1,57 @@ +fastlane documentation +================ +# Installation +``` +sudo gem install fastlane +``` +# Available Actions +## iOS +### ios dev +``` +fastlane ios dev +``` +Build Release file + +This will also make sure the profile is up to date +### ios beta +``` +fastlane ios beta +``` +Submit a new Beta Build to Apple TestFlight + +This will also make sure the profile is up to date +### ios release +``` +fastlane ios release +``` +Deploy a new version to the App Store +### ios build +``` +fastlane ios build +``` + + +---- + +## Android +### android dev +``` +fastlane android dev +``` + +### android beta +``` +fastlane android beta +``` + +### android release +``` +fastlane android release +``` + + +---- + +This README.md is auto-generated and will be re-generated every time [fastlane](https://fastlane.tools) is run. +More information about fastlane can be found on [https://fastlane.tools](https://fastlane.tools). +The documentation of fastlane can be found on [GitHub](https://github.com/fastlane/fastlane/tree/master/fastlane). diff --git a/fastlane/metadata/android/en-US/full_description.txt b/fastlane/metadata/android/en-US/full_description.txt index 9d30f87ce7..d35ad63d81 100644 --- a/fastlane/metadata/android/en-US/full_description.txt +++ b/fastlane/metadata/android/en-US/full_description.txt @@ -1,4 +1,4 @@ -Requires Mattermost Server v5.25+. Older servers may not be able to connect or have unexpected behavior. +Requires Mattermost Server v5.37+. Older servers may not be able to connect or have unexpected behavior. ------- diff --git a/fastlane/metadata/changelog b/fastlane/metadata/changelog index 7cc284736c..1680d5f9cf 100644 --- a/fastlane/metadata/changelog +++ b/fastlane/metadata/changelog @@ -1,4 +1,4 @@ -This version is compatible with Mattermost servers v5.25+. +This version is compatible with Mattermost servers v5.37.0+. Please see [changelog](https://docs.mattermost.com/administration/mobile-changelog.html) for full release notes. If you're interested in helping beta test upcoming versions before they are released, please see our [documentation](https://github.com/mattermost/mattermost-mobile#testing). diff --git a/ios/Mattermost.xcodeproj/project.pbxproj b/ios/Mattermost.xcodeproj/project.pbxproj index 726865994d..639a674e02 100644 --- a/ios/Mattermost.xcodeproj/project.pbxproj +++ b/ios/Mattermost.xcodeproj/project.pbxproj @@ -12,11 +12,6 @@ 13B07FBC1A68108700A75B9A /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB01A68108700A75B9A /* AppDelegate.m */; }; 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 13B07FB51A68108700A75B9A /* Images.xcassets */; }; 13B07FC11A68108700A75B9A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 13B07FB71A68108700A75B9A /* main.m */; }; - 2746AF7026EA5646002C3C37 /* OpenSans.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 2746AF6E26EA5646002C3C37 /* OpenSans.ttf */; }; - 2746AF7126EA5646002C3C37 /* OpenSansLight-Italic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 2746AF6F26EA5646002C3C37 /* OpenSansLight-Italic.ttf */; }; - 274DCD9F26E9249800C145AC /* Metropolis-SemiBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 274DCD9C26E9249800C145AC /* Metropolis-SemiBold.ttf */; }; - 274DCDA026E9249800C145AC /* Metropolis-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 274DCD9D26E9249800C145AC /* Metropolis-Regular.ttf */; }; - 274DCDA126E9249800C145AC /* Metropolis-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 274DCD9E26E9249800C145AC /* Metropolis-Light.ttf */; }; 2D5296A8926B4D7FBAF2D6E2 /* OpenSans-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 6561AEAC21CC40B8A72ABB93 /* OpenSans-Light.ttf */; }; 4953BF602368AE8600593328 /* SwimeProxy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4953BF5F2368AE8600593328 /* SwimeProxy.swift */; }; 49AE36FF26D4455800EF4E52 /* Gekidou in Frameworks */ = {isa = PBXBuildFile; productRef = 49AE36FE26D4455800EF4E52 /* Gekidou */; }; @@ -36,6 +31,9 @@ 7F240A23220D3A2300637665 /* MattermostShare.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 7F240A19220D3A2300637665 /* MattermostShare.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; 7F240ADB220E089300637665 /* Item.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F240ADA220E089300637665 /* Item.swift */; }; 7F240ADD220E094A00637665 /* TeamsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F240ADC220E094A00637665 /* TeamsViewController.swift */; }; + 7F25B62D270F717F00F32373 /* Metropolis-Light.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7F25B626270F666D00F32373 /* Metropolis-Light.ttf */; }; + 7F25B62E270F718300F32373 /* Metropolis-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7F25B628270F666D00F32373 /* Metropolis-Regular.ttf */; }; + 7F25B632270F825700F32373 /* Metropolis-Semibold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 7F25B631270F824E00F32373 /* Metropolis-Semibold.ttf */; }; 7F292A711E8AB73400A450A3 /* SplashScreenResource in Resources */ = {isa = PBXBuildFile; fileRef = 7F292A701E8AB73400A450A3 /* SplashScreenResource */; }; 7F581D35221ED5C60099E66B /* NotificationService.swift in Sources */ = {isa = PBXBuildFile; fileRef = 7F581D34221ED5C60099E66B /* NotificationService.swift */; }; 7F581D39221ED5C60099E66B /* NotificationService.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 7F581D32221ED5C60099E66B /* NotificationService.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; @@ -51,7 +49,9 @@ 7FEB109D1F61019C0039A015 /* MattermostManaged.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FEB109A1F61019C0039A015 /* MattermostManaged.m */; }; 84E3264B229834C30055068A /* Config.swift in Sources */ = {isa = PBXBuildFile; fileRef = 84E325FF229834C30055068A /* Config.swift */; }; 9358B95F95184EE0A4DCE629 /* OpenSans-Bold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = D4B1B363C2414DA19C1AC521 /* OpenSans-Bold.ttf */; }; + A08D512E7ADC40CCAD055A9E /* OpenSans-Regular.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BC977883E2624E05975CA65B /* OpenSans-Regular.ttf */; }; D719A67137964F08BE47A5FC /* OpenSans-ExtraBold.ttf in Resources */ = {isa = PBXBuildFile; fileRef = 3647DF63D6764CF093375861 /* OpenSans-ExtraBold.ttf */; }; + F083DB472349411A8E6E7AAD /* OpenSans-LightItalic.ttf in Resources */ = {isa = PBXBuildFile; fileRef = BE17F630DB5D41FD93F32D22 /* OpenSans-LightItalic.ttf */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -127,10 +127,7 @@ /* Begin PBXFileReference section */ 00E356F11AD99517003FC87E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 00E356F21AD99517003FC87E /* MattermostTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MattermostTests.m; sourceTree = ""; }; - 031EF04FB2D14EEFAACBAA1A /* Roboto-Italic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-Italic.ttf"; path = "../assets/fonts/Roboto-Italic.ttf"; sourceTree = ""; }; - 09FA716C56874BDDA30FE8C4 /* Roboto-Medium.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-Medium.ttf"; path = "../assets/fonts/Roboto-Medium.ttf"; sourceTree = ""; }; 0E617BF0F36D4E738F51D169 /* OpenSans-SemiboldItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-SemiboldItalic.ttf"; path = "../assets/fonts/OpenSans-SemiboldItalic.ttf"; sourceTree = ""; }; - 12D0B0E475FD46E29907305E /* Roboto-ThinItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-ThinItalic.ttf"; path = "../assets/fonts/Roboto-ThinItalic.ttf"; sourceTree = ""; }; 13B07F961A680F5B00A75B9A /* Mattermost.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Mattermost.app; sourceTree = BUILT_PRODUCTS_DIR; }; 13B07FAF1A68108700A75B9A /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = AppDelegate.h; path = Mattermost/AppDelegate.h; sourceTree = ""; }; 13B07FB01A68108700A75B9A /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = AppDelegate.m; path = Mattermost/AppDelegate.m; sourceTree = ""; }; @@ -139,14 +136,8 @@ 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = Mattermost/main.m; sourceTree = ""; }; 182D203F539AF68F1647EFAF /* Pods-Mattermost-MattermostTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mattermost-MattermostTests.release.xcconfig"; path = "Target Support Files/Pods-Mattermost-MattermostTests/Pods-Mattermost-MattermostTests.release.xcconfig"; sourceTree = ""; }; 25BF2BACE89201DE6E585B7E /* Pods-Mattermost.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mattermost.release.xcconfig"; path = "Target Support Files/Pods-Mattermost/Pods-Mattermost.release.xcconfig"; sourceTree = ""; }; - 2746AF6E26EA5646002C3C37 /* OpenSans.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = OpenSans.ttf; path = ../assets/fonts/OpenSans.ttf; sourceTree = ""; }; - 2746AF6F26EA5646002C3C37 /* OpenSansLight-Italic.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "OpenSansLight-Italic.ttf"; path = "../assets/fonts/OpenSansLight-Italic.ttf"; sourceTree = ""; }; - 274DCD9C26E9249800C145AC /* Metropolis-SemiBold.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Metropolis-SemiBold.ttf"; path = "../assets/fonts/Metropolis-SemiBold.ttf"; sourceTree = ""; }; - 274DCD9D26E9249800C145AC /* Metropolis-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Metropolis-Regular.ttf"; path = "../assets/fonts/Metropolis-Regular.ttf"; sourceTree = ""; }; - 274DCD9E26E9249800C145AC /* Metropolis-Light.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Metropolis-Light.ttf"; path = "../assets/fonts/Metropolis-Light.ttf"; sourceTree = ""; }; 297AAFCCF0BD99FC109DA2BC /* Pods-MattermostTests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MattermostTests.release.xcconfig"; path = "Target Support Files/Pods-MattermostTests/Pods-MattermostTests.release.xcconfig"; sourceTree = ""; }; 32AC3D4EA79E44738A6E9766 /* OpenSans-BoldItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-BoldItalic.ttf"; path = "../assets/fonts/OpenSans-BoldItalic.ttf"; sourceTree = ""; }; - 34B20A903038487E8D7DEA1E /* Roboto-Light.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-Light.ttf"; path = "../assets/fonts/Roboto-Light.ttf"; sourceTree = ""; }; 3647DF63D6764CF093375861 /* OpenSans-ExtraBold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-ExtraBold.ttf"; path = "../assets/fonts/OpenSans-ExtraBold.ttf"; sourceTree = ""; }; 41F3AFE83AAF4B74878AB78A /* OpenSans-Italic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-Italic.ttf"; path = "../assets/fonts/OpenSans-Italic.ttf"; sourceTree = ""; }; 4953BF5F2368AE8600593328 /* SwimeProxy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = SwimeProxy.swift; path = Mattermost/SwimeProxy.swift; sourceTree = ""; }; @@ -162,8 +153,6 @@ 57CB4735B7E57B50D0B50E16 /* Pods-MattermostTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MattermostTests.debug.xcconfig"; path = "Target Support Files/Pods-MattermostTests/Pods-MattermostTests.debug.xcconfig"; sourceTree = ""; }; 6561AEAC21CC40B8A72ABB93 /* OpenSans-Light.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-Light.ttf"; path = "../assets/fonts/OpenSans-Light.ttf"; sourceTree = ""; }; 6BAF8296411D4657B5A0E8F8 /* libRNReactNativeDocViewer.a */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = archive.ar; path = libRNReactNativeDocViewer.a; sourceTree = ""; }; - 6EFF13DD24CE4E26953E598A /* Roboto-Black.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-Black.ttf"; path = "../assets/fonts/Roboto-Black.ttf"; sourceTree = ""; }; - 71E626D4980A4560B26F0E1C /* Roboto-Bold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-Bold.ttf"; path = "../assets/fonts/Roboto-Bold.ttf"; sourceTree = ""; }; 7F0F4B0924BA173900E14C60 /* LaunchScreen.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = SplashScreenResource/LaunchScreen.storyboard; sourceTree = ""; }; 7F151D3D221B062700FAD8F3 /* RuntimeUtils.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = RuntimeUtils.swift; path = Mattermost/RuntimeUtils.swift; sourceTree = ""; }; 7F151D42221B07F700FAD8F3 /* MattermostShare-Bridging-Header.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MattermostShare-Bridging-Header.h"; sourceTree = ""; }; @@ -175,10 +164,12 @@ 7F240A27220D3A7E00637665 /* MattermostShare.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = MattermostShare.entitlements; sourceTree = ""; }; 7F240ADA220E089300637665 /* Item.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Item.swift; sourceTree = ""; }; 7F240ADC220E094A00637665 /* TeamsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TeamsViewController.swift; sourceTree = ""; }; + 7F25B626270F666D00F32373 /* Metropolis-Light.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Metropolis-Light.ttf"; path = "../assets/fonts/Metropolis-Light.ttf"; sourceTree = ""; }; + 7F25B628270F666D00F32373 /* Metropolis-Regular.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Metropolis-Regular.ttf"; path = "../assets/fonts/Metropolis-Regular.ttf"; sourceTree = ""; }; + 7F25B631270F824E00F32373 /* Metropolis-Semibold.ttf */ = {isa = PBXFileReference; lastKnownFileType = file; name = "Metropolis-Semibold.ttf"; path = "../assets/fonts/Metropolis-Semibold.ttf"; sourceTree = ""; }; 7F292A701E8AB73400A450A3 /* SplashScreenResource */ = {isa = PBXFileReference; lastKnownFileType = folder; path = SplashScreenResource; sourceTree = ""; }; 7F325D6DAAF1047EB948EFF7 /* Pods-Mattermost-MattermostTests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mattermost-MattermostTests.debug.xcconfig"; path = "Target Support Files/Pods-Mattermost-MattermostTests/Pods-Mattermost-MattermostTests.debug.xcconfig"; sourceTree = ""; }; 7F43D6051F6BF9EB001FC614 /* libPods-Mattermost.a */ = {isa = PBXFileReference; lastKnownFileType = archive.ar; name = "libPods-Mattermost.a"; path = "../../../../../../../Library/Developer/Xcode/DerivedData/Mattermost-czlinsdviifujheezzjvmisotjrm/Build/Products/Debug-iphonesimulator/libPods-Mattermost.a"; sourceTree = ""; }; - 7F54ABFAE6CE4A6DB11D1ED7 /* Roboto-BlackItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-BlackItalic.ttf"; path = "../assets/fonts/Roboto-BlackItalic.ttf"; sourceTree = ""; }; 7F581D32221ED5C60099E66B /* NotificationService.appex */ = {isa = PBXFileReference; explicitFileType = "wrapper.app-extension"; includeInIndex = 0; path = NotificationService.appex; sourceTree = BUILT_PRODUCTS_DIR; }; 7F581D34221ED5C60099E66B /* NotificationService.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NotificationService.swift; sourceTree = ""; }; 7F581D36221ED5C60099E66B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; @@ -208,14 +199,9 @@ 81061F4CBB31484A94D5A8EE /* libz.tbd */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = "sourcecode.text-based-dylib-definition"; name = libz.tbd; path = usr/lib/libz.tbd; sourceTree = SDKROOT; }; 84E325FF229834C30055068A /* Config.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Config.swift; sourceTree = ""; }; 8DEEFB3ED6175724A2653247 /* libPods-Mattermost.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Mattermost.a"; sourceTree = BUILT_PRODUCTS_DIR; }; - 8F0B22D2C9924FAFA7FB681C /* Roboto-LightItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-LightItalic.ttf"; path = "../assets/fonts/Roboto-LightItalic.ttf"; sourceTree = ""; }; - A734E00E7E184582A877F2B3 /* Roboto-Thin.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-Thin.ttf"; path = "../assets/fonts/Roboto-Thin.ttf"; sourceTree = ""; }; BC977883E2624E05975CA65B /* OpenSans-Regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-Regular.ttf"; path = "../assets/fonts/OpenSans-Regular.ttf"; sourceTree = ""; }; BE17F630DB5D41FD93F32D22 /* OpenSans-LightItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-LightItalic.ttf"; path = "../assets/fonts/OpenSans-LightItalic.ttf"; sourceTree = ""; }; - C46342B0E5FD4D878AF3A129 /* Roboto-BoldItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-BoldItalic.ttf"; path = "../assets/fonts/Roboto-BoldItalic.ttf"; sourceTree = ""; }; - C5BD64DE829E455A997DCAD5 /* Roboto-Regular.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-Regular.ttf"; path = "../assets/fonts/Roboto-Regular.ttf"; sourceTree = ""; }; C78A387124874496AD2C1466 /* OpenSans-Semibold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-Semibold.ttf"; path = "../assets/fonts/OpenSans-Semibold.ttf"; sourceTree = ""; }; - D08F54E10DF14AE4BBF4E2B4 /* Roboto-MediumItalic.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "Roboto-MediumItalic.ttf"; path = "../assets/fonts/Roboto-MediumItalic.ttf"; sourceTree = ""; }; D4B1B363C2414DA19C1AC521 /* OpenSans-Bold.ttf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "OpenSans-Bold.ttf"; path = "../assets/fonts/OpenSans-Bold.ttf"; sourceTree = ""; }; EB4F0DF36537B0B21BE962FB /* Pods-Mattermost.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Mattermost.debug.xcconfig"; path = "Target Support Files/Pods-Mattermost/Pods-Mattermost.debug.xcconfig"; sourceTree = ""; }; F41672974C2907F74BB59B16 /* libPods-Mattermost-MattermostTests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Mattermost-MattermostTests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -274,11 +260,9 @@ 0156F464626F49C2977D7982 /* Resources */ = { isa = PBXGroup; children = ( - 2746AF6E26EA5646002C3C37 /* OpenSans.ttf */, - 2746AF6F26EA5646002C3C37 /* OpenSansLight-Italic.ttf */, - 274DCD9E26E9249800C145AC /* Metropolis-Light.ttf */, - 274DCD9D26E9249800C145AC /* Metropolis-Regular.ttf */, - 274DCD9C26E9249800C145AC /* Metropolis-SemiBold.ttf */, + 7F25B626270F666D00F32373 /* Metropolis-Light.ttf */, + 7F25B628270F666D00F32373 /* Metropolis-Regular.ttf */, + 7F25B631270F824E00F32373 /* Metropolis-Semibold.ttf */, D4B1B363C2414DA19C1AC521 /* OpenSans-Bold.ttf */, 32AC3D4EA79E44738A6E9766 /* OpenSans-BoldItalic.ttf */, 3647DF63D6764CF093375861 /* OpenSans-ExtraBold.ttf */, @@ -290,18 +274,6 @@ C78A387124874496AD2C1466 /* OpenSans-Semibold.ttf */, 0E617BF0F36D4E738F51D169 /* OpenSans-SemiboldItalic.ttf */, 531BEBC52513E93C00BC05B1 /* compass-icons.ttf */, - 6EFF13DD24CE4E26953E598A /* Roboto-Black.ttf */, - 7F54ABFAE6CE4A6DB11D1ED7 /* Roboto-BlackItalic.ttf */, - 71E626D4980A4560B26F0E1C /* Roboto-Bold.ttf */, - C46342B0E5FD4D878AF3A129 /* Roboto-BoldItalic.ttf */, - 031EF04FB2D14EEFAACBAA1A /* Roboto-Italic.ttf */, - 34B20A903038487E8D7DEA1E /* Roboto-Light.ttf */, - 8F0B22D2C9924FAFA7FB681C /* Roboto-LightItalic.ttf */, - 09FA716C56874BDDA30FE8C4 /* Roboto-Medium.ttf */, - D08F54E10DF14AE4BBF4E2B4 /* Roboto-MediumItalic.ttf */, - C5BD64DE829E455A997DCAD5 /* Roboto-Regular.ttf */, - A734E00E7E184582A877F2B3 /* Roboto-Thin.ttf */, - 12D0B0E475FD46E29907305E /* Roboto-ThinItalic.ttf */, ); name = Resources; sourceTree = ""; @@ -631,21 +603,21 @@ isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; files = ( - 2746AF7026EA5646002C3C37 /* OpenSans.ttf in Resources */, - 2746AF7126EA5646002C3C37 /* OpenSansLight-Italic.ttf in Resources */, - 274DCD9F26E9249800C145AC /* Metropolis-SemiBold.ttf in Resources */, - 274DCDA026E9249800C145AC /* Metropolis-Regular.ttf in Resources */, - 274DCDA126E9249800C145AC /* Metropolis-Light.ttf in Resources */, 7FB4224026DED2E40063B0EE /* compass-icons.ttf in Resources */, 13B07FBF1A68108700A75B9A /* Images.xcassets in Resources */, 7F0F4B0A24BA173900E14C60 /* LaunchScreen.storyboard in Resources */, 7F292A711E8AB73400A450A3 /* SplashScreenResource in Resources */, + 7F25B62D270F717F00F32373 /* Metropolis-Light.ttf in Resources */, + 7F25B62E270F718300F32373 /* Metropolis-Regular.ttf in Resources */, + 7F25B632270F825700F32373 /* Metropolis-Semibold.ttf in Resources */, 9358B95F95184EE0A4DCE629 /* OpenSans-Bold.ttf in Resources */, 55C6561DDBBA45929D88B6D1 /* OpenSans-BoldItalic.ttf in Resources */, D719A67137964F08BE47A5FC /* OpenSans-ExtraBold.ttf in Resources */, 0111A42B7F264BCF8CBDE3ED /* OpenSans-ExtraBoldItalic.ttf in Resources */, 0C0D24F53F254F75869E5951 /* OpenSans-Italic.ttf in Resources */, 2D5296A8926B4D7FBAF2D6E2 /* OpenSans-Light.ttf in Resources */, + F083DB472349411A8E6E7AAD /* OpenSans-LightItalic.ttf in Resources */, + A08D512E7ADC40CCAD055A9E /* OpenSans-Regular.ttf in Resources */, 62A8448264674B4D95A5A7C2 /* OpenSans-Semibold.ttf in Resources */, 69AC753E496743BABB7A7124 /* OpenSans-SemiboldItalic.ttf in Resources */, ); diff --git a/ios/Mattermost/AppDelegate.m b/ios/Mattermost/AppDelegate.m index 819abd75e7..419a389163 100644 --- a/ios/Mattermost/AppDelegate.m +++ b/ios/Mattermost/AppDelegate.m @@ -3,6 +3,7 @@ #import #import #import +#import #import #import @@ -57,15 +58,12 @@ MattermostBucket* bucket = nil; // Clear keychain on first run in case of reinstallation if (![[NSUserDefaults standardUserDefaults] objectForKey:@"FirstRun"]) { - NSString *service = [[NSBundle mainBundle] bundleIdentifier]; - NSDictionary *query = @{ - (__bridge NSString *)kSecClass: (__bridge id)(kSecClassGenericPassword), - (__bridge NSString *)kSecAttrService: service, - (__bridge NSString *)kSecReturnAttributes: (__bridge id)kCFBooleanTrue, - (__bridge NSString *)kSecReturnData: (__bridge id)kCFBooleanFalse - }; - - SecItemDelete((__bridge CFDictionaryRef) query); + RNKeychainManager *keychain = [[RNKeychainManager alloc] init]; + NSArray *servers = [keychain getAllServersForInternetPasswords]; + NSLog(@"Servers %@", servers); + for (NSString *server in servers) { + [keychain deleteCredentialsForServer:server]; + } [[NSUserDefaults standardUserDefaults] setValue:@YES forKey:@"FirstRun"]; [[NSUserDefaults standardUserDefaults] synchronize]; diff --git a/ios/Mattermost/Info.plist b/ios/Mattermost/Info.plist index be409278e9..1fe313eeb2 100644 --- a/ios/Mattermost/Info.plist +++ b/ios/Mattermost/Info.plist @@ -95,23 +95,10 @@ OpenSans.ttf OpenSans-Semibold.ttf OpenSans-SemiboldItalic.ttf - Roboto-Black.ttf - Roboto-BlackItalic.ttf - Roboto-Bold.ttf - Roboto-BoldItalic.ttf - Roboto-Italic.ttf - Roboto-Light.ttf - Roboto-LightItalic.ttf - Roboto-Medium.ttf - Roboto-MediumItalic.ttf - Roboto-Regular.ttf - Roboto-Thin.ttf - Roboto-ThinItalic.ttf + Metropolis-Regular.ttf + Metropolis-Semibold.ttf + Metropolis-Light.ttf compass-icons.ttf - Mattermost-Regular.otf - Metropolis-Light.ttf - Metropolis-Regular.ttf - Metropolis-SemiBold.ttf UIBackgroundModes diff --git a/ios/Podfile b/ios/Podfile index e86194e060..9ff063e5a9 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -44,6 +44,7 @@ end post_install do |installer| react_native_post_install(installer) + __apply_Xcode_12_5_M1_post_install_workaround(installer) puts 'Patching XCDYouTube so it can playback videos' %x(patch Pods/XCDYouTubeKit/XCDYouTubeKit/XCDYouTubeVideoOperation.m < patches/XCDYouTubeVideoOperation.patch) installer.pods_project.targets.each do |target| diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 73bc59ff69..e1134ce4ed 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -1,6 +1,6 @@ PODS: - Alamofire (5.4.4) - - boost-for-react-native (1.63.0) + - boost (1.76.0) - BVLinearGradient (2.5.6): - React - DoubleConversion (1.1.6) @@ -19,14 +19,14 @@ PODS: - ExpoModulesCore/Interfaces (0.2.0): - ExpoModulesCore/Core - UMCore - - FBLazyVector (0.65.1) - - FBReactNativeSpec (0.65.1): - - RCT-Folly (= 2021.04.26.00) - - RCTRequired (= 0.65.1) - - RCTTypeSafety (= 0.65.1) - - React-Core (= 0.65.1) - - React-jsi (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) + - FBLazyVector (0.66.0) + - FBReactNativeSpec (0.66.0): + - RCT-Folly (= 2021.06.28.00-v2) + - RCTRequired (= 0.66.0) + - RCTTypeSafety (= 0.66.0) + - React-Core (= 0.66.0) + - React-jsi (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) - fmt (6.2.1) - glog (0.3.5) - jail-monkey (2.6.0): @@ -44,209 +44,212 @@ PODS: - RNPermissions - Permission-PhotoLibrary (3.0.5): - RNPermissions - - RCT-Folly (2021.04.26.00): - - boost-for-react-native + - RCT-Folly (2021.06.28.00-v2): + - boost - DoubleConversion - fmt (~> 6.2.1) - glog - - RCT-Folly/Default (= 2021.04.26.00) - - RCT-Folly/Default (2021.04.26.00): - - boost-for-react-native + - RCT-Folly/Default (= 2021.06.28.00-v2) + - RCT-Folly/Default (2021.06.28.00-v2): + - boost - DoubleConversion - fmt (~> 6.2.1) - glog - - RCTRequired (0.65.1) - - RCTTypeSafety (0.65.1): - - FBLazyVector (= 0.65.1) - - RCT-Folly (= 2021.04.26.00) - - RCTRequired (= 0.65.1) - - React-Core (= 0.65.1) + - RCTRequired (0.66.0) + - RCTTypeSafety (0.66.0): + - FBLazyVector (= 0.66.0) + - RCT-Folly (= 2021.06.28.00-v2) + - RCTRequired (= 0.66.0) + - React-Core (= 0.66.0) - RCTYouTube (2.0.2): - React - YoutubePlayer-in-WKWebView (~> 0.3.1) - - React (0.65.1): - - React-Core (= 0.65.1) - - React-Core/DevSupport (= 0.65.1) - - React-Core/RCTWebSocket (= 0.65.1) - - React-RCTActionSheet (= 0.65.1) - - React-RCTAnimation (= 0.65.1) - - React-RCTBlob (= 0.65.1) - - React-RCTImage (= 0.65.1) - - React-RCTLinking (= 0.65.1) - - React-RCTNetwork (= 0.65.1) - - React-RCTSettings (= 0.65.1) - - React-RCTText (= 0.65.1) - - React-RCTVibration (= 0.65.1) - - React-callinvoker (0.65.1) - - React-Core (0.65.1): + - React (0.66.0): + - React-Core (= 0.66.0) + - React-Core/DevSupport (= 0.66.0) + - React-Core/RCTWebSocket (= 0.66.0) + - React-RCTActionSheet (= 0.66.0) + - React-RCTAnimation (= 0.66.0) + - React-RCTBlob (= 0.66.0) + - React-RCTImage (= 0.66.0) + - React-RCTLinking (= 0.66.0) + - React-RCTNetwork (= 0.66.0) + - React-RCTSettings (= 0.66.0) + - React-RCTText (= 0.66.0) + - React-RCTVibration (= 0.66.0) + - React-callinvoker (0.66.0) + - React-Core (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) - - React-Core/Default (= 0.65.1) - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - RCT-Folly (= 2021.06.28.00-v2) + - React-Core/Default (= 0.66.0) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/CoreModulesHeaders (0.65.1): + - React-Core/CoreModulesHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/Default (0.65.1): + - React-Core/Default (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - RCT-Folly (= 2021.06.28.00-v2) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/DevSupport (0.65.1): + - React-Core/DevSupport (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) - - React-Core/Default (= 0.65.1) - - React-Core/RCTWebSocket (= 0.65.1) - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-jsinspector (= 0.65.1) - - React-perflogger (= 0.65.1) + - RCT-Folly (= 2021.06.28.00-v2) + - React-Core/Default (= 0.66.0) + - React-Core/RCTWebSocket (= 0.66.0) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-jsinspector (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTActionSheetHeaders (0.65.1): + - React-Core/RCTActionSheetHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTAnimationHeaders (0.65.1): + - React-Core/RCTAnimationHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTBlobHeaders (0.65.1): + - React-Core/RCTBlobHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTImageHeaders (0.65.1): + - React-Core/RCTImageHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTLinkingHeaders (0.65.1): + - React-Core/RCTLinkingHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTNetworkHeaders (0.65.1): + - React-Core/RCTNetworkHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTSettingsHeaders (0.65.1): + - React-Core/RCTSettingsHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTTextHeaders (0.65.1): + - React-Core/RCTTextHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTVibrationHeaders (0.65.1): + - React-Core/RCTVibrationHeaders (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) + - RCT-Folly (= 2021.06.28.00-v2) - React-Core/Default - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-Core/RCTWebSocket (0.65.1): + - React-Core/RCTWebSocket (0.66.0): - glog - - RCT-Folly (= 2021.04.26.00) - - React-Core/Default (= 0.65.1) - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsiexecutor (= 0.65.1) - - React-perflogger (= 0.65.1) + - RCT-Folly (= 2021.06.28.00-v2) + - React-Core/Default (= 0.66.0) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsiexecutor (= 0.66.0) + - React-perflogger (= 0.66.0) - Yoga - - React-CoreModules (0.65.1): - - FBReactNativeSpec (= 0.65.1) - - RCT-Folly (= 2021.04.26.00) - - RCTTypeSafety (= 0.65.1) - - React-Core/CoreModulesHeaders (= 0.65.1) - - React-jsi (= 0.65.1) - - React-RCTImage (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) - - React-cxxreact (0.65.1): - - boost-for-react-native (= 1.63.0) + - React-CoreModules (0.66.0): + - FBReactNativeSpec (= 0.66.0) + - RCT-Folly (= 2021.06.28.00-v2) + - RCTTypeSafety (= 0.66.0) + - React-Core/CoreModulesHeaders (= 0.66.0) + - React-jsi (= 0.66.0) + - React-RCTImage (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) + - React-cxxreact (0.66.0): + - boost (= 1.76.0) - DoubleConversion - glog - - RCT-Folly (= 2021.04.26.00) - - React-callinvoker (= 0.65.1) - - React-jsi (= 0.65.1) - - React-jsinspector (= 0.65.1) - - React-perflogger (= 0.65.1) - - React-runtimeexecutor (= 0.65.1) - - React-jsi (0.65.1): - - boost-for-react-native (= 1.63.0) + - RCT-Folly (= 2021.06.28.00-v2) + - React-callinvoker (= 0.66.0) + - React-jsi (= 0.66.0) + - React-jsinspector (= 0.66.0) + - React-logger (= 0.66.0) + - React-perflogger (= 0.66.0) + - React-runtimeexecutor (= 0.66.0) + - React-jsi (0.66.0): + - boost (= 1.76.0) - DoubleConversion - glog - - RCT-Folly (= 2021.04.26.00) - - React-jsi/Default (= 0.65.1) - - React-jsi/Default (0.65.1): - - boost-for-react-native (= 1.63.0) + - RCT-Folly (= 2021.06.28.00-v2) + - React-jsi/Default (= 0.66.0) + - React-jsi/Default (0.66.0): + - boost (= 1.76.0) - DoubleConversion - glog - - RCT-Folly (= 2021.04.26.00) - - React-jsiexecutor (0.65.1): + - RCT-Folly (= 2021.06.28.00-v2) + - React-jsiexecutor (0.66.0): - DoubleConversion - glog - - RCT-Folly (= 2021.04.26.00) - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-perflogger (= 0.65.1) - - React-jsinspector (0.65.1) + - RCT-Folly (= 2021.06.28.00-v2) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-perflogger (= 0.66.0) + - React-jsinspector (0.66.0) + - React-logger (0.66.0): + - glog - react-native-cameraroll (4.0.4): - React-Core - react-native-cookies (6.0.11): - React-Core - - react-native-document-picker (6.0.4): + - react-native-document-picker (6.1.0): - React-Core - react-native-emm (1.1.5): - React-Core @@ -273,70 +276,71 @@ PODS: - React-Core - react-native-webview (11.14.0): - React-Core - - React-perflogger (0.65.1) - - React-RCTActionSheet (0.65.1): - - React-Core/RCTActionSheetHeaders (= 0.65.1) - - React-RCTAnimation (0.65.1): - - FBReactNativeSpec (= 0.65.1) - - RCT-Folly (= 2021.04.26.00) - - RCTTypeSafety (= 0.65.1) - - React-Core/RCTAnimationHeaders (= 0.65.1) - - React-jsi (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) - - React-RCTBlob (0.65.1): - - FBReactNativeSpec (= 0.65.1) - - RCT-Folly (= 2021.04.26.00) - - React-Core/RCTBlobHeaders (= 0.65.1) - - React-Core/RCTWebSocket (= 0.65.1) - - React-jsi (= 0.65.1) - - React-RCTNetwork (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) - - React-RCTImage (0.65.1): - - FBReactNativeSpec (= 0.65.1) - - RCT-Folly (= 2021.04.26.00) - - RCTTypeSafety (= 0.65.1) - - React-Core/RCTImageHeaders (= 0.65.1) - - React-jsi (= 0.65.1) - - React-RCTNetwork (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) - - React-RCTLinking (0.65.1): - - FBReactNativeSpec (= 0.65.1) - - React-Core/RCTLinkingHeaders (= 0.65.1) - - React-jsi (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) - - React-RCTNetwork (0.65.1): - - FBReactNativeSpec (= 0.65.1) - - RCT-Folly (= 2021.04.26.00) - - RCTTypeSafety (= 0.65.1) - - React-Core/RCTNetworkHeaders (= 0.65.1) - - React-jsi (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) - - React-RCTSettings (0.65.1): - - FBReactNativeSpec (= 0.65.1) - - RCT-Folly (= 2021.04.26.00) - - RCTTypeSafety (= 0.65.1) - - React-Core/RCTSettingsHeaders (= 0.65.1) - - React-jsi (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) - - React-RCTText (0.65.1): - - React-Core/RCTTextHeaders (= 0.65.1) - - React-RCTVibration (0.65.1): - - FBReactNativeSpec (= 0.65.1) - - RCT-Folly (= 2021.04.26.00) - - React-Core/RCTVibrationHeaders (= 0.65.1) - - React-jsi (= 0.65.1) - - ReactCommon/turbomodule/core (= 0.65.1) - - React-runtimeexecutor (0.65.1): - - React-jsi (= 0.65.1) - - ReactCommon/turbomodule/core (0.65.1): + - React-perflogger (0.66.0) + - React-RCTActionSheet (0.66.0): + - React-Core/RCTActionSheetHeaders (= 0.66.0) + - React-RCTAnimation (0.66.0): + - FBReactNativeSpec (= 0.66.0) + - RCT-Folly (= 2021.06.28.00-v2) + - RCTTypeSafety (= 0.66.0) + - React-Core/RCTAnimationHeaders (= 0.66.0) + - React-jsi (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) + - React-RCTBlob (0.66.0): + - FBReactNativeSpec (= 0.66.0) + - RCT-Folly (= 2021.06.28.00-v2) + - React-Core/RCTBlobHeaders (= 0.66.0) + - React-Core/RCTWebSocket (= 0.66.0) + - React-jsi (= 0.66.0) + - React-RCTNetwork (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) + - React-RCTImage (0.66.0): + - FBReactNativeSpec (= 0.66.0) + - RCT-Folly (= 2021.06.28.00-v2) + - RCTTypeSafety (= 0.66.0) + - React-Core/RCTImageHeaders (= 0.66.0) + - React-jsi (= 0.66.0) + - React-RCTNetwork (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) + - React-RCTLinking (0.66.0): + - FBReactNativeSpec (= 0.66.0) + - React-Core/RCTLinkingHeaders (= 0.66.0) + - React-jsi (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) + - React-RCTNetwork (0.66.0): + - FBReactNativeSpec (= 0.66.0) + - RCT-Folly (= 2021.06.28.00-v2) + - RCTTypeSafety (= 0.66.0) + - React-Core/RCTNetworkHeaders (= 0.66.0) + - React-jsi (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) + - React-RCTSettings (0.66.0): + - FBReactNativeSpec (= 0.66.0) + - RCT-Folly (= 2021.06.28.00-v2) + - RCTTypeSafety (= 0.66.0) + - React-Core/RCTSettingsHeaders (= 0.66.0) + - React-jsi (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) + - React-RCTText (0.66.0): + - React-Core/RCTTextHeaders (= 0.66.0) + - React-RCTVibration (0.66.0): + - FBReactNativeSpec (= 0.66.0) + - RCT-Folly (= 2021.06.28.00-v2) + - React-Core/RCTVibrationHeaders (= 0.66.0) + - React-jsi (= 0.66.0) + - ReactCommon/turbomodule/core (= 0.66.0) + - React-runtimeexecutor (0.66.0): + - React-jsi (= 0.66.0) + - ReactCommon/turbomodule/core (0.66.0): - DoubleConversion - glog - - RCT-Folly (= 2021.04.26.00) - - React-callinvoker (= 0.65.1) - - React-Core (= 0.65.1) - - React-cxxreact (= 0.65.1) - - React-jsi (= 0.65.1) - - React-perflogger (= 0.65.1) + - RCT-Folly (= 2021.06.28.00-v2) + - React-callinvoker (= 0.66.0) + - React-Core (= 0.66.0) + - React-cxxreact (= 0.66.0) + - React-jsi (= 0.66.0) + - React-logger (= 0.66.0) + - React-perflogger (= 0.66.0) - ReactNativeART (1.2.0): - React - ReactNativeExceptionHandler (2.10.10): @@ -376,7 +380,7 @@ PODS: - React-Core - RNGestureHandler (1.10.3): - React-Core - - RNKeychain (7.0.0): + - RNKeychain (8.0.0): - React-Core - RNLocalize (2.1.5): - React-Core @@ -384,7 +388,7 @@ PODS: - React-Core - RNReactNativeHapticFeedback (1.11.0): - React-Core - - RNReanimated (2.2.2): + - RNReanimated (2.3.0-beta.2): - DoubleConversion - FBLazyVector - FBReactNativeSpec @@ -458,6 +462,7 @@ PODS: - YoutubePlayer-in-WKWebView (0.3.5) DEPENDENCIES: + - boost (from `../node_modules/react-native/third-party-podspecs/boost.podspec`) - BVLinearGradient (from `../node_modules/react-native-linear-gradient`) - DoubleConversion (from `../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec`) - EXConstants (from `../node_modules/expo-constants/ios`) @@ -483,6 +488,7 @@ DEPENDENCIES: - React-jsi (from `../node_modules/react-native/ReactCommon/jsi`) - React-jsiexecutor (from `../node_modules/react-native/ReactCommon/jsiexecutor`) - React-jsinspector (from `../node_modules/react-native/ReactCommon/jsinspector`) + - React-logger (from `../node_modules/react-native/ReactCommon/logger`) - "react-native-cameraroll (from `../node_modules/@react-native-community/cameraroll`)" - "react-native-cookies (from `../node_modules/@react-native-cookies/cookies`)" - react-native-document-picker (from `../node_modules/react-native-document-picker`) @@ -546,7 +552,6 @@ DEPENDENCIES: SPEC REPOS: trunk: - Alamofire - - boost-for-react-native - fmt - libwebp - Rudder @@ -559,6 +564,8 @@ SPEC REPOS: - YoutubePlayer-in-WKWebView EXTERNAL SOURCES: + boost: + :podspec: "../node_modules/react-native/third-party-podspecs/boost.podspec" BVLinearGradient: :path: "../node_modules/react-native-linear-gradient" DoubleConversion: @@ -605,6 +612,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/ReactCommon/jsiexecutor" React-jsinspector: :path: "../node_modules/react-native/ReactCommon/jsinspector" + React-logger: + :path: "../node_modules/react-native/ReactCommon/logger" react-native-cameraroll: :path: "../node_modules/@react-native-community/cameraroll" react-native-cookies: @@ -728,35 +737,36 @@ CHECKOUT OPTIONS: SPEC CHECKSUMS: Alamofire: f3b09a368f1582ab751b3fff5460276e0d2cf5c9 - boost-for-react-native: 39c7adb57c4e60d6c5479dd8623128eb5b3f0f2c + boost: a7c83b31436843459a1961bfd74b96033dc77234 BVLinearGradient: e3aad03778a456d77928f594a649e96995f1c872 DoubleConversion: 831926d9b8bf8166fd87886c4abab286c2422662 EXConstants: 4cb52b6d8f636c767104a44bf7db3873e9c01a6f EXFileSystem: 0a04aba8da751b9ac954065911bcf166503f8267 ExpoModulesCore: 2734852616127a6c1fc23012197890a6f3763dc7 - FBLazyVector: 33c82491102f20ecddb6c6a2c273696ace3191e0 - FBReactNativeSpec: df8f81d2a7541ee6755a047b398a5cb5a72acd0e + FBLazyVector: 6816ca39e1cc8beffd2a96783f518296789d1c48 + FBReactNativeSpec: 3b1e86618e902743fde35b40cf9ebd100fd655b7 fmt: ff9d55029c625d3757ed641535fd4a75fedc7ce9 glog: 5337263514dd6f09803962437687240c5dc39aa4 jail-monkey: 07b83767601a373db876e939b8dbf3f5eb15f073 libwebp: e90b9c01d99205d03b6bb8f2c8c415e5a4ef66f0 Permission-Camera: ac603073e4128e51e6ca3c39129778f05b4082fa Permission-PhotoLibrary: 0748c1a490fad126dfe36dbea8234dedfe59cc27 - RCT-Folly: 0dd9e1eb86348ecab5ba76f910b56f4b5fef3c46 - RCTRequired: 6cf071ab2adfd769014b3d94373744ee6e789530 - RCTTypeSafety: b829c59453478bb5b02487b8de3336386ab93ab1 + RCT-Folly: a21c126816d8025b547704b777a2ba552f3d9fa9 + RCTRequired: e4a18a90004e0ed97bba9081099104fd0f658dc9 + RCTTypeSafety: 8a3c31d38de58e1a6a7df6e4e643644a60b00e22 RCTYouTube: a8bb45705622a6fc9decf64be04128d3658ed411 - React: 29d8a785041b96a2754c25cc16ddea57b7a618ce - React-callinvoker: 2857b61132bd7878b736e282581f4b42fd93002b - React-Core: 001e21bad5ca41e59e9d90df5c0b53da04c3ce8e - React-CoreModules: 0a0410ab296a62ab38e2f8d321e822d1fcc2fe49 - React-cxxreact: 8d904967134ae8ff0119c5357c42eaae976806f8 - React-jsi: 12913c841713a15f64eabf5c9ad98592c0ec5940 - React-jsiexecutor: 43f2542aed3c26e42175b339f8d37fe3dd683765 - React-jsinspector: 41e58e5b8e3e0bf061fdf725b03f2144014a8fb0 + React: 2b1d0dc3c23e01b754588a74a5b265282d9eb61e + React-callinvoker: 57c195e780695285fa56e61efdbc0ca0e9204484 + React-Core: 45e4b3c57b0b5fdbb24bc6a63a964870c0405955 + React-CoreModules: d7bb1ae3436eddd85a7eb6d5e928f8c1655d87db + React-cxxreact: 60c850e9997b21ee302757c36a460efc944183e7 + React-jsi: 38d68cb1b53843703100830d530342b32f8e0878 + React-jsiexecutor: 6a05173dc0142abc582bd4edd2d23146b8cc218a + React-jsinspector: be95ad424ba9f7b817aff22732eb9b1b810a000a + React-logger: 9a9cd87d4ea681ae929b32ef580638ff1b50fb24 react-native-cameraroll: 88f4e62d9ecd0e1f253abe4f685474f2ea14bfa2 react-native-cookies: cd92f3824ed1e32a20802e8185101e14bb5b76da - react-native-document-picker: a7950caaee8587002c9acbc7fe497a342094d93a + react-native-document-picker: 68eb4eb6ce9e4577444f62ac88b9ab5dc3c04348 react-native-emm: 7b22d6d2f7f68d218e5e2a6149084f0e6bbc4f5e react-native-hw-keyboard-event: b517cefb8d5c659a38049c582de85ff43337dc53 react-native-netinfo: 92e6e4476eb8bf6fc2d7c0a6ca0a1406f663d73a @@ -766,18 +776,18 @@ SPEC CHECKSUMS: react-native-safe-area-context: 584dc04881deb49474363f3be89e4ca0e854c057 react-native-video: 0bb76b6d6b77da3009611586c7dbf817b947f30e react-native-webview: d70bc760daaa0e2667dec569b93014882565819c - React-perflogger: fd28ee1f2b5b150b00043f0301d96bd417fdc339 - React-RCTActionSheet: 7f3fa0855c346aa5d7c60f9ced16e067db6d29fa - React-RCTAnimation: 2119a18ee26159004b001bc56404ca5dbaae6077 - React-RCTBlob: a493cc306deeaba0c0efa8ecec2da154afd3a798 - React-RCTImage: 54999ddc896b7db6650af5760607aaebdf30425c - React-RCTLinking: 7fb3fa6397d3700c69c3d361870a299f04f1a2e6 - React-RCTNetwork: 329ee4f75bd2deb8cf6c4b14231b5bb272cbd9af - React-RCTSettings: 1a659d58e45719bc77c280dbebce6a5a5a2733f5 - React-RCTText: e12d7aae2a038be9ae72815436677a7c6549dd26 - React-RCTVibration: 92d41c2442e5328cc4d342cd7f78e5876b68bae5 - React-runtimeexecutor: 85187f19dd9c47a7c102f9994f9d14e4dc2110de - ReactCommon: eafed38eec7b591c31751bfa7494801618460459 + React-perflogger: 1f554c2b684e2f484f9edcdfdaeedab039fbaca8 + React-RCTActionSheet: 610d5a5d71ab4808734782c8bca6a12ec3563672 + React-RCTAnimation: ec6ed97370ace32724c253f29f0586cafcab8126 + React-RCTBlob: b3270d498ff240f49c50e1bc950b6e5fd48886ba + React-RCTImage: 23d5e26669b31230bea3fd99eb703af699e5d61a + React-RCTLinking: edaaee9dee82b79e90e7b903d8913fa72284fbba + React-RCTNetwork: e8825053dd1b5c2a0e1aa3cf1127750b624f90c0 + React-RCTSettings: 40d7ae987031c5dc561d11cd3a15cc1245a11d42 + React-RCTText: 6e104479d4f0bb593b4cf90b6fc6e5390c12ccde + React-RCTVibration: 53b92d54b923283638cb0186da7a5c2d2b70a49b + React-runtimeexecutor: 4bb657a97aa74568d9ed634c8bd478299bb8a3a6 + ReactCommon: eb059748e842a1a86025ebbd4ac9d99e74492f88 ReactNativeART: 78edc68dd4a1e675338cd0cd113319cf3a65f2ab ReactNativeExceptionHandler: b11ff67c78802b2f62eed0e10e75cb1ef7947c60 ReactNativeKeyboardTrackingView: 02137fac3b2ebd330d74fa54ead48b14750a2306 @@ -792,11 +802,11 @@ SPEC CHECKSUMS: RNFastImage: 1f2cab428712a4baaf78d6169eaec7f622556dd7 RNFileViewer: 83cc066ad795b1f986791d03b56fe0ee14b6a69f RNGestureHandler: a479ebd5ed4221a810967000735517df0d2db211 - RNKeychain: f75b8c8b2f17d3b2aa1f25b4a0ac5b83d947ff8f + RNKeychain: 4f63aada75ebafd26f4bc2c670199461eab85d94 RNLocalize: 74b82db20cc3895ccc25af992c644879bcec2815 RNPermissions: 7043bacbf928eae25808275cfe73799b8f618911 RNReactNativeHapticFeedback: 653a8c126a0f5e88ce15ffe280b3ff37e1fbb285 - RNReanimated: ad24db8af24e3fe1b5c462785bc3db8d5baae2ee + RNReanimated: 0a220d11e97e5de1c552e943a9a3f89b06c2cbf2 RNRudderSdk: 9aa881c2bf754dc3b05e392340a5e3663a970f0a RNScreens: 6e1ea5787989f92b0671049b808aef64fa1ef98c RNSentry: 49abc89b0190b4c8afe0fa5d065f98e36cb53233 @@ -817,9 +827,9 @@ SPEC CHECKSUMS: UMTaskManagerInterface: 2be431101b73604e64fbfffcf759336f9d8fccbb WatermelonDB: 577c61fceff16e9f9103b59d14aee4850c0307b6 XCDYouTubeKit: 79baadb0560673a67c771eba45f83e353fd12c1f - Yoga: aa0cb45287ebe1004c02a13f279c55a95f1572f4 + Yoga: c11abbf5809216c91fcd62f5571078b83d9b6720 YoutubePlayer-in-WKWebView: cfbf46da51d7370662a695a8f351e5fa1d3e1008 -PODFILE CHECKSUM: 38d317161f4e78b5d6ad47355bc48f6e67674941 +PODFILE CHECKSUM: ceecd0edb830b30e3ba9859572c6e56518bac043 COCOAPODS: 1.10.2 diff --git a/ios/bundleReactNative.sh b/ios/bundleReactNative.sh index 15a76640dc..5c60ae7e74 100755 --- a/ios/bundleReactNative.sh +++ b/ios/bundleReactNative.sh @@ -1,5 +1,7 @@ #!/bin/sh +[[ -s $HOME/.nvm/nvm.sh ]] && . $HOME/.nvm/nvm.sh + export NODE_OPTIONS=--max_old_space_size=12000 export BUNDLE_COMMAND="ram-bundle" if [[ "${SENTRY_ENABLED}" = "true" ]]; then diff --git a/package-lock.json b/package-lock.json index b6e8718ed5..f87ffb48dd 100644 --- a/package-lock.json +++ b/package-lock.json @@ -46,12 +46,12 @@ "prop-types": "15.7.2", "react": "17.0.2", "react-intl": "5.20.12", - "react-native": "0.65.1", + "react-native": "0.66.0", "react-native-android-open-settings": "1.3.0", "react-native-button": "3.0.1", "react-native-calendars": "1.1266.0", "react-native-device-info": "8.3.3", - "react-native-document-picker": "6.0.4", + "react-native-document-picker": "6.1.0", "react-native-elements": "3.4.2", "react-native-exception-handler": "2.10.10", "react-native-fast-image": "8.5.11", @@ -61,7 +61,7 @@ "react-native-hw-keyboard-event": "0.0.4", "react-native-keyboard-aware-scroll-view": "0.9.4", "react-native-keyboard-tracking-view": "5.7.0", - "react-native-keychain": "7.0.0", + "react-native-keychain": "8.0.0", "react-native-linear-gradient": "2.5.6", "react-native-localize": "2.1.5", "react-native-navigation": "7.21.0", @@ -69,7 +69,7 @@ "react-native-notifications": "4.1.2", "react-native-paper": "4.9.2", "react-native-permissions": "3.0.5", - "react-native-reanimated": "2.2.2", + "react-native-reanimated": "2.3.0-beta.2", "react-native-redash": "16.2.2", "react-native-safe-area-context": "3.3.2", "react-native-screens": "3.8.0", @@ -108,7 +108,7 @@ "@types/jest": "27.0.2", "@types/react": "17.0.26", "@types/react-intl": "3.0.0", - "@types/react-native": "0.65.2", + "@types/react-native": "0.65.3", "@types/react-native-button": "3.0.1", "@types/react-native-share": "3.3.3", "@types/react-native-video": "5.0.9", @@ -143,7 +143,6 @@ "mock-async-storage": "2.2.0", "nock": "13.1.3", "patch-package": "6.4.7", - "react-native-codegen": "0.0.8", "react-native-dev-menu": "4.0.2", "react-native-dotenv": "3.2.0", "react-native-storybook-loader": "2.0.4", @@ -596,7 +595,6 @@ "version": "7.15.4", "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.15.4.tgz", "integrity": "sha512-eBnpsl9tlhPhpI10kU06JHnrYXwg3+V6CaP2idsCXNef0aeslpqyITXQ74Vfk5uHgY7IG7XP0yIH8b42KSzHog==", - "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.14.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.15.4", @@ -644,7 +642,6 @@ "version": "7.15.4", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.15.4.tgz", "integrity": "sha512-M682XWrrLNk3chXCjoPUQWOyYsB93B9z3mRyjtqqYJWDf2mfCdIYgDrA11cgNVhAQieaq6F2fn2f3wI0U4aTjA==", - "dev": true, "dependencies": { "@babel/helper-create-class-features-plugin": "^7.15.4", "@babel/helper-plugin-utils": "^7.14.5", @@ -847,7 +844,6 @@ "version": "7.15.4", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.15.4.tgz", "integrity": "sha512-X0UTixkLf0PCCffxgu5/1RQyGGbgZuKoI+vXP4iSbJSYwPb7hu06omsFGBvQ9lJEvwgrxHdS8B5nbfcd8GyUNA==", - "dev": true, "dependencies": { "@babel/helper-annotate-as-pure": "^7.15.4", "@babel/helper-create-class-features-plugin": "^7.15.4", @@ -914,7 +910,6 @@ "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.14.5" }, @@ -1097,7 +1092,6 @@ "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.14.5" }, @@ -1744,7 +1738,6 @@ "version": "7.15.6", "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.15.6.tgz", "integrity": "sha512-L+6jcGn7EWu7zqaO2uoTDjjMBW+88FXzV8KvrBl2z6MtRNxlsmUNRlZPaNNPUTgqhyC5DHNFk/2Jmra+ublZWw==", - "dev": true, "dependencies": { "@babel/compat-data": "^7.15.0", "@babel/helper-compilation-targets": "^7.15.4", @@ -1831,7 +1824,6 @@ "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true, "bin": { "semver": "bin/semver.js" } @@ -1840,7 +1832,6 @@ "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.14.5.tgz", "integrity": "sha512-pP5QEb4qRUSVGzzKx9xqRuHUrM/jEzMqdrZpdMA+oUCRgd5zM1qGr5y5+ZgAL/1tVv1H0dyk5t4SKJntqyiVtg==", - "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.14.5", "@babel/helper-validator-option": "^7.14.5", @@ -1872,7 +1863,6 @@ "version": "7.15.0", "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.15.0.tgz", "integrity": "sha512-lt0Y/8V3y06Wq/8H/u0WakrqciZ7Fz7mwPDHWUJAXlABL5hiUG42BNlRXiELNjeWjO5rWmnNKlx+yzJvxezHow==", - "dev": true, "dependencies": { "@babel/helper-plugin-utils": "^7.14.5", "@babel/helper-validator-option": "^7.14.5", @@ -4507,7 +4497,8 @@ "node_modules/@react-native/polyfills": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@react-native/polyfills/-/polyfills-1.0.0.tgz", - "integrity": "sha512-0jbp4RxjYopTsIdLl+/Fy2TiwVYHy4mgeu07DG4b/LyM0OS/+lPP5c9sbnt/AMlnF6qz2JRZpPpGw1eMNS6A4w==" + "integrity": "sha512-0jbp4RxjYopTsIdLl+/Fy2TiwVYHy4mgeu07DG4b/LyM0OS/+lPP5c9sbnt/AMlnF6qz2JRZpPpGw1eMNS6A4w==", + "peer": true }, "node_modules/@react-navigation/bottom-tabs": { "version": "6.0.7", @@ -5060,9 +5051,9 @@ } }, "node_modules/@types/react-native": { - "version": "0.65.2", - "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.65.2.tgz", - "integrity": "sha512-UjDkN6rvgZkvVl2726bCPjIupyBUt40Uv+FhtDPwGj6n7ShiHggAfv6Xl7Pzbc36L5qUIWSmBrrFBLJXZ4MEig==", + "version": "0.65.3", + "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.65.3.tgz", + "integrity": "sha512-23YX98rFNR43f2rvEV1cQ8VAFSj9ylXPqmzQMotC45hsK/SCNtLwJx1mgZ5jkyqs9TLjspzU0jszr58+Z9seQQ==", "dependencies": { "@types/react": "*" } @@ -6030,7 +6021,6 @@ "version": "0.14.2", "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.14.2.tgz", "integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==", - "dev": true, "dependencies": { "tslib": "^2.0.1" }, @@ -6146,7 +6136,6 @@ "version": "7.0.0-bridge.0", "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", - "dev": true, "peerDependencies": { "@babel/core": "^7.0.0-0" } @@ -7523,7 +7512,6 @@ "version": "1.4.0", "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "dev": true, "engines": { "node": ">=0.1.90" } @@ -11010,7 +10998,6 @@ "version": "0.90.0", "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.90.0.tgz", "integrity": "sha512-a6Ohgdzvf2e1/F8sI98qcPLtDIjLayRkRgAwrWHzHFMHCNq92jyRbRG0w5fGjs6xdI320Ud39HkI0Dk5OPs17g==", - "dev": true, "engines": { "node": ">=0.4.0" } @@ -11687,9 +11674,9 @@ } }, "node_modules/hermes-engine": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.8.1.tgz", - "integrity": "sha512-as9Iccj/qrqqtDmfYUHbOIjt5xsQbUB6pjNIW3i1+RVr+pCAdz5S8/Jry778mz3rJWplYzHWdR1u1xQSYfBRYw==" + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.9.0.tgz", + "integrity": "sha512-r7U+Y4P2Qg/igFVZN+DpT7JFfXUn1MM4dFne8aW+cCrF6RRymof+VqrUHs1kl07j8h8V2CNesU19RKgWbr3qPw==" }, "node_modules/hermes-parser": { "version": "0.4.7", @@ -14749,7 +14736,6 @@ "version": "0.11.0", "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.11.0.tgz", "integrity": "sha512-SdRK2C7jjs4k/kT2mwtO07KJN9RnjxtKn03d9JVj6c3j9WwaLcFYsICYDnLAzY0hp+wG2nxl+Cm2jWLiNVYb8g==", - "dev": true, "dependencies": { "@babel/core": "^7.1.6", "@babel/parser": "^7.1.6", @@ -14782,7 +14768,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, "dependencies": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", @@ -14803,7 +14788,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "dependencies": { "is-extendable": "^0.1.0" }, @@ -14815,7 +14799,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, "dependencies": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", @@ -14830,7 +14813,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "dependencies": { "is-extendable": "^0.1.0" }, @@ -14842,7 +14824,6 @@ "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -14851,7 +14832,6 @@ "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, "dependencies": { "kind-of": "^3.0.2" }, @@ -14863,7 +14843,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "dependencies": { "is-buffer": "^1.1.5" }, @@ -14875,7 +14854,6 @@ "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, "dependencies": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -14899,7 +14877,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, "dependencies": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" @@ -14912,7 +14889,6 @@ "version": "2.4.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, "dependencies": { "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", @@ -17621,8 +17597,7 @@ "node_modules/neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" }, "node_modules/nice-try": { "version": "1.0.5", @@ -17656,7 +17631,6 @@ "version": "0.1.17", "resolved": "https://registry.npmjs.org/node-dir/-/node-dir-0.1.17.tgz", "integrity": "sha1-X1Zl2TNRM1yqvvjxxVRRbPXx5OU=", - "dev": true, "dependencies": { "minimatch": "^3.0.2" }, @@ -19329,9 +19303,9 @@ "integrity": "sha512-txfpPCQYiazVdcbMRhatqWKcAxJweUu2wDXvts5/7Wyp6+Y9cHojqXHsLPEckzutfHlxZhG8Oiundbmp8Fd6eQ==" }, "node_modules/react-native": { - "version": "0.65.1", - "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.65.1.tgz", - "integrity": "sha512-0UOVSnlssweQZjuaUtzViCifE/4tXm8oRbxwakopc8GavPu9vLulde145GOw6QVYiOy4iL50f+2XXRdX9NmMeQ==", + "version": "0.66.0", + "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.66.0.tgz", + "integrity": "sha512-m26TKwzsfHVdZ1hDG+7mZ4M4ftxFFZrhtiT0OXuwfBzmNtB3xhsJtYszPeizw33c9YNp8rvehKT3c4ldDCW6kA==", "dependencies": { "@jest/create-cache-key-function": "^27.0.1", "@react-native-community/cli": "^6.0.0", @@ -19339,12 +19313,12 @@ "@react-native-community/cli-platform-ios": "^6.0.0", "@react-native/assets": "1.0.0", "@react-native/normalize-color": "1.0.0", - "@react-native/polyfills": "1.0.0", + "@react-native/polyfills": "2.0.0", "abort-controller": "^3.0.0", "anser": "^1.4.9", "base64-js": "^1.1.2", "event-target-shim": "^5.0.1", - "hermes-engine": "~0.8.1", + "hermes-engine": "~0.9.0", "invariant": "^2.2.4", "jsc-android": "^250230.2.1", "metro-babel-register": "0.66.2", @@ -19355,7 +19329,8 @@ "pretty-format": "^26.5.2", "promise": "^8.0.3", "prop-types": "^15.7.2", - "react-devtools-core": "^4.6.0", + "react-devtools-core": "^4.13.0", + "react-native-codegen": "^0.0.7", "react-refresh": "^0.4.0", "regenerator-runtime": "^0.13.2", "scheduler": "^0.20.2", @@ -19408,10 +19383,9 @@ } }, "node_modules/react-native-codegen": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/react-native-codegen/-/react-native-codegen-0.0.8.tgz", - "integrity": "sha512-k/944+0XD+8l7zDaiKfYabyEKmAmyZgS1mj+4LcSRPyHnrjgCHKrh/Y6jM6kucQ6xU1+1uyMmF/dSkikxK8i+Q==", - "dev": true, + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/react-native-codegen/-/react-native-codegen-0.0.7.tgz", + "integrity": "sha512-dwNgR8zJ3ALr480QnAmpTiqvFo+rDtq6V5oCggKhYFlRjzOmVSFn3YD41u8ltvKS5G2nQ8gCs2vReFFnRGLYng==", "dependencies": { "flow-parser": "^0.121.0", "jscodeshift": "^0.11.0", @@ -19422,7 +19396,6 @@ "version": "0.121.0", "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.121.0.tgz", "integrity": "sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg==", - "dev": true, "engines": { "node": ">=0.4.0" } @@ -19459,9 +19432,9 @@ } }, "node_modules/react-native-document-picker": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/react-native-document-picker/-/react-native-document-picker-6.0.4.tgz", - "integrity": "sha512-qFKf76M1VyiVqZscqND8wDcALfHG0BI77mJ4CzEdANqLiJUbwie7XOKtQlw5oRSAjLPgg9NjXnjbOFY3OmkIXQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/react-native-document-picker/-/react-native-document-picker-6.1.0.tgz", + "integrity": "sha512-fbSUMXbJNBhcb9ZCffsNfGvZ2eG2H3sKRzU9fRa82o2doZACN3tFmhxhdz/Xr0z2b/Ux1JDMetTPhllCtjEZ8w==", "dependencies": { "invariant": "^2.2.4" }, @@ -19584,9 +19557,9 @@ } }, "node_modules/react-native-keychain": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/react-native-keychain/-/react-native-keychain-7.0.0.tgz", - "integrity": "sha512-tH26sgW4OxB/llXmhO+DajFISEUoF1Ip2+WSDMIgCt8SP1xRE81m2qFzgIOc/7StYsUERxHhDPkxvq2H0/Goig==" + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/react-native-keychain/-/react-native-keychain-8.0.0.tgz", + "integrity": "sha512-c7Cs+YQN26UaQsRG1dmlXL7VL2ctnXwH/dl0IOMEQ7ZaL2NdN313YSAI8ZEZZjrVhNmPsyWEuvTFqWrdpItqQg==" }, "node_modules/react-native-linear-gradient": { "version": "2.5.6", @@ -19710,13 +19683,15 @@ } }, "node_modules/react-native-reanimated": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-2.2.2.tgz", - "integrity": "sha512-Lfv4ogbNLU9x3DqhXUFza9pnzyTvPrw5xGC1wWA6aGXqZgyaikNLgC5dNWzxVbfEwRdOuLPFsai3LAcIM92TCg==", + "version": "2.3.0-beta.2", + "resolved": "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-2.3.0-beta.2.tgz", + "integrity": "sha512-J0cBgOh0O05fNtGgHgrWfKtsYtzcAIhdNju6GVbRo6mVPp1jnuNmNQ2Dd7yXAF54+waj4w4h4pfP9D5J6EixkQ==", "dependencies": { "@babel/plugin-transform-object-assign": "^7.10.4", - "fbjs": "^3.0.0", + "invariant": "^2.2.4", + "lodash.isequal": "^4.5.0", "mockdate": "^3.0.2", + "react-native-screens": "^3.4.0", "string-hash-64": "^1.0.3" }, "peerDependencies": { @@ -20185,6 +20160,12 @@ "react-native": "^0.65.0" } }, + "node_modules/react-native-windows/node_modules/hermes-engine": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.8.1.tgz", + "integrity": "sha512-as9Iccj/qrqqtDmfYUHbOIjt5xsQbUB6pjNIW3i1+RVr+pCAdz5S8/Jry778mz3rJWplYzHWdR1u1xQSYfBRYw==", + "peer": true + }, "node_modules/react-native-windows/node_modules/ws": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", @@ -20205,6 +20186,11 @@ "react-native": ">=0.60" } }, + "node_modules/react-native/node_modules/@react-native/polyfills": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@react-native/polyfills/-/polyfills-2.0.0.tgz", + "integrity": "sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ==" + }, "node_modules/react-native/node_modules/ws": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", @@ -20407,7 +20393,6 @@ "version": "0.20.5", "resolved": "https://registry.npmjs.org/recast/-/recast-0.20.5.tgz", "integrity": "sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==", - "dev": true, "dependencies": { "ast-types": "0.14.2", "esprima": "~4.0.0", @@ -20422,7 +20407,6 @@ "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true, "engines": { "node": ">=0.10.0" } @@ -25283,7 +25267,6 @@ "version": "7.15.4", "resolved": "https://registry.npmjs.org/@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining/-/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.15.4.tgz", "integrity": "sha512-eBnpsl9tlhPhpI10kU06JHnrYXwg3+V6CaP2idsCXNef0aeslpqyITXQ74Vfk5uHgY7IG7XP0yIH8b42KSzHog==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.14.5", "@babel/helper-skip-transparent-expression-wrappers": "^7.15.4", @@ -25313,7 +25296,6 @@ "version": "7.15.4", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-class-static-block/-/plugin-proposal-class-static-block-7.15.4.tgz", "integrity": "sha512-M682XWrrLNk3chXCjoPUQWOyYsB93B9z3mRyjtqqYJWDf2mfCdIYgDrA11cgNVhAQieaq6F2fn2f3wI0U4aTjA==", - "dev": true, "requires": { "@babel/helper-create-class-features-plugin": "^7.15.4", "@babel/helper-plugin-utils": "^7.14.5", @@ -25438,7 +25420,6 @@ "version": "7.15.4", "resolved": "https://registry.npmjs.org/@babel/plugin-proposal-private-property-in-object/-/plugin-proposal-private-property-in-object-7.15.4.tgz", "integrity": "sha512-X0UTixkLf0PCCffxgu5/1RQyGGbgZuKoI+vXP4iSbJSYwPb7hu06omsFGBvQ9lJEvwgrxHdS8B5nbfcd8GyUNA==", - "dev": true, "requires": { "@babel/helper-annotate-as-pure": "^7.15.4", "@babel/helper-create-class-features-plugin": "^7.15.4", @@ -25484,7 +25465,6 @@ "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-class-static-block/-/plugin-syntax-class-static-block-7.14.5.tgz", "integrity": "sha512-b+YyPmr6ldyNnM6sqYeMWE+bgJcJpO6yS4QD7ymxgH34GBPNDM/THBh8iunyvKIZztiwLH4CJZ0RxTk9emgpjw==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.14.5" } @@ -25607,7 +25587,6 @@ "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/plugin-syntax-private-property-in-object/-/plugin-syntax-private-property-in-object-7.14.5.tgz", "integrity": "sha512-0wVnp9dxJ72ZUJDV27ZfbSj6iHLoytYZmh3rFcxNnvsJF3ktkzLDZPy/mA17HGsaQT3/DQsWYX1f1QGWkCoVUg==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.14.5" } @@ -25995,7 +25974,6 @@ "version": "7.15.6", "resolved": "https://registry.npmjs.org/@babel/preset-env/-/preset-env-7.15.6.tgz", "integrity": "sha512-L+6jcGn7EWu7zqaO2uoTDjjMBW+88FXzV8KvrBl2z6MtRNxlsmUNRlZPaNNPUTgqhyC5DHNFk/2Jmra+ublZWw==", - "dev": true, "requires": { "@babel/compat-data": "^7.15.0", "@babel/helper-compilation-targets": "^7.15.4", @@ -26075,8 +26053,7 @@ "semver": { "version": "6.3.0", "resolved": "https://registry.npmjs.org/semver/-/semver-6.3.0.tgz", - "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==", - "dev": true + "integrity": "sha512-b39TBaTSfV6yBrapU89p5fKekE2m/NwnDocOVruQFS1/veMgdzuPcnOM34M6CwxW8jH/lxEa5rBoDeUwu5HHTw==" } } }, @@ -26084,7 +26061,6 @@ "version": "7.14.5", "resolved": "https://registry.npmjs.org/@babel/preset-flow/-/preset-flow-7.14.5.tgz", "integrity": "sha512-pP5QEb4qRUSVGzzKx9xqRuHUrM/jEzMqdrZpdMA+oUCRgd5zM1qGr5y5+ZgAL/1tVv1H0dyk5t4SKJntqyiVtg==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.14.5", "@babel/helper-validator-option": "^7.14.5", @@ -26107,7 +26083,6 @@ "version": "7.15.0", "resolved": "https://registry.npmjs.org/@babel/preset-typescript/-/preset-typescript-7.15.0.tgz", "integrity": "sha512-lt0Y/8V3y06Wq/8H/u0WakrqciZ7Fz7mwPDHWUJAXlABL5hiUG42BNlRXiELNjeWjO5rWmnNKlx+yzJvxezHow==", - "dev": true, "requires": { "@babel/helper-plugin-utils": "^7.14.5", "@babel/helper-validator-option": "^7.14.5", @@ -28180,7 +28155,8 @@ "@react-native/polyfills": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/@react-native/polyfills/-/polyfills-1.0.0.tgz", - "integrity": "sha512-0jbp4RxjYopTsIdLl+/Fy2TiwVYHy4mgeu07DG4b/LyM0OS/+lPP5c9sbnt/AMlnF6qz2JRZpPpGw1eMNS6A4w==" + "integrity": "sha512-0jbp4RxjYopTsIdLl+/Fy2TiwVYHy4mgeu07DG4b/LyM0OS/+lPP5c9sbnt/AMlnF6qz2JRZpPpGw1eMNS6A4w==", + "peer": true }, "@react-navigation/bottom-tabs": { "version": "6.0.7", @@ -28672,9 +28648,9 @@ } }, "@types/react-native": { - "version": "0.65.2", - "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.65.2.tgz", - "integrity": "sha512-UjDkN6rvgZkvVl2726bCPjIupyBUt40Uv+FhtDPwGj6n7ShiHggAfv6Xl7Pzbc36L5qUIWSmBrrFBLJXZ4MEig==", + "version": "0.65.3", + "resolved": "https://registry.npmjs.org/@types/react-native/-/react-native-0.65.3.tgz", + "integrity": "sha512-23YX98rFNR43f2rvEV1cQ8VAFSj9ylXPqmzQMotC45hsK/SCNtLwJx1mgZ5jkyqs9TLjspzU0jszr58+Z9seQQ==", "requires": { "@types/react": "*" } @@ -29473,7 +29449,6 @@ "version": "0.14.2", "resolved": "https://registry.npmjs.org/ast-types/-/ast-types-0.14.2.tgz", "integrity": "sha512-O0yuUDnZeQDL+ncNGlJ78BiO4jnYI3bvMsD5prT0/nsgijG/LpNBIr63gTjVTNsiGkgQhiyCShTgxt8oXOrklA==", - "dev": true, "requires": { "tslib": "^2.0.1" } @@ -29561,7 +29536,6 @@ "version": "7.0.0-bridge.0", "resolved": "https://registry.npmjs.org/babel-core/-/babel-core-7.0.0-bridge.0.tgz", "integrity": "sha512-poPX9mZH/5CSanm50Q+1toVci6pv5KSRv/5TWCwtzQS5XEwn40BcCrgIeMFWP9CKKIniKXNxoIOnOq4VVlGXhg==", - "dev": true, "requires": {} }, "babel-eslint": { @@ -30667,8 +30641,7 @@ "colors": { "version": "1.4.0", "resolved": "https://registry.npmjs.org/colors/-/colors-1.4.0.tgz", - "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==", - "dev": true + "integrity": "sha512-a+UqTh4kgZg/SlGvfbzDHpgRu7AAQOmmqRHJnxhRZICKFUT91brVhNNt58CMWU9PsBbv3PDCZUHbVxuDiH2mtA==" }, "combined-stream": { "version": "1.0.8", @@ -33448,8 +33421,7 @@ "flow-parser": { "version": "0.90.0", "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.90.0.tgz", - "integrity": "sha512-a6Ohgdzvf2e1/F8sI98qcPLtDIjLayRkRgAwrWHzHFMHCNq92jyRbRG0w5fGjs6xdI320Ud39HkI0Dk5OPs17g==", - "dev": true + "integrity": "sha512-a6Ohgdzvf2e1/F8sI98qcPLtDIjLayRkRgAwrWHzHFMHCNq92jyRbRG0w5fGjs6xdI320Ud39HkI0Dk5OPs17g==" }, "flush-write-stream": { "version": "1.1.1", @@ -33958,9 +33930,9 @@ "peer": true }, "hermes-engine": { - "version": "0.8.1", - "resolved": "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.8.1.tgz", - "integrity": "sha512-as9Iccj/qrqqtDmfYUHbOIjt5xsQbUB6pjNIW3i1+RVr+pCAdz5S8/Jry778mz3rJWplYzHWdR1u1xQSYfBRYw==" + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.9.0.tgz", + "integrity": "sha512-r7U+Y4P2Qg/igFVZN+DpT7JFfXUn1MM4dFne8aW+cCrF6RRymof+VqrUHs1kl07j8h8V2CNesU19RKgWbr3qPw==" }, "hermes-parser": { "version": "0.4.7", @@ -36234,7 +36206,6 @@ "version": "0.11.0", "resolved": "https://registry.npmjs.org/jscodeshift/-/jscodeshift-0.11.0.tgz", "integrity": "sha512-SdRK2C7jjs4k/kT2mwtO07KJN9RnjxtKn03d9JVj6c3j9WwaLcFYsICYDnLAzY0hp+wG2nxl+Cm2jWLiNVYb8g==", - "dev": true, "requires": { "@babel/core": "^7.1.6", "@babel/parser": "^7.1.6", @@ -36261,7 +36232,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/braces/-/braces-2.3.2.tgz", "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", - "dev": true, "requires": { "arr-flatten": "^1.1.0", "array-unique": "^0.3.2", @@ -36279,7 +36249,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -36290,7 +36259,6 @@ "version": "4.0.0", "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-4.0.0.tgz", "integrity": "sha1-1USBHUKPmOsGpj3EAtJAPDKMOPc=", - "dev": true, "requires": { "extend-shallow": "^2.0.1", "is-number": "^3.0.0", @@ -36302,7 +36270,6 @@ "version": "2.0.1", "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", "integrity": "sha1-Ua99YUrZqfYQ6huvu5idaxxWiQ8=", - "dev": true, "requires": { "is-extendable": "^0.1.0" } @@ -36312,14 +36279,12 @@ "is-extendable": { "version": "0.1.1", "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=", - "dev": true + "integrity": "sha1-YrEQ4omkcUGOPsNqYX1HLjAd/Ik=" }, "is-number": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/is-number/-/is-number-3.0.0.tgz", "integrity": "sha1-JP1iAaR4LPUFYcgQJ2r8fRLXEZU=", - "dev": true, "requires": { "kind-of": "^3.0.2" }, @@ -36328,7 +36293,6 @@ "version": "3.2.2", "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-3.2.2.tgz", "integrity": "sha1-MeohpzS6ubuw8yRm2JOupR5KPGQ=", - "dev": true, "requires": { "is-buffer": "^1.1.5" } @@ -36339,7 +36303,6 @@ "version": "3.1.10", "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-3.1.10.tgz", "integrity": "sha512-MWikgl9n9M3w+bpsY3He8L+w9eF9338xRl8IAO5viDizwSzziFEyUzo2xrrloB64ADbTf8uA8vRqqttDTOmccg==", - "dev": true, "requires": { "arr-diff": "^4.0.0", "array-unique": "^0.3.2", @@ -36360,7 +36323,6 @@ "version": "2.1.1", "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-2.1.1.tgz", "integrity": "sha1-fIDBe53+vlmeJzZ+DU3VWQFB2zg=", - "dev": true, "requires": { "is-number": "^3.0.0", "repeat-string": "^1.6.1" @@ -36370,7 +36332,6 @@ "version": "2.4.3", "resolved": "https://registry.npmjs.org/write-file-atomic/-/write-file-atomic-2.4.3.tgz", "integrity": "sha512-GaETH5wwsX+GcnzhPgKcKjJ6M2Cq3/iZp1WyY/X1CSqrW+jVNM9Y7D8EC2sM4ZG/V8wZlSniJnCKWPmBYAucRQ==", - "dev": true, "requires": { "graceful-fs": "^4.1.11", "imurmurhash": "^0.1.4", @@ -38572,8 +38533,7 @@ "neo-async": { "version": "2.6.2", "resolved": "https://registry.npmjs.org/neo-async/-/neo-async-2.6.2.tgz", - "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==", - "dev": true + "integrity": "sha512-Yd3UES5mWCSqR+qNT93S3UoYUkqAZ9lLg8a7g9rimsWmYGK8cVToA4/sF3RrshdyV3sAGMXVUmpMYOw+dLpOuw==" }, "nice-try": { "version": "1.0.5", @@ -38601,7 +38561,6 @@ "version": "0.1.17", "resolved": "https://registry.npmjs.org/node-dir/-/node-dir-0.1.17.tgz", "integrity": "sha1-X1Zl2TNRM1yqvvjxxVRRbPXx5OU=", - "dev": true, "requires": { "minimatch": "^3.0.2" } @@ -39912,9 +39871,9 @@ "integrity": "sha512-txfpPCQYiazVdcbMRhatqWKcAxJweUu2wDXvts5/7Wyp6+Y9cHojqXHsLPEckzutfHlxZhG8Oiundbmp8Fd6eQ==" }, "react-native": { - "version": "0.65.1", - "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.65.1.tgz", - "integrity": "sha512-0UOVSnlssweQZjuaUtzViCifE/4tXm8oRbxwakopc8GavPu9vLulde145GOw6QVYiOy4iL50f+2XXRdX9NmMeQ==", + "version": "0.66.0", + "resolved": "https://registry.npmjs.org/react-native/-/react-native-0.66.0.tgz", + "integrity": "sha512-m26TKwzsfHVdZ1hDG+7mZ4M4ftxFFZrhtiT0OXuwfBzmNtB3xhsJtYszPeizw33c9YNp8rvehKT3c4ldDCW6kA==", "requires": { "@jest/create-cache-key-function": "^27.0.1", "@react-native-community/cli": "^6.0.0", @@ -39922,12 +39881,12 @@ "@react-native-community/cli-platform-ios": "^6.0.0", "@react-native/assets": "1.0.0", "@react-native/normalize-color": "1.0.0", - "@react-native/polyfills": "1.0.0", + "@react-native/polyfills": "2.0.0", "abort-controller": "^3.0.0", "anser": "^1.4.9", "base64-js": "^1.1.2", "event-target-shim": "^5.0.1", - "hermes-engine": "~0.8.1", + "hermes-engine": "~0.9.0", "invariant": "^2.2.4", "jsc-android": "^250230.2.1", "metro-babel-register": "0.66.2", @@ -39938,7 +39897,8 @@ "pretty-format": "^26.5.2", "promise": "^8.0.3", "prop-types": "^15.7.2", - "react-devtools-core": "^4.6.0", + "react-devtools-core": "^4.13.0", + "react-native-codegen": "^0.0.7", "react-refresh": "^0.4.0", "regenerator-runtime": "^0.13.2", "scheduler": "^0.20.2", @@ -39948,6 +39908,11 @@ "ws": "^6.1.4" }, "dependencies": { + "@react-native/polyfills": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@react-native/polyfills/-/polyfills-2.0.0.tgz", + "integrity": "sha512-K0aGNn1TjalKj+65D7ycc1//H9roAQ51GJVk5ZJQFb2teECGmzd86bYDC0aYdbRf7gtovescq4Zt6FR0tgXiHQ==" + }, "ws": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", @@ -39987,10 +39952,9 @@ } }, "react-native-codegen": { - "version": "0.0.8", - "resolved": "https://registry.npmjs.org/react-native-codegen/-/react-native-codegen-0.0.8.tgz", - "integrity": "sha512-k/944+0XD+8l7zDaiKfYabyEKmAmyZgS1mj+4LcSRPyHnrjgCHKrh/Y6jM6kucQ6xU1+1uyMmF/dSkikxK8i+Q==", - "dev": true, + "version": "0.0.7", + "resolved": "https://registry.npmjs.org/react-native-codegen/-/react-native-codegen-0.0.7.tgz", + "integrity": "sha512-dwNgR8zJ3ALr480QnAmpTiqvFo+rDtq6V5oCggKhYFlRjzOmVSFn3YD41u8ltvKS5G2nQ8gCs2vReFFnRGLYng==", "requires": { "flow-parser": "^0.121.0", "jscodeshift": "^0.11.0", @@ -40000,8 +39964,7 @@ "flow-parser": { "version": "0.121.0", "resolved": "https://registry.npmjs.org/flow-parser/-/flow-parser-0.121.0.tgz", - "integrity": "sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg==", - "dev": true + "integrity": "sha512-1gIBiWJNR0tKUNv8gZuk7l9rVX06OuLzY9AoGio7y/JT4V1IZErEMEq2TJS+PFcw/y0RshZ1J/27VfK1UQzYVg==" } } }, @@ -40029,9 +39992,9 @@ "requires": {} }, "react-native-document-picker": { - "version": "6.0.4", - "resolved": "https://registry.npmjs.org/react-native-document-picker/-/react-native-document-picker-6.0.4.tgz", - "integrity": "sha512-qFKf76M1VyiVqZscqND8wDcALfHG0BI77mJ4CzEdANqLiJUbwie7XOKtQlw5oRSAjLPgg9NjXnjbOFY3OmkIXQ==", + "version": "6.1.0", + "resolved": "https://registry.npmjs.org/react-native-document-picker/-/react-native-document-picker-6.1.0.tgz", + "integrity": "sha512-fbSUMXbJNBhcb9ZCffsNfGvZ2eG2H3sKRzU9fRa82o2doZACN3tFmhxhdz/Xr0z2b/Ux1JDMetTPhllCtjEZ8w==", "requires": { "invariant": "^2.2.4" } @@ -40124,9 +40087,9 @@ "requires": {} }, "react-native-keychain": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/react-native-keychain/-/react-native-keychain-7.0.0.tgz", - "integrity": "sha512-tH26sgW4OxB/llXmhO+DajFISEUoF1Ip2+WSDMIgCt8SP1xRE81m2qFzgIOc/7StYsUERxHhDPkxvq2H0/Goig==" + "version": "8.0.0", + "resolved": "https://registry.npmjs.org/react-native-keychain/-/react-native-keychain-8.0.0.tgz", + "integrity": "sha512-c7Cs+YQN26UaQsRG1dmlXL7VL2ctnXwH/dl0IOMEQ7ZaL2NdN313YSAI8ZEZZjrVhNmPsyWEuvTFqWrdpItqQg==" }, "react-native-linear-gradient": { "version": "2.5.6", @@ -40215,13 +40178,15 @@ } }, "react-native-reanimated": { - "version": "2.2.2", - "resolved": "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-2.2.2.tgz", - "integrity": "sha512-Lfv4ogbNLU9x3DqhXUFza9pnzyTvPrw5xGC1wWA6aGXqZgyaikNLgC5dNWzxVbfEwRdOuLPFsai3LAcIM92TCg==", + "version": "2.3.0-beta.2", + "resolved": "https://registry.npmjs.org/react-native-reanimated/-/react-native-reanimated-2.3.0-beta.2.tgz", + "integrity": "sha512-J0cBgOh0O05fNtGgHgrWfKtsYtzcAIhdNju6GVbRo6mVPp1jnuNmNQ2Dd7yXAF54+waj4w4h4pfP9D5J6EixkQ==", "requires": { "@babel/plugin-transform-object-assign": "^7.10.4", - "fbjs": "^3.0.0", + "invariant": "^2.2.4", + "lodash.isequal": "^4.5.0", "mockdate": "^3.0.2", + "react-native-screens": "^3.4.0", "string-hash-64": "^1.0.3" } }, @@ -40585,6 +40550,12 @@ "ws": "^6.1.4" }, "dependencies": { + "hermes-engine": { + "version": "0.8.1", + "resolved": "https://registry.npmjs.org/hermes-engine/-/hermes-engine-0.8.1.tgz", + "integrity": "sha512-as9Iccj/qrqqtDmfYUHbOIjt5xsQbUB6pjNIW3i1+RVr+pCAdz5S8/Jry778mz3rJWplYzHWdR1u1xQSYfBRYw==", + "peer": true + }, "ws": { "version": "6.2.2", "resolved": "https://registry.npmjs.org/ws/-/ws-6.2.2.tgz", @@ -40762,7 +40733,6 @@ "version": "0.20.5", "resolved": "https://registry.npmjs.org/recast/-/recast-0.20.5.tgz", "integrity": "sha512-E5qICoPoNL4yU0H0NoBDntNB0Q5oMSNh9usFctYniLBluTthi3RsQVBXIJNbApOlvSwW/RGxIuokPcAc59J5fQ==", - "dev": true, "requires": { "ast-types": "0.14.2", "esprima": "~4.0.0", @@ -40773,8 +40743,7 @@ "source-map": { "version": "0.6.1", "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", - "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", - "dev": true + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==" } } }, diff --git a/package.json b/package.json index 5e505b9ba3..0251d28740 100644 --- a/package.json +++ b/package.json @@ -44,12 +44,12 @@ "prop-types": "15.7.2", "react": "17.0.2", "react-intl": "5.20.12", - "react-native": "0.65.1", + "react-native": "0.66.0", "react-native-android-open-settings": "1.3.0", "react-native-button": "3.0.1", "react-native-calendars": "1.1266.0", "react-native-device-info": "8.3.3", - "react-native-document-picker": "6.0.4", + "react-native-document-picker": "6.1.0", "react-native-elements": "3.4.2", "react-native-exception-handler": "2.10.10", "react-native-fast-image": "8.5.11", @@ -59,7 +59,7 @@ "react-native-hw-keyboard-event": "0.0.4", "react-native-keyboard-aware-scroll-view": "0.9.4", "react-native-keyboard-tracking-view": "5.7.0", - "react-native-keychain": "7.0.0", + "react-native-keychain": "8.0.0", "react-native-linear-gradient": "2.5.6", "react-native-localize": "2.1.5", "react-native-navigation": "7.21.0", @@ -67,7 +67,7 @@ "react-native-notifications": "4.1.2", "react-native-paper": "4.9.2", "react-native-permissions": "3.0.5", - "react-native-reanimated": "2.2.2", + "react-native-reanimated": "2.3.0-beta.2", "react-native-redash": "16.2.2", "react-native-safe-area-context": "3.3.2", "react-native-screens": "3.8.0", @@ -106,7 +106,7 @@ "@types/jest": "27.0.2", "@types/react": "17.0.26", "@types/react-intl": "3.0.0", - "@types/react-native": "0.65.2", + "@types/react-native": "0.65.3", "@types/react-native-button": "3.0.1", "@types/react-native-share": "3.3.3", "@types/react-native-video": "5.0.9", @@ -141,7 +141,6 @@ "mock-async-storage": "2.2.0", "nock": "13.1.3", "patch-package": "6.4.7", - "react-native-codegen": "0.0.8", "react-native-dev-menu": "4.0.2", "react-native-dotenv": "3.2.0", "react-native-storybook-loader": "2.0.4", diff --git a/patches/react-native+0.65.1.patch b/patches/react-native+0.66.0.patch similarity index 100% rename from patches/react-native+0.65.1.patch rename to patches/react-native+0.66.0.patch diff --git a/patches/react-native-keychain+7.0.0.patch b/patches/react-native-keychain+8.0.0.patch similarity index 79% rename from patches/react-native-keychain+7.0.0.patch rename to patches/react-native-keychain+8.0.0.patch index 68ee59cd04..3d4a6d0779 100644 --- a/patches/react-native-keychain+7.0.0.patch +++ b/patches/react-native-keychain+8.0.0.patch @@ -1,8 +1,20 @@ +diff --git a/node_modules/react-native-keychain/RNKeychainManager/RNKeychainManager.h b/node_modules/react-native-keychain/RNKeychainManager/RNKeychainManager.h +index 4a1234f..f3e2308 100644 +--- a/node_modules/react-native-keychain/RNKeychainManager/RNKeychainManager.h ++++ b/node_modules/react-native-keychain/RNKeychainManager/RNKeychainManager.h +@@ -10,5 +10,6 @@ + #import + + @interface RNKeychainManager : NSObject +- ++-(OSStatus)deleteCredentialsForServer:(NSString *)server; ++-(NSArray*)getAllServersForInternetPasswords; + @end diff --git a/node_modules/react-native-keychain/RNKeychainManager/RNKeychainManager.m b/node_modules/react-native-keychain/RNKeychainManager/RNKeychainManager.m -index 38ccdf3..bf0dae3 100644 +index 1e7021c..6990ae4 100644 --- a/node_modules/react-native-keychain/RNKeychainManager/RNKeychainManager.m +++ b/node_modules/react-native-keychain/RNKeychainManager/RNKeychainManager.m -@@ -272,6 +272,36 @@ SecAccessControlCreateFlags accessControlValue(NSDictionary *options) +@@ -271,6 +271,36 @@ SecAccessControlCreateFlags accessControlValue(NSDictionary *options) return SecItemDelete((__bridge CFDictionaryRef) query); } @@ -39,7 +51,7 @@ index 38ccdf3..bf0dae3 100644 -(NSArray*)getAllServicesForSecurityClasses:(NSArray *)secItemClasses { NSMutableDictionary *query = [NSMutableDictionary dictionaryWithObjectsAndKeys: -@@ -592,4 +622,14 @@ RCT_EXPORT_METHOD(getAllGenericPasswordServices:(RCTPromiseResolveBlock)resolve +@@ -598,4 +628,14 @@ RCT_EXPORT_METHOD(getAllGenericPasswordServices:(RCTPromiseResolveBlock)resolve } } @@ -55,7 +67,7 @@ index 38ccdf3..bf0dae3 100644 + @end diff --git a/node_modules/react-native-keychain/android/src/main/java/com/oblador/keychain/KeychainModule.java b/node_modules/react-native-keychain/android/src/main/java/com/oblador/keychain/KeychainModule.java -index 3da433f..731b991 100644 +index 6ca68cb..dacb1ed 100644 --- a/node_modules/react-native-keychain/android/src/main/java/com/oblador/keychain/KeychainModule.java +++ b/node_modules/react-native-keychain/android/src/main/java/com/oblador/keychain/KeychainModule.java @@ -1,6 +1,7 @@ @@ -74,25 +86,21 @@ index 3da433f..731b991 100644 /** Shared preferences storage. */ private final PrefsStorage prefsStorage; //endregion -@@ -140,13 +142,13 @@ public class KeychainModule extends ReactContextBaseJavaModule { +@@ -140,13 +142,7 @@ public class KeychainModule extends ReactContextBaseJavaModule { super(reactContext); prefsStorage = new PrefsStorage(reactContext); - addCipherStorageToMap(new CipherStorageFacebookConceal(reactContext)); -+ //addCipherStorageToMap(new CipherStorageFacebookConceal(reactContext)); addCipherStorageToMap(new CipherStorageKeystoreAesCbc()); - - // we have a references to newer api that will fail load of app classes in old androids OS +- +- // we have a references to newer api that will fail load of app classes in old androids OS - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { - addCipherStorageToMap(new CipherStorageKeystoreRsaEcb()); - } -+ // if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { -+ // addCipherStorageToMap(new CipherStorageKeystoreRsaEcb()); -+ // } } /** Allow initialization in chain. */ -@@ -278,6 +280,12 @@ public class KeychainModule extends ReactContextBaseJavaModule { +@@ -278,6 +274,11 @@ public class KeychainModule extends ReactContextBaseJavaModule { @Nullable final ReadableMap options, @NonNull final Promise promise) { try { @@ -101,19 +109,18 @@ index 3da433f..731b991 100644 + promise.resolve(Arguments.fromBundle(cached)); + return; + } -+ final ResultSet resultSet = prefsStorage.getEncryptedEntry(alias); if (resultSet == null) { -@@ -300,6 +308,7 @@ public class KeychainModule extends ReactContextBaseJavaModule { +@@ -310,6 +311,7 @@ public class KeychainModule extends ReactContextBaseJavaModule { credentials.putString(Maps.USERNAME, decryptionResult.username); credentials.putString(Maps.PASSWORD, decryptionResult.password); - credentials.putString(Maps.STORAGE, current.getCipherStorageName()); + credentials.putString(Maps.STORAGE, cipher.getCipherStorageName()); + cachedCredentialsMap.put(alias, Arguments.toBundle(credentials)); promise.resolve(credentials); } catch (KeyStoreAccessException e) { -@@ -372,6 +381,7 @@ public class KeychainModule extends ReactContextBaseJavaModule { +@@ -382,6 +384,7 @@ public class KeychainModule extends ReactContextBaseJavaModule { } // And then we remove the entry in the shared preferences prefsStorage.removeEntry(alias); @@ -122,18 +129,18 @@ index 3da433f..731b991 100644 promise.resolve(true); } catch (KeyStoreAccessException e) { diff --git a/node_modules/react-native-keychain/index.js b/node_modules/react-native-keychain/index.js -index b73cfb2..a754505 100644 +index 75c0d5c..e6c44d8 100644 --- a/node_modules/react-native-keychain/index.js +++ b/node_modules/react-native-keychain/index.js -@@ -348,6 +348,21 @@ export function canImplyAuthentication(options?: Options): Promise { +@@ -352,6 +352,21 @@ export function canImplyAuthentication(options?: Options): Promise { return RNKeychainManager.canCheckAuthentication(options); } +/** -+ * Gets all `kSecAttrServer` values used in internet credentials for iOS. -+ * @return {Promise} Resolves to an array of strings -+ */ -+ export async function getAllInternetPasswordServers(): Promise { +++ * Gets all `kSecAttrServer` values used in internet credentials for iOS. +++ * @return {Promise} Resolves to an array of strings +++ */ ++export async function getAllInternetPasswordServers(): Promise { + if (Platform.OS !== 'ios') { + return Promise.reject( + new Error( diff --git a/share_extension/index.tsx b/share_extension/index.tsx index 47cd573f63..a3e110825d 100644 --- a/share_extension/index.tsx +++ b/share_extension/index.tsx @@ -86,7 +86,7 @@ const styles = StyleSheet.create({ }, sectionTitle: { fontSize: 24, - fontWeight: '600', + fontFamily: 'OpenSans-Semibold', color: Colors.black, }, sectionDescription: { @@ -96,7 +96,7 @@ const styles = StyleSheet.create({ color: Colors.dark, }, highlight: { - fontWeight: '700', + fontFamily: 'OpenSans-Bold', }, footer: { color: Colors.dark,