From bd970ec287b6c8e44e6a87d1e1d43c68c326eb2e Mon Sep 17 00:00:00 2001 From: xmflsct Date: Mon, 10 Oct 2022 23:28:27 +0200 Subject: [PATCH 01/12] Bump packages --- .github/workflows/build.yml | 2 +- ios/Podfile.lock | 50 +++---- package.json | 33 ++--- yarn.lock | 288 ++++++++++++++++++------------------ 4 files changed, 186 insertions(+), 187 deletions(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index b28323f2..42ee26b5 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -25,7 +25,7 @@ jobs: run: bundle install - name: -- Step 5 -- Run fastlane env: - DEVELOPER_DIR: /Applications/Xcode_13.4.1.app/Contents/Developer + DEVELOPER_DIR: /Applications/Xcode_14.0.1.app/Contents/Developer ENVIRONMENT: ${{ steps.branch.outputs.branch }} SENTRY_ENVIRONMENT: ${{ steps.branch.outputs.branch }} LC_ALL: en_US.UTF-8 diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 787f5853..7f11aab2 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -20,11 +20,11 @@ PODS: - EXFirebaseCore (5.2.0): - ExpoModulesCore - Firebase/Core (= 9.5.0) - - EXFont (10.2.0): + - EXFont (10.2.1): - ExpoModulesCore - EXNotifications (0.16.1): - ExpoModulesCore - - Expo (46.0.10): + - Expo (46.0.15): - ExpoModulesCore - ExpoCrypto (11.0.0): - ExpoModulesCore @@ -34,7 +34,7 @@ PODS: - ExpoModulesCore - ExpoLocalization (13.1.0): - ExpoModulesCore - - ExpoModulesCore (0.11.5): + - ExpoModulesCore (0.11.7): - React-Core - ReactCommon/turbomodule/core - ExpoRandom (12.3.0): @@ -416,14 +416,14 @@ PODS: - React-Core - react-native-language-detection (0.1.0): - React - - react-native-netinfo (9.3.2): + - react-native-netinfo (9.3.4): - React-Core - - react-native-pager-view (6.0.0): + - react-native-pager-view (6.0.1): - React-Core - - react-native-paste-input (0.5.0): + - react-native-paste-input (0.5.1): - React-Core - Swime (= 3.0.6) - - react-native-safe-area-context (4.3.4): + - react-native-safe-area-context (4.4.1): - RCT-Folly - RCTRequired - RCTTypeSafety @@ -536,7 +536,7 @@ PODS: - React-Core - SDWebImage (~> 5.13.4) - SDWebImageWebPCoder (~> 0.9.0) - - RNGestureHandler (2.6.2): + - RNGestureHandler (2.7.0): - React-Core - RNReanimated (2.10.0): - DoubleConversion @@ -565,12 +565,12 @@ PODS: - React-RCTText - ReactCommon/turbomodule/core - Yoga - - RNScreens (3.17.0): + - RNScreens (3.18.0): - React-Core - React-RCTImage - - RNSentry (4.5.0): + - RNSentry (4.6.1): - React-Core - - Sentry (= 7.25.1) + - Sentry (= 7.27.1) - RNShareMenu (6.0.0): - React - RNSVG (13.0.0): @@ -581,9 +581,9 @@ PODS: - SDWebImageWebPCoder (0.9.1): - libwebp (~> 1.0) - SDWebImage/Core (~> 5.13) - - Sentry (7.25.1): - - Sentry/Core (= 7.25.1) - - Sentry/Core (7.25.1) + - Sentry (7.27.1): + - Sentry/Core (= 7.27.1) + - Sentry/Core (7.27.1) - Swime (3.0.6) - Yoga (1.14.0) @@ -855,14 +855,14 @@ SPEC CHECKSUMS: EXFileSystem: 927e0a8885aa9c49e50fc38eaba2c2389f2f1019 EXFirebaseAnalytics: 2e478758e153b908b67477dff7adf99ffbf37a1b EXFirebaseCore: cb1e6afad20c4c32a4966432c78ebfff29d8db6b - EXFont: a5d80bd9b3452b2d5abbce2487da89b0150e6487 + EXFont: 06df627203afcb8a3b3152ec06eb2f11f46f0cff EXNotifications: 9a2aa201deb19dfe1dbe0e370eeb2922de0d2422 - Expo: fcdb32274e2ca9c7638d3b21b30fb665c6869219 + Expo: 7e821e708a35d2720ef6baa658e224dd91c4821e ExpoCrypto: e534314db0e1a17ae12b5140d529bd0c5efcbc6a ExpoHaptics: efe9e68e9dfe0d15c183c0c70a25f3874124ab9e ExpoKeepAwake: 0e8f18142e71bbf2c7f6aa66ebed249ba1420320 ExpoLocalization: 63204f4b9d4f653469d266332ceaa6c6ac8a305d - ExpoModulesCore: 5a973701f4400d70254bc836305228731c829010 + ExpoModulesCore: 2d60ec04c49641afb55fee3faac86fb108c68fe0 ExpoRandom: f9f1faa299a40733867f344d6b7bfa2d1f4ab04d ExpoWebBrowser: 5804ac42a8269d0e534bc4461993005f72535649 EXScreenCapture: 23de056fdb02edd1fb8f147b0fd198c6d5cada3d @@ -909,10 +909,10 @@ SPEC CHECKSUMS: react-native-context-menu-view: b0beca02aad4bd9f9d7d932bf437e0a03baa69ef react-native-image-picker: 4bc9ed38c8be255b515d8c88babbaf74973f91a8 react-native-language-detection: 0e43195ad014974f1b7a31b64820eff34a243f2d - react-native-netinfo: 687904c63baa828543bb6e94c265977e0ac70f14 - react-native-pager-view: e76d64a5114a152e942caa09136e4e250709378c - react-native-paste-input: 3037f113267c367e863790bcfd57cdb3ace3cad6 - react-native-safe-area-context: dfe5aa13bee37a0c7e8059d14f72ffc076d120e9 + react-native-netinfo: 6ac9bcc7c88dc51717bda3484eb99093acb755e0 + react-native-pager-view: 3051346698a0ba0c4e13e40097cc11b00ee03cca + react-native-paste-input: 183ad7dc224e192719616f4258dde5b548627d08 + react-native-safe-area-context: 99b24a0c5acd0d5dcac2b1a7f18c49ea317be99a react-native-segmented-control: 65df6cd0619b780b3843d574a72d4c7cec396097 React-perflogger: 1fb1ad5333b43a5137afd7608695f7a42c5efd27 React-RCTActionSheet: a435bd67689433575a1e5d7614b021d2c17f0726 @@ -929,15 +929,15 @@ SPEC CHECKSUMS: RNCAsyncStorage: 0c357f3156fcb16c8589ede67cc036330b6698ca RNCClipboard: 2834e1c4af68697089cdd455ee4a4cdd198fa7dd RNFastImage: e6267e27581b81918ebef6432c94c20718ec3b91 - RNGestureHandler: 4defbd70b2faf3d6761b82fa7880285241762cb0 + RNGestureHandler: 7673697e7c0e9391adefae4faa087442bc04af33 RNReanimated: 7faa787e8d4493fbc95fab2ad331fa7625828cfa - RNScreens: 0df01424e9e0ed7827200d6ed1087ddd06c493f9 - RNSentry: a034d0e81e3d3c04b770dd2df953fe634d372d22 + RNScreens: f3230dd008a7d0ce5c0a8bc78ff12cf2315bda24 + RNSentry: f8591057d48d4f6d64196a76cbca67895667b033 RNShareMenu: cb9dac548c8bf147d06f0bf07296ad51ea9f5fc3 RNSVG: 42a0c731b11179ebbd27a3eeeafa7201ebb476ff SDWebImage: e5cc87bf736e60f49592f307bdf9e157189298a3 SDWebImageWebPCoder: 18503de6621dd2c420d680e33d46bf8e1d5169b0 - Sentry: dd29c18c32b0af9269949f079cf631d581ca76ca + Sentry: bc644307e2eb6a4c9c55cf117a80b895bb2a25a7 Swime: d7b2c277503b6cea317774aedc2dce05613f8b0b Yoga: 75bf4b0131cfb46a659cd0c13309b79a6fcff66d diff --git a/package.json b/package.json index 530eea86..a015dfbc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "tooot", - "version": "4.3.3", + "version": "4.3.4", "description": "tooot app for Mastodon", "author": "xmflsct ", "license": "GPL-3.0-or-later", @@ -18,30 +18,30 @@ "postinstall": "patch-package" }, "dependencies": { - "@expo/react-native-action-sheet": "^3.13.0", + "@expo/react-native-action-sheet": "^3.14.0", "@formatjs/intl-datetimeformat": "^6.2.0", "@formatjs/intl-getcanonicallocales": "^2.0.4", "@formatjs/intl-locale": "^3.0.6", "@formatjs/intl-numberformat": "^8.1.3", "@formatjs/intl-pluralrules": "^5.1.3", "@formatjs/intl-relativetimeformat": "^11.1.3", - "@mattermost/react-native-paste-input": "^0.5.0", + "@mattermost/react-native-paste-input": "^0.5.1", "@neverdull-agency/expo-unlimited-secure-store": "^1.0.10", "@react-native-async-storage/async-storage": "^1.17.10", "@react-native-clipboard/clipboard": "^1.11.1", "@react-native-community/blur": "^4.2.0", "@react-native-community/cameraroll": "^4.1.2", - "@react-native-community/netinfo": "^9.3.2", + "@react-native-community/netinfo": "^9.3.4", "@react-native-community/segmented-control": "^2.2.2", "@react-navigation/bottom-tabs": "^6.4.0", "@react-navigation/native": "^6.0.13", "@react-navigation/native-stack": "^6.9.0", - "@react-navigation/stack": "^6.3.1", - "@reduxjs/toolkit": "^1.8.5", - "@sentry/react-native": "^4.5.0", + "@react-navigation/stack": "^6.3.2", + "@reduxjs/toolkit": "^1.8.6", + "@sentry/react-native": "^4.6.1", "@sharcoux/slider": "^6.0.3", "axios": "^0.27.2", - "expo": "^46.0.10", + "expo": "^46.0.15", "expo-auth-session": "^3.7.1", "expo-av": "^12.0.4", "expo-constants": "^13.2.4", @@ -59,7 +59,7 @@ "expo-store-review": "^5.3.0", "expo-video-thumbnails": "^6.4.0", "expo-web-browser": "^11.0.0", - "i18next": "^21.9.2", + "i18next": "^21.10.0", "li": "^1.3.0", "linkify-it": "^4.0.1", "lodash": "^4.17.21", @@ -75,24 +75,23 @@ "react-native-fast-image": "^8.6.1", "react-native-feather": "^1.1.2", "react-native-flash-message": "^0.3.1", - "react-native-gesture-handler": "^2.6.2", + "react-native-gesture-handler": "^2.7.0", "react-native-htmlview": "^0.16.0", "react-native-image-picker": "^4.10.0", "react-native-language-detection": "^0.1.0", - "react-native-pager-view": "^6.0.0", + "react-native-pager-view": "^6.0.1", "react-native-reanimated": "^2.10.0", "react-native-reanimated-zoom": "^0.3.1", - "react-native-safe-area-context": "^4.3.4", - "react-native-screens": "^3.17.0", + "react-native-safe-area-context": "^4.4.1", + "react-native-screens": "^3.18.0", "react-native-share-menu": "^6.0.0", "react-native-svg": "13.0.0", "react-native-swipe-list-view": "^3.2.9", - "react-native-tab-view": "^3.1.1", + "react-native-tab-view": "^3.2.1", "react-query": "^3.39.2", "react-redux": "^8.0.4", "redux-persist": "^6.0.0", "rn-placeholder": "^3.0.3", - "tslib": "^2.4.0", "valid-url": "^1.0.9" }, "devDependencies": { @@ -114,10 +113,10 @@ "babel-plugin-module-resolver": "^4.1.0", "babel-plugin-transform-remove-console": "^6.9.4", "chalk": "^4.1.2", - "dotenv": "^16.0.2", + "dotenv": "^16.0.3", "patch-package": "^6.4.7", "postinstall-postinstall": "^2.1.0", "react-native-clean-project": "^4.0.1", - "typescript": "^4.8.3" + "typescript": "^4.8.4" } } diff --git a/yarn.lock b/yarn.lock index 517bc51e..4a4f7ae4 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1180,19 +1180,19 @@ mv "~2" safe-json-stringify "~1" -"@expo/cli@0.2.11": - version "0.2.11" - resolved "https://registry.yarnpkg.com/@expo/cli/-/cli-0.2.11.tgz#25d8db8e46c6f02ef3edc189fdb6e29c922dd377" - integrity sha512-TIlylp3nghiEdlVliZRcBg8Yb++tnU92HinuQQZznVGFXFCoqJ210SPUJS1j3rxxltt8NhIJjL9OTO7PYRqnsQ== +"@expo/cli@0.3.1": + version "0.3.1" + resolved "https://registry.yarnpkg.com/@expo/cli/-/cli-0.3.1.tgz#827cbfa4e538243962217d684e924f55b5bafaa7" + integrity sha512-amdsNf5quVs9ZbO+q35sdtpWJvvQz5pqtl8ZOv5jqRriIp1G9zcOFTDG0TnGxANQ0F2b5GcU4fn7pxAzRLDHmQ== dependencies: "@babel/runtime" "^7.14.0" "@expo/code-signing-certificates" "^0.0.2" "@expo/config" "~7.0.1" "@expo/config-plugins" "~5.0.1" - "@expo/dev-server" "~0.1.119" + "@expo/dev-server" "~0.1.120" "@expo/devcert" "^1.0.0" "@expo/json-file" "^8.2.35" - "@expo/metro-config" "~0.3.18" + "@expo/metro-config" "~0.4.0" "@expo/osascript" "^2.0.31" "@expo/package-manager" "~0.0.53" "@expo/plist" "^0.0.18" @@ -1311,13 +1311,13 @@ xcode "^3.0.0" xml-js "^1.6.11" -"@expo/dev-server@~0.1.119": - version "0.1.119" - resolved "https://registry.yarnpkg.com/@expo/dev-server/-/dev-server-0.1.119.tgz#d85036d8ddfd5668fd50ef373616b55580dc7670" - integrity sha512-DcVnj4/YA+b+Ljsz2qffHHN5LbouXFKeE9ER0Yjq5vIb2moV1q3U6LezndFLCf42Uev7C2vSa8YCcP3WOpxuMw== +"@expo/dev-server@~0.1.120": + version "0.1.120" + resolved "https://registry.yarnpkg.com/@expo/dev-server/-/dev-server-0.1.120.tgz#0c7aff4e29d98298214129127f5df951cb7b81dd" + integrity sha512-x5/jCv0EOpz6FyehXpI5bgDQTVsGZYvgISkAw7n60RhtG+aid6N2CCR9SDMCH70XaUpFnfTW9qvderpCEj7Puw== dependencies: "@expo/bunyan" "4.0.0" - "@expo/metro-config" "~0.3.18" + "@expo/metro-config" "~0.4.0" "@expo/osascript" "2.0.33" body-parser "1.19.0" chalk "^4.0.0" @@ -1392,10 +1392,10 @@ json5 "^1.0.1" write-file-atomic "^2.3.0" -"@expo/metro-config@~0.3.18": - version "0.3.22" - resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.3.22.tgz#fa4a0729ec8ecbc9c9fb79c63ecc66a299505c82" - integrity sha512-R81sLbaeUBjN8IXcxiVx7GcpSj8z7szILl1b5yJDb38WdIFwxhrseA5wXaTT1yMhI+59w6n99T2qtFV2yD5qYA== +"@expo/metro-config@~0.4.0": + version "0.4.0" + resolved "https://registry.yarnpkg.com/@expo/metro-config/-/metro-config-0.4.0.tgz#1b446c94020dce595aa9fc7610d92601a098b753" + integrity sha512-QhOiotuzklalLbbsTMXJ5v4q4jffQ5xXhy1zsosgc2DL/ZzUr/Yhm3xUcOGnPQ2x7UyeY9Tl3njPHBOJJe7CSA== dependencies: "@expo/config" "7.0.1" "@expo/json-file" "8.2.36" @@ -1455,10 +1455,10 @@ semver "7.3.2" xml2js "0.4.23" -"@expo/react-native-action-sheet@^3.13.0": - version "3.13.0" - resolved "https://registry.yarnpkg.com/@expo/react-native-action-sheet/-/react-native-action-sheet-3.13.0.tgz#b4cb08440c54b5ec0b3e429cac396422da1d9442" - integrity sha512-EFLK35TBsM28W43SY54lISAIvjEm9584LIRWXsYaf5sgmfF65oWAOQP4UyKxMPLYGoaKjnCAJVFNtZUK80ss9A== +"@expo/react-native-action-sheet@^3.14.0": + version "3.14.0" + resolved "https://registry.yarnpkg.com/@expo/react-native-action-sheet/-/react-native-action-sheet-3.14.0.tgz#484781425fb31c2a76c4344cdfdbb3609509846e" + integrity sha512-JvABIv68dyxbdXg965+K7OYDJdlJftHesqmaWGv1KF4bobbwKli4NK/zQKSltlfiI+cLxONwzBlvmx+AjlYGng== dependencies: "@types/hoist-non-react-statics" "^3.3.1" hoist-non-react-statics "^3.3.0" @@ -1728,10 +1728,10 @@ "@jridgewell/resolve-uri" "^3.0.3" "@jridgewell/sourcemap-codec" "^1.4.10" -"@mattermost/react-native-paste-input@^0.5.0": - version "0.5.0" - resolved "https://registry.yarnpkg.com/@mattermost/react-native-paste-input/-/react-native-paste-input-0.5.0.tgz#2970c410a52e16db5cecebfd33f3a39d99a4a428" - integrity sha512-l1DhHALj06ZKfk2Y4B6ZxU+ZrQEa35kBeCpIYaMLwaKg5pYODFtpNbCanXhLf3HWp52y8lXWH/3tetWoJyWbPg== +"@mattermost/react-native-paste-input@^0.5.1": + version "0.5.1" + resolved "https://registry.yarnpkg.com/@mattermost/react-native-paste-input/-/react-native-paste-input-0.5.1.tgz#2d24b2d4a9fdb0aaefda6df8d9c64380ac731dc1" + integrity sha512-2ZXohoSJbLyItzvdT3dyjlC7tvDBEXqvzxhKUHs4OnIslYZzHso9gfqjIZNfet8ryhYAJ3CgB+xCmP5u7ouFtQ== dependencies: deprecated-react-native-prop-types "^2.3.0" @@ -1971,10 +1971,10 @@ prompts "^2.4.0" semver "^6.3.0" -"@react-native-community/netinfo@^9.3.2": - version "9.3.2" - resolved "https://registry.yarnpkg.com/@react-native-community/netinfo/-/netinfo-9.3.2.tgz#b6918282ce92dcf3efe622a56f9e3ab607b9502e" - integrity sha512-fR7wSIhmIUX+Skzgkr2vj5xopWa0lvvEWoXP1m7//jZjEgOZnu9DgdUimLHDrMo6AtZyUNrJscsFEepihTLlPQ== +"@react-native-community/netinfo@^9.3.4": + version "9.3.4" + resolved "https://registry.yarnpkg.com/@react-native-community/netinfo/-/netinfo-9.3.4.tgz#712d567703e05c4a01d82a18bd646a93c6757007" + integrity sha512-IXbJ+L8p4oE2ssDPfXCyxx9xVo5WuTMv6HA5YJw2McuRLLtVKR/vambycrB47AWTkHCTj3e0VOz28iUOvTSVPw== "@react-native-community/segmented-control@^2.2.2": version "2.2.2" @@ -2047,19 +2047,19 @@ dependencies: nanoid "^3.1.23" -"@react-navigation/stack@^6.3.1": - version "6.3.1" - resolved "https://registry.yarnpkg.com/@react-navigation/stack/-/stack-6.3.1.tgz#71f53d7598332765da08f78b56aeae245cc98cb6" - integrity sha512-WkURDiSip8QpB+cuEbp5GfDPDGxER7w7ooJVgG3J2nJNnYuKxsZR7qnlqWL2vjQW81NzKQpT7xrCADy+mfvIiQ== +"@react-navigation/stack@^6.3.2": + version "6.3.2" + resolved "https://registry.yarnpkg.com/@react-navigation/stack/-/stack-6.3.2.tgz#ba0a65e10e2b165185f20718046f25d8c9abb076" + integrity sha512-wb8koMp4OTrG5geOqEFPDatTyl8dsSyRBHN4h0wzgNT29V/JjkS3LYwkGLLfUmMfeLXFyIfEPILAjYLFmnk3dA== dependencies: "@react-navigation/elements" "^1.3.6" color "^4.2.3" warn-once "^0.1.0" -"@reduxjs/toolkit@^1.8.5": - version "1.8.5" - resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-1.8.5.tgz#c14bece03ee08be88467f22dc0ecf9cf875527cd" - integrity sha512-f4D5EXO7A7Xq35T0zRbWq5kJQyXzzscnHKmjnu2+37B3rwHU6mX9PYlbfXdnxcY6P/7zfmjhgan0Z+yuOfeBmA== +"@reduxjs/toolkit@^1.8.6": + version "1.8.6" + resolved "https://registry.yarnpkg.com/@reduxjs/toolkit/-/toolkit-1.8.6.tgz#147fb7957befcdb75bc9c1230db63628e30e4332" + integrity sha512-4Ia/Loc6WLmdSOzi7k5ff7dLK8CgG2b8aqpLsCAJhazAzGdp//YBUSaj0ceW6a3kDBDNRrq5CRwyCS0wBiL1ig== dependencies: immer "^9.0.7" redux "^4.1.2" @@ -2074,14 +2074,14 @@ component-type "^1.2.1" join-component "^1.1.0" -"@sentry/browser@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.13.0.tgz#883b8598c8a0c33af246242e7172e39306dc564a" - integrity sha512-WbgClHPYe8TKsdVVbuzd6alxwh3maFQNuljMkSTnYvPx2P+NT0wHljTs37D39FGfSmAwaqn7D/1ZHAtC+6mWxA== +"@sentry/browser@7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@sentry/browser/-/browser-7.14.2.tgz#668359603e3f32e6debf6a139652f5233b4d3e58" + integrity sha512-KGAZ+5lK7gIO2CM3/MAQGY8JtNVCWXRi807lAxndJ3E1oIQb9A0x7b+AJNr1+6jlwf6QESblr92MCLKPHDpNbA== dependencies: - "@sentry/core" "7.13.0" - "@sentry/types" "7.13.0" - "@sentry/utils" "7.13.0" + "@sentry/core" "7.14.2" + "@sentry/types" "7.14.2" + "@sentry/utils" "7.14.2" tslib "^1.9.3" "@sentry/cli@1.74.4": @@ -2110,83 +2110,83 @@ proxy-from-env "^1.1.0" which "^2.0.2" -"@sentry/core@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.13.0.tgz#65597d71f8bfa1186f34009803e03ca9edb3adee" - integrity sha512-hB46fklmKrSDMEvZOF8qBHhys7PONBFyxQtbNDZUlv/kabs4gF3VEg1ftCaXnjx4lLNlsUl/ScFdM6194RvISg== +"@sentry/core@7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@sentry/core/-/core-7.14.2.tgz#47262aad43d94d8c5fb73b668a7e8e9c4b91c98f" + integrity sha512-AXcH6nROugziO5KsKSQ9TmAXq6HJa8Fn+kDqAL/sNY65w6YYlHifMO2xHkSXVJxGw7vx9DYh/5SF+KnLn6NDNA== dependencies: - "@sentry/hub" "7.13.0" - "@sentry/types" "7.13.0" - "@sentry/utils" "7.13.0" + "@sentry/hub" "7.14.2" + "@sentry/types" "7.14.2" + "@sentry/utils" "7.14.2" tslib "^1.9.3" -"@sentry/hub@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-7.13.0.tgz#752068e528cfb277ed154bc94e311cad50ef792e" - integrity sha512-88/GsD1BoyrBwRKJCmVHZtSH5rizOsImUHWEXc1AOa1aR8nanfn56JdAbd6tC55pA+nT4R4H4vN/PrUaomTbtg== +"@sentry/hub@7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@sentry/hub/-/hub-7.14.2.tgz#b7b4d6e5002cd5abe9a829a84db5f4270689c666" + integrity sha512-18cuSesTn9VAF0JC107flLmtCRt/6DBn38uz0G9cPThKtTSNwjGvGZ/ag4J1iq+IDjVS5MA6iTncXOsSpVP2Wg== dependencies: - "@sentry/types" "7.13.0" - "@sentry/utils" "7.13.0" + "@sentry/types" "7.14.2" + "@sentry/utils" "7.14.2" tslib "^1.9.3" -"@sentry/integrations@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.13.0.tgz#abd36fbf4a338877ca15ef5ed830163eeb6394ac" - integrity sha512-el5tonn/96fC+GMco70TXI2yrGmDLSFc0THKO/r9YEIJjqcK1KV1C6jJhTWt09ZBAgoeRCXSMn5xvdl3fc9Zrw== +"@sentry/integrations@7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@sentry/integrations/-/integrations-7.14.2.tgz#52026f758e4c2a0436c4896bb8b2fa2765982042" + integrity sha512-vxS6ZDgPOxmbfEV6mynu7gouFSnq5LjlnEQYe2D7+/aRPzcgXzwPiqLt/Qd0OG+8LR2UjX+ziBTJOyARZcHxRA== dependencies: - "@sentry/types" "7.13.0" - "@sentry/utils" "7.13.0" + "@sentry/types" "7.14.2" + "@sentry/utils" "7.14.2" localforage "^1.8.1" tslib "^1.9.3" -"@sentry/react-native@^4.5.0": - version "4.5.0" - resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-4.5.0.tgz#001b0dc32a92fb89e64be2cc0cd6937a7b3559a4" - integrity sha512-h8si35zlJlvU88HsdKGE/KfJpAI+p355QAA02VdlxuLkfFH0BP6kYlogu8ASa7Hxzgb2ESB0P/fHXixat2N2cQ== +"@sentry/react-native@^4.6.1": + version "4.6.1" + resolved "https://registry.yarnpkg.com/@sentry/react-native/-/react-native-4.6.1.tgz#7d4842275c565c755212104a01ea48db9a120cff" + integrity sha512-P92DqyfqYURpHmaO2yqgqnmB4TW4id1HXe1JrwBvatSpCsinzVtySkmadxQMkIYKhCSEVSfhjGpz5zEosVRpQw== dependencies: - "@sentry/browser" "7.13.0" + "@sentry/browser" "7.14.2" "@sentry/cli" "1.74.4" - "@sentry/core" "7.13.0" - "@sentry/hub" "7.13.0" - "@sentry/integrations" "7.13.0" - "@sentry/react" "7.13.0" - "@sentry/tracing" "7.13.0" - "@sentry/types" "7.13.0" - "@sentry/utils" "7.13.0" + "@sentry/core" "7.14.2" + "@sentry/hub" "7.14.2" + "@sentry/integrations" "7.14.2" + "@sentry/react" "7.14.2" + "@sentry/tracing" "7.14.2" + "@sentry/types" "7.14.2" + "@sentry/utils" "7.14.2" "@sentry/wizard" "1.2.17" -"@sentry/react@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.13.0.tgz#64fa5a2b944c977f75626c6208afa3478c13714c" - integrity sha512-ulvBmMiwt+4RXwnDkP9qNr7rMJIFE4QXuNxho5pIqWEU9q2656CoL5kau9f2TQQEBxNc9dR4QmUdGyzuEaYPIQ== +"@sentry/react@7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@sentry/react/-/react-7.14.2.tgz#2c59d09d543246d5228e603bd3af76fb30369b75" + integrity sha512-gWPSxOYcAEG/c7Ubuv0yAGMhOvHwMHQ47fEhYa8Be5e/kzXMzc/lQAaoKLNr73BZGvBvY7ghdC53ATGQXLGxpg== dependencies: - "@sentry/browser" "7.13.0" - "@sentry/types" "7.13.0" - "@sentry/utils" "7.13.0" + "@sentry/browser" "7.14.2" + "@sentry/types" "7.14.2" + "@sentry/utils" "7.14.2" hoist-non-react-statics "^3.3.2" tslib "^1.9.3" -"@sentry/tracing@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-7.13.0.tgz#521dc021dab78e37e29b0f90b01cb444337adfc4" - integrity sha512-/MKSd25rGv6Pc0FPBLXJifkfvSaYVPA8XUOLzVeDN0gl07h8AXli4qG9amTh/4Wb5h4dFpbcscOvW2VC+pxkIA== +"@sentry/tracing@7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@sentry/tracing/-/tracing-7.14.2.tgz#77f36618f10202a502dec4454dff43c6ede832d9" + integrity sha512-KCZogsvqUYiR9vNPWXVgSM00CF+yfYJaBd363fN3HUbjya4j96cHJg65zf6oy85Igr6IGclYaTkoEbiZ6xdNDw== dependencies: - "@sentry/hub" "7.13.0" - "@sentry/types" "7.13.0" - "@sentry/utils" "7.13.0" + "@sentry/hub" "7.14.2" + "@sentry/types" "7.14.2" + "@sentry/utils" "7.14.2" tslib "^1.9.3" -"@sentry/types@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.13.0.tgz#398e33e5c92ea0ce91e2c86e3ab003fe00c471a2" - integrity sha512-ttckM1XaeyHRLMdr79wmGA5PFbTGx2jio9DCD/mkEpSfk6OGfqfC7gpwy7BNstDH/VKyQj/lDCJPnwvWqARMoQ== +"@sentry/types@7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@sentry/types/-/types-7.14.2.tgz#78e2e2632d1ee10092549ba32efbe2bc288cbf6f" + integrity sha512-JzkOtenArOXmJBAk/FBbxKKX7XC650HqkhGL4ugT/f+RyxfiDZ0X1TAYMrvKIe+qpn5Nh7JUBfR+BARKAiu2wQ== -"@sentry/utils@7.13.0": - version "7.13.0" - resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.13.0.tgz#0d47a9278806ece78ba3a83c7dbebce817462759" - integrity sha512-jnR85LgRLSk7IQe2OhKOPMY4fasJCNQNW0iCXsH+S2R1qnsF+N4ksNkQ+7JyyM9E7F03YpI2qd76bKY0VIn5iA== +"@sentry/utils@7.14.2": + version "7.14.2" + resolved "https://registry.yarnpkg.com/@sentry/utils/-/utils-7.14.2.tgz#5af245fc2d72211490cb9aeaf2098e048739120a" + integrity sha512-vpZolN+k1IoxWXhKyOVcRl7V1bgww+96gHqTJdcMzOB83x/ofels7L0kqxb03WukKTYcnc7Ep+yBiKi/OYX9og== dependencies: - "@sentry/types" "7.13.0" + "@sentry/types" "7.14.2" tslib "^1.9.3" "@sentry/wizard@1.2.17": @@ -3676,10 +3676,10 @@ domutils@^3.0.1: domelementtype "^2.3.0" domhandler "^5.0.1" -dotenv@^16.0.2: - version "16.0.2" - resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.2.tgz#0b0f8652c016a3858ef795024508cddc4bffc5bf" - integrity sha512-JvpYKUmzQhYoIFgK2MOnF3bciIZoItIIoryihy0rIA+H4Jy0FmgyKYAHCTN98P5ybGSJcIFbh6QKeJdtZd1qhA== +dotenv@^16.0.3: + version "16.0.3" + resolved "https://registry.yarnpkg.com/dotenv/-/dotenv-16.0.3.tgz#115aec42bac5053db3c456db30cc243a5a836a07" + integrity sha512-7GO6HghkA5fYG9TYnNxi14/7K9f5occMlp3zXAuSxn7CKCxt9xbNWG7yF8hTCSUchlfWSe3uLmlPfigevRItzQ== ee-first@1.1.1: version "1.1.1" @@ -3957,10 +3957,10 @@ expo-firebase-core@~5.2.0: dependencies: expo-constants "~13.2.0" -expo-font@~10.2.0: - version "10.2.0" - resolved "https://registry.yarnpkg.com/expo-font/-/expo-font-10.2.0.tgz#881f767e13b2b534a4d3ffaedcf675ce6b63439d" - integrity sha512-2V4EcpmhNoppaLn+lPprZVS+3bmV9hxLPKttKh2u8ghjH/oX9bv3u4JVo77SYh0EfrWO4toqVyXn8pXH8GpbIg== +expo-font@~10.2.1: + version "10.2.1" + resolved "https://registry.yarnpkg.com/expo-font/-/expo-font-10.2.1.tgz#c13e65e864befaa4710504096b68635c6f7e48d8" + integrity sha512-sxy5GrdtY+Ka8Wo5wnrcFFeO6MbYC6Dris5wMLqshvVK6BneJNMUsFvwRfvVgg0TzsmMAc3Rlca2xyZ8ettinw== dependencies: fontfaceobserver "^2.1.0" @@ -4003,10 +4003,10 @@ expo-modules-autolinking@0.10.3: find-up "^5.0.0" fs-extra "^9.1.0" -expo-modules-core@0.11.5: - version "0.11.5" - resolved "https://registry.yarnpkg.com/expo-modules-core/-/expo-modules-core-0.11.5.tgz#19d30e9b24b0b98ea614df3cb474293133a08bd4" - integrity sha512-KmTHtaL21M1AzKOmu3YM5K8ddCbbr6wgooG4uCb+o+7zZXe+BPP4jAPs5LLez1Et34OQcyjopxUpJ8r43HImvQ== +expo-modules-core@0.11.7: + version "0.11.7" + resolved "https://registry.yarnpkg.com/expo-modules-core/-/expo-modules-core-0.11.7.tgz#538f2a4d7c353467fb0313de4788e86dd8f251e3" + integrity sha512-lTH6MYULX99JK3zN4bhjRD3I9Y1CGx0RAhpZ6gCTO8GQ/DNw4xZRUwburKL9dJeZM5G1xJOcGoBkTfeMjUVe+g== dependencies: compare-versions "^3.4.0" invariant "^2.2.4" @@ -4069,13 +4069,13 @@ expo-web-browser@^11.0.0, expo-web-browser@~11.0.0: dependencies: compare-urls "^2.0.0" -expo@^46.0.10: - version "46.0.10" - resolved "https://registry.yarnpkg.com/expo/-/expo-46.0.10.tgz#a352057489474279b0207cc6b01540edc04e1806" - integrity sha512-MUDLTnBYOOabzFo2HATTMXiAYoQ4n1IWBM3HlOmsQVoMBKOs6FcZDqte/lwK80KkhHIpr1Q37JD8Dq1Fk4b9eA== +expo@^46.0.15: + version "46.0.15" + resolved "https://registry.yarnpkg.com/expo/-/expo-46.0.15.tgz#c10d27c0ee85669132310949f2e56e95b4a14469" + integrity sha512-/uZLQgXKni/rLoJPUESte901Z8owZH4weItLGhac2T37zZEUHIqcWdI/1+BaN8Racz9x54PzgbIMh09QMgv9mQ== dependencies: "@babel/runtime" "^7.14.0" - "@expo/cli" "0.2.11" + "@expo/cli" "0.3.1" "@expo/vector-icons" "^13.0.0" babel-preset-expo "~9.2.0" cross-spawn "^6.0.5" @@ -4083,10 +4083,10 @@ expo@^46.0.10: expo-asset "~8.6.1" expo-constants "~13.2.4" expo-file-system "~14.1.0" - expo-font "~10.2.0" + expo-font "~10.2.1" expo-keep-awake "~10.2.0" expo-modules-autolinking "0.10.3" - expo-modules-core "0.11.5" + expo-modules-core "0.11.7" fbemitter "^3.0.0" getenv "^1.0.0" invariant "^2.2.4" @@ -4739,10 +4739,10 @@ https-proxy-agent@^5.0.0: agent-base "6" debug "4" -i18next@^21.9.2: - version "21.9.2" - resolved "https://registry.yarnpkg.com/i18next/-/i18next-21.9.2.tgz#3f7c5594393eb27117c1db4c38f5ec766e68de0e" - integrity sha512-00fVrLQOwy45nm3OtC9l1WiLK3nJlIYSljgCt0qzTaAy65aciMdRy9GsuW+a2AtKtdg9/njUGfRH30LRupV7ZQ== +i18next@^21.10.0: + version "21.10.0" + resolved "https://registry.yarnpkg.com/i18next/-/i18next-21.10.0.tgz#85429af55fdca4858345d0e16b584ec29520197d" + integrity sha512-YeuIBmFsGjUfO3qBmMOc0rQaun4mIpGKET5WDwvu8lU7gvwpcariZLNtL0Fzj+zazcHUrlXHiptcFhBMFaxzfg== dependencies: "@babel/runtime" "^7.17.2" @@ -6985,10 +6985,10 @@ react-native-flash-message@^0.3.1: prop-types "^15.8.1" react-native-iphone-x-helper "^1.3.1" -react-native-gesture-handler@^2.6.2: - version "2.6.2" - resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.6.2.tgz#f3b68d374f5dda603ff29f7df2edb39472eb97ce" - integrity sha512-Ff/WKlR8KiM1wq7UJZvIyCB+OsweewaeZk+4RDIYNGM9tvNIAXEm/MtYnLHiBXiSJjZItF/8B83gE6pVq40vIw== +react-native-gesture-handler@^2.7.0: + version "2.7.0" + resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.7.0.tgz#53ad828add926c8e025f68ea581758c0f8893054" + integrity sha512-0jr3FNm2R3gv/v6XTtENgjv0fewD6LEct8EWmXw/oHw36M3YiIIpxnW57thL+0YiKwyLBXN0QHL4JZbs/heW2Q== dependencies: "@egjs/hammerjs" "^2.0.17" hoist-non-react-statics "^3.3.0" @@ -7024,10 +7024,10 @@ react-native-language-detection@^0.1.0: resolved "https://registry.yarnpkg.com/react-native-language-detection/-/react-native-language-detection-0.1.0.tgz#06b5d20bffb60dbbd599c8e62b6acf500952afa8" integrity sha512-26CLndVMmMbVp40Y9Herza73nfR08JFTcYkJ3MX5MIQbGRoqgNAG89z8pA1y7dPHHK1Nfa6AWKAYpNv7tMRCaw== -react-native-pager-view@^6.0.0: - version "6.0.0" - resolved "https://registry.yarnpkg.com/react-native-pager-view/-/react-native-pager-view-6.0.0.tgz#e3706da1bb7e55bcd2644d770d36c8dd14b48690" - integrity sha512-0qUMUmA/Lhv76F+fbCcYB+iuODH6Lp6E1EYlXw+GM3Ns3FaKFtBaVYXKQSfNhqnTUg9YEOY3HuX+ZMKBSHwNbA== +react-native-pager-view@^6.0.1: + version "6.0.1" + resolved "https://registry.yarnpkg.com/react-native-pager-view/-/react-native-pager-view-6.0.1.tgz#353abf38d3c2b91ed7c586f10af0f94700f5b1dc" + integrity sha512-kOVNu+4JnR3Gpykviy4WbOAnQz8TgP6O2pRvne221oPUDQLYrvEE/FINR0P85TxbMgvKTPlLejGw0ZHQbezK/g== react-native-reanimated-zoom@^0.3.1: version "0.3.1" @@ -7047,15 +7047,15 @@ react-native-reanimated@^2.10.0: setimmediate "^1.0.5" string-hash-64 "^1.0.3" -react-native-safe-area-context@^4.3.4: - version "4.3.4" - resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.3.4.tgz#79060fcc02ef38d6fd7afdf87b2301b06bd99fe9" - integrity sha512-4dFZPDHRigZ+uw8HCmMLyC/IT1BG0B9QLvuwsBQAMDCRSrxISIYza9VIbsIn2FGvZiQ1gOoXBHDmy9WFihQsTg== +react-native-safe-area-context@^4.4.1: + version "4.4.1" + resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.4.1.tgz#239c60b8a9a80eac70a38a822b04c0f1d15ffc01" + integrity sha512-N9XTjiuD73ZpVlejHrUWIFZc+6Z14co1K/p1IFMkImU7+avD69F3y+lhkqA2hN/+vljdZrBSiOwXPkuo43nFQA== -react-native-screens@^3.17.0: - version "3.17.0" - resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-3.17.0.tgz#b099b3ec9d46de07c857f14d713c293024c7c842" - integrity sha512-OZCQU7+3neHNaM19jBkYRjL50kXz7p7MUgWQTCcdRoshcCiolf8aXs4eRVQKGK6m1RmoB8UL0//m5R9KoR+41w== +react-native-screens@^3.18.0: + version "3.18.0" + resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-3.18.0.tgz#e10ec54d8b158d47f66dc6c9a81e5a042e33037d" + integrity sha512-ndnz5JPLMLq/ThCYQzAOT65x6B4bdKFH1GKckUdbxKrwINGItPRSUiAoVI7YYyOQOa4VYL4hF37rrx+AjgjtRg== dependencies: react-freeze "^1.0.0" warn-once "^0.1.0" @@ -7078,10 +7078,10 @@ react-native-swipe-list-view@^3.2.9: resolved "https://registry.yarnpkg.com/react-native-swipe-list-view/-/react-native-swipe-list-view-3.2.9.tgz#d725c7cdf481dd5df12a00dbfe0120013b5f2e59" integrity sha512-SjAEuHc/D6ovp+RjDUhfNmw6NYOntdT7+GFhfMGfP/BSLMuMWynpzJy9GKQeyB8sI78T6Lzip21TVbongOg1Mw== -react-native-tab-view@^3.1.1: - version "3.1.1" - resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-3.1.1.tgz#1f8d7a835ab4f5b1b1407ec8dddc1053b53fa3c6" - integrity sha512-M5pRN6utQfytKWoKlKVzg5NbkYu308qNoW1khGTtEOTs1k14p2dHJ/BWOJoJYHKbPVUyZldbG9MFT7gUl4YHnw== +react-native-tab-view@^3.2.1: + version "3.2.1" + resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-3.2.1.tgz#1da975203ef30996c412f9c2808bb81e12c3376f" + integrity sha512-/3htrnDJ8hXXO6M5tDKgGPan5NhiVG4oN6SH8LgQtbAO2y+YI104sjlbPOxhLUBpbj43tOQerUtJF7ENcHEPaw== react-native@^0.69.6: version "0.69.6" @@ -8200,7 +8200,7 @@ ts-interface-checker@^0.1.9: resolved "https://registry.yarnpkg.com/ts-interface-checker/-/ts-interface-checker-0.1.13.tgz#784fd3d679722bc103b1b4b8030bcddb5db2a699" integrity sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA== -tslib@2.4.0, tslib@^2.0.1, tslib@^2.1.0, tslib@^2.4.0: +tslib@2.4.0, tslib@^2.0.1, tslib@^2.1.0: version "2.4.0" resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.4.0.tgz#7cecaa7f073ce680a05847aa77be941098f36dc3" integrity sha512-d6xOpEDfsi2CZVlPQzGeux8XMwLT9hssAsaPYExaQMuYskwb+x1x7J371tWlbBdWHroy99KnVB6qIkUbs5X3UQ== @@ -8250,10 +8250,10 @@ typedarray-to-buffer@^3.1.2: dependencies: is-typedarray "^1.0.0" -typescript@^4.8.3: - version "4.8.3" - resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.3.tgz#d59344522c4bc464a65a730ac695007fdb66dd88" - integrity sha512-goMHfm00nWPa8UvR/CPSvykqf6dVV8x/dp0c5mFTMTIu0u0FlGWRioyy7Nn0PGAdHxpJZnuO/ut+PpQ8UiHAig== +typescript@^4.8.4: + version "4.8.4" + resolved "https://registry.yarnpkg.com/typescript/-/typescript-4.8.4.tgz#c464abca159669597be5f96b8943500b238e60e6" + integrity sha512-QCh+85mCy+h0IGff8r5XWzOVSbBO+KfeYrMQh7NJ58QujwcE22u+NUSmUxqF+un70P9GXKxa2HCNiTTMJknyjQ== ua-parser-js@^0.7.30: version "0.7.31" From 52c44c600cdd9f792ba0d798133a79528511b75e Mon Sep 17 00:00:00 2001 From: xmflsct Date: Mon, 10 Oct 2022 23:28:40 +0200 Subject: [PATCH 02/12] Fixed #397 --- src/components/Parse/HTML.tsx | 32 ++++++---------------- src/components/Timeline/Shared/Content.tsx | 14 ++-------- 2 files changed, 12 insertions(+), 34 deletions(-) diff --git a/src/components/Parse/HTML.tsx b/src/components/Parse/HTML.tsx index b42b28c8..bd0fd13a 100644 --- a/src/components/Parse/HTML.tsx +++ b/src/components/Parse/HTML.tsx @@ -76,9 +76,7 @@ const renderNode = ({ ) } else if (classes.includes('mention') && mentions) { - const accountIndex = mentions.findIndex( - mention => mention.url === href - ) + const accountIndex = mentions.findIndex(mention => mention.url === href) const differentAccount = routeParams?.account ? routeParams.account.id !== mentions[accountIndex]?.id : true @@ -86,8 +84,7 @@ const renderNode = ({ `#${tag.name}` === content).length > 0 + const content = node.children && node.children[0] && node.children[0].data + const shouldBeTag = tags && tags.filter(tag => `#${tag.name}` === content).length > 0 return ( - {(content && content !== href && content) || - (showFullLink ? href : domain[1])} + {(content && content !== href && content) || (showFullLink ? href : domain[1])} {!shouldBeTag ? ( >() + const navigation = useNavigation>() const route = useRoute() const { colors, theme } = useTheme() const { t, i18n } = useTranslation('componentParse') @@ -254,7 +247,7 @@ const ParseHTML = React.memo( return ( - {typeof totalLines === 'number' ? ( + {typeof totalLines === 'number' || numberOfLines === 1 ? ( { @@ -296,10 +289,7 @@ const ParseHTML = React.memo( { - if ( - numberOfLines === 1 || - nativeEvent.lines.length >= numberOfLines + 5 - ) { + if (numberOfLines === 1 || nativeEvent.lines.length >= numberOfLines + 5) { setTotalLines(nativeEvent.lines.length) } }} @@ -307,11 +297,7 @@ const ParseHTML = React.memo( height: numberOfLines === 1 && !expanded ? 0 : undefined }} numberOfLines={ - typeof totalLines === 'number' - ? expanded - ? 999 - : numberOfLines - : undefined + typeof totalLines === 'number' ? (expanded ? 999 : numberOfLines) : undefined } selectable={selectable} /> diff --git a/src/components/Timeline/Shared/Content.tsx b/src/components/Timeline/Shared/Content.tsx index 25df7d5b..cfdbcbb7 100644 --- a/src/components/Timeline/Shared/Content.tsx +++ b/src/components/Timeline/Shared/Content.tsx @@ -9,18 +9,12 @@ export interface Props { mentions?: Mastodon.Status['mentions'] tags?: Mastodon.Status['tags'] } - numberOfLines?: number highlighted?: boolean disableDetails?: boolean } const TimelineContent = React.memo( - ({ - status, - numberOfLines, - highlighted = false, - disableDetails = false - }: Props) => { + ({ status, highlighted = false, disableDetails = false }: Props) => { const { t } = useTranslation('componentTimeline') const instanceAccount = useSelector(getInstanceAccount, () => true) @@ -46,9 +40,7 @@ const TimelineContent = React.memo( emojis={status.emojis} mentions={status.mentions} tags={status.tags} - numberOfLines={ - instanceAccount.preferences['reading:expand:spoilers'] ? 999 : 1 - } + numberOfLines={instanceAccount.preferences['reading:expand:spoilers'] ? 999 : 1} expandHint={t('shared.content.expandHint')} highlighted={highlighted} disableDetails={disableDetails} @@ -62,7 +54,7 @@ const TimelineContent = React.memo( emojis={status.emojis} mentions={status.mentions} tags={status.tags} - numberOfLines={highlighted ? 999 : numberOfLines} + numberOfLines={highlighted ? 999 : undefined} disableDetails={disableDetails} /> )} From 34d02c9ca3cc974ef4e0e6484625337e28504e1e Mon Sep 17 00:00:00 2001 From: xmflsct Date: Mon, 10 Oct 2022 23:28:55 +0200 Subject: [PATCH 03/12] Fixed #394 --- src/screens/Tabs/Local.tsx | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/screens/Tabs/Local.tsx b/src/screens/Tabs/Local.tsx index c7ff98ae..7b30a1c6 100644 --- a/src/screens/Tabs/Local.tsx +++ b/src/screens/Tabs/Local.tsx @@ -9,6 +9,7 @@ import { QueryKeyTimeline } from '@utils/queryHooks/timeline' import layoutAnimation from '@utils/styles/layoutAnimation' import React, { useEffect, useState } from 'react' import { useTranslation } from 'react-i18next' +import { Platform } from 'react-native' import ContextMenu from 'react-native-context-menu-view' import TabSharedRoot from './Shared/Root' @@ -33,7 +34,7 @@ const TabLocal = React.memo( headerTitle: () => ( Date: Mon, 10 Oct 2022 23:43:26 +0200 Subject: [PATCH 04/12] Fixed #398 --- .../Timeline/Shared/Attachment/Video.tsx | 25 +++++++------------ 1 file changed, 9 insertions(+), 16 deletions(-) diff --git a/src/components/Timeline/Shared/Attachment/Video.tsx b/src/components/Timeline/Shared/Attachment/Video.tsx index 054c1077..6771438d 100644 --- a/src/components/Timeline/Shared/Attachment/Video.tsx +++ b/src/components/Timeline/Shared/Attachment/Video.tsx @@ -7,6 +7,7 @@ import { Blurhash } from 'react-native-blurhash' import attachmentAspectRatio from './aspectRatio' import analytics from '@components/analytics' import AttachmentAltText from './AltText' +import { Platform } from 'expo-modules-core' export interface Props { total: number @@ -27,6 +28,7 @@ const AttachmentVideo: React.FC = ({ const [videoLoading, setVideoLoading] = useState(false) const [videoLoaded, setVideoLoaded] = useState(false) const [videoPosition, setVideoPosition] = useState(0) + const [videoResizeMode, setVideoResizeMode] = useState(ResizeMode.COVER) const playOnPress = useCallback(async () => { analytics('timeline_shared_attachment_video_length', { length: video.meta?.length @@ -39,6 +41,7 @@ const AttachmentVideo: React.FC = ({ if (!videoLoaded) { await videoPlayer.current?.loadAsync({ uri: video.url }) } + Platform.OS === 'android' && setVideoResizeMode(ResizeMode.CONTAIN) await videoPlayer.current?.setPositionAsync(videoPosition) await videoPlayer.current?.presentFullscreenPlayer() videoPlayer.current?.playAsync() @@ -62,11 +65,7 @@ const AttachmentVideo: React.FC = ({ const _handleAppStateChange = async (nextAppState: AppStateStatus) => { if (appState.current.match(/active/) && nextAppState.match(/inactive/)) { await videoPlayer.current?.pauseAsync() - } else if ( - gifv && - appState.current.match(/background/) && - nextAppState.match(/active/) - ) { + } else if (gifv && appState.current.match(/background/) && nextAppState.match(/active/)) { await videoPlayer.current?.setIsMutedAsync(true) await videoPlayer.current?.playAsync() } @@ -99,7 +98,7 @@ const AttachmentVideo: React.FC = ({ opacity: sensitiveShown ? 0 : 1 }} usePoster - resizeMode={ResizeMode.COVER} + resizeMode={videoResizeMode} {...(gifv ? { shouldPlay: true, @@ -113,12 +112,9 @@ const AttachmentVideo: React.FC = ({ })} useNativeControls={false} onFullscreenUpdate={async event => { - if ( - event.fullscreenUpdate === VideoFullscreenUpdate.PLAYER_DID_DISMISS - ) { - if (gifv) { - await videoPlayer.current?.pauseAsync() - } else { + if (event.fullscreenUpdate === VideoFullscreenUpdate.PLAYER_DID_DISMISS) { + Platform.OS === 'android' && setVideoResizeMode(ResizeMode.COVER) + if (!gifv) { await videoPlayer.current?.pauseAsync() } } @@ -156,10 +152,7 @@ const AttachmentVideo: React.FC = ({ loading={videoLoading} /> ) : null} - + ) From d2272d5d309b2de82335b56d917d5b8a7d7ff980 Mon Sep 17 00:00:00 2001 From: xmflsct Date: Mon, 10 Oct 2022 23:50:15 +0200 Subject: [PATCH 05/12] Fixed #385 Instead of providing an option to choose whether or not to include EXIF data, by default, EXIF are not included in the upload as Mastodon would not make use of the data anyway. --- src/components/mediaSelector.ts | 1 + src/i18n/en/components/mediaSelector.json | 10 +--------- 2 files changed, 2 insertions(+), 9 deletions(-) diff --git a/src/components/mediaSelector.ts b/src/components/mediaSelector.ts index 89404cd2..18ea1051 100644 --- a/src/components/mediaSelector.ts +++ b/src/components/mediaSelector.ts @@ -93,6 +93,7 @@ const mediaSelector = async ({ showActionSheetWithOptions( { title: i18next.t('componentMediaSelector:title'), + message: i18next.t('componentMediaSelector:message'), options: options(), cancelButtonIndex: mediaType ? 1 : 2 }, diff --git a/src/i18n/en/components/mediaSelector.json b/src/i18n/en/components/mediaSelector.json index adc0fa47..090ea97c 100644 --- a/src/i18n/en/components/mediaSelector.json +++ b/src/i18n/en/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "Select media source", + "message": "Media EXIF data are not uploaded", "options": { "image": "Upload photos", "image_max": "Upload photos (max {{max}})", "video": "Upload video", "video_max": "Upload video (max {{max}})" - }, - "library": { - "alert": { - "title": "No permission", - "message": "Require photo library read permission to upload", - "buttons": { - "settings": "Update setting" - } - } } } \ No newline at end of file From f6a4a7056c612ea2a3fecb5abcbeea88dbe4bf95 Mon Sep 17 00:00:00 2001 From: xmflsct Date: Mon, 10 Oct 2022 23:57:25 +0200 Subject: [PATCH 06/12] Fixed #382 --- ios/Podfile.lock | 8 ++++---- package.json | 2 +- src/screens/ImageViewer/save.ts | 2 +- yarn.lock | 10 +++++----- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 7f11aab2..11046c90 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -408,7 +408,7 @@ PODS: - React-Core - react-native-blurhash (1.1.10): - React-Core - - react-native-cameraroll (4.1.2): + - react-native-cameraroll (5.0.4): - React-Core - react-native-context-menu-view (1.5.4): - React @@ -638,7 +638,7 @@ DEPENDENCIES: - React-logger (from `../node_modules/react-native/ReactCommon/logger`) - "react-native-blur (from `../node_modules/@react-native-community/blur`)" - react-native-blurhash (from `../node_modules/react-native-blurhash`) - - "react-native-cameraroll (from `../node_modules/@react-native-community/cameraroll`)" + - "react-native-cameraroll (from `../node_modules/@react-native-camera-roll/camera-roll`)" - react-native-context-menu-view (from `../node_modules/react-native-context-menu-view`) - react-native-image-picker (from `../node_modules/react-native-image-picker`) - react-native-language-detection (from `../node_modules/react-native-language-detection`) @@ -783,7 +783,7 @@ EXTERNAL SOURCES: react-native-blurhash: :path: "../node_modules/react-native-blurhash" react-native-cameraroll: - :path: "../node_modules/@react-native-community/cameraroll" + :path: "../node_modules/@react-native-camera-roll/camera-roll" react-native-context-menu-view: :path: "../node_modules/react-native-context-menu-view" react-native-image-picker: @@ -905,7 +905,7 @@ SPEC CHECKSUMS: React-logger: ebb4d31bbbe4f1a8a1a9b658d7429210b8f68160 react-native-blur: 3e9c8e8e9f7d17fa1b94e1a0ae9fd816675f5382 react-native-blurhash: add4df9a937b4e021a24bc67a0714f13e0bd40b7 - react-native-cameraroll: 2957f2bce63ae896a848fbe0d5352c1bd4d20866 + react-native-cameraroll: 38b40d9033e4077b6c603f92f95c6d05fa7907df react-native-context-menu-view: b0beca02aad4bd9f9d7d932bf437e0a03baa69ef react-native-image-picker: 4bc9ed38c8be255b515d8c88babbaf74973f91a8 react-native-language-detection: 0e43195ad014974f1b7a31b64820eff34a243f2d diff --git a/package.json b/package.json index a015dfbc..21f1e490 100644 --- a/package.json +++ b/package.json @@ -28,9 +28,9 @@ "@mattermost/react-native-paste-input": "^0.5.1", "@neverdull-agency/expo-unlimited-secure-store": "^1.0.10", "@react-native-async-storage/async-storage": "^1.17.10", + "@react-native-camera-roll/camera-roll": "^5.0.4", "@react-native-clipboard/clipboard": "^1.11.1", "@react-native-community/blur": "^4.2.0", - "@react-native-community/cameraroll": "^4.1.2", "@react-native-community/netinfo": "^9.3.4", "@react-native-community/segmented-control": "^2.2.2", "@react-navigation/bottom-tabs": "^6.4.0", diff --git a/src/screens/ImageViewer/save.ts b/src/screens/ImageViewer/save.ts index 8388489c..6d605b89 100644 --- a/src/screens/ImageViewer/save.ts +++ b/src/screens/ImageViewer/save.ts @@ -1,6 +1,6 @@ import haptics from '@components/haptics' import { displayMessage } from '@components/Message' -import CameraRoll from '@react-native-community/cameraroll' +import { CameraRoll } from '@react-native-camera-roll/camera-roll' import { RootStackParamList } from '@utils/navigation/navigators' import { Theme } from '@utils/styles/themes' import * as FileSystem from 'expo-file-system' diff --git a/yarn.lock b/yarn.lock index 4a4f7ae4..3ae9960c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -1786,6 +1786,11 @@ dependencies: merge-options "^3.0.4" +"@react-native-camera-roll/camera-roll@^5.0.4": + version "5.0.4" + resolved "https://registry.yarnpkg.com/@react-native-camera-roll/camera-roll/-/camera-roll-5.0.4.tgz#341b8275363ee496b796fa58cb592697798d39e5" + integrity sha512-3kBRgW3VfmLQmQm70gPUVDu8rPSZymoPc9vmeiPLMKBqtWaqPNuPX0jQ6mZ8AEtYbBdoWC360Q4YYPalXv37zA== + "@react-native-clipboard/clipboard@^1.11.1": version "1.11.1" resolved "https://registry.yarnpkg.com/@react-native-clipboard/clipboard/-/clipboard-1.11.1.tgz#d3a9e685ce2383b1e92b89a334896c5575cc103d" @@ -1796,11 +1801,6 @@ resolved "https://registry.yarnpkg.com/@react-native-community/blur/-/blur-4.2.0.tgz#f100d0ba220ecfed26be3c0ad2ceffa5eee17533" integrity sha512-StgP5zQJOCHqDRjmcKnzVkJ920S6DYBKRJfigSUnlkNQp+HzZtVtyKq0j5a7x84NtHcV7j8Uy5mz1Lx9ZKRKfA== -"@react-native-community/cameraroll@^4.1.2": - version "4.1.2" - resolved "https://registry.yarnpkg.com/@react-native-community/cameraroll/-/cameraroll-4.1.2.tgz#489c6bb6137571540d93c543d5fcf8c652b548ec" - integrity sha512-jkdhMByMKD2CZ/5MPeBieYn8vkCfC4MOTouPpBpps3I8N6HUYJk+1JnDdktVYl2WINnqXpQptDA2YptVyifYAg== - "@react-native-community/cli-clean@^8.0.4": version "8.0.4" resolved "https://registry.yarnpkg.com/@react-native-community/cli-clean/-/cli-clean-8.0.4.tgz#97e16a20e207b95de12e29b03816e8f2b2c80cc7" From 87fa16c0be9dd240d59339ab51ffedfe3cee4601 Mon Sep 17 00:00:00 2001 From: xmflsct Date: Tue, 11 Oct 2022 00:17:58 +0200 Subject: [PATCH 07/12] New Crowdin updates (#400) * New translations mediaSelector.json (Chinese Traditional) * New translations mediaSelector.json (German) * New translations mediaSelector.json (Italian) * New translations mediaSelector.json (Japanese) * New translations mediaSelector.json (Korean) * New translations mediaSelector.json (Chinese Simplified) * New translations mediaSelector.json (Vietnamese) * New translations mediaSelector.json (Portuguese, Brazilian) * New translations mediaSelector.json (Chinese Simplified) --- src/i18n/de/components/mediaSelector.json | 10 +--------- src/i18n/it/components/mediaSelector.json | 10 +--------- src/i18n/ja/components/mediaSelector.json | 10 +--------- src/i18n/ko/components/mediaSelector.json | 10 +--------- src/i18n/pt_BR/components/mediaSelector.json | 10 +--------- src/i18n/vi/components/mediaSelector.json | 10 +--------- src/i18n/zh-Hans/components/mediaSelector.json | 10 +--------- src/i18n/zh-Hant/components/mediaSelector.json | 10 +--------- 8 files changed, 8 insertions(+), 72 deletions(-) diff --git a/src/i18n/de/components/mediaSelector.json b/src/i18n/de/components/mediaSelector.json index 8789b337..87b949a1 100644 --- a/src/i18n/de/components/mediaSelector.json +++ b/src/i18n/de/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "Datenquelle auswählen", + "message": "", "options": { "image": "", "image_max": "", "video": "", "video_max": "" - }, - "library": { - "alert": { - "title": "Kein Zugriff", - "message": "Für den Upload ist eine Zugriffsgenehmigung erforderlich", - "buttons": { - "settings": "Einstellungen bestätigen" - } - } } } \ No newline at end of file diff --git a/src/i18n/it/components/mediaSelector.json b/src/i18n/it/components/mediaSelector.json index 3816ac31..a91b2894 100644 --- a/src/i18n/it/components/mediaSelector.json +++ b/src/i18n/it/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "Seleziona origine media", + "message": "", "options": { "image": "Carica foto", "image_max": "Carica foto (massimo {{max}})", "video": "Carica video", "video_max": "Carica video (max {{max}})" - }, - "library": { - "alert": { - "title": "Permesso non concesso", - "message": "È richiesto l'accesso ai file del dispositivo per il caricamento dalla libreria", - "buttons": { - "settings": "Correggi impostazioni" - } - } } } \ No newline at end of file diff --git a/src/i18n/ja/components/mediaSelector.json b/src/i18n/ja/components/mediaSelector.json index d811edee..5fbbf341 100644 --- a/src/i18n/ja/components/mediaSelector.json +++ b/src/i18n/ja/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "メディアソースを選択", + "message": "", "options": { "image": "写真をアップロード", "image_max": "写真をアップロード (最大{{max}}枚)", "video": "動画をアップロード", "video_max": "動画をアップロード (最大{{max}}本)" - }, - "library": { - "alert": { - "title": "権限がありません", - "message": "アップロードするにはフォトライブラリの読み取り許可が必要です", - "buttons": { - "settings": "設定を更新する" - } - } } } \ No newline at end of file diff --git a/src/i18n/ko/components/mediaSelector.json b/src/i18n/ko/components/mediaSelector.json index 2d15ced1..d7beb132 100644 --- a/src/i18n/ko/components/mediaSelector.json +++ b/src/i18n/ko/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "미디어 소스 선택", + "message": "", "options": { "image": "", "image_max": "", "video": "", "video_max": "" - }, - "library": { - "alert": { - "title": "권한 없음", - "message": "업로드를 위해 사진 라이브러리 권한이 필요해요", - "buttons": { - "settings": "설정 업데이트" - } - } } } \ No newline at end of file diff --git a/src/i18n/pt_BR/components/mediaSelector.json b/src/i18n/pt_BR/components/mediaSelector.json index f100048b..62fa2f29 100644 --- a/src/i18n/pt_BR/components/mediaSelector.json +++ b/src/i18n/pt_BR/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "Selecionar fonte de mídia", + "message": "", "options": { "image": "Enviar fotos", "image_max": "Carregar fotos (máx. {{max}})", "video": "Enviar vídeo", "video_max": "Carregar vídeo (máx. {{max}})" - }, - "library": { - "alert": { - "title": "Sem permissão", - "message": "Exigir permissão de leitura da biblioteca de fotos para fazer upload", - "buttons": { - "settings": "Atualizar configurações" - } - } } } \ No newline at end of file diff --git a/src/i18n/vi/components/mediaSelector.json b/src/i18n/vi/components/mediaSelector.json index e06ffcbc..12e8a2b1 100644 --- a/src/i18n/vi/components/mediaSelector.json +++ b/src/i18n/vi/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "Chọn nguồn", + "message": "", "options": { "image": "Tải ảnh lên", "image_max": "Tải ảnh lên (tối đa {{max}})", "video": "Tải video lên", "video_max": "Tải video lên (tối đa {{max}})" - }, - "library": { - "alert": { - "title": "Chưa được cấp quyền", - "message": "Bạn cần cấp quyền đọc thư viện ảnh trước", - "buttons": { - "settings": "Cài đặt cập nhật" - } - } } } \ No newline at end of file diff --git a/src/i18n/zh-Hans/components/mediaSelector.json b/src/i18n/zh-Hans/components/mediaSelector.json index 039007b7..004a8b08 100644 --- a/src/i18n/zh-Hans/components/mediaSelector.json +++ b/src/i18n/zh-Hans/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "选择媒体", + "message": "媒体EXIF数据不被上传", "options": { "image": "上传图片", "image_max": "上传照片(上限 {{max}})", "video": "上传视频", "video_max": "上传视频(上限 {{max}})" - }, - "library": { - "alert": { - "title": "无权限", - "message": "需要读取相册权限才能上传附件", - "buttons": { - "settings": "去更新设置" - } - } } } \ No newline at end of file diff --git a/src/i18n/zh-Hant/components/mediaSelector.json b/src/i18n/zh-Hant/components/mediaSelector.json index 1f0d0b96..ba000d9d 100644 --- a/src/i18n/zh-Hant/components/mediaSelector.json +++ b/src/i18n/zh-Hant/components/mediaSelector.json @@ -1,18 +1,10 @@ { "title": "選擇媒體來源", + "message": "", "options": { "image": "", "image_max": "", "video": "", "video_max": "" - }, - "library": { - "alert": { - "title": "權限不足", - "message": "上傳照片需要讀取的權限", - "buttons": { - "settings": "更新設定" - } - } } } \ No newline at end of file From b00f4c47fefa9c53e2e1dc95e70d7dbe85cf150b Mon Sep 17 00:00:00 2001 From: xmflsct Date: Tue, 11 Oct 2022 01:07:58 +0200 Subject: [PATCH 08/12] Update build.yml --- .github/workflows/build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 42ee26b5..b28323f2 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -25,7 +25,7 @@ jobs: run: bundle install - name: -- Step 5 -- Run fastlane env: - DEVELOPER_DIR: /Applications/Xcode_14.0.1.app/Contents/Developer + DEVELOPER_DIR: /Applications/Xcode_13.4.1.app/Contents/Developer ENVIRONMENT: ${{ steps.branch.outputs.branch }} SENTRY_ENVIRONMENT: ${{ steps.branch.outputs.branch }} LC_ALL: en_US.UTF-8 From 757e5bb52f7f3aca8a23ceaa84bfa25e18ba0c83 Mon Sep 17 00:00:00 2001 From: xmflsct Date: Tue, 11 Oct 2022 22:25:28 +0200 Subject: [PATCH 09/12] Bump packages --- ios/Podfile.lock | 8 ++++---- package.json | 8 ++++---- yarn.lock | 34 ++++++++++++++++++---------------- 3 files changed, 26 insertions(+), 24 deletions(-) diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 11046c90..15433266 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -536,7 +536,7 @@ PODS: - React-Core - SDWebImage (~> 5.13.4) - SDWebImageWebPCoder (~> 0.9.0) - - RNGestureHandler (2.7.0): + - RNGestureHandler (2.7.1): - React-Core - RNReanimated (2.10.0): - DoubleConversion @@ -565,7 +565,7 @@ PODS: - React-RCTText - ReactCommon/turbomodule/core - Yoga - - RNScreens (3.18.0): + - RNScreens (3.18.1): - React-Core - React-RCTImage - RNSentry (4.6.1): @@ -929,9 +929,9 @@ SPEC CHECKSUMS: RNCAsyncStorage: 0c357f3156fcb16c8589ede67cc036330b6698ca RNCClipboard: 2834e1c4af68697089cdd455ee4a4cdd198fa7dd RNFastImage: e6267e27581b81918ebef6432c94c20718ec3b91 - RNGestureHandler: 7673697e7c0e9391adefae4faa087442bc04af33 + RNGestureHandler: b7a872907ee289ada902127f2554fa1d2c076122 RNReanimated: 7faa787e8d4493fbc95fab2ad331fa7625828cfa - RNScreens: f3230dd008a7d0ce5c0a8bc78ff12cf2315bda24 + RNScreens: 1b7bb502dac62cc4cf01b94bea591c8da275132f RNSentry: f8591057d48d4f6d64196a76cbca67895667b033 RNShareMenu: cb9dac548c8bf147d06f0bf07296ad51ea9f5fc3 RNSVG: 42a0c731b11179ebbd27a3eeeafa7201ebb476ff diff --git a/package.json b/package.json index 21f1e490..e10100d9 100644 --- a/package.json +++ b/package.json @@ -35,7 +35,7 @@ "@react-native-community/segmented-control": "^2.2.2", "@react-navigation/bottom-tabs": "^6.4.0", "@react-navigation/native": "^6.0.13", - "@react-navigation/native-stack": "^6.9.0", + "@react-navigation/native-stack": "^6.9.1", "@react-navigation/stack": "^6.3.2", "@reduxjs/toolkit": "^1.8.6", "@sentry/react-native": "^4.6.1", @@ -75,7 +75,7 @@ "react-native-fast-image": "^8.6.1", "react-native-feather": "^1.1.2", "react-native-flash-message": "^0.3.1", - "react-native-gesture-handler": "^2.7.0", + "react-native-gesture-handler": "^2.7.1", "react-native-htmlview": "^0.16.0", "react-native-image-picker": "^4.10.0", "react-native-language-detection": "^0.1.0", @@ -83,11 +83,11 @@ "react-native-reanimated": "^2.10.0", "react-native-reanimated-zoom": "^0.3.1", "react-native-safe-area-context": "^4.4.1", - "react-native-screens": "^3.18.0", + "react-native-screens": "^3.18.1", "react-native-share-menu": "^6.0.0", "react-native-svg": "13.0.0", "react-native-swipe-list-view": "^3.2.9", - "react-native-tab-view": "^3.2.1", + "react-native-tab-view": "^3.3.0", "react-query": "^3.39.2", "react-redux": "^8.0.4", "redux-persist": "^6.0.0", diff --git a/yarn.lock b/yarn.lock index 3ae9960c..aa775212 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2022,10 +2022,10 @@ resolved "https://registry.yarnpkg.com/@react-navigation/elements/-/elements-1.3.6.tgz#fa700318528db93f05144b1be4b691b9c1dd1abe" integrity sha512-pNJ8R9JMga6SXOw6wGVN0tjmE6vegwPmJBL45SEMX2fqTfAk2ykDnlJHodRpHpAgsv0DaI8qX76z3A+aqKSU0w== -"@react-navigation/native-stack@^6.9.0": - version "6.9.0" - resolved "https://registry.yarnpkg.com/@react-navigation/native-stack/-/native-stack-6.9.0.tgz#1e79e06da8b81f0368d3709aedca269947da3649" - integrity sha512-cwqm/2GO0hf94OFRuH6R0beZPVKY4vMFxrdAPaDwwoukN5a0UgcsMYxrN8s2huwssTCuGScABFME9GnqG5hC5w== +"@react-navigation/native-stack@^6.9.1": + version "6.9.1" + resolved "https://registry.yarnpkg.com/@react-navigation/native-stack/-/native-stack-6.9.1.tgz#6013300e4cd0b33e242aa18593e4dff7db2ab3d1" + integrity sha512-aOuJP97ge6NRz8wH6sDKfLTfdygGmraYh0apKrrVbGvMnflbPX4kpjQiAQcUPUpMeas0betH/Su8QubNL8HEkg== dependencies: "@react-navigation/elements" "^1.3.6" warn-once "^0.1.0" @@ -6985,10 +6985,10 @@ react-native-flash-message@^0.3.1: prop-types "^15.8.1" react-native-iphone-x-helper "^1.3.1" -react-native-gesture-handler@^2.7.0: - version "2.7.0" - resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.7.0.tgz#53ad828add926c8e025f68ea581758c0f8893054" - integrity sha512-0jr3FNm2R3gv/v6XTtENgjv0fewD6LEct8EWmXw/oHw36M3YiIIpxnW57thL+0YiKwyLBXN0QHL4JZbs/heW2Q== +react-native-gesture-handler@^2.7.1: + version "2.7.1" + resolved "https://registry.yarnpkg.com/react-native-gesture-handler/-/react-native-gesture-handler-2.7.1.tgz#c109d33c38cb182fafcda13012b77c6cac43b127" + integrity sha512-Rnak7U4v3ZB+vjVghv5CvAGS+UfRLsXUq7Nq+FycloxZ7jUZjBo+7rPnt+EdTIE2zc2pKhQHIQKcD+IAPg2Scg== dependencies: "@egjs/hammerjs" "^2.0.17" hoist-non-react-statics "^3.3.0" @@ -7052,10 +7052,10 @@ react-native-safe-area-context@^4.4.1: resolved "https://registry.yarnpkg.com/react-native-safe-area-context/-/react-native-safe-area-context-4.4.1.tgz#239c60b8a9a80eac70a38a822b04c0f1d15ffc01" integrity sha512-N9XTjiuD73ZpVlejHrUWIFZc+6Z14co1K/p1IFMkImU7+avD69F3y+lhkqA2hN/+vljdZrBSiOwXPkuo43nFQA== -react-native-screens@^3.18.0: - version "3.18.0" - resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-3.18.0.tgz#e10ec54d8b158d47f66dc6c9a81e5a042e33037d" - integrity sha512-ndnz5JPLMLq/ThCYQzAOT65x6B4bdKFH1GKckUdbxKrwINGItPRSUiAoVI7YYyOQOa4VYL4hF37rrx+AjgjtRg== +react-native-screens@^3.18.1: + version "3.18.1" + resolved "https://registry.yarnpkg.com/react-native-screens/-/react-native-screens-3.18.1.tgz#19059f34a29a2ff4247ebb1bf0c2f9beacec1ec4" + integrity sha512-GtEC1AbvpvtKDJldavuONF/hXW1aEZO7qz8SioyHrV9L9/nDiy+iTviMFmeEoix9KwmEHHxoYxc0xiDrFxKHyA== dependencies: react-freeze "^1.0.0" warn-once "^0.1.0" @@ -7078,10 +7078,12 @@ react-native-swipe-list-view@^3.2.9: resolved "https://registry.yarnpkg.com/react-native-swipe-list-view/-/react-native-swipe-list-view-3.2.9.tgz#d725c7cdf481dd5df12a00dbfe0120013b5f2e59" integrity sha512-SjAEuHc/D6ovp+RjDUhfNmw6NYOntdT7+GFhfMGfP/BSLMuMWynpzJy9GKQeyB8sI78T6Lzip21TVbongOg1Mw== -react-native-tab-view@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-3.2.1.tgz#1da975203ef30996c412f9c2808bb81e12c3376f" - integrity sha512-/3htrnDJ8hXXO6M5tDKgGPan5NhiVG4oN6SH8LgQtbAO2y+YI104sjlbPOxhLUBpbj43tOQerUtJF7ENcHEPaw== +react-native-tab-view@^3.3.0: + version "3.3.0" + resolved "https://registry.yarnpkg.com/react-native-tab-view/-/react-native-tab-view-3.3.0.tgz#3d24ae4f4c55cfd54cd1d2d1f8915b0b2c33a5da" + integrity sha512-xjAQe657Gp/de2QHb7ptksTg8Jcb+j3fLAdcYryzfavt/pe+HtKLpkCtQsxyIJpRrAO7YPxFsymi2N4MnNfePA== + dependencies: + use-latest-callback "^0.1.5" react-native@^0.69.6: version "0.69.6" From e605a35e3a80ae558936b717e3cd2b899a7acd3f Mon Sep 17 00:00:00 2001 From: xmflsct Date: Tue, 11 Oct 2022 22:28:59 +0200 Subject: [PATCH 10/12] Use system's preferred language for iOS --- ios/ja.lproj/InfoPlist.strings | 2 ++ ios/tooot.xcodeproj/project.pbxproj | 5 ++++- src/App.tsx | 11 +++++++++-- src/screens/Tabs/Me/Settings/App.tsx | 14 +++++++++----- 4 files changed, 24 insertions(+), 8 deletions(-) create mode 100644 ios/ja.lproj/InfoPlist.strings diff --git a/ios/ja.lproj/InfoPlist.strings b/ios/ja.lproj/InfoPlist.strings new file mode 100644 index 00000000..025e9777 --- /dev/null +++ b/ios/ja.lproj/InfoPlist.strings @@ -0,0 +1,2 @@ +"NSPhotoLibraryAddUsageDescription" = "tooot が画像をカメラロールに保存できるようにします"; +"NSPhotoLibraryUsageDescription" = "tooot が画像をカメラロールに保存できるようにします"; diff --git a/ios/tooot.xcodeproj/project.pbxproj b/ios/tooot.xcodeproj/project.pbxproj index 4191bd59..413887e6 100644 --- a/ios/tooot.xcodeproj/project.pbxproj +++ b/ios/tooot.xcodeproj/project.pbxproj @@ -81,6 +81,7 @@ E69EBACC28DF28420057EDEC /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/InfoPlist.strings; sourceTree = ""; }; E69EBACD28DF284D0057EDEC /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/InfoPlist.strings"; sourceTree = ""; }; E69EBACE28DF28560057EDEC /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/InfoPlist.strings; sourceTree = ""; }; + E6C8B26628F5F9FC0062CF2E /* ja */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ja; path = ja.lproj/InfoPlist.strings; sourceTree = ""; }; ED297162215061F000B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = System/Library/Frameworks/JavaScriptCore.framework; sourceTree = SDKROOT; }; ED2971642150620600B7C4FE /* JavaScriptCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = JavaScriptCore.framework; path = Platforms/AppleTVOS.platform/Developer/SDKs/AppleTVOS12.0.sdk/System/Library/Frameworks/JavaScriptCore.framework; sourceTree = DEVELOPER_DIR; }; /* End PBXFileReference section */ @@ -287,6 +288,7 @@ ko, "pt-BR", vi, + ja, ); mainGroup = 83CBB9F61A601CBA00E9B192; productRefGroup = 83CBBA001A601CBA00E9B192 /* Products */; @@ -338,7 +340,7 @@ ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "set -e\nexport SENTRY_PROPERTIES=sentry.properties\nexport EXTRA_PACKAGER_ARGS=\"--sourcemap-output $DERIVED_FILE_DIR/main.jsbundle.map\"\nset -e\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\nSENTRY_CLI_PATH=\"../node_modules/@sentry/cli/bin/sentry-cli\"\n/bin/sh -c \"$WITH_ENVIRONMENT \\\"$SENTRY_CLI_PATH react-native xcode $REACT_NATIVE_XCODE\\\"\""; + shellScript = "set -e\nexport SENTRY_PROPERTIES=sentry.properties\nexport EXTRA_PACKAGER_ARGS=\"--sourcemap-output $DERIVED_FILE_DIR/main.jsbundle.map\"\nset -e\n\nWITH_ENVIRONMENT=\"../node_modules/react-native/scripts/xcode/with-environment.sh\"\nREACT_NATIVE_XCODE=\"../node_modules/react-native/scripts/react-native-xcode.sh\"\nSENTRY_CLI_PATH=\"../node_modules/@sentry/cli/bin/sentry-cli\"\n/bin/sh -c \"$WITH_ENVIRONMENT \\\"$SENTRY_CLI_PATH react-native xcode $REACT_NATIVE_XCODE\\\"\"\n"; }; 08A4A3CD28434E44B6B9DE2E /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; @@ -511,6 +513,7 @@ E69EBACC28DF28420057EDEC /* ko */, E69EBACD28DF284D0057EDEC /* pt-BR */, E69EBACE28DF28560057EDEC /* vi */, + E6C8B26628F5F9FC0062CF2E /* ja */, ); name = InfoPlist.strings; sourceTree = ""; diff --git a/src/App.tsx b/src/App.tsx index 17c57664..d88682bf 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -14,6 +14,7 @@ import * as Sentry from '@sentry/react-native' import AccessibilityManager from '@utils/accessibility/AccessibilityManager' import { changeLanguage, getSettingsLanguage } from '@utils/slices/settingsSlice' import ThemeManager from '@utils/styles/ThemeManager' +import * as Localization from 'expo-localization' import * as SplashScreen from 'expo-splash-screen' import React, { useCallback, useEffect, useState } from 'react' import { LogBox, Platform } from 'react-native' @@ -81,9 +82,15 @@ const App: React.FC = () => { log('log', 'App', 'bootstrapped') if (bootstrapped) { log('log', 'App', 'loading actual app :)') - const language = getSettingsLanguage(store.getState()) + log('log', 'App', `Locale: ${Localization.locale}`) + const language = + Platform.OS === 'ios' + ? Localization.locale + : getSettingsLanguage(store.getState()) if (!language) { - store.dispatch(changeLanguage('en')) + if (Platform.OS !== 'ios') { + store.dispatch(changeLanguage('en')) + } i18n.changeLanguage('en') } else { i18n.changeLanguage(language) diff --git a/src/screens/Tabs/Me/Settings/App.tsx b/src/screens/Tabs/Me/Settings/App.tsx index 8c9c4582..5b32e359 100644 --- a/src/screens/Tabs/Me/Settings/App.tsx +++ b/src/screens/Tabs/Me/Settings/App.tsx @@ -16,8 +16,10 @@ import { getSettingsStaticEmoji, changeStaticEmoji } from '@utils/slices/settingsSlice' +import * as Localization from 'expo-localization' import React from 'react' import { useTranslation } from 'react-i18next' +import { Linking, Platform } from 'react-native' import { useSelector } from 'react-redux' import { mapFontsizeToName } from '../SettingsFontsize' @@ -37,18 +39,20 @@ const SettingsApp: React.FC = () => { navigation.navigate('Tab-Me-Settings-Fontsize')} /> navigation.navigate('Tab-Me-Settings-Language')} + onPress={() => + Platform.OS === 'ios' + ? Linking.openSettings() + : navigation.navigate('Tab-Me-Settings-Language') + } /> Date: Tue, 11 Oct 2022 22:30:18 +0200 Subject: [PATCH 11/12] Update Fastfile --- fastlane/Fastfile | 1 - 1 file changed, 1 deletion(-) diff --git a/fastlane/Fastfile b/fastlane/Fastfile index c27497fe..66d35884 100644 --- a/fastlane/Fastfile +++ b/fastlane/Fastfile @@ -35,7 +35,6 @@ private_lane :build_ios do build_ios_app( export_method: "app-store", include_symbols: true, - include_bitcode: true, output_directory: BUILD_DIRECTORY, silent: false ) From 1dc91c160d34583456f71e608c19646e039b5dd2 Mon Sep 17 00:00:00 2001 From: xmflsct Date: Tue, 11 Oct 2022 22:30:36 +0200 Subject: [PATCH 12/12] New translations mediaSelector.json (Vietnamese) (#403) --- src/i18n/vi/components/mediaSelector.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/i18n/vi/components/mediaSelector.json b/src/i18n/vi/components/mediaSelector.json index 12e8a2b1..bd5a7e44 100644 --- a/src/i18n/vi/components/mediaSelector.json +++ b/src/i18n/vi/components/mediaSelector.json @@ -1,6 +1,6 @@ { "title": "Chọn nguồn", - "message": "", + "message": "Chưa tải lên EXIF hình ảnh", "options": { "image": "Tải ảnh lên", "image_max": "Tải ảnh lên (tối đa {{max}})",