Skip to content

Commit 13b9d29

Browse files
committed
Merge branch 'main' into fix_80603
2 parents 3c643d7 + 8372553 commit 13b9d29

323 files changed

Lines changed: 14139 additions & 3995 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.github/workflows/generateTranslations.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -141,6 +141,7 @@ jobs:
141141
EOF
142142
)"
143143
readonly PARROT_FOOTER
144+
readonly WORKFLOW_RUN_LINK="[View workflow run](${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }})"
144145
145146
if [ "$PATCH_SIZE" -le "$MAX_COMMENT_SIZE" ]; then
146147
# Small diff - include in comment
@@ -159,6 +160,8 @@ jobs:
159160
echo '</details>'
160161
echo
161162
echo "$PARROT_FOOTER 😉"
163+
echo
164+
echo "${WORKFLOW_RUN_LINK}"
162165
} > "$TEMP_COMMENT_FILE"
163166
else
164167
# Large diff - upload as gist and link
@@ -176,6 +179,8 @@ jobs:
176179
echo "📋 **[View the translation diff here](${GIST_URL})** 📋"
177180
echo
178181
echo "$PARROT_FOOTER_WITH_CMD 😉"
182+
echo
183+
echo "${WORKFLOW_RUN_LINK}"
179184
} > "$TEMP_COMMENT_FILE"
180185
fi
181186

.github/workflows/preDeploy.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,12 @@ jobs:
5858

5959
- name: Check if merged pull request should trigger a deploy
6060
id: shouldDeploy
61-
run: echo "SHOULD_DEPLOY=${{ (!fromJSON(steps.isStagingDeployLocked.outputs.IS_LOCKED) && github.actor != 'OSBotify') }}" >> "$GITHUB_OUTPUT"
61+
run: |
62+
if gh api /orgs/Expensify/teams/mobile-deployers/memberships/${{ github.actor }} --silent; then
63+
echo "SHOULD_DEPLOY=${{ (!fromJSON(steps.isStagingDeployLocked.outputs.IS_LOCKED) && github.actor != 'OSBotify') }}" >> "$GITHUB_OUTPUT"
64+
else
65+
echo "SHOULD_DEPLOY=false" >> "$GITHUB_OUTPUT"
66+
fi
6267
6368
skipDeploy:
6469
runs-on: ubuntu-latest

Mobile-Expensify

android/app/build.gradle

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -114,8 +114,8 @@ android {
114114
minSdkVersion rootProject.ext.minSdkVersion
115115
targetSdkVersion rootProject.ext.targetSdkVersion
116116
multiDexEnabled rootProject.ext.multiDexEnabled
117-
versionCode 1009031101
118-
versionName "9.3.11-1"
117+
versionCode 1009031117
118+
versionName "9.3.11-17"
119119
// Supported language variants must be declared here to avoid from being removed during the compilation.
120120
// This also helps us to not include unnecessary language variants in the APK.
121121
resConfigs "en", "es"

android/app/proguard-rules.pro

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,4 +47,7 @@
4747
-dontwarn org.jmrtd.protocol.BACResult
4848
-dontwarn org.jmrtd.protocol.PACEResult
4949
-dontwarn org.spongycastle.jce.provider.BouncyCastleProvider
50-
-dontwarn org.slf4j.impl.StaticLoggerBinder
50+
-dontwarn org.slf4j.impl.StaticLoggerBinder
51+
52+
# https://shopify.github.io/react-native-skia/docs/getting-started/installation/#proguard
53+
-keep class com.shopify.reactnative.skia.** { *; }

android/app/src/main/java/com/expensify/chat/MainApplication.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ class MainApplication : MultiDexApplication(), ReactApplication {
4242
add(NavBarManagerPackage())
4343
}
4444

45-
override fun getJSMainModuleName() = "index"
45+
override fun getJSMainModuleName() = ".expo/.virtual-metro-entry"
4646

4747
override val isNewArchEnabled: Boolean
4848
get() = BuildConfig.IS_NEW_ARCHITECTURE_ENABLED
2.1 KB
Loading
Lines changed: 1 addition & 1 deletion
Loading

babel.config.js

Lines changed: 1 addition & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -65,7 +65,7 @@ const webpack = {
6565
};
6666

6767
const metro = {
68-
presets: [[require('@react-native/babel-preset'), {disableImportExportTransform: true}]],
68+
presets: [require('@react-native/babel-preset')],
6969
plugins: [
7070
['babel-plugin-react-compiler', ReactCompilerConfig], // must run first!
7171

@@ -177,13 +177,5 @@ module.exports = (api) => {
177177
const runningIn = api.caller((args = {}) => args.name);
178178
console.debug(' - running in: ', runningIn);
179179

180-
const isJest = runningIn === 'babel-jest';
181-
if (isJest) {
182-
return {
183-
...metro,
184-
presets: [[require('@react-native/babel-preset'), {disableImportExportTransform: false}]],
185-
};
186-
}
187-
188180
return ['metro', 'babel-jest'].includes(runningIn) ? metro : webpack;
189181
};

config/webpack/webpack.common.ts

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,8 @@ const includeModules = [
5959
'expo-video',
6060
'expo-image-manipulator',
6161
'expo-modules-core',
62+
'victory-native',
63+
'@shopify/react-native-skia',
6264
].join('|');
6365

6466
const environmentToLogoSuffixMap: Record<string, string> = {
@@ -158,6 +160,9 @@ const getCommonConfiguration = ({file = '.env', platform = 'web'}: Environment):
158160

159161
// Group‑IB web SDK injection file
160162
{from: 'web/snippets/gib.js', to: 'gib.js'},
163+
164+
// CanvasKit WASM files for @shopify/react-native-skia web support (uses full version)
165+
{from: 'node_modules/canvaskit-wasm/bin/full/canvaskit.wasm'},
161166
],
162167
}),
163168
new webpack.EnvironmentPlugin({JEST_WORKER_ID: ''}),
@@ -236,7 +241,7 @@ const getCommonConfiguration = ({file = '.env', platform = 'web'}: Environment):
236241
* You can remove something from this list if it doesn't use "react-native" as an import and it doesn't
237242
* use JSX/JS that needs to be transformed by babel.
238243
*/
239-
exclude: [new RegExp(`node_modules/(?!(${includeModules})/).*|.native.js$`)],
244+
exclude: [new RegExp(`node_modules/(?!(${includeModules})/).*|\\.native\\.(js|jsx|ts|tsx)$`)],
240245
},
241246
// We are importing this worker as a string by using asset/source otherwise it will default to loading via an HTTPS request later.
242247
// This causes issues if we have gone offline before the pdfjs web worker is set up as we won't be able to load it from the server.
@@ -307,6 +312,10 @@ const getCommonConfiguration = ({file = '.env', platform = 'web'}: Environment):
307312
lodash: 'lodash-es',
308313
'react-native-config': 'react-web-config',
309314
'react-native$': 'react-native-web',
315+
// Use victory-native source files instead of pre-compiled dist (which uses CommonJS exports)
316+
'victory-native': path.resolve(dirname, '../../node_modules/victory-native/src/index.ts'),
317+
// Required for @shopify/react-native-skia web support
318+
'react-native/Libraries/Image/AssetRegistry': false,
310319
// Module alias for web
311320
// https://webpack.js.org/configuration/resolve/#resolvealias
312321
'@assets': path.resolve(dirname, '../../assets'),
@@ -330,6 +339,8 @@ const getCommonConfiguration = ({file = '.env', platform = 'web'}: Environment):
330339
fallback: {
331340
'process/browser': require.resolve('process/browser'),
332341
crypto: false,
342+
fs: false,
343+
path: false,
333344
},
334345
},
335346

0 commit comments

Comments
 (0)