From b7221e1fae1694fba0b43f157fb7000d619c08ff Mon Sep 17 00:00:00 2001 From: Marc Glasser Date: Mon, 19 Apr 2021 11:06:29 -1000 Subject: [PATCH 1/4] pod install and fix calback --- android/app/src/main/AndroidManifest.xml | 6 + .../java/com/expensify/chat/MainActivity.java | 8 + android/app/src/main/res/values/styles.xml | 5 + ios/Podfile.lock | 6 + package-lock.json | 547 +++++++++++++++++- package.json | 1 + src/Expensify.js | 22 +- src/components/OptionsList.js | 5 + src/pages/home/sidebar/SidebarLinks.js | 12 + 9 files changed, 605 insertions(+), 7 deletions(-) diff --git a/android/app/src/main/AndroidManifest.xml b/android/app/src/main/AndroidManifest.xml index ee0d714124fd..01f2ba8ded56 100644 --- a/android/app/src/main/AndroidManifest.xml +++ b/android/app/src/main/AndroidManifest.xml @@ -20,7 +20,13 @@ android:label="@string/app_name" android:configChanges="keyboard|keyboardHidden|orientation|screenSize|uiMode" android:launchMode="singleTask" + android:exported="true" android:windowSoftInputMode="adjustResize"> + + diff --git a/android/app/src/main/java/com/expensify/chat/MainActivity.java b/android/app/src/main/java/com/expensify/chat/MainActivity.java index ce14a042ffca..f078b7a57744 100644 --- a/android/app/src/main/java/com/expensify/chat/MainActivity.java +++ b/android/app/src/main/java/com/expensify/chat/MainActivity.java @@ -1,6 +1,8 @@ package com.expensify.chat; +import android.os.Bundle; import com.facebook.react.ReactActivity; +import com.zoontek.rnbootsplash.RNBootSplash; public class MainActivity extends ReactActivity { @@ -12,4 +14,10 @@ public class MainActivity extends ReactActivity { protected String getMainComponentName() { return "ExpensifyCash"; } + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + RNBootSplash.init(R.drawable.bootsplash, MainActivity.this); // <- display the generated bootsplash.xml drawable over our MainActivity + } } diff --git a/android/app/src/main/res/values/styles.xml b/android/app/src/main/res/values/styles.xml index 62fe59fa4854..52b047030d71 100644 --- a/android/app/src/main/res/values/styles.xml +++ b/android/app/src/main/res/values/styles.xml @@ -6,4 +6,9 @@ #000000 + + diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 645a20a47f9f..b1af438affe9 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -400,6 +400,8 @@ PODS: - React-jsi (= 0.63.3) - rn-fetch-blob (0.12.0): - React-Core + - RNBootSplash (3.2.0): + - React-Core - RNCAsyncStorage (1.12.1): - React-Core - RNCClipboard (1.5.1): @@ -490,6 +492,7 @@ DEPENDENCIES: - React-RCTVibration (from `../node_modules/react-native/Libraries/Vibration`) - ReactCommon/turbomodule/core (from `../node_modules/react-native/ReactCommon`) - rn-fetch-blob (from `../node_modules/rn-fetch-blob`) + - RNBootSplash (from `../node_modules/react-native-bootsplash`) - "RNCAsyncStorage (from `../node_modules/@react-native-community/async-storage`)" - "RNCClipboard (from `../node_modules/@react-native-community/clipboard`)" - "RNCMaskedView (from `../node_modules/@react-native-community/masked-view`)" @@ -600,6 +603,8 @@ EXTERNAL SOURCES: :path: "../node_modules/react-native/ReactCommon" rn-fetch-blob: :path: "../node_modules/rn-fetch-blob" + RNBootSplash: + :path: "../node_modules/react-native-bootsplash" RNCAsyncStorage: :path: "../node_modules/@react-native-community/async-storage" RNCClipboard: @@ -685,6 +690,7 @@ SPEC CHECKSUMS: React-RCTVibration: 8e9fb25724a0805107fc1acc9075e26f814df454 ReactCommon: 4167844018c9ed375cc01a843e9ee564399e53c3 rn-fetch-blob: f065bb7ab7fb48dd002629f8bdcb0336602d3cba + RNBootSplash: 3123ba68fe44d8be09a014e89cc8f0f55b68a521 RNCAsyncStorage: cb9a623793918c6699586281f0b51cbc38f046f9 RNCClipboard: 5e299c6df8e0c98f3d7416b86ae563d3a9f768a3 RNCMaskedView: f5c7d14d6847b7b44853f7acb6284c1da30a3459 diff --git a/package-lock.json b/package-lock.json index 23306f80390e..6d76540f9043 100644 --- a/package-lock.json +++ b/package-lock.json @@ -3065,6 +3065,338 @@ "chalk": "^3.0.0" } }, + "@jimp/bmp": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/bmp/-/bmp-0.16.1.tgz", + "integrity": "sha512-iwyNYQeBawrdg/f24x3pQ5rEx+/GwjZcCXd3Kgc+ZUd+Ivia7sIqBsOnDaMZdKCBPlfW364ekexnlOqyVa0NWg==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1", + "bmp-js": "^0.1.0" + } + }, + "@jimp/core": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/core/-/core-0.16.1.tgz", + "integrity": "sha512-la7kQia31V6kQ4q1kI/uLimu8FXx7imWVajDGtwUG8fzePLWDFJyZl0fdIXVCL1JW2nBcRHidUot6jvlRDi2+g==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1", + "any-base": "^1.1.0", + "buffer": "^5.2.0", + "exif-parser": "^0.1.12", + "file-type": "^9.0.0", + "load-bmfont": "^1.3.1", + "mkdirp": "^0.5.1", + "phin": "^2.9.1", + "pixelmatch": "^4.0.2", + "tinycolor2": "^1.4.1" + }, + "dependencies": { + "buffer": { + "version": "5.7.1", + "resolved": "https://registry.npmjs.org/buffer/-/buffer-5.7.1.tgz", + "integrity": "sha512-EHcyIPBQ4BSGlvjB16k5KgAJ27CIsHY/2JBmCRReo48y9rQ3MaUzWX3KVlBa4U7MyX02HdVj0K7C3WaB3ju7FQ==", + "requires": { + "base64-js": "^1.3.1", + "ieee754": "^1.1.13" + } + } + } + }, + "@jimp/custom": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/custom/-/custom-0.16.1.tgz", + "integrity": "sha512-DNUAHNSiUI/j9hmbatD6WN/EBIyeq4AO0frl5ETtt51VN1SvE4t4v83ZA/V6ikxEf3hxLju4tQ5Pc3zmZkN/3A==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/core": "^0.16.1" + } + }, + "@jimp/gif": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/gif/-/gif-0.16.1.tgz", + "integrity": "sha512-r/1+GzIW1D5zrP4tNrfW+3y4vqD935WBXSc8X/wm23QTY9aJO9Lw6PEdzpYCEY+SOklIFKaJYUAq/Nvgm/9ryw==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1", + "gifwrap": "^0.9.2", + "omggif": "^1.0.9" + } + }, + "@jimp/jpeg": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/jpeg/-/jpeg-0.16.1.tgz", + "integrity": "sha512-8352zrdlCCLFdZ/J+JjBslDvml+fS3Z8gttdml0We759PnnZGqrnPRhkOEOJbNUlE+dD4ckLeIe6NPxlS/7U+w==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1", + "jpeg-js": "0.4.2" + } + }, + "@jimp/plugin-blit": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-blit/-/plugin-blit-0.16.1.tgz", + "integrity": "sha512-fKFNARm32RoLSokJ8WZXHHH2CGzz6ire2n1Jh6u+XQLhk9TweT1DcLHIXwQMh8oR12KgjbgsMGvrMVlVknmOAg==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-blur": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-blur/-/plugin-blur-0.16.1.tgz", + "integrity": "sha512-1WhuLGGj9MypFKRcPvmW45ht7nXkOKu+lg3n2VBzIB7r4kKNVchuI59bXaCYQumOLEqVK7JdB4glaDAbCQCLyw==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-circle": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-circle/-/plugin-circle-0.16.1.tgz", + "integrity": "sha512-JK7yi1CIU7/XL8hdahjcbGA3V7c+F+Iw+mhMQhLEi7Q0tCnZ69YJBTamMiNg3fWPVfMuvWJJKOBRVpwNTuaZRg==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-color": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-color/-/plugin-color-0.16.1.tgz", + "integrity": "sha512-9yQttBAO5SEFj7S6nJK54f+1BnuBG4c28q+iyzm1JjtnehjqMg6Ljw4gCSDCvoCQ3jBSYHN66pmwTV74SU1B7A==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1", + "tinycolor2": "^1.4.1" + } + }, + "@jimp/plugin-contain": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-contain/-/plugin-contain-0.16.1.tgz", + "integrity": "sha512-44F3dUIjBDHN+Ym/vEfg+jtjMjAqd2uw9nssN67/n4FdpuZUVs7E7wadKY1RRNuJO+WgcD5aDQcsvurXMETQTg==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-cover": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-cover/-/plugin-cover-0.16.1.tgz", + "integrity": "sha512-YztWCIldBAVo0zxcQXR+a/uk3/TtYnpKU2CanOPJ7baIuDlWPsG+YE4xTsswZZc12H9Kl7CiziEbDtvF9kwA/Q==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-crop": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-crop/-/plugin-crop-0.16.1.tgz", + "integrity": "sha512-UQdva9oQzCVadkyo3T5Tv2CUZbf0klm2cD4cWMlASuTOYgaGaFHhT9st+kmfvXjKL8q3STkBu/zUPV6PbuV3ew==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-displace": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-displace/-/plugin-displace-0.16.1.tgz", + "integrity": "sha512-iVAWuz2+G6Heu8gVZksUz+4hQYpR4R0R/RtBzpWEl8ItBe7O6QjORAkhxzg+WdYLL2A/Yd4ekTpvK0/qW8hTVw==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-dither": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-dither/-/plugin-dither-0.16.1.tgz", + "integrity": "sha512-tADKVd+HDC9EhJRUDwMvzBXPz4GLoU6s5P7xkVq46tskExYSptgj5713J5Thj3NMgH9Rsqu22jNg1H/7tr3V9Q==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-fisheye": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-fisheye/-/plugin-fisheye-0.16.1.tgz", + "integrity": "sha512-BWHnc5hVobviTyIRHhIy9VxI1ACf4CeSuCfURB6JZm87YuyvgQh5aX5UDKtOz/3haMHXBLP61ZBxlNpMD8CG4A==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-flip": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-flip/-/plugin-flip-0.16.1.tgz", + "integrity": "sha512-KdxTf0zErfZ8DyHkImDTnQBuHby+a5YFdoKI/G3GpBl3qxLBvC+PWkS2F/iN3H7wszP7/TKxTEvWL927pypT0w==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-gaussian": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-gaussian/-/plugin-gaussian-0.16.1.tgz", + "integrity": "sha512-u9n4wjskh3N1mSqketbL6tVcLU2S5TEaFPR40K6TDv4phPLZALi1Of7reUmYpVm8mBDHt1I6kGhuCJiWvzfGyg==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-invert": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-invert/-/plugin-invert-0.16.1.tgz", + "integrity": "sha512-2DKuyVXANH8WDpW9NG+PYFbehzJfweZszFYyxcaewaPLN0GxvxVLOGOPP1NuUTcHkOdMFbE0nHDuB7f+sYF/2w==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-mask": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-mask/-/plugin-mask-0.16.1.tgz", + "integrity": "sha512-snfiqHlVuj4bSFS0v96vo2PpqCDMe4JB+O++sMo5jF5mvGcGL6AIeLo8cYqPNpdO6BZpBJ8MY5El0Veckhr39Q==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-normalize": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-normalize/-/plugin-normalize-0.16.1.tgz", + "integrity": "sha512-dOQfIOvGLKDKXPU8xXWzaUeB0nvkosHw6Xg1WhS1Z5Q0PazByhaxOQkSKgUryNN/H+X7UdbDvlyh/yHf3ITRaw==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-print": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-print/-/plugin-print-0.16.1.tgz", + "integrity": "sha512-ceWgYN40jbN4cWRxixym+csyVymvrryuKBQ+zoIvN5iE6OyS+2d7Mn4zlNgumSczb9GGyZZESIgVcBDA1ezq0Q==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1", + "load-bmfont": "^1.4.0" + } + }, + "@jimp/plugin-resize": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-resize/-/plugin-resize-0.16.1.tgz", + "integrity": "sha512-u4JBLdRI7dargC04p2Ha24kofQBk3vhaf0q8FwSYgnCRwxfvh2RxvhJZk9H7Q91JZp6wgjz/SjvEAYjGCEgAwQ==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-rotate": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-rotate/-/plugin-rotate-0.16.1.tgz", + "integrity": "sha512-ZUU415gDQ0VjYutmVgAYYxC9Og9ixu2jAGMCU54mSMfuIlmohYfwARQmI7h4QB84M76c9hVLdONWjuo+rip/zg==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-scale": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-scale/-/plugin-scale-0.16.1.tgz", + "integrity": "sha512-jM2QlgThIDIc4rcyughD5O7sOYezxdafg/2Xtd1csfK3z6fba3asxDwthqPZAgitrLgiKBDp6XfzC07Y/CefUw==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-shadow": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-shadow/-/plugin-shadow-0.16.1.tgz", + "integrity": "sha512-MeD2Is17oKzXLnsphAa1sDstTu6nxscugxAEk3ji0GV1FohCvpHBcec0nAq6/czg4WzqfDts+fcPfC79qWmqrA==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugin-threshold": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugin-threshold/-/plugin-threshold-0.16.1.tgz", + "integrity": "sha512-iGW8U/wiCSR0+6syrPioVGoSzQFt4Z91SsCRbgNKTAk7D+XQv6OI78jvvYg4o0c2FOlwGhqz147HZV5utoSLxA==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1" + } + }, + "@jimp/plugins": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/plugins/-/plugins-0.16.1.tgz", + "integrity": "sha512-c+lCqa25b+4q6mJZSetlxhMoYuiltyS+ValLzdwK/47+aYsq+kcJNl+TuxIEKf59yr9+5rkbpsPkZHLF/V7FFA==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/plugin-blit": "^0.16.1", + "@jimp/plugin-blur": "^0.16.1", + "@jimp/plugin-circle": "^0.16.1", + "@jimp/plugin-color": "^0.16.1", + "@jimp/plugin-contain": "^0.16.1", + "@jimp/plugin-cover": "^0.16.1", + "@jimp/plugin-crop": "^0.16.1", + "@jimp/plugin-displace": "^0.16.1", + "@jimp/plugin-dither": "^0.16.1", + "@jimp/plugin-fisheye": "^0.16.1", + "@jimp/plugin-flip": "^0.16.1", + "@jimp/plugin-gaussian": "^0.16.1", + "@jimp/plugin-invert": "^0.16.1", + "@jimp/plugin-mask": "^0.16.1", + "@jimp/plugin-normalize": "^0.16.1", + "@jimp/plugin-print": "^0.16.1", + "@jimp/plugin-resize": "^0.16.1", + "@jimp/plugin-rotate": "^0.16.1", + "@jimp/plugin-scale": "^0.16.1", + "@jimp/plugin-shadow": "^0.16.1", + "@jimp/plugin-threshold": "^0.16.1", + "timm": "^1.6.1" + } + }, + "@jimp/png": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/png/-/png-0.16.1.tgz", + "integrity": "sha512-iyWoCxEBTW0OUWWn6SveD4LePW89kO7ZOy5sCfYeDM/oTPLpR8iMIGvZpZUz1b8kvzFr27vPst4E5rJhGjwsdw==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/utils": "^0.16.1", + "pngjs": "^3.3.3" + } + }, + "@jimp/tiff": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/tiff/-/tiff-0.16.1.tgz", + "integrity": "sha512-3K3+xpJS79RmSkAvFMgqY5dhSB+/sxhwTFA9f4AVHUK0oKW+u6r52Z1L0tMXHnpbAdR9EJ+xaAl2D4x19XShkQ==", + "requires": { + "@babel/runtime": "^7.7.2", + "utif": "^2.0.1" + } + }, + "@jimp/types": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/types/-/types-0.16.1.tgz", + "integrity": "sha512-g1w/+NfWqiVW4CaXSJyD28JQqZtm2eyKMWPhBBDCJN9nLCN12/Az0WFF3JUAktzdsEC2KRN2AqB1a2oMZBNgSQ==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/bmp": "^0.16.1", + "@jimp/gif": "^0.16.1", + "@jimp/jpeg": "^0.16.1", + "@jimp/png": "^0.16.1", + "@jimp/tiff": "^0.16.1", + "timm": "^1.6.1" + } + }, + "@jimp/utils": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/@jimp/utils/-/utils-0.16.1.tgz", + "integrity": "sha512-8fULQjB0x4LzUSiSYG6ZtQl355sZjxbv8r9PPAuYHzS9sGiSHJQavNqK/nKnpDsVkU88/vRGcE7t3nMU0dEnVw==", + "requires": { + "@babel/runtime": "^7.7.2", + "regenerator-runtime": "^0.13.3" + } + }, "@lwc/eslint-plugin-lwc": { "version": "0.11.0", "resolved": "https://registry.npmjs.org/@lwc/eslint-plugin-lwc/-/eslint-plugin-lwc-0.11.0.tgz", @@ -5382,6 +5714,11 @@ "resolved": "https://registry.npmjs.org/ansi-wrap/-/ansi-wrap-0.1.0.tgz", "integrity": "sha1-qCJQ3bABXponyoLoLqYDu/pF768=" }, + "any-base": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/any-base/-/any-base-1.1.0.tgz", + "integrity": "sha512-uMgjozySS8adZZYePpaWs8cxB9/kdzmpX6SgJZ+wbz1K5eYk5QMYDVJaZKhxyIHUdnnJkfR7SVgStgH7LkGUyg==" + }, "anymatch": { "version": "2.0.0", "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-2.0.0.tgz", @@ -6338,6 +6675,11 @@ "bluebird": "^3.5.5" } }, + "bmp-js": { + "version": "0.1.0", + "resolved": "https://registry.npmjs.org/bmp-js/-/bmp-js-0.1.0.tgz", + "integrity": "sha1-4Fpj95amwf8l9Hcex62twUjAcjM=" + }, "bn.js": { "version": "5.1.3", "resolved": "https://registry.npmjs.org/bn.js/-/bn.js-5.1.3.tgz", @@ -6642,6 +6984,11 @@ "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz", "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=" }, + "buffer-equal": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/buffer-equal/-/buffer-equal-0.0.1.tgz", + "integrity": "sha1-kbx0sR6kBbyRa8aqkI+q+ltKrEs=" + }, "buffer-from": { "version": "1.1.1", "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.1.tgz", @@ -8845,8 +9192,7 @@ "dom-walk": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/dom-walk/-/dom-walk-0.1.2.tgz", - "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==", - "dev": true + "integrity": "sha512-6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==" }, "domain-browser": { "version": "1.2.0", @@ -10974,6 +11320,11 @@ "strip-eof": "^1.0.0" } }, + "exif-parser": { + "version": "0.1.12", + "resolved": "https://registry.npmjs.org/exif-parser/-/exif-parser-0.1.12.tgz", + "integrity": "sha1-WKnS1ywCwfbwKg70qRZicrd2CSI=" + }, "exit": { "version": "0.1.2", "resolved": "https://registry.npmjs.org/exit/-/exit-0.1.2.tgz", @@ -11708,6 +12059,11 @@ "schema-utils": "^3.0.0" } }, + "file-type": { + "version": "9.0.0", + "resolved": "https://registry.npmjs.org/file-type/-/file-type-9.0.0.tgz", + "integrity": "sha512-Qe/5NJrgIOlwijpq3B7BEpzPFcgzggOTagZmkXQY4LA6bsXKTUstK7Wp12lEJ/mLKTpvIZxmIuRcLYWT6ov9lw==" + }, "file-uri-to-path": { "version": "1.0.0", "resolved": "https://registry.npmjs.org/file-uri-to-path/-/file-uri-to-path-1.0.0.tgz", @@ -12075,6 +12431,15 @@ "assert-plus": "^1.0.0" } }, + "gifwrap": { + "version": "0.9.2", + "resolved": "https://registry.npmjs.org/gifwrap/-/gifwrap-0.9.2.tgz", + "integrity": "sha512-fcIswrPaiCDAyO8xnWvHSZdWChjKXUanKKpAiWWJ/UTkEi/aYKn5+90e7DE820zbEaVR9CE2y4z9bzhQijZ0BA==", + "requires": { + "image-q": "^1.1.1", + "omggif": "^1.0.10" + } + }, "glob": { "version": "7.1.6", "resolved": "https://registry.npmjs.org/glob/-/glob-7.1.6.tgz", @@ -12100,7 +12465,6 @@ "version": "4.4.0", "resolved": "https://registry.npmjs.org/global/-/global-4.4.0.tgz", "integrity": "sha512-wv/LAoHdRE3BeTGz53FAamhGlPLhlssK45usmGFThIi4XqnBmjKQ16u+RNbP7WvigRZDxUsM0J3gcQ5yicaL0w==", - "dev": true, "requires": { "min-document": "^2.19.0", "process": "^0.11.10" @@ -12709,6 +13073,11 @@ "integrity": "sha512-BMpfD7PpiETpBl/A6S498BaIJ6Y/ABT93ETbby2fP00v4EbvPBXWEoaR1UBPKs3iR53pJY7EtZk5KACI57i1Uw==", "dev": true }, + "image-q": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/image-q/-/image-q-1.1.1.tgz", + "integrity": "sha1-/IQJlmRGC5DKhi2TALa/u7+/gFY=" + }, "image-size": { "version": "0.6.3", "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.6.3.tgz", @@ -13083,6 +13452,11 @@ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz", "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==" }, + "is-function": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/is-function/-/is-function-1.0.2.tgz", + "integrity": "sha512-lw7DUp0aWXYg+CBCN+JKkcE0Q2RayZnSvnZBlwgxHBQhqt5pZNVy4Ri7H9GmmXkdu7LUthszM+Tor1u/2iBcpQ==" + }, "is-generator-fn": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/is-generator-fn/-/is-generator-fn-2.1.0.tgz", @@ -16845,6 +17219,23 @@ "resolved": "https://registry.npmjs.org/jetifier/-/jetifier-1.6.6.tgz", "integrity": "sha512-JNAkmPeB/GS2tCRqUzRPsTOHpGDah7xP18vGJfIjZC+W2sxEHbxgJxetIjIqhjQ3yYbYNEELkM/spKLtwoOSUQ==" }, + "jimp": { + "version": "0.16.1", + "resolved": "https://registry.npmjs.org/jimp/-/jimp-0.16.1.tgz", + "integrity": "sha512-+EKVxbR36Td7Hfd23wKGIeEyHbxShZDX6L8uJkgVW3ESA9GiTEPK08tG1XI2r/0w5Ch0HyJF5kPqF9K7EmGjaw==", + "requires": { + "@babel/runtime": "^7.7.2", + "@jimp/custom": "^0.16.1", + "@jimp/plugins": "^0.16.1", + "@jimp/types": "^0.16.1", + "regenerator-runtime": "^0.13.3" + } + }, + "jpeg-js": { + "version": "0.4.2", + "resolved": "https://registry.npmjs.org/jpeg-js/-/jpeg-js-0.4.2.tgz", + "integrity": "sha512-+az2gi/hvex7eLTMTlbRLOhH6P6WFdk2ITI8HJsaH2VqYO0I594zXSYEP+tf4FW+8Cy68ScDXoAsQdyQanv3sw==" + }, "jquery": { "version": "3.3.1", "resolved": "https://registry.npmjs.org/jquery/-/jquery-3.3.1.tgz", @@ -17142,6 +17533,21 @@ "integrity": "sha1-HADHQ7QzzQpOgHWPe2SldEDZ/wA=", "dev": true }, + "load-bmfont": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/load-bmfont/-/load-bmfont-1.4.1.tgz", + "integrity": "sha512-8UyQoYmdRDy81Brz6aLAUhfZLwr5zV0L3taTQ4hju7m6biuwiWiJXjPhBJxbUQJA8PrkvJ/7Enqmwk2sM14soA==", + "requires": { + "buffer-equal": "0.0.1", + "mime": "^1.3.4", + "parse-bmfont-ascii": "^1.0.3", + "parse-bmfont-binary": "^1.0.5", + "parse-bmfont-xml": "^1.1.4", + "phin": "^2.9.1", + "xhr": "^2.0.1", + "xtend": "^4.0.0" + } + }, "load-json-file": { "version": "1.1.0", "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-1.1.0.tgz", @@ -19288,7 +19694,6 @@ "version": "2.19.0", "resolved": "https://registry.npmjs.org/min-document/-/min-document-2.19.0.tgz", "integrity": "sha1-e9KC4/WELtKVu3SM3Z8f+iyCRoU=", - "dev": true, "requires": { "dom-walk": "^0.1.0" } @@ -20063,6 +20468,11 @@ "integrity": "sha512-PX1wu0AmAdPqOL1mWhqmlOd8kOIZQwGZw6rh7uby9fTc5lhaOWFLX3I6R1hrF9k3zUY40e6igsLGkDXK92LJNg==", "dev": true }, + "omggif": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/omggif/-/omggif-1.0.10.tgz", + "integrity": "sha512-LMJTtvgc/nugXj0Vcrrs68Mn2D1r0zf630VNtqtpI1FEO7e+O9FP4gqs9AcnBaSEeoHIPm28u6qgPR0oyEpGSw==" + }, "on-finished": { "version": "2.3.0", "resolved": "https://registry.npmjs.org/on-finished/-/on-finished-2.3.0.tgz", @@ -20366,6 +20776,30 @@ "safe-buffer": "^5.1.1" } }, + "parse-bmfont-ascii": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/parse-bmfont-ascii/-/parse-bmfont-ascii-1.0.6.tgz", + "integrity": "sha1-Eaw8P/WPfCAgqyJ2kHkQjU36AoU=" + }, + "parse-bmfont-binary": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/parse-bmfont-binary/-/parse-bmfont-binary-1.0.6.tgz", + "integrity": "sha1-0Di0dtPp3Z2x4RoLDlOiJ5K2kAY=" + }, + "parse-bmfont-xml": { + "version": "1.1.4", + "resolved": "https://registry.npmjs.org/parse-bmfont-xml/-/parse-bmfont-xml-1.1.4.tgz", + "integrity": "sha512-bjnliEOmGv3y1aMEfREMBJ9tfL3WR0i0CKPj61DnSLaoxWR3nLrsQrEbCId/8rF4NyRF0cCqisSVXyQYWM+mCQ==", + "requires": { + "xml-parse-from-string": "^1.0.0", + "xml2js": "^0.4.5" + } + }, + "parse-headers": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/parse-headers/-/parse-headers-2.0.3.tgz", + "integrity": "sha512-QhhZ+DCCit2Coi2vmAKbq5RGTRcQUOE2+REgv8vdyu7MnYx2eZztegqtTx99TZ86GTIwqiy3+4nQTWZ2tgmdCA==" + }, "parse-json": { "version": "4.0.0", "resolved": "https://registry.npmjs.org/parse-json/-/parse-json-4.0.0.tgz", @@ -20502,6 +20936,11 @@ "integrity": "sha1-Ywn04OX6kT7BxpMHrjZLSzd8nns=", "dev": true }, + "phin": { + "version": "2.9.3", + "resolved": "https://registry.npmjs.org/phin/-/phin-2.9.3.tgz", + "integrity": "sha512-CzFr90qM24ju5f88quFC/6qohjC144rehe5n6DH900lgXmUe86+xCKc10ev56gRKC4/BkHUoG4uSiQgBiIXwDA==" + }, "picomatch": { "version": "2.2.2", "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.2.2.tgz", @@ -20533,6 +20972,14 @@ "node-modules-regexp": "^1.0.0" } }, + "pixelmatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/pixelmatch/-/pixelmatch-4.0.2.tgz", + "integrity": "sha1-j0fc7FARtHe2fbA8JDvB8wheiFQ=", + "requires": { + "pngjs": "^3.0.0" + } + }, "pkg-dir": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/pkg-dir/-/pkg-dir-3.0.0.tgz", @@ -20669,6 +21116,11 @@ } } }, + "pngjs": { + "version": "3.4.0", + "resolved": "https://registry.npmjs.org/pngjs/-/pngjs-3.4.0.tgz", + "integrity": "sha512-NCrCHhWmnQklfH4MtJMRjZ2a8c80qXeMlQMv2uVp9ISJMTt562SbGd6n2oq0PaPgKm7Z6pL9E2UlLIhC+SHL3w==" + }, "portfinder": { "version": "1.0.28", "resolved": "https://registry.npmjs.org/portfinder/-/portfinder-1.0.28.tgz", @@ -21248,6 +21700,43 @@ "prop-types": "^15.7.2" } }, + "react-native-bootsplash": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/react-native-bootsplash/-/react-native-bootsplash-3.2.0.tgz", + "integrity": "sha512-1+xMWLxqIUPbKiiwrbiekw3uKtuyNpm0R1eg5p3/ISRMXs0eZy7DHfiyCqcLq1N1a3Gv0oTZn1E7WEA2NjgdhA==", + "requires": { + "chalk": "^4.1.0", + "fs-extra": "^9.1.0", + "jimp": "^0.16.1" + }, + "dependencies": { + "chalk": { + "version": "4.1.0", + "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.0.tgz", + "integrity": "sha512-qwx12AxXe2Q5xQ43Ac//I6v5aXTipYrSESdOgzrN+9XjgEpyjpKuvSGaN4qE93f7TQTlerQQ8S+EQ0EyDoVL1A==", + "requires": { + "ansi-styles": "^4.1.0", + "supports-color": "^7.1.0" + } + }, + "fs-extra": { + "version": "9.1.0", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-9.1.0.tgz", + "integrity": "sha512-hcg3ZmepS30/7BSFqRvoo3DOMQu7IjqxO5nCDt+zM9XWjb33Wg7ziNT+Qvqbuc3+gWpzO02JubVyk2G4Zvo1OQ==", + "requires": { + "at-least-node": "^1.0.0", + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + } + }, + "universalify": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.0.tgz", + "integrity": "sha512-hAZsKq7Yy11Zu1DE0OzWjw7nnLZmJZYTDZZyEFHZdUhV8FkH5MCfoU1XMaxXovpyW5nq5scPqq0ZDP9Zyl04oQ==" + } + } + }, "react-native-config": { "version": "1.4.1", "resolved": "https://registry.npmjs.org/react-native-config/-/react-native-config-1.4.1.tgz", @@ -24095,11 +24584,21 @@ "setimmediate": "^1.0.4" } }, + "timm": { + "version": "1.7.1", + "resolved": "https://registry.npmjs.org/timm/-/timm-1.7.1.tgz", + "integrity": "sha512-IjZc9KIotudix8bMaBW6QvMuq64BrJWFs1+4V0lXwWGQZwH+LnX87doAYhem4caOEusRP9/g6jVDQmZ8XOk1nw==" + }, "tiny-emitter": { "version": "2.1.0", "resolved": "https://registry.npmjs.org/tiny-emitter/-/tiny-emitter-2.1.0.tgz", "integrity": "sha512-NB6Dk1A9xgQPMoGqC5CVXn123gWyte215ONT5Pp5a0yt4nlEoO1ZWeCwpncaekPHXO60i47ihFnZPiRPjRMq4Q==" }, + "tinycolor2": { + "version": "1.4.2", + "resolved": "https://registry.npmjs.org/tinycolor2/-/tinycolor2-1.4.2.tgz", + "integrity": "sha512-vJhccZPs965sV/L2sU4oRQVAos0pQXwsvTLkWYdqJ+a8Q5kPFzJTuOFwy7UniPli44NKQGAglksjvOcpo95aZA==" + }, "tmp": { "version": "0.0.33", "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz", @@ -24571,6 +25070,14 @@ "integrity": "sha1-9F8VDExm7uloGGUFq5P8u4rWv2E=", "dev": true }, + "utif": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/utif/-/utif-2.0.1.tgz", + "integrity": "sha512-Z/S1fNKCicQTf375lIP9G8Sa1H/phcysstNrrSdZKj1f9g58J4NMgb5IgiEZN9/nLMPDwF0W7hdOe9Qq2IYoLg==", + "requires": { + "pako": "^1.0.5" + } + }, "util": { "version": "0.11.1", "resolved": "https://registry.npmjs.org/util/-/util-0.11.1.tgz", @@ -25995,12 +26502,44 @@ "integrity": "sha512-PSNhEJDejZYV7h50BohL09Er9VaIefr2LMAf3OEmpCkjOi34eYyQYAXUTjEQtZJTKcF0E2UKTh+osDLsgNim9Q==", "dev": true }, + "xhr": { + "version": "2.6.0", + "resolved": "https://registry.npmjs.org/xhr/-/xhr-2.6.0.tgz", + "integrity": "sha512-/eCGLb5rxjx5e3mF1A7s+pLlR6CGyqWN91fv1JgER5mVWg1MZmlhBvy9kjcsOdRk8RrIujotWyJamfyrp+WIcA==", + "requires": { + "global": "~4.4.0", + "is-function": "^1.0.1", + "parse-headers": "^2.0.0", + "xtend": "^4.0.0" + } + }, "xml-name-validator": { "version": "3.0.0", "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz", "integrity": "sha512-A5CUptxDsvxKJEU3yO6DuWBSJz/qizqzJKOMIfUJHETbBw/sFaDxgd6fxm1ewUaM0jZ444Fc5vC5ROYurg/4Pw==", "dev": true }, + "xml-parse-from-string": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/xml-parse-from-string/-/xml-parse-from-string-1.0.1.tgz", + "integrity": "sha1-qQKekp09vN7RafPG4oI42VpdWig=" + }, + "xml2js": { + "version": "0.4.23", + "resolved": "https://registry.npmjs.org/xml2js/-/xml2js-0.4.23.tgz", + "integrity": "sha512-ySPiMjM0+pLDftHgXY4By0uswI3SPKLDw/i3UXbnO8M/p28zqexCUoPmQFrYD+/1BzhGJSs2i1ERWKJAtiLrug==", + "requires": { + "sax": ">=0.6.0", + "xmlbuilder": "~11.0.0" + }, + "dependencies": { + "xmlbuilder": { + "version": "11.0.1", + "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-11.0.1.tgz", + "integrity": "sha512-fDlsI/kFEx7gLvbecc0/ohLG50fugQp8ryHzMTuW9vSa1GJ0XYWKnhsUx7oie3G98+r56aTQIUB4kht42R3JvA==" + } + } + }, "xmlbuilder": { "version": "9.0.7", "resolved": "https://registry.npmjs.org/xmlbuilder/-/xmlbuilder-9.0.7.tgz", diff --git a/package.json b/package.json index c2fca646596b..cc62da633aee 100644 --- a/package.json +++ b/package.json @@ -68,6 +68,7 @@ "react": "^16.13.1", "react-dom": "^16.13.1", "react-native": "0.63.3", + "react-native-bootsplash": "^3.2.0", "react-native-config": "^1.4.0", "react-native-document-picker": "^4.0.0", "react-native-gesture-handler": "1.9.0", diff --git a/src/Expensify.js b/src/Expensify.js index 1c2ea12deb7c..23d7af2dc892 100644 --- a/src/Expensify.js +++ b/src/Expensify.js @@ -3,6 +3,7 @@ import PropTypes from 'prop-types'; import React, {PureComponent} from 'react'; import {View} from 'react-native'; import Onyx, {withOnyx} from 'react-native-onyx'; +import RNBootSplash from 'react-native-bootsplash'; import listenToStorageEvents from './libs/listenToStorageEvents'; import * as ActiveClientManager from './libs/ActiveClientManager'; import ONYXKEYS from './ONYXKEYS'; @@ -78,6 +79,12 @@ class Expensify extends PureComponent { // Run any Onyx schema migrations and then continue loading the main app migrateOnyx() .then(() => { + // When we don't have an authToken we'll want to show the sign in screen immediately so we'll hide our + // boot screen right away + if (!this.getAuthToken()) { + RNBootSplash.hide({fade: true}); + } + this.setState({isOnyxMigrated: true}); }); } @@ -88,6 +95,17 @@ class Expensify extends PureComponent { if (currentAccountID && (currentAccountID !== previousAccountID)) { PushNotification.register(currentAccountID); } + + // If we previously had no authToken and now have an authToken we'll want to reshow the boot splash screen so + // that we can remove it again once the content is ready + const previousAuthToken = lodashGet(prevProps, 'session.authToken', null); + if (this.getAuthToken() && !previousAuthToken) { + RNBootSplash.show({fade: true}); + } + } + + getAuthToken() { + return lodashGet(this.props, 'session.authToken', null); } render() { @@ -97,13 +115,11 @@ class Expensify extends PureComponent { ); } - - const authToken = lodashGet(this.props, 'session.authToken', null); return ( <> {/* We include the modal for showing a new update at the top level so the option is always present. */} {this.props.updateAvailable ? : null} - + ); } diff --git a/src/components/OptionsList.js b/src/components/OptionsList.js index f554f83d6da5..1a0d92ef1dc4 100644 --- a/src/components/OptionsList.js +++ b/src/components/OptionsList.js @@ -74,6 +74,9 @@ const propTypes = { // Toggle between compact and default view of the option optionMode: PropTypes.oneOf(['compact', 'default']), + + // Optional callback to pass to the SectionList so we can listen for the layout of this component + onLayout: PropTypes.func, }; const defaultProps = { @@ -94,6 +97,7 @@ const defaultProps = { innerRef: null, showTitleTooltip: false, optionMode: undefined, + onLayout: () => {}, }; class OptionsList extends Component { @@ -222,6 +226,7 @@ class OptionsList extends Component { renderItem={this.renderItem} renderSectionHeader={this.renderSectionHeader} extraData={this.props.focusedIndex} + onLayout={this.props.onLayout} /> ); diff --git a/src/pages/home/sidebar/SidebarLinks.js b/src/pages/home/sidebar/SidebarLinks.js index 7f24fa96180e..9640548974ff 100644 --- a/src/pages/home/sidebar/SidebarLinks.js +++ b/src/pages/home/sidebar/SidebarLinks.js @@ -3,6 +3,8 @@ import {View, TouchableOpacity} from 'react-native'; import _ from 'underscore'; import PropTypes from 'prop-types'; import {withOnyx} from 'react-native-onyx'; +import RNBootSplash from 'react-native-bootsplash'; + import styles, {getSafeAreaMargins} from '../../../styles/styles'; import ONYXKEYS from '../../../ONYXKEYS'; import SafeAreaInsetPropTypes from '../../SafeAreaInsetPropTypes'; @@ -83,10 +85,19 @@ const defaultProps = { }; class SidebarLinks extends React.Component { + constructor(props) { + super(props); + this.hideBootScreen = this.hideBootScreen.bind(this); + } + showSearchPage() { Navigation.navigate(ROUTES.SEARCH); } + hideBootScreen() { + RNBootSplash.hide({fade: true}); + } + render() { const activeReportID = parseInt(this.props.currentlyViewedReportID, 10); @@ -151,6 +162,7 @@ class SidebarLinks extends React.Component { showTitleTooltip disableFocusOptions={this.props.isSmallScreenWidth} optionMode={this.props.priorityMode === CONST.PRIORITY_MODE.GSD ? 'compact' : 'default'} + onLayout={this.hideBootScreen} /> From 1620623650fa160eb1a9019c544e6f0c07c99882 Mon Sep 17 00:00:00 2001 From: Marc Glasser Date: Mon, 19 Apr 2021 11:34:32 -1000 Subject: [PATCH 2/4] Add splash screen to Expensify.cash --- .../app/src/main/res/drawable/bootsplash.xml | 9 ++++ .../main/res/mipmap-hdpi/bootsplash_logo.png | Bin 0 -> 9608 bytes .../main/res/mipmap-mdpi/bootsplash_logo.png | Bin 0 -> 5675 bytes .../main/res/mipmap-xhdpi/bootsplash_logo.png | Bin 0 -> 15742 bytes .../res/mipmap-xxhdpi/bootsplash_logo.png | Bin 0 -> 28727 bytes .../res/mipmap-xxxhdpi/bootsplash_logo.png | Bin 0 -> 45504 bytes android/app/src/main/res/values/colors.xml | 3 ++ ios/ExpensifyCash.xcodeproj/project.pbxproj | 4 ++ ios/ExpensifyCash/AppDelegate.m | 4 ++ ios/ExpensifyCash/BootSplash.storyboard | 45 ++++++++++++++++++ .../BootSplashLogo.imageset/Contents.json | 23 +++++++++ .../bootsplash_logo.png | Bin 0 -> 5675 bytes .../bootsplash_logo@2x.png | Bin 0 -> 15742 bytes .../bootsplash_logo@3x.png | Bin 0 -> 28727 bytes ios/ExpensifyCash/Info.plist | 2 +- src/Expensify.js | 25 ++++++++-- src/ONYXKEYS.js | 3 ++ src/components/OptionsList.js | 5 -- src/libs/BootSplash/index.js | 5 ++ src/libs/BootSplash/index.native.js | 3 ++ src/libs/actions/Report.js | 1 + src/pages/home/sidebar/SidebarLinks.js | 12 ----- 22 files changed, 123 insertions(+), 21 deletions(-) create mode 100644 android/app/src/main/res/drawable/bootsplash.xml create mode 100644 android/app/src/main/res/mipmap-hdpi/bootsplash_logo.png create mode 100644 android/app/src/main/res/mipmap-mdpi/bootsplash_logo.png create mode 100644 android/app/src/main/res/mipmap-xhdpi/bootsplash_logo.png create mode 100644 android/app/src/main/res/mipmap-xxhdpi/bootsplash_logo.png create mode 100644 android/app/src/main/res/mipmap-xxxhdpi/bootsplash_logo.png create mode 100644 android/app/src/main/res/values/colors.xml create mode 100644 ios/ExpensifyCash/BootSplash.storyboard create mode 100644 ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/Contents.json create mode 100644 ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/bootsplash_logo.png create mode 100644 ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/bootsplash_logo@2x.png create mode 100644 ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/bootsplash_logo@3x.png create mode 100644 src/libs/BootSplash/index.js create mode 100644 src/libs/BootSplash/index.native.js diff --git a/android/app/src/main/res/drawable/bootsplash.xml b/android/app/src/main/res/drawable/bootsplash.xml new file mode 100644 index 000000000000..1bf5acbdec69 --- /dev/null +++ b/android/app/src/main/res/drawable/bootsplash.xml @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/android/app/src/main/res/mipmap-hdpi/bootsplash_logo.png b/android/app/src/main/res/mipmap-hdpi/bootsplash_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..2cdbb6260f50de829c8fb6c753552cec1b627c6a GIT binary patch literal 9608 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xhdpi/bootsplash_logo.png b/android/app/src/main/res/mipmap-xhdpi/bootsplash_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c360a99a5606ef2c4737448d099a2a9880ea978d GIT binary patch literal 15742 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 Y%dgxA!!mz?0|DV=Bo!sf#Pt3D578?@a{vGU literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/mipmap-xxxhdpi/bootsplash_logo.png b/android/app/src/main/res/mipmap-xxxhdpi/bootsplash_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..dbf9bd6ecb0021f06e59bf9108a535f305bbb194 GIT binary patch literal 45504 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 literal 0 HcmV?d00001 diff --git a/android/app/src/main/res/values/colors.xml b/android/app/src/main/res/values/colors.xml new file mode 100644 index 000000000000..c612507bd64c --- /dev/null +++ b/android/app/src/main/res/values/colors.xml @@ -0,0 +1,3 @@ + + #FFFFFF + diff --git a/ios/ExpensifyCash.xcodeproj/project.pbxproj b/ios/ExpensifyCash.xcodeproj/project.pbxproj index 1cce13f3aa8e..27ca296fa44c 100644 --- a/ios/ExpensifyCash.xcodeproj/project.pbxproj +++ b/ios/ExpensifyCash.xcodeproj/project.pbxproj @@ -20,6 +20,7 @@ 1E76D5252522316A005A268F /* GTAmericaExp-Thin.otf in Resources */ = {isa = PBXBuildFile; fileRef = A292718541C841859D97DF2F /* GTAmericaExp-Thin.otf */; }; 425866037F4C482AAB46CB8B /* GTAmericaExp-BdIt.otf in Resources */ = {isa = PBXBuildFile; fileRef = A8D6F2F722FD4E66A38EBBB6 /* GTAmericaExp-BdIt.otf */; }; 6856B78873B64C44A92E51DB /* GTAmericaExp-MdIt.otf in Resources */ = {isa = PBXBuildFile; fileRef = DB5A1365442D4419AF6F08E5 /* GTAmericaExp-MdIt.otf */; }; + 70CF6E82262E297300711ADC /* BootSplash.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 70CF6E81262E297300711ADC /* BootSplash.storyboard */; }; 81AB9BB82411601600AC10FF /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */; }; 8821A238A081483FA947BC4E /* GTAmericaExp-RgIt.otf in Resources */ = {isa = PBXBuildFile; fileRef = 918D7FEFF96242E6B5F5E14D /* GTAmericaExp-RgIt.otf */; }; 8C86654500DCC843A74147B5 /* libPods-ExpensifyCash-ExpensifyCashTests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = ED2AB27DDDFCCE3CD100EA0C /* libPods-ExpensifyCash-ExpensifyCashTests.a */; }; @@ -51,6 +52,7 @@ 13B07FB71A68108700A75B9A /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = main.m; path = ExpensifyCash/main.m; sourceTree = ""; }; 67D5C3A6A7FA417C8A853FC1 /* GTAmericaExp-Light.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "GTAmericaExp-Light.otf"; path = "../assets/fonts/GTAmericaExp-Light.otf"; sourceTree = ""; }; 6F2C8BDCC1FF0B64AE2DFC9B /* libPods-ExpensifyCash.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-ExpensifyCash.a"; sourceTree = BUILT_PRODUCTS_DIR; }; + 70CF6E81262E297300711ADC /* BootSplash.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = BootSplash.storyboard; path = ExpensifyCash/BootSplash.storyboard; sourceTree = ""; }; 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.storyboard; name = LaunchScreen.storyboard; path = ExpensifyCash/LaunchScreen.storyboard; sourceTree = ""; }; 8437A5A38F2047E0BCCD7C2F /* GTAmericaExpMono-Rg.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "GTAmericaExpMono-Rg.otf"; path = "../assets/fonts/GTAmericaExpMono-Rg.otf"; sourceTree = ""; }; 8C7003903C1E4957824899BB /* GTAmericaExp-Regular.otf */ = {isa = PBXFileReference; explicitFileType = undefined; fileEncoding = 9; includeInIndex = 0; lastKnownFileType = unknown; name = "GTAmericaExp-Regular.otf"; path = "../assets/fonts/GTAmericaExp-Regular.otf"; sourceTree = ""; }; @@ -117,6 +119,7 @@ 13B07FB01A68108700A75B9A /* AppDelegate.m */, 13B07FB51A68108700A75B9A /* Images.xcassets */, 13B07FB61A68108700A75B9A /* Info.plist */, + 70CF6E81262E297300711ADC /* BootSplash.storyboard */, 81AB9BB72411601600AC10FF /* LaunchScreen.storyboard */, 13B07FB71A68108700A75B9A /* main.m */, ); @@ -303,6 +306,7 @@ 425866037F4C482AAB46CB8B /* GTAmericaExp-BdIt.otf in Resources */, 6856B78873B64C44A92E51DB /* GTAmericaExp-MdIt.otf in Resources */, 8821A238A081483FA947BC4E /* GTAmericaExp-RgIt.otf in Resources */, + 70CF6E82262E297300711ADC /* BootSplash.storyboard in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/ios/ExpensifyCash/AppDelegate.m b/ios/ExpensifyCash/AppDelegate.m index 7c07c1045495..0138f2b3cc4c 100644 --- a/ios/ExpensifyCash/AppDelegate.m +++ b/ios/ExpensifyCash/AppDelegate.m @@ -6,6 +6,8 @@ #import #import +#import "RNBootSplash.h" + #import #ifdef FB_SONARKIT_ENABLED @@ -55,6 +57,8 @@ - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:( UNUserNotificationCenter *center = [UNUserNotificationCenter currentNotificationCenter]; center.delegate = self; + [RNBootSplash initWithStoryboard:@"BootSplash" rootView:rootView]; // <- initialization using the storyboard file name + return YES; } diff --git a/ios/ExpensifyCash/BootSplash.storyboard b/ios/ExpensifyCash/BootSplash.storyboard new file mode 100644 index 000000000000..8ee04cf74b3b --- /dev/null +++ b/ios/ExpensifyCash/BootSplash.storyboard @@ -0,0 +1,45 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/Contents.json b/ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/Contents.json new file mode 100644 index 000000000000..570652dfdaa0 --- /dev/null +++ b/ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/Contents.json @@ -0,0 +1,23 @@ +{ + "images": [ + { + "idiom": "universal", + "filename": "bootsplash_logo.png", + "scale": "1x" + }, + { + "idiom": "universal", + "filename": "bootsplash_logo@2x.png", + "scale": "2x" + }, + { + "idiom": "universal", + "filename": "bootsplash_logo@3x.png", + "scale": "3x" + } + ], + "info": { + "version": 1, + "author": "xcode" + } +} diff --git a/ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/bootsplash_logo.png b/ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/bootsplash_logo.png new file mode 100644 index 0000000000000000000000000000000000000000..de9f2f49f8adad297a259fd158c7a896d0b0e951 GIT binary patch literal 5675 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 literal 0 HcmV?d00001 diff --git a/ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/bootsplash_logo@2x.png b/ios/ExpensifyCash/Images.xcassets/BootSplashLogo.imageset/bootsplash_logo@2x.png new file mode 100644 index 0000000000000000000000000000000000000000..c360a99a5606ef2c4737448d099a2a9880ea978d GIT binary patch literal 15742 zcmY*=Wmp_d&@C(rEN+Xty9U?A-3gW@xFxuI(BSUwmKV36!QI`0y97<}z}eRpQbSE11C<074h{}OQ9(uv_CNCP1|h+ItMzO0;NZk$6=fuKyx`A! zQBt4>rrXbN_Zy{mrx&NET^~*zDw`b@0Cd<9@3GAhK7s-~6wIV^R)`s$HzSk18Q&$7 zSsxB$-k&R4P5CBw9$API?_T5L*&*nn51HXf*+`-#%`BbzSNpfQpKU&iaazO(0h-)W z+YSFbqnsZ86nGV5$NDKp85IB~XKGK72@;GV0OC*q6bj&Nc3;3zY{6^^2n|dPpav!e z%@|rDX|A|oB91*{zmx&WzZkNohoNd4vS;@4;$E!cblgBy2)ZPhEGhQK`Up@I5jFx1 zs3?#UL=A!$??DFjOn2ZsJP_l7sBHjB5Ru>jATd=mRR~?9CHuQC53F=>Xc<5&O**7u z1^>SWHw#8!$&HRESsYU2nM4^)85|jY%$bM5ExNc8QbmDa2Vk@&8)6oGEGr|TO5q4R zBM$lwcf*@t@t23?7z6{V5SnC#Sk=_{e+2B!^(n(__J(ATgHX$AMH zzO6WO5#$$$@&Jd&Rl$zx6o_krP+BDG;+K}p6j!kFyd3Yk&G{Nc{ckXNzAxO?QZt)$ z!{~y6%W!iQCZY|pVW8m5NZ&r30a(%G=>fYxT-_CEka>HM^GmL4M|{E&3qvcay+K%u zKY}SR7o;2Tg88(>VTqWO3L%_9B!c?0Q3aV12|gT4xb9vN#}x`%;%7dcs<~8>QRw0H zzVDmaZcjaim$*iDEIvx~)sM2^OZtFQ1t6*P?NBtKj7oPkPzyL5&mqb;^>PaSU8y++ zMFgVdY{?+`9mkqZPzGd{Z8}`Y-I#*cu|q35H29+~_pXkO1CqtQJiRYV?VAESiD3-_ z==HY)ZpDQq-njXdW7pdaTl=|e;QIn86Bdk^5WyN2+Co!wbE5fE*VWIjeBt4Y%=Hiy zf&vY=U(;WrUt5R-YV{{DKBvRv51BzZUNEWwL@BQC{GRt+P3OEi-k4 zTB`cK`y>22A!0|vT zs>*D2D~4pUFBfpW*AIv3-BYt0@}nBkyq_YrWPBeGsvZ}*Ixm+dMeACVJFwXhR3I7x zTflyJVcq+BH+M?sZmcbcz~F^oW^stu0$eP~%zE4pZ=w44f2*G3yC)Hp+r2@fx&?{t zk7@{gprz^$O2g#Y+|ME-`9xM8ERkoe6Q6^UmOSk-~*6*;kFTg?#*M68S|{p%RGDFM~U&{ zQ5@U}ZIW9ZrohM2t)16r$HSc#s|&e05Es0p5j$QWGhHkOHNhXxS=VJN{n`F~*YLUw zYu>|5_W!Q@U(}wyJMK%z{~Ui?A}|-3K~y*;z(wJ`Z<=dvk3Y=Q6-5bQ{L1`+KgwIm zoWfvTeS7}C{`{8mX!8UAZ3jFhX&}fQ&48%4NFRZGeTmEU6WE$Zk=wXrLbQMz3j~ir z9n<|po)%z-j8%ARTR=Kf(Ls^{YFDBB9&kmlKie3SM?|yJ>IF3=xrIoB_O83PTkJ_6 za%^2Vg9WK7JF-Aja8;}AX$42z&%4xL+xpyU>Y9~pp8LvMU2l~F`1Y+4un~9(NKQDZ z5iku01|!x-obdYc<&k(TW*|@VFM#D9cK&VrB#kBKMiMoWPJkfF6{>hjaibFmf{?YA z)p~??DgS`p#Q8!#?TmN=mHePP|M#lvr_YwEA8soJNTWj(o8NF@$Yzn-kngt@R##;V z0pBc50U|vQ(5E;K9W}I)+7I`HP$7Tn1G8Q~YfuAkO7RXpodc#Q+D~4uw2*9PXIu)k zvY2cx=IM--aHTZ}KZ+k!4w#$}kD=6`(`W8ri$9HYiH7bH ze2UXh=#E{Ynjxh(42fPcF>P9VNY8k9cJ~wGkV_AnWtr)N53RY4mU@BW9WD1f8VHW^ z+(kr-*_y_Kl#bl0=23lHW6}v*iJi1a9OSm~E4jOrJK8R%#bwzNdx`URntPqK%H^&r zXe3inf+CQ(yPq5%51t)%lY7_~Pz!@*B#){5IIO1WcFt63mPtbeB%Qk8`U3ZrTpBT# zB1PN$6V^%Tx~F@D|I@&%Xpj;Dh)UWsA#kq5-KD=B2{aqM9kR0g!XJxb!O=0025s$q z>6I6#-A_!&SA_%`?ob9^F+}`4#%`;O*xZ&z;wv$x@~859$=Hv&1%EUsWV=!V2xt#c z)Q?bVl;lq(udmB^3q$NR0{@igJMU)?2Gxo_C;h!YdiAmnf-Nw+M&IPWqkZ1GXDE(; z(})?tlaJCExN3^mRv&bXp*XRLZPkHQ{NA)l1Z0FvopG6Rwu5h!6WT}NS|<-)QVe+s zh@GgxRig=XLA*_f9g-M_&r4ywm6ut6l^J`MyDRPOCVw6$j8ZEqsNl+FS#8L=2){g7 z`X5;_Q1x`u_1cB^i~)iUWM9UCg@3ROYpII?h1cc)t_pmqWE;~+0;DY(Jj?YIM#P=T z;2F8dKS=tFgnTOSJzFvwCzA@&36GlJm@{B&#~Iq?W(gfm5a52ShZY6%vM7LT zK&CH?m#&w?7yG8$9*3lbA-_XvDYG__jq=0Oj6=2!B@B7th}bNof@cA+eQsbDVid5| zF+zj_0pLZ8;`$F9yPsVUd}XmPlfGXmN`H>tY-uWWv$~7%=MbuaP8Un@vQ$uqUOyN+ z{cUmg8{%C-BAQ^73g0HN@dXNtqt#=DIC3jcQnj8cAjI%T{Dg}YfjGi3q8u=PJ7I3i z8Qv$sj8r3|JEBJX9lGS9a8Q}q_u0H(Cqgc)>eukge_Ms0*OA02QC(@;YFN>X3aFL5*WY%OW)50==Nm{6=W3Y?g%gRHj1zh12dCdCRLp`fVk&MO= zaf0#c3r4sMBW98^9bC80Z|gj9?@0X0PBmRC3)tMbZ4mIFH zUn1x12YKLiJX(_zXZgv!>9#*zX*xsV}dQMcK^WP@35B-&e@3hZ3)>0ra^06tJ|RCbW!v z=I#SYJyw=NH;TgPH)S+QC;SoYl&?LRJJoqfmX*h>eh>u(#ExG*W4Vl1XFpm3mtEGH zaA^wAqIF4*n`No&Xb6St!kNIFAyuIDUgWs7Z_6q!ibWUyCPSD7diEhn{e4!x5yNL2 zZz;-=G(^wEyT8QO^waZQcYSNJNDyeTY?zGZLv+)ZwW6InkWaDP#!I1W@Ar(*`Ut}D zBqIj|+fq$S++$3(=zM3~u)?2tg=~b1do;u(MIHEWd&c{J&yXK1f#VhYrc(XvFuS*( z^-^c;OIetdn2Wb+!9%UuZhom4YeghGxHbj^Ga)C~zqPWpniWZ9`R`T>x{V4hQ8?R|Ous~ZDAnX@y zF56gsZE+}HZrut>iUwcdo&7r0?Ki>4F3SoP#S*)OehZjAd8gO`qHWb(`?*VL}q48Ua_eT;#m~{C7^l!4q z6hWl~?A>|vcZpPTP%S;zBA)~#v13%Hsnjxzan@oDok(NHtIxfBt@wsk|rMQF; zmmsMCnVxAR-c9-UC^OmPG7fIX4_#b7#U(XXe;(IkI?PECJo)W4OxXh=8nRtdSH6ZT zcKBZz+TchCkCpSO??#YYC9t<8dkPGH6Ae%<96wY=&YA&|+Or7e{HBs1zB>v5BMQRa zn!1?pixj1A<-h;QZ=PZpI^WSryQgY{*gLljlC)xiG*n|ncz8EH^el72D;iDChm|!G zVZ6pSZ_?=k+qpvJQb8pk68jxw3&z&BmkzNn}GMk}!JW8`YH67+X)K8l^kI=hi>ksKFNWcc8E-6j$~BnuvR*0p zsgH|T=xj7)UnIjvVkKi*rvO&#{EegF#z?xFvm1|C49%?UEKs;K8yFy|f7{sQ%%{jW zoRZ71vtI##=jGk(GK&^V70KBW;OT`;O!)Py4LV)|5*E#Iv0)PxP#1N#8+YK`s!+LX z?qz%RXytJte&hhHbEAcQxnZy6SCw&NR9M;a)>zBe)R=X}S0QI?ELlFL6($w?RCJPQ z->`;p5!kHD)dMe-UsTlf&_uA^wAh1EXP)V2_MjNhW%_(hu56XW$pfzr6@KM5s8yjM z#rf`Cnfv*89`%lebE0#FN@v zAXqSIJqT`*Dg=9Vch;>o1RW6E9;QxX!$;a$ZOb10;`}mKLIV6vnmb#qO4-4{LMuM% zt*|NSD6$hft{-Y5WTJ)f8W8c54#l`!)AK!wLUIrUS%AN)WH3UDKK4i6P-%7kT7y*l zlj@Z84JJirZmIDLx&T6TpxmHh{8tfh;u$&>WaIsC3KG`9cOL9x2qDQL6_~xfe*=1tr`z>(*>gB)+L#ZPNKW+m7~v6;Ht;FQf&0`k#`jB>v?okeZ0#W6V+yHb2up6T#l zRt}P5QAHwqQNHEf#P2)j(l4meigaU8=1FBpp44h$Ygi>qv*gZJaQVH0a^5icsG_3k zx_zaovX(%cO{qfT$9O@%Gi(ux+%!{QQROhtFu&`Y~l?NF>FYQoV3xwlt+B zOT<#<26f42#R#36Wc}|c@U043?XSaiC1~*;lS4X?#5PNA3I5fbcrj`u>vE!!x6cxr zM8R^=N(6AF;1;7Y4K^NLp0W6kE0g2C_uS$_VeeU-nOz=5+x+re`)NDhe-@oOO&xCw zm`6f-dOo&sq{YQ7JQJ1zeOfj9!n!Pn^e{E?an1o=&s!&f0r;PqioTI{qX*o`Eko}2 z2&BaLH{$B-B= zccUoTbhFuA#*bnTB(&z{oeghP>n+gXX3}N6tLI8tfaK2z7kNAK>9Y6)S9TT^fHI;R zLbzA*6z5zb6st+gmIu_^oOB$UL}Hbylq2e&w&8n!JNDymr}GnAi@hs7owjXKC2#Rw z@&sKHU6Nu=mleVFxoVV8;%N^e$GqkiIW%e3+NR^h%Wmu*Tiscem*fYGZkym} z8i$YZ65H1Af~{C4&slJxtk+l%6`CzZhq2n$550}k*XL-Q-0!kY#78U|J3Boo&G+!Y zQ3SBJm)Elv$x2zkjijo0Y-RX4?Itv7!z>xb9tZ8HP+x8uS-6k0dgLC>=Ep3MxI;7} zpR7V6schPAw|yB;T3{M>CeF{Ke94auO?~;z0M;qwWE2d4M>g)1|!T+bCvL-JSz2vvgst2LoHYV5~*~&S6C2} z%(%@e%@EvCy6JPDJafk!y5z}SZ;IR0v-X%+^*YZt$-8rj!1pYgpH(Uw89F0gA*A?> zHlK}_`JLXjHqLbeUXd2UA!j}lp1PF- ztA(Z>;*HU6!qG?G3t2Eo6Z;|feugF+;6H@XCB7pNxi61AOk=#SGnI8VHT&+Aq@08H z^0rBozE`?_#xJV7peMMHC>$ykStq{Z*aed5TS4z9blAN?!JTZ2iRk^P2?tPm{+Fz@xA7iq;JaG{eld zFBf`5Bou=!;|p0Hjfs{)YAk9vDHO`^(l>a){B+8&p{Tu|MJ+(s3t0kc`KC@@!0Foz z)*X!qeQmtOZSN=B@?7j0T?&S#M4$(IlY73t&dMqlNIGqUmumv~8W zeEisTB=ymb|KoowL7Yjj7Et93+nG7f~)-Z=ITe|pU!QS8?No#I%t&elVoAti? zl4Gd~I`s&G-_c0Oc3kO$QS$84+ys<}g52E9C(96T>7|JTL#7E1R}wLdultADfuk|y z!eb^^lob%4PSP=So8(ihR+Q8%P3n{e6G0oay{6H&-zSaTK#GoRw+sFEJx=Ub#nQPL zRZ-Yu<1qA3QnRk)YoCcAHcdkm5lW&g+E1;-o_Bt~{=+p4X>@u3+f7^1O5`D3Gg@@o z+|Dmps&E84!#fH?N}Er1+fskn4F}w_Yp98?Xv4N$EE5SfDIF8$~5kN~}upg9DkXb*wFK{5rW@zvB}k`{X3F!ij5S?LF)D zv;T@m=J;$!MYth&M&;>m^+QPzq(DO_0%+(CR1UIYQ3aw~3>3t%g5AOXm}X0$S}p%#T8&gXeiDh8v>iSniW8jyd=H6=!aVT>3hFdCDHo} zF8W|$fmpCQ$v!k1H4zdI6b=NXmI#Dw0;S3cP^e)Fpd&&ruqAP=)L=`RvJj*!?cori z(_)^>M339kK$ZfT$r0sqRZs;{6&2e603a6m_>fJ7YFsI7OhnrlIh2RL`#0X-23ZWq zME$^};Oj#xvsjGKV0fAxu3i(key-Lv1=#vA>Zdvx#>jL4NqR*I5M^^sGrd|>eIis` zosX%st_pW+{gLD*iTQ2I{rhL=dJt2vv}xDQJSP$X^~8; zE}U#?#oxO<1M_gP6G3cU}$|spH7{Kip6dl%FEx`i|SDq-X*Ie;3kL z^8Qk%IGl!=H)>7DRrB^`ahk1`8If?!p3CmOE!nax^PnFr7XC*rvGdj$igdHQ82wyV zuyCv2q)-DgH(Jl=o5U>w6Ye)jBuEw;FuJ{?_4?_vL6;w~czz`Igvg0XTKe7jLHFy% z*6l;Gh>*8cg3GEYH4X@v%2c<# zIqY?v+VwA0P{Gy?vWm1?7kE;+9!4GqDn4#VgHMq7q)|D}-XhhB^FjMoUx(brKvX zT#ipvD5+DThoOu3D2(H8PT`9ZK`@LyKv16Hi#06K0E>~rVy-NpC`427BaTjF7!w() z^Ze4;L$$j2fc!;QcRcTPKpOyz%!0$fg&VUzSrb?Qjl{bIfO~wCcNZ^53 zA{AF3zVOfXrFG%WvmXq2O#h4>Jp2`p8l-81QVhFis*?@VXOGXXU|ZT6b2cj!W^h=0 z3Ed)@dju=Z!6RQ)(A9$SCZ)=3NfMnhUI(K=NPwyjT}g$Bno}6@E-$gk=<#vMoZ!~E z6s;U$vRxQ&wipfZVtk5~GWE8E9%$MMFK!zYD6zRo1x{Nxw3bK5wdkgC8ujh}M*pl= zy$yRlSzCKzf*~U(&x${>$YLEvk|n#96dKJbO)X0n1$d!I6S5I4#XG^2^2%q~>q8>34Wp(OUTyov zQMwRmT3E!Er?r5K_`jM=Kvq!%+ky#F_YZqmweF*NRr|TzcvbiON>YBixzDZPGH&0$ zONTC(>a!&&m0m;R4R?3AP0N|u`SDA@7VhA8pc|be>!55z0W8A^!`*g{!6Mm0eHrG# z10L1nvLPgn&@#oe-yCJ0ngTG3>>rMEwQ`DR+ZDuIg~p|&SwV_*nGl&7)fI(w5^xh1 zf^4be>6uA$44Bk|mgL!)4GGGp@(vad07kXiqF2-u##Uz#O4Q4pr7bC}vd=^WtbJb3f$@8;=Va3-wxUy-%zR90CPltm?I zY=l!>$!u9t3zDbAqAq=c-aN#Go@K78pz6{lI!&89`p>#ypg^ds6ghn)59)=*0E$dt z8C1#YI??Q%IrKP}N-lK;hJ9Fv!eIFw7n+Ku;sG%eMz9NU;(oOdo_F zHZecyn=rmoB zCd=r!v^Q!Fm?_?H=l=2d)MnT^3q;)th0SQh*)@^rD!q?}n4$#*m4a98;$Sg!A4hr{ zw9FP8CEWItos5zqy9QHK&7_kpl6;$vM(=pKdhYXHuI=dbz6M&w>=Fe)O4Oudcs=>(Pf>+QRJG+7Qk7`nl@ke#`e zAI~Gn^fSr7sZj>$wohL|%}@tzfvE>pRA1nV1mLMZh1Hy~oqU+6Yz(nzFyKf(6Gq3x zx|R5GZQr+pJ!+A4dz~`8@SDvSt5c3c&t$7tIwmG|PY^TxKR$}`Zcm(Mx*ZE*mPrj= z4*XIkIP1WMDRm}>E5XQ;h8*7gyFhDAWj9sxy{G0*pDS!y^F1g>X@O3I_um0Um3hdr z+tjeTm|8A5U7}K=nl%x5e!;omL|Drb0W8g}px5@unjb`AQA^Oi5;jo|uye{8coh&t z)(SP0BhP=ZVE7P^f`iCtB3mdXbL>3&Y9+^`0Babj^x;iGRCHKzl-N6})>xV{! z_QM>wp`s(&kjFsH^_!q1{(b@(yxnL#thrUF1t*qVetEB|rZSAcAA4{eR$Eek$choQt5w4syUL&~$JgVh z+GP=in^8Fd6WIIv!0ZdxQ5Ewy6EeZxY&u7!lF^H`=^e93;I;-gY9}sC#_nGY=SkvS zH-<2Ndarx53$I^iGTa(bZCfjDnO&?pi+rfrkg2LnG~8hx49(rQaE@UXQ4MRm^RlY& zGCKu1&Uwvy0scHhU)7V_IY!N40xRea0=o&N&fq24QNpFGpyCkzY;zxeNsjbk?Wo5Q zF1NJ1KmRIye#d{iLv4u`aFNryGLt)##70$wq{9yIw!~ld2fldkIKyfU(PSoAb+{3l zily&NauL6S3=<6Z-luvjmVaXL9W>^KE?DSz1UvJwS7_nAn5apx1Q`+|#FEnb6tbtS8 zy+bcrWq8FwuY$3EH9sUN1Yk1*7!@~u(B`vkA@h;~9a#~SL%Tt_wML$gPp%l9?ZkY% znY7JvUDsjFN31K_7Ze`6P_*ijb~IPp$asq+J6$#xx?lfNSbyZ=`!%UkagUvh@XxO4 z+`2%Ww>zaWPG}{a0J0Rs3+*_TiuY5ZZB|pufI-J6`fB#c2Nk?|E|?0nlv1?3@}!st zp**S~Hgr;=1m>EaglD?7`)T$9b$d&{>^AG-Z0Le(Y!_(sywTIj9+oB?hW>$HaWFW6 zEjRDc5Ox~vKe(sO?>HyaogUZ>5lJl>Gr{OPmyjBE4B1p+pXZCk_^jJ#I{B&0%1Y4Z z9O!#TzQ2F+4pz(4W;66sDip<UV=~@Zio$O$*Ud^iJhvGB5eWTFuHEE%#P42VSo7>kW|Z2jV0p zJUeQi3AK&GC$sTGRXhETuP$v95Bqf5^RUt$15tj4iJe~(RD9ZwXK=y}@So0ZuA6() z?B&O^Ng^PI`)Nx_a-_G~oFCH8O*J~1JLKSFBqQGom<5Dwt{Q^REwXOiH zv!)FXzl}#vgE8aPulR+J>Ytf1vuk%S!16e3WkujtZ-oHl;Ip1{U}59T!{30H014hJ zG=}oBOjQOUO6s1=cLr-)!|jW#ZH8oH7%o(vX)uFgVPYB<$@9NHU%j#5pI%qkj5NcJ z_YXv1Vo?-I@Fl)ME)Z4RSX3-jNO3(^qC9YVC40}q3hW4^IimJPP8);;EgMWpf%3A< zPG||6C~aZ|qNg?DEk_L^uEEPLArmR@bb`XqV!a;cmNi($VMXj-Jx{YQhZ5YOW{esI zBs`puCxg21%8vHdG1_1I-YoU`iF0i4c@iafoF5j-fADGMjkV>3?~|9fR9qWa1sw&^ zENUFA|dg%JF$#KaU`a& z8FEzkm67=XO*DEJ?tNiTW1$l^?iT;Z<$UD_4YC7gCeOI?t5ky8WLVV6fPI-_c2z+xr6!J-RG6~ZHI5AUSvt?L9>NiUj}8Lc(H>KrIy{z zVq>d_^vBjwm?QZ3v0=$96ZC-FXsS-YHOX3AK7*yavM5H+ijV0kQh*TriRnCiwLsZT8GdVyYmO08hb=>6%5SePFYinG&sm7B<~Ntdq!OK@ zJF~zQ{E66Rgv%qv3vQ7-Q1|RZCgQ8VY^0iLU zrc1^VU|NT*zznOc44A3HSmOV^c=>p@->JgLUKmj{-6vO`(UaRkeUBxcWeguPzT5BO zzWcWH#;qo>91J@Q#L*JUxi(OveL&@c7t{#@2+)pP;>WytC%*g;9cwXw3&pm{`Z~=E zgIe+V0qZOn?&jN?5g}AIMWrz% z?nW~l))(=$ATF4CStY#}q)}$fNvy)Z&QxS?K@Xfex%xbgUtI)dfPzwE+O$=>Y%g!8_|_49|SJA-Mf6h z4ITfTsCY*<;oNXWowiOQKuN0Z-Q&VFW7&_VQ)iB(eO#unT(w*Obt{R4g0V3Vt=tSz z@vi5e*Yk+-mZ^Qk4x7&SG2p0|y<@7aO!0w?+>$X-lYz!Db(ZzjVfvX?U<-nJXH4U_ z_yq{oBxp%fR-)-bEr9kGXAk)VBi6d%lbL^`EzqqJfyDiG=sIO`&zk**>k#dwAQL-U zmMp#j==v@0%Sl^qV>~6XHod%aA}>dfR>ElUR9xa+_QMi;A)X{5zOHWBQ=z-(O~)hF zS?wyRbfemegniqP%q-~{==7k~cpg5vo%JHsmi4yF74fKzdpw6d*oF2b#VSa*05xfh zMMC2B;OLd1>+CnIox#Kvg_om$gts(^Bg)fmNTvaW3r-TTq)X1awu|px|FxK`K>$(v zWAX{J#jNI!>rQQ#lq7hgr!2p$>4e~R);?C>Z@+JJnE&jz1>fJKSjG`T5rAF+SAhRr zE?5Z^SDAGC-Tdw3k#KA;lPq0fkH>v@^tY#pdlOe+0UlR|xoz#N_vEI|i`517+2S0A zst`W+gOF+4H&Z59r(@ilS-_m07fF zT?g!+a1xdlkQ7NK7L$cZLkT7_qQ8!rl(|!0VGX;uw$L(I$0(!R$VPXp>AXb;wha6z z88fT)ujcQEKQetsd^X#w7kd+OH{E)(@ufX9Y3{c zW8V|$c1bVJIv7v(`{ExixLy%Wq?GJOW-+v^!5kdXbg!4=;=M0_Ugkd*o;zjo9tQ3e z;S!%OBNLxpnmMbpZa^}|HU1wn2|riu&50uF6xd;Eg09}iA8cq0>9!S6H`>EbBD^e2 zG7oES=2gxef1ld#vX+bPP0Yb_!$+d>(gUQxJA~%XvCW`D84&5LUQOS=sET^*EBeyq zT435t;4Dk$l2N-aTjebJ4`BZWFr-uc;uH4$RoymxLwS(U#hh`IrNWV;W5S@6_oZdO z-S)!{i%z4la)uT#45H;}01Xo{aJ%goiqhVqi5&?er*(@+9kRz2EQKC%KbJoSO){EmzpHoFY?9E#^-OqmMVl=gj zs=%4~Csiwaz}QG2Q-}t%q~z&sJ!F|m!GMVGxX`REt3u}Mbs_Q`$ys@|(J%_Xlj$9f$zK^Qan zvODh6(2+mLyJv@tE^GGn;qdA3iLvk3PT3Fe){d$Yy9#h z-2Hf}l6*UI01)(vI$mLFjt@v+=o1MNJ=%V}ifdye@vIkVFJ&F{6#O#4vO4>f`B!$V zlB%?&|12q|ml`K~Eo(E$gv{ZC0MfU{c#P!^tdzaYvRQPh9L`hexk-bM7(WwSn*;;} zUuQ;6-m@O1U3OJ?rFBts&i>BqB5JS{Aj?)(1EMmUB6vVRsIOWF@CXnlTriFH^DpJstn zd~FtxLvNKJ{#?Iu4!&+9b;hNClMs5%twjD9z(bam*~@a2J&rgBQjE_t+cdOVzMoyy zE+RbMPM=uUTBF>8ekpP$MBdH5!Cz0^0q~%vt~?e0S&-OJ=r^?6pjy-iu0e-y$#-zA zV{tL`lDEsXHGluiWZ;YmTm9SU>`S{?^d8DV1fPwtK4jnka_D*MgOgs&C;MV?cOCNK zlrx`V2jJWms1>r|oiNY3W?OSv>?+InIY_jd%Tf8{^`Y$WpN=11KpXTv0blpWrb+{k0;q!lm(z+aE>jP*P8H3k{yiuWQO zHbCO?%wATA)dGGaRLSVy`+3R#jT|yMk8?Otx+dokm*6!dt1KI|-%~x(5ONq8%iQGm zY}pp-Vv~+sEFjA?$HG`t-;mIs6!)e%rl_LJmHgDG>)g7s5MGkq*h$j5!`2s1&-X>_ z`JtCvI~JWVV;E4mfHG7rlu?rTWg}~IvyJ{?Wf6IoR3v-tut88z&iPYhX_|&jSynE( z%6iPMrSqnfiRpZ{(?dJYvvmnz~Psx8jDyjc*z%>PBnu0!sV?WM{*SgKg4 z$Fg1nS%rc`@AloT7THsP*VD*fytkYA9XEaj12_(}5$6bmb^f;Ed-Z9icbXS*p+`6oqT9HMt5C7H>8bcRXFHdTJ*90@OZ4!9zw%d*r98%Nqb%CP5d ziI9eIs)bq&dsVD6N`3#r@`<#jbYpSFqeKbGN#9MTzO6mu=eyp-!pn)*W!LqiJfSR` zPX-_gwBr@x^CQZcQ=i($ja_%e*!3H#gE{F;bZ&U7wGaaQdmoF*KN*hauaW8{m9j46v9$TBP{!zHavTN$%3IUW91 zNx>rjSol~X!oP;##TI~+A^)e;$>wQmTtcwP+~ce;1Cb6&m+t@c!*6(K{Zi^h!qa8& zKX^*)G$Q=CDps%N*e-)hG5@yhZ(3#gV}fGD=}ELnt`H-5`5qieAkGvn1a9XKb3x#@ zB2@kNRWx$c@0)dPd1Lv9NNk;&k`|E16lWyJ39O~()AfG=T-ewNn9S|Fkrp{~o(_#E z^0xjK2O=^+={{D<=h*$|ayl4_J$pN+yhL0Dg7tmOrg5^}WnF4)hH#u^7~5SPV9HnY zoXUM{#>{W_PG9uqoS#3my3GS=!1)C6e>5frX({WdyOj}?=b)&p>(l;GU&eK9O#&vX z&J%nvGG!yLUsSQ1nW@l!uh)whT55@2JZ)q7%1UeeyijTK0I?~C7?||Q9=hMTHElVq z|M~Co^(UoQ>841aJDY!O6)VFfih*8HT#WRl>qy70g_yG#4&tW*0&4h3#2l@m6Bk4Q zE)rnn61-$H1~#@ab+SG^w^D+kfWl%WqwbM;Hh-*-?kGHQkEJbX#ogOgWSjlgv-+-A zfrpp%r(#GONR*?&Euc*JZ8t5wGtQx7w`Hq&wb`+Qe5GejHzEd?_~3{E(9fya125I1 z+3OC8`mranEu;HRwb;Js1&TBRFrY%S(Ep)j@}>DLJbwE1IFY^CpOb8##?=70P{J?R z{@nE8yy|h|Kk{1rQ<)M_Yhc|AC;=e~QV#o+3!ijSUT$4Wx#QnwU2bsRRA{Yi>I4ex`vY%6(X`N0VD5|6Y0#0MT~A=Rg~jGOCd##U+FrORX<+N&6BsDk7y^8 zL;ejKu*7N5EZ8~L0LNm+t_Ws%M3-{ScW^{2Fm5AAjccU>v`NB6#y?Q{mjsv$&);?g zaOse)5I2I_*j#ohY4`Xs)vcd7vTr+{8Y1=s`Fn~jD=UkAelDAl+&hvV;WmkFO z?ZJ{IY->;gO$)U7y{IHAE~?*tBF(uj=rZW87q#aBhe_4M=0N~bT@frX-Rm{kF0IXd z2$xv>+%MNh!^noC#=!WoavDK+>F4dBD!G6|J6@tH1dBb|05zrl={OU)yRNOp^Gq_f z-%u-)hYg-XIW!AApYgqndn=|~OXnTLl%-9?_>gL{CNx(kpM#B_ifrTz!m?UUL4MB z=EnAOc2#KJmb;4NS7rGOHVlB2bCOvF&mqEwf6@2XZA1dZ@)4(o4Z3sFd&TVguwuJ zo$pHD)Dc5EzURIybtNl$7u7H{vmx~H(B)l%YyG!K81+_Wu4~pEkA2=8x1vU>A%xp= zH&%l^g5N~wX9>&lAHN5g9H%BW@w_vVXlJz~#z|}Im3^iL(sui}%BCrYEI>5Ki&_tYD2F|22?Q|l8GOO#`~Wqq?G(H@=(wk!FQ!h%-of2J z6e0VrKStApu*&!4Ver0rtMvpSqVvNx!$(@EVaoEvf2Wc-*69NtXXo*h6gf|?-w$={ zGtwAo_$pmca12L`oy}{vx_m6xE%mC69_!V+jdrS8T$&@G2vvK0eK*B{nv145#NguR z{>0vXJavD6vP4^MVTxGt+JF1z(3Bc~8>v~_u5JBwFAQFyZh%kxZsoJ|amjn!v4)@( zJ@Gw+Q^Uem3)c66qX4uImp&*N1h#>Lw;?Z8O423me`e(SM4>w?S&wd8 z?df?yyT zh$;{P_FyiQo12 zeKY_0&)l71f%iS8XCTevb-)D8i@1X2Z{;&#y>d88x76% zK}B9h-w$*&@X~p0uVDZ8&!7H&=`gPLjmb0lc*1u@+S!uBqP1=eraOc-xd0LID z&g;Nqcl!pqySCof!!>XCTOn+KbcEF5uCkLn!iS2KYgaSPZgc-@tnczyPPI~b-Bthb z*8A)#O$mWm5}uYtx%0m_&>D>&TJL2ZzCSok?nne1VK!xi5oh6O%Wp8*G-ot#6M_4& zz=*SEM(y2SC?hHaNeM_W3^NOJUfu!C$%w3p6V8c-3&s8SQ%VzJdNB0v{lazp`%)Q4 zJ-%|`43kHn4P_WakPs1M#5x-HI*6b+I&i{K0i^b*nsK|C6o!K!aBD_KfX312)^m!b{mNbYSPAISQX>9!DKlZVBC$w z8neXpLe1sE=yHy7{wHj^D_R?6`?CA8)o^`SH!5>I5G33Cosf*&UIfH@W{lsu|gxfCfjX*Se@&D<8 z54<_z&`O`BGX-)B;iMcvgv@QXopmM<+{ zn&mV1@+-(YuEBJFOr~OA7X4-THf-?5!4ZK!1((II{@i_VP^*nW(=X$OhUJDveu{=Q zk8BE2Ku|X!@Y=%2U|@zUH~-Af6UJnVx$2n~lp`h~<&@_kT1m>G($7>{)M8qeaI6C6o%ESvPqf?x`7 zP;gL?PhePG+7q?hp5kAeR6)SWQ`dC9_}HL|+#&r?MD`8Sqt!yd?r> zLJ7qu7*UeZ;BW{5STu<0SvqH(l}fBy{Ji z)_1E|{V^h4!nI-E+i{Vv7yF6}(T|JH*!wP-gOh)j(eICaAjE@Tf}i!XdUs?Y6*yb_ z@v^AtH9fba?_(xB={<0bKz7aQ1$QZ#tv_47;xw1jQOO;ai1Q~sOl6;`Js#zy8RF;U zCH8a1z(h+dM#FbNq;`{^BM3_9m0_C$bX4C%!)|zYS+bt==NW}OJeA&_e4g#lCTpcj zn3xh^amz7Y6P%M8!jHf%AuRE+2`}7Bnx{o~mJtZA0P7=hwBc9qk$$Qs@U-=7^oIQ4 z>RF@I}$E&$xIZfG1vPe=-Q4sj>Wn{70a&#V# z(TnL4B81{bq#oK(788mjRM1B*{>IQe&U2>wkd#roU;AKgcG0A(kkL=oWU1l!6mdAe8Iv z`FP`PF{ieV7}KSt$F3%xn~t7;bNcD|=lkEB=dJOm@)K;i!v-6OR|V2tPzshWHGW#u z*UvUcXYq8<1yx@z%!q%ydHU@cHw4#x`oq=p;a0Wba+kc6Tiv&Wn?Zm5J+ORv6E?M7$?rxn zm&yGune>r(uoP7pY6rAgDtSJ zX|wkufE#*Mrsw8fZ2SrRO>ZO`m_$}HXQLckDY?Q%|5fFS9u}pP;4E9N5{wSy1Ad3Z zWz(%$*#dLRno(m$-A&;C)_GjgV`{O2C183U-05zrMR|2kTn{^2Y%MXs9RXx4_JXi4>L22;=vVgUi%y0lx#+)wXwC`SDs zC|;NKP>2i8E;Q2aohglp9(2(lmZG%L!3c;fhxZ;jFETkrAlFn%Ze5Htq0-4YWwWFp zEbw#}OII2v(hmXqIu;*QP52NodWBI$Eye(TL&C<2fY#UO^v?ojl3lMO%a zko7d|pze&)S`)^=OQK8bo|-Xi)Ay0K>HOtOt%-+(509c1u|)9mL8?$t&8LVxGy))| z=TcwvdfSi>4c|)=eGEM_6g2bC&e51`!v6ebe=jMGlDa&q$vz16E)yIG8%2WGQ&hd9 zq}C~9DTkQmXt(HtvkgQ2vPPFZ+m>wb@?vzA*Gqiyh=P7n258b+@Z^#c5ilm8N!94v zA7FOtI72k^#bTB_5^E}i?7qLBlr2;EloYefESRTkNc4L}OYiQ)aOu4-^&GiJ5XJ}{ z$_x$x96QU5jL;?>Ns=u*)aLnikCT|!`sv>qq^`1I>QO`e<^9B$8vVTw$Y^bWsMw8=`_z!_L(f#Z@5XZ*!Ojg)OK%;nhfQIYEf*I`EAC>2 zs-I00&E`u@hractPJYyK1m-}>akM|MqZ6`~?h{J1tYGDw(H`zK5HC_22~*5q>eX)2 ztjg?CC$}Cy*K)V;O0ieO6nQbu57q}o>pNP*`W43E`e6F^1{D=Tj_!|WN0%zZ>X`>x zWE_NZ>rYwK=RqQubFg?6!*b22;~Z4DUe_aR@58Y7A4;StAfu(eG@{$XhUL# zKPuh4$lL9cTYSH;vA$6tuvm^t0pZn%Gn4W0m68l2JFzE|VTMde(K!?gT=N8062on< zwcU?P!-yj*ruamYC3*P5QdUY^|EPsr6PNN=giTW{o$7~YT7C0M5P9a9p`>-C!c9XxFXH#7!s@?l07>YeCnGK?dUp2O=X~X8bVu)b8gI zMgdy1{WQxMe|JN->CN8vlm5uDEI9nZ=zEAZWKZDfHU_V1mAVVVSx>#?#D+1rpl}$~ zWlE+n3&_3byo6YEzKUKbu*ap4L^x;;A1gMK!Z5w z7AZo$`chs<`u$>)${I`#nYe2-U+4IdVp;IUJN@qiE{%j|j)2iD8l=2WIlLm$BQM7T z;<~i%ihGKQ;S0-uz|=IS*28z3l;VKGzHEH-M~=CoBl`C~BB%D$keCxD%7MgR^@uj= zF*h3tCtc+kS)ErDPYUtsq)UdxSY ziliT!mkZW`Q_aJ_GHQk&IBx!G+(^Dd7pJ+`IaL~<#whRw(Q5~#jSaCPBSb7F5wGWp zK^lIoDuFE;7yN=ePjbm0%}nJkVr4miVg^PntZ|zytSv7NFC@DQC8Pdkmg(YKKYH(D z##NN}Of8!{E$fxS;%Jtpoe?XT@Zv+dx*!?0>O9R&Ob>t$MgEUop%$u|FtFH<-t#$sN=jR*tFA41o}AWL%|t^(gS@z zC5B#dj)fgNbCcJ zf#s^qB*t9R!JxCG+>DKK_?9IV!t#7uNXUU(Rmf=I$>WBt9!MnRPF}!|L#s4FS+UfT zh%4{ZTJQAGUFe;8Q20k90?5iTDS8IhWJh&S!fXd`1=+VI#-67Ptvn1pJcAiRo6lhz z)>QM(j*KyU`!xGBBEk2$_;P7>@r%#Ye(>jT$8$5I1hO3H(w-?V!p$JmEeo7md{2zO zWrTz@ysajzwsB3Zw>fI(^-(beA0=3oaZwdc}4s)Q>jg~7e+oSC|4sjf@^8yKZ#+EYow!5)%l{+ z0|L>a5j$|+LB*;dZBPzQ4##!b`cLGM8Fci~NpU=PClX9rtP+f^%Ai_;Ta3F-z~)?c z>MDCDCioWl6kU_PtwC0h@QiqP%EEfFRsp=rJe2og&RA&t+2nNkMv(&?4YO{iiQC>l z;107PruMt5`Sbi{9paBNg0%aunGzn>1M?+*LAA*F^FaZi?8I5%*ioA#+7DtGvxp7% zf$t|4Z|FEqVLNDGXiX0*cr%PWLL7YnungFhA_F3fasWAx2Y71+T&E_S=e{{Byli5m zp!?*lZX(pa^^T z`E`5wL_iaw|54598@%(luY}{u8YVhXYcoEQw%*bLTMnF~Jh# zeCS2i5MUL^Amw62yzY(?|D=;+N=HR@w;wZGACh(6RyEAV=l8N-#WVB3tx+LB6y(#J zeR~2T0Bg?l?nL#tJWWy9{q}N1@ghVnuF7_y>Gx+j_bM6>IVsD84^WYJ#X+!tG9AFB z2pVk=5a8f_njHR4Nj{fQ6ov934rj`|3K_JM?U`A+%5B5cF21AU)3MqkJFeLi>}vXeO)`Mkq#T#!)59OKVDAOCm1`~~YCzwX*$z0##*ZLlD`E|h39 z^16(#D}rc5fT+SAb#IB~Iy`pZp;HK_g6S40qJb9R1TnZAPpbRZ7fFG$vMa<8JF}&r zVG|B9g7(Uz4Q*4te1aRYw=#qH25GgCMD-cx>dQE4-K486$0D)2i(e&}bE6&hV6%h| zIh!4Yn-(Sgp-G#3DDHj`>T1sFWyuBCc{G#i+^E;zCu#>zFnxKWX9Hu%bbmxsMB>og z^C>)3j~u)#xfec*V=?=*B)k+8ZK)e~udL{=@M`1LfvpU`5vqq#ALi33S5af(`}gy& z%$xSnK!GR!$t_l$d(D(jNxMyn3Wh%WCsNavT4e1BX_2F@KVRi(x!Nye@^eq^Fo*-t zB3m=Yka-zz{i4bbk+Dahr?D)hU|CWocT^;|@((+`8GSbSX@p6}y%B08Ke?G_yO!6J zS@-sp#Cx&}BqbfVBBg(b-R8j4v{2riY99h#6z3!3Bdhv4Ol@3p->d!bW&joU5562Sns(Fx`m{G}{K1pa_Yzel4n3N}(_u5k``fh(63U}y#powhMQnggR=r_!iIW2{KF#v2@Tml_HRhJBg0!H zDoLztZx~Kl03je%4?FE2+QXdco zoOkU8Ni{ayqLN*NTNS$|AL3-`U^9@6GrsRqGvh#q5)nA&_cmomWFEh>&d|y#;|og< zPx<{-%;v|q`!h7(c_mxZel%If3mASknhQPp3Ze_98HPU)wOS9GS@|$FXOr_qKT*v~ zhdh~LB$x$BR-aH~LsglUIQ0Cg!Xc!77E13FnPA_e5 zuO-s(6B+ly2-gI0nI9Uu+wele$2`NzZIYRK&C#pHaDeG3#_mXclz@K^iCYc*Lo6BC z;aQoo^%BJZp9-j0Mb~pkm$W&!eXDk+5^Yfx!A?0$q{~hkgWHYvK(Q|Y3x6foHeTTO z{Pw!Wc}M8kRUmK_s_LIy2N?c0n8-UgHyfcBL0zN+-KMR}7$e9t zZA0T=ua0V)!*+M#G=-x0P3wsf@3#xKL0ysdRig{_9&c|x6_eB*sRaqRJ;B8%>$@Aw zK{HgyzeF1)B@T}j9?^T%-Dk}%(cp$jqYsZ^$-I>;MF{3FUIWg8BYMFLoE=;Fm#0jW z|BfShV5uNsMN0UZm~B6SX~1Ep)Z@}>YtuQu?k(5v*bOOa`pRy5YRN68BPEfTdECyr zr<>s)Ap(B>ltn&1C>H}<$vpRizrWTo zVnc?uBCBGV&;4D0ni0682)y%b8D9U zt8lcZVVJ*Tccotc?+~T2V0}9_xOcth2t5F8B!CgKmy2lm579^!>K>b6i6JKru8PKx zdCNZxdV~}yZh=$D1F-NGGzA8cSNvlv#zMo-COMU(&=s(V5Fng!=6b(p3Een?WnJxL zvF)qYQFq(pBH#YaSsJ6UIqlJ+uapxWw~CkhiItv~r})b=5Y&8nK?HfA5LpB2^a|lc zD6R@^8jAh@Dq6)(C;>x6h_xyLN?-I8CPqys~syNGm&*K=nggD!~X zZ`alu9!iUBg=FWfG`*II+-$%=r-ub+7?hj!ycXcfAXie(i4lYSH{1ojW1rNi#4gllD#c zdLVa%Einq?sC)Wgls+vVu}R6`+lE^Ck*d0;wHbcEm`7>vgi(3;rAxc0lCmSld0K1( ztl+e4NmAIBWe#@zw-u2RQ&=<&FmwyOiaw$~uzxzpn_~G6hQEp6{Z@H@kJDB5nEwtJ zP%@8V{xQEyf6T!~Wk6BGFXNuY+zPs<%1uG?`_2UG7Rz>ARc_ud$a_6i1XP{HH9N5c ze~-^{iSUGGuHv#T3kVMzN+t&*=!=bcdKtzgaYjDMZnQA zU5$26s~v=MKK6pY=Y?(!)^rR@73A&hI~6l59dYb*wHfx^!AEP#U+YL76>t9B5Ba{b z@a{>zX+YIOE8$)j7U}P}6eWQqJ674JDHy1${)4bVY_@{1P0G_T#|7IHjfxP_`zkX87dr^$Kc`Bo_$x zR_bA<%zzx4g~2*f!2WF7S!zt5fG{KfGxcq;p>|==WT~%vX`P$mM3*5V)D3G0m=Y)1;q6y!vB!H5 zuRf%#p2ge)1p6i5W8E6f%_rpMUCwit*3BrDY2CI-)lW8DFBdj~`hBBSx4J24>i=$K z8X`qc!Z%#7F-W7eX}~yjSfwOheTmX!Iw7+Rf%7tZDE&8bS6#Mx^OWtmZTd_v&mO+w zFPd;ILc%1$I60W#Hn<&5v=^1=*1~>&l6gz>eaJANM59OP)RW!7 zj(F|~vjt${5Rv3C;h<&gyvaerqgcyN{&~borO8Vqdl>UfcdJyR({9B*t?sSd338X< z>KX6f9o%j62M%$kcfIQ(G-yGHg_>dHtXz}c{%uyN*XRJHn|1>T&~a$T8|Kq9vgj44 zvxZ0RYd!)EUr(Dv&k7KLA`siSXTO?Am>K-+H zLUxm$HEl-dt6e6cTXQvN*l@`2-zwgtz%_<%)@Z(~dO_B#(PSi+Asg$e`r!8=ugD-w z0HW@Jh3CtSSc>0-YFkQbFQZmBp2gWS-Y*b~Rmr5P)-#O~z4~Pr{kTkGcj%Ez8<_(U z@pCmSfqwKQ=+To^hMDZ`p7D=Z*bn>cm`Oi(m%njq!o47L1*&-0Lqy9EhKj1lqYx}T zA0oqa)q0+AxCyBV=?pV7i=~iDOIF)~1=s;jR^L!vC!Sr`HrV;i@!~N>UwOZrSwQ%7 zQAhzD-WHU^ON@^!R4H$8B4+vH3ZmX*52!QsV6|JmQVj=v*+d0HSWdw2ro&7i5a& zat`Q;>X%a$HJ!5tkGK~{YgWatzY05&kvn0lxwGC~ zVrJm4Zi8u@_}tWKrkSe4f#nr3C+#@VzIT8}Sthw}ve=)wjZh$uEyyr(nR zWN~dYvt>82t$ZiHqUZ(3&(L6}n3R6&jn&ZC{p;37^8X}6S&8Se>U`SwI?0NeW_lG) z%U!t*=dSsr$jm505s=TAyxT#vg4(H;5l`B;z*sNtmvF;3+7@Q(!?T2rFaXAVOf`%V zDp=wtHvGM?m>(Xc@5n@q&K1{^zLRYagcud;|`kUeGGIrz{g%H;aeMbRk##r%}k(lp8Dc=>Ax3x?6wF?pN#r41H-poEY zo^_q&b6>~tSajku1#gdHvL{@AB)kL}i)FG$NMk;94t{q*Q{ZUF7AbZ2ijrxJUt6{` zQ5lvsVr40Tyo9^Ph4^Y8QWLl~m>L$o1oIUQxlwD<7XO@kKO$crU5~(?_u}w{;Z(tw zT+lFpTMZiJb6jVBmf?!4n``Y(ZCf##kF&xxbF{Jb`UU5=J=t93%*lhJeLSig2jT1B zTumkxSzBtq=U=yzOnSM%K<88;oLYCjyy@G@wQrsGT`4=gD&i5wuNYhL^)n38jwBWA>u?FUK}0LCD&f^zZTH-FwX#COfvJO`|fc^Q;EFW&)kQL|Ub|#U0LN+WyozjamGzO1QQ~M{_7=qeAD@M6VHWbY zrN;}av3S8@-nrc&nqkH+yh=4$Njk>~V^&RkA&+3oEao0`~lnb`v{v%Kt|J41HtlV{MQA&%EY8?QE%|Nau> z86R(YzmD@+HS(kZr~N_d_Aa2tfP-zKOafG|vPQ{;lW5gn>jv-0G$8gUlhk4*-fziL za#C{q;`3hcS8MCvKU!VqWl!$8hxUlx^h*^hR(W&_-dNMUen<5Pn8|S^S(l3J?q1^Q zeH2*DEwJ`+Da;Hg$h_say5*>Ka;g)`ZTre)a-3qgC93_>dVao$YYS+GYJ=ZomNywNH{m50z zQZ|-2#@u?c8M}DgY^n9N-?N?%A8e(1eF_4CGwo_e-jOL1S&}w) zza6#51{XbiGmDDGTyB2#L@oky`TJ6vJ)4aTM)SR5>jTkEXW`+}RyIl3{=)!ZBj zDobT>Yj{W%h-M7p|Hag|$oPMTbO{OTid5JoCo=*Z?ClLaz~E;z$ZO>iQs~n&Q@?C{ z{&RcW27DVBNb%+~#WMf+c$Q4i+}MSwZqZCJ%$DN3_Gkv*v&21pVo?G}fx`C7C6qfS zw%hCPme-_Zkn8XMxrh63Ns2d!D9tj7cyZVke#A$oc?^w10b{4w(inr^x?D4qJ{2;=;X6 z5rUfURq`d;c>XVrCJ0(#_591ZRYPq37;l6vquZy!**CONT1=$c&Poe}4q~aZ?BOrC z2e{`&6%GX+$3Bi@wAWcAQY*-jLXH0#58yqX7nKVRE#K;dsDMj-ZgtZzD=WLE zv4L2D2uzBD!5^0V&+8#&N88t#Z`fgM*>4kLUdcwY$MGKi+U`CNynU%rKi~Ikujr-J zNQ2JkEX}UI=p4E%eenTlsm#v6cY+;hQUe_*2rQx!gzgZ<6nrUeE2V-y6 z+`=&+O0g`qJ?pCBv!lS%_x*#LjPX-Xwp%FUBEhQc8PJ;VFd|~7u21<^Z{8_8Sbr5R z9fGD{cenh^B*gn;-L_&~UUbz%7uPWXc8St3cz~dcMzQ7A-7-2D0^dx-jqSS%GlAQ3Kadr-_I}zfV$!3QozBbIWCqEsj|KBe}eoB@?k&BUK~C zFsFO6Ay!+Ww~U`)G-7e!0xVyIn-gXgR)*4HdZoRK`@^O!_lvH<#5_I0=Uki2mI6(S z#AAF{pPw~od@D8@Z+&G$Q7@FKN;yWMYayThnJ&VNd?@5;dcFTY&sE0oiurk+UggT0 zN(UA!d$zJkvB&eq@j^Sjh;@KL$WuH`!hMMthAWjXuB+?qPrq${y`uhP_$8(^W`+fi z>0gq1T#5bc4J~}~rSYRnhsvL*Cj`$U=zQ!j$McX$Oc`~&V!u|64kq3Qr42Ae+{bOC z2Nh#gqvdKcQUNXT5m*m+u;DuZZvd#J{^l{;{S%*^V{STZGG%8|KVmX9_<{Im?{BFa z)2!4128p>L2MwGAhc}vGQXL76G-BFx6h?6s>fwf3F-W7c6?F0voD7hh65l$$oE>2f ze~ngdp857WTyp=Pg9_ZHx5$wSTj8Faok!n-e@g7}nAugBvBojhwU_tDlvp}cgo~qd0QPs$)Ve4N zITL$Y1w;y`3h~$Dl&%~9*@E|IU?#Z;3hSk#1c&Z?i9ar{Thf`zBu!M5ok_${Ah1&n zGj{MIKco$x{-CzF?+@w2>mgEJ{V+ya1><2*6-TGgJf$vu>tY%+Hc(UV&u4tA8ynJY zbK0}m;&KYi*Ma!mz7WO4y5$>fT7IdMp`Jz8A)lSjR29rfO|pU_C;`3V+F>psRHHT0 zzK>f6o}6635b>hYi*a+(P}f4Shj*4sy#h-vq6Nr#zpmP35 ze+q!9ef=uE^Z#rjdNQ&yFEV&fF88#GLWEqy{Ll651~V zlZB&-KRPb_@ILVAR`(X?Y^)K%%fly6We5YBv3|G+`w3Zuy;@rd(T6G= z=ENg>c`M=xEF=Ws8N}x7W}<<)KSO_ue{vG)D{i-YWu1Pfqq^WMDB^!a(b(%1wc=~o z>9xb*U$S6wQLZtV(o^d+JvZxiIPA_*j2g>u$vMI6w2ZY%L=;e!gr@6krAX^k0WGh`cIQ1^i zK<}ITP=fI-_)f#I9Xa4O4%o&*WK$)66E$;8tC)_R87RT%W>p1nGwz7 z1tL|tHwC!|UX?)=*Wp8uuOeTe5|fHEh-2n)s?5N;_H6~3v~u;q6wWCTXn|(l$0|*a z^I^W-Jv;277=R;DysP2nDG(hYFJ;@@%yhzwVk&GCoZA15HS8|CLl@Sc9rxC7PkY{4 zoW3PJdAy*KId`=CV8(LcWURZSa}2AJNF5?&%aFI;j?jqsQhBbXQ1V)xu~ejz4JVdx_H~(Mzi5RvsM_cD4tRJ8>|L4 zjP^v>>h034l?Vi$3Pfb2xmsDeBn7;i&HVAS1_R`8W>LSZGI0^ELXl=Cn#prfp)}{Z za7Crez)l%f7He(t=jmV3R#t)qaegh5Q+AT&uyr;+S`Kr&dY~2I!=%Adgod#`*2RGZ zF|`LIzTDvx7nnJk#*5fUVf-Y)9?1hgKI|F(m z&=|NxyYy&~DoDHx`>A)+(tT=tT9u}j- zv4yBl_AM3ET!%dp2vYm(hIydvGcoNqntJMeeys!kzE|(rNTkT8^>xZ#OYesNv4n|P z;#G`Ff?1xK7!FOW#lF7U*2)yOb=r- z;~gyNdm>!V*6Eqqrk)kKXEKr6!t*7e8+ zAw(9vfZM>8Vcf-R zxJ1aq@GsyEy&G>;_OJD1i2<~87cklN{H@{<71?}d3FuzGk(wDPvr72SCmFiR3@}-3 z|J$IAg~x+==1Ux%tmT#r zjBa65KVJb7x`lI$Lau@)-$>p)HJ44G}`nPk z@gt!9I%HDw+8L?Z@E`CXj^BojpI^T&WJzEIz-<};A^(9H@u{PeRd%wyJ)`_0 z>kyZ$ksHw@PFgEV%cO6gNX_aMch;{5%Z@+497hW)W@es8Kg4kWdH0ubqOe*B2CFnH6P8PnlreE;{;s=ltp?ujHDwPxsj7J&h+20G9z?J+vk> zENhy1W*utvWW^b>P??>x3sgA+B&Y;UCYDXA3Z@QNLWc@Ro)%T=5i0Oea`xRXoWQ$a zZu6emRtJef*njoHuQ2-Olf!nZHO=VA8{;H8(dlJ9R{!Ij*6CUGj|Op*=?tmYx+SRS z;vmvuG(uQLBwqiI@M^uT_nJL3XG}^t1qGwOAB`H-wM(eA@i|zJkKeEs?(zMLc*RRB zIUnEOMlYV*AIvjGlkFPk0EY1)lRiDmEIs#AW`LHo&QQHtbWWPsy*~bd;akWSjj!Psqm`v?|MmPKifFzp@C^Ce zx4yiiyoIRMzMjDixp*2Wub7Gvj9oi>D44#2G*gL*2z_vjoDM9r%w~~0DKK@xT*xXK zU=#bZ_fFWju=Q>8#D${>l>kj*m-`O_bHA&K*4~FnwV=JVj+!q{UbfW#_SnK!(cs89 zMQDq~@e||N(4w?<1~{i@&VErhwzj{Ux*cWNQc)%yllbZL`&ZXCjSh{cuXo}{RxOYF zeM_K>y%fsRFXRE1(v6Ej6?O&ymk0m=T`&G*)!1y~EfBEGG4ugSZZu~+|@9sgideYc4PfL7=!v5Mo#_>*kPVYz4PiU3_}Y*vmgrvvQ7r3?aw=E+$O+TC2kr6Jc_3AnoV^ALIglV zwCCliB~>D3;2$aA67LC27$d3k6xs8m6WtrX2$$fYNE|!5!g8qR8~xxYd@7M_0)tnS zdxRFI2-+avq_*YN5{8HE$k%4c-$Q=Wiq(_-y&h09ediv}tO0Nm#+a>~+NUlh?Hjmz zX2G!nRhl2Fztl*qkY?`1>Bjj?Z5xVe zHEsp76gx`eLhFPL1&ahriPy#L1B5~0@ZzVR6;xGrYHc-1axv&ocF-7C1f1Qr?Wzq2Axj)_B(C?OgrW7r>vcO!_}; zO3c`i?D*@46nJN?zHAc^nN-qIoJDF3yyQsMgvyke?E#_NeJpIRNw@dmv(rDjPOfChhKRdEj?0bm;7*f~Z+SJ!I!kiGZNda&blftJ!s`XR>+%*z6yYYNd z&0Zw%kU7(Q&&`NtQIuw9>(9W?i$*jEIFDP!90VmYbOovL%Si?Eyfx{hM|T&6%O+3@euHj;R)U4FF~Hpyb)HFc zqETgh9oaw6cYieMl2Xm3E3?gMRo%BqQ(rBh%u=bXQpyt{f@frSfwbou8+anB|IaB! zupmtUXW1i3(*oWpzB9143&@qj#qGU4S35fS{f}%|4*T(2iqHwXMyU_Rl(Nl_o^k^8 zIKk4_wP@-~gXht>WfmEE^*=3FA34~&iA*Z$C~8Ki4Ls5>?1i5K14bZR7lzb=1}KI^ z@D2#0>Rer#Te@cpdVGyvtn^c%jRG7{pJ81*9tdXFuYab`Tg0#>hr(;qCx-6VF6 zd9j%mpLY0jB~%9)TjG~!s=Nvt(jg|8M;i2_MJw`Z8H?ZxV`c+emcxJ|2^0%}SpQx1 z<1dk>IK7zTJ`1}iwZ7;lpOi_k;onTvos!$X+wyo}o%$gEN2(6tuNu zVtd=4P?Mqe&cGfpU)M4v0Jux5-*%1pVr7piZAGY3_b^ob{R)*Z@PMok#EdRurh!4M zF%m%Z^BIvEB})(z9rmjKjOEfXq~9UORec7u7i@DwpjqG@HzOxe2bHumW_AEqb8Q9X z@#ik8k?vW;yEX<9Wt=oAXiSkzAb#|$7B@^&oQC4_dxuXyrqzEp0Ub8GN^V*?yOvtk z4$2a>=Z`Lfz~FyA&m$|FZsneVg5Y4q4ibT0^~2e)ss<|8`I|(cgeWD9d`}8%-bJg# zkqr@OVa9b|az>icXNOP5ra4t+wV0>Z|IYu{g4%vy}K-ag=@1FFY&PfKCOc2BdY+W}r)z~8m2toiIH@ka68 zEI-%GX1Z~R5NUJKi=hX;c0Z6Z(H2T>iTJn8%}#nE`!LkH#dwYS}@%_OqY`K8U<;zl{y^mVrk)KIDj1)Bx^J_y6snwaeuTm)#M>V<%Te8+ctAbeFQ z&Y9UO9E7Mjxo6Y&Fp~8EqPI}(c{t2x7I?#X8)qj%r6=kaDZngj?QBJy4!}*UkpTvS9O}@Xd)>FG zU??(!P)g89a0gB(%bS(<>Zb8;%68~2$!6Ycuvo~R zn!u@g$Aiolj(zsqR{rHAu@je;3F+8sSI^+;5uWR-pYzpUUh7B#Sjqtq?E#>&0MW#o zAOcnO2LLWNkp<|u$qR;3jsKa)JKQ~s_;u&BbK>8#lg_`aY2)H=s^9~s+wpCgebxCtGKMRFiZ@u3d(vqr>rbx3DP3D-xWw9Ku z7x%rnxxodR22U8!b9lB22vU2Sd5s!drSp9v3LMF4j^#5_9ZFrN08tj{t(Ju`Br$+B zmPvb3%&>$Y1H?T14CwzgSOBXA>IA^MIJL4o3F?J_0gyTikx0(#6Cg!cHHmRvoOgt1tXgqIuXMR-{%v%wD zsj5!ap=NC7&2d;p{E3_oIaQ-xSCvjh6I$4R!QWxn$?p^z)J`;)DH*LT$*WGt@Qqrj&wd?caiY!> zr1CaNWYHnM@ctlZ?dwW!&DC=kY+&%EE98f;f{wPsjLhrYLyy~G_kcBSp6*q$qirT2 zmtTL(n1?MPVCTS0h(yGB;G6ANJ8jje*(jIlok0j)CMBoA72MpQbc;LB=TR&aV<+aMk8pA zH%dVVu*GeKfseY4p8-^uo}2M-uq;$88;Iv_#aOvXISx`j5wvAOmqT}g%1W``tlrX{ ze7{E?0Uy8MWZ-r0td=G!XS@+%n_3G-GcR4$@P2!s%gvqx9zJo&n*4JGSl(-wREdyh z;bjLfKjP^gr2G}f2SnVU#MYrWKeAhE>ZiM}0lJo(4F*v9C&oE>J8K=^w};QH zKZT>srR(>79bD!7*>}YRMtSlo?2Mg^BCwnJ?j!@x|Ofw(B(|hxy_`o2cg@dX*;4 z*8CRx~7hNp4yF&<&;O_2DaCdhnINv<)ch1f^^Jlwzs%xt5z17oQz(14! z2JwGxJ|OWr?zw9e6KR-JHHK0>T=uKXGDrtk$SJlI*M{V*ZN2;b2vgh5EScA%))~jl$@xzwh@lg*X>LM)_?SSyE9a(SQ+JSgYNQurkc28)ME6nVHG2FNdVR52 zF^|Um;v1${*%G9)`YsxyZ_P7&G?gtJ^*ij>du#MTmviFW8@6e3s^7~_0H6RO8B>@) z&oIYqoGED^$$v~R5SMX>bLPbUVcP+4%eU<}x9RWMM${Vn4HwwyOUxc6=<@>6sbtw~ zPflJYq*VT84RMMS7)gRqP| zhVX;S;qA4^Hd%~a0I7cpGM;i{|CKNx8+VOd^T;xJ<#Y6%2hqwf)%1NIzJfr(vP_3J zZ>zbdTJ9f;y^c!x-A{IsQ_?d5Ut1(KjIWG4bzlX)Zbi%AA_3Jq9RJr%FW#mGyequi ze-lsmh?|Y#3;uovOUu190cavb_`PUS zRuQ$r7zwHXe*~zhCEtgtnt@81VCdec6Tqr8J=D|yZzs>3>djDmRv$oEYkB4Q#tff)X@S3zNcfWs3b zz)VeDn}Sut7{fScRn14Mfuc+$2Y-KhdHYcN-KpE%iQC#n{i;v+mUJ`+?|-lEe|)lu zWl&HQC%G}xw(^@iBMtSP{AV8$@48BGTRYcAwu)EK3H<#n>}lDe4td4SCPpVTWL+An9Ocm>e$l=M`CCVt5se(tfKnFics_NmUEh?K*WR3qDWri0Zl?#-Zz+xtV55M(VGjlaf17I)^^^HC)6aoGBkIoH?fk7fNww0wom{3jlHvi2RWPvgS zGbRd@F~3vsYo@#KzrrY0NL_iC>Gy42|CXE=ZQ3}vSBxBdq5vX@&Cbe20%4YpHTn%C{cT^9gIeLvRrR1o|BpcNziE zo1M6)MiiB}|7+7A3vgdR@&`C@Ag(%iqz$_<-nKgHgnN=RpO$2+!QjWBrK1f$XZ*-H z5#hfrk}VD7hlE5@u_vbKDF2se$f$n|Eay^R@Z=4E;qMzY$66oI7tO2Qo3*c*0kw%A zoPa0+lnC@Wj5)|-e=$K-{!{rer2zs~n}jl9%?GH!g;N$2wzVk-Hz}tIoGVA1E9r(F zP5l68&C@M>gZMw;)oZOk9v{%AQ0imBUK`#6ZULP(8G@`VgeIl}<@g^=uBBSfCNTo&0#MzGGX!*ZZ=SAN^|5y-85{=`7;nRX6Gnx^ltLDcYp7wn2rC(8pMH;QrpyV^0e%K~av#v2rfjEdYwfW!oCM4OT_h8(r`jxDcI zd_~fU(}(Zf`b@b9B!&F{W?f(BaK_Etf?4>c(*7Hhrr#*KbzCKecIU(=`-Dk{95?C* z5`UV%FW9I^fXM)4)TUTHku&i-FJaRPEk(UJmL8f7u<$x}=jU{_gPQ&wPxP8mO}{ zo1As4&)`5KjP8DcSr{QlLKJ+mSQF+}d(bs~;!wDGiIFXB`m#KqrrbZ0gOo}9YdkM1 zL}FNAIW-i{qVH6{=bp!es2_2FiOj5XH)bX1VolrwlmSl;{I?69hQR6L>bhxFF916Y z@nr|#k!}9jWcV6RZK99mdtnWN?wZH{zCPf{yqv0?B4lsO=aq!9rnI13NDlCK1gbN$ zBOH+j%~&jr<)$D6w>=miZv9y!tJntWX97m$-N!JZAvJU`v< z=YJeb%nU@Kf(k5k@ajVrO!y7X&0Xa^Y*TZ`pi3OfqaaAP_T?6@bA4Io zIg{tu6iF`}o_}u>Y%rL5xBFisdM!$??XUIAKCfK$4kd8ZCMG{(R(|Yrqpk%ThRg0i zjWg)DNXay_mAZw1X&bcuB%?|7-nFarC0n;;`E@FsKP;1D7oG{+HOd?JjOY0}=+=m> z-J>G?H!s2(oiAvcOWw5O2FqC5!G4vG))?rvF?Jl~Hu)YNsObHF(c$>LBqgEsm(pyMjXmJm>s><;Ny zjc!wsb&smfTI0+a>*(p-gai;*I$^-w({AE5MdvAMX;f-US(^8)WAHBF9a4 zXyU#bX8G3d>vI7#C)TpVqR-FA3y(^IK4FC3JUM&qjtS5hwZJC} z&A&AInjH6kqDwxNGo2UwR?p%^9tIu~_&UREgKKWn1>h7JQXwp;7tvI8P>C>U9!#c} zv+N2|v*o*gYbN*G_|h;iuCnYKYs5hlzmkA1^D_LT$5!dn^#KsB%gG?D?gF z2~oNu9bpFP|C{48Qx4P)`+BGE7%=ii7%%`h}%fxFu2Jt;I;o36d9b!MGKQu>t zAr&w1%&$cA=^jCoV4wg;RT;_%WEda;wmp~DoAVtlE3Kmd()WM)rmg(9aKnftSNhe( z_8ZFJ`o=8lIIT#RB(n|$L{ZS}{SU&m7*0THzA_lm&g-=E1Y^KZP=|&hs2>m|^ex)H zX9-JAs(^TMslC}ZRi*OsYje`&<%s}F5072T*W)XsM&d7^G!eJE3Lio}mF^xEh z0;DjSK!|MU8B1CuGEkMYEmWwVDp<0ZI;lBuT?BGWQzjpfW2CD6$_d3#nf1ouiSvkF zntZduC(y~D*~=F1qvGWJF76oWedk}dFkbDvEUd;c<0I@K7g&IE`J8j#a*tlN|6?7? z7U<#Oz`BFwB#<{CTw)FG+tH2*Jkd$332bxXw!u;V_F`qCQ462UtMj@)FICk3sC7}N9Bv+vH1 z;F__M2q{q(t;FQWeS=Jn!XyYM- zAughA+Q&h@`Tw>!qeJ_R;*1;8t@hs+-Y?2DWzyRq%E6=$KKQZF@?8zqdmHPhh_d41 z2TJEV{so2uSWyJs?($-r@3A+q%OVR;OU&NlDPBl);W;mQRjKTB+cZuS4C*zSq%;z3 zkasnV9i`n6C$C1;MG}N5rGB8Xmx^6MBETP{IgohyI%zRB^Zh0jE(Qif=`JoS5~2_M zn>r$C%bSiheXb(E?9!7~8=~Mu7NB3J7 zg_fewW=VUNNzcXe;Jv@ZBw1u?{Z1|;I=uQ>G)#BuPexMEz6M>O`MoLv0@Bv$_!lyUFG`BF8`@a3ciSfBt>L+s>_SVX8=Oj>J(*U&7c(Rm^ z{-?1c%tKyNyp~?>b=M2k%j)BQQfG8)rLC0hwGEl|mzjYZ+AHzWOS16z=fBm#)eajC z^W*pWh3l=X!;Ts;n&AX*)ls`HFdKq!Mbn;+Pf>(khf(G>S%gA|YqmHq-AB-|worpR zOh3dDj(}75a1r2Z7;|$oXY0e0DS?rFuBPl-44U{^^x>7OL(EVZASZv#N z!jDmBUQ@Qs(1~>RuuvwXJT<;FY>zpLrDN{U>}5v<3B-J$BLb1#KkVlXj-S5FY*U_U zhl{N2FER29n}U@FT(dU|iAhEkCSGvbBta=+_96J+XBeikP1^Y%s2+9hubza|K-^>k zzXnP%=o_t$3kurP7c-4mccN+%;1D1xf4szVU3a%ytuLoec<#;lu}$JEESr53aYk7_jqw&|0xIsDx+WQ z$pMi!*T?MkV$ngLLI>&WKXi2mq{5whCE{u z0D#Kipi9u(N&DBgVCc)B?WqpM?x>GtYnR|D-n#H#wHWXg7{wBi`4=r_%sappMf$S% z4MeIea-m{`N@+%<-F*IYerKR52m}rDSpLG{R%i>S>g+LlXDticM*3o0ASSlXNz>fS zCnepOZu+)en69OcT?PLa;8Qr=pJKJ*#&4@Tqvzs}Z#5`a737o44Hxwn*Ad(QYQPhz z;=fHnZD2us4OvI<4`dkFLgRj8TV~`fd9;m>^jFe8q|n^3dDqf`?Sb)8_rl<|RbR7R zopLG5?i{f_6mAbUNL(J>O8g`)DK4)mt`YwoE`m(HBjsYQ(@~Yu?d70edGAJlGxX&4 z*S><|67&18$2k3?C;xS)H^yUXe25}Lb3a5Wo_1!G`g}b-8JefqwQb3jLN?Jn&$xD5 zhf_QG+goIdddaOGYGAcX zfdC}bDy_JeY(jd$ts1BL?2-S5WwbK$5=-`SJy1MkS+G8xgaX$N@UOdv+#U`ix4+YsrUs)2BOy9TI^fnPIx)Lqh8m$mvi>=7x(Kt zvg9hE=U9c>U9>9!s-tG(Z%Lt1tec8#28sO}9cJ(`uyr&?RQx%f=G~YVjz`_6PY>)P ziJPUjb(%$F3ELZ}N9RAgLT8khWDFwX-k}LoFScR+!o5=!IK@-f)mRivH~)5Az^57R zd>uck{-jTLTW>TaA7P~xylKz~XC3YExUDrZIfWZ6rTN^f;u8k29U)6`>Os>_=h0i^)IyH3i@4-hp*plugeQus$tT)=q zuyPl>w&XfMo@A!B%<3q-Ty_GM*UsKi&vu0c4 zRdx)NCTpcSOsm!k*3uVmExeor9?La=aQ>tt^ivR1i*tD~#Vh|bJjyOyWRdFn@1b++WP;A}1o zPy8JW0#17F#Blvnwr7#Xs6R5*um>U0QvDX@kLd1OEO`7gXd4~*Qj)!QcJga5(LiM_ zWJLa#&WaxjDwqX+4229XPA>)tFbd3GSjsK4a<4kEQ;#mW?uGi{{()mH!yG%MUrpJ3 z`SOixb+pd`V?523`MLl{PzMNc?Qi7f%$?c6S)|BF8?p9C`wZz4(^?L#Qi{v@Yb}ad zyUVJXVSoF0b7s(PY0)YMm~SI>1Iz6vP)mcZW$E%zZB1Ee2Kdt_(GmmtrnEMK-jM?9!}E&vMVe z;fj32PC+;C@HXtAfRTuZ?^$PL+CH0mI3D>bmeRT{rqWA6JG8+FM!7^k4FZ`^u60m; z1d|jekcg2W3yb8|Q4F7L_iwsQ*%=eZ`HqSC{A{tMA3`4AfLHEd#&k?{wQQYcj#W{> z{A4+e7u(}R>m(_RM~*HOrxJ-T?#nc?mFk)#&pUP8S~}fYm-sd55eki2lC?#H+i+sY z0slsEU*6lMdXtf%WI>=2vdiZS)@{0y`Zs!?*r}dZ7^(tBNDel~HL`mjS0jGO?(6py z>%ffK4`a^$>*e}RF#Ab!Pt|cKUA|ppvNo@+lL#yJ8HLbA{k0JqKd$ttj-{anK0mS}{ z*Fr&gx#aYBd1jo%02@eNlt(tYh+5FN5->OirCbyNPa>A$=` zmT=~M_VD3^4mM^|vfHIe%OZbs7eI{Bb|5G|rRt|3p&OjB?)%Z~9e?9wB^yQ1;J+o{ zuRPz!MfE*go@;J!@{ehn_Uh;BAyd_toXjtLhH4nxtYp3Lfx%)B9cAL_EfG$bfBYq< z4MOz<3Yp!_YKCv=zuT_S{l14Z)4ogGMr%-J%<&uuPn8e@J)@SoER5}PHZdBkd-}bB1KV&89as& zF7hvGUhi5GzHZuXx7Oj$BzJkyjvU*YqQMymDO1W*Oz(*BBb5*L^I$yvygEb?wR>7w zDyMT>REYQv=1R8dU`{jEFseKO=hhCyg493a5Ccx>d~7a~{_&$b|Fe`U(}$gvvFKzi zQ$2nAAe%nsIIWD4ccCf_d~bOOXwoYcno|{2ixH!?sMo`k-G9H2aZyWOM!VYgU{PQ% zq0?Uc?Ef#_!X)2rsI(_30-vz~R$+s>4u@?X`X~X9#IS?24;K#DX-}}+=e&CLzL)G` zc~(%0bqUtb$K?`U`$wy!)^ndfEB7n5J#N%F-gj5w=D3!>ttlCo<@tJK7&a?L>BA*o z1^W5Pkf_7mUOs6v-vsl9M!iDWD5Uk$qXHK}0p zf%Cfo0|ze$ukuFQ5WYLLF9c)9!@2e1cG0)>+-XYg!J39`DW-Bh=*xHXu}~UJY5_>( z+TZGKQ~F2MSI5i3h5T)$fS@OdMk{IW0G4BN1b6fupMu1`4vwYKpHd0^nInCTbhqRT zfTTd=z~q(no`Yn2Q4jsf-I7IN?R(^nHjQh!4c*RCYs+MW0#o%Ni@-4>_B_`=w0|1* zsy@;PHJgp2ETxo6uQ`DCG!JIpz6Goj($B~9VR&f!JqzTZH$LLqkXNg=A-O$~gVT-6 z@acFNogT2`O<_Zpi0ER~7Q9e2&RuEGr0jeCB~4;;Q6cd8avRL7U(OQO?mce(sZbfi zZ<=>e>u_QlYAO{)=4C~Vbo@onrq+36rRwzj1ZS60sP)y#|F`fT?hI+QR(F z{4^j$%2bG_wBe z_R;Q*=_0V%l-oF;A=HYuOm|7PxZVTm!d;i&v#tfaahZw~6(&BtgPnt1IidDCANgwxz)Y2% zh>!{*vO2@O7&^Ldo898Nj)pyy5a(&vcU=PtfEGkLY9S#_^}kx~1B{{1)<@SPvac(N@6URMfRTVoN~#^9vl!)A z*#ge39+ukyPpNxzBe{aj*;a)0$(kOiCi&R}4RO=nh5RZmQw)~6Eu4m#x&_~HXu+4p z%8ru5W#$V+_1j@bVeV1u6)23qnKjGO%-*Dv(2bQ6kSP!pI~eJ23K@WPR^+cQJ;V%a zk~AogWntr4RQf+0r_aQFI-;&cA z>@Tezqj_H)^GCorvRN87H{44LAvR5m&cJ0btO_q_x}(+#rC2vYW#Dr*nTLZebe*D zqbp`_zKSK`qk|6KIFWD%5_ugzQpA@Mr1ZDEp(fHBKBdHQ0xy$9~8_*S{A*8STi1C;Z5YM#(qr;Wt- zI$DeKuk5cYEVX;LcE5>~Sp$wyv~Mc}=DwTS;O?Zd1vMt|6Y$&jHbn7Qwp~YILi78r zz)I84+Y?25y|P+r*We%`hzTt~dthLgKO;?G?o!bC$AePzRoD+2{3;BcXR?AO!4n1d(-6 zSAQ~yDQDRzVML=!o3-&vD3+q(v`i#E*$hWLJ)fm&9(}dBWumL$%2z}G(fKMoQa2ZU z|H%0SuHu zhw%0ET$a%J-0Oy3BBke{WQ>^~HTr8ZLMn~MINk*XwY~B(%g`R|4ZBr$W2U$obC1hKhb9x)`frSZ6hW2Oxty#!Oh(_ z6vg~oq;-yURa~kH^gk-9dDr)>M1MD2Emub8ABdD{HpALA97)m0e+cL93XR3=-4Q8~ zufaiev=6(UM>&?o4AdWbMW1K~>yb&Ra&x1Ykvo>EBDv6%4W@Sku$ zA>wX`gK|Ka5G{1hcbxwO)*}$d_G9*@8yITSTveA8OZvP%Um&r9=wk43;Y_|r`9a{n zNWvF~AbjmS{0RGkhzntS;^b4#JZ|^h=(l2jJrPAfD@s)`G6}w%-QAz&7MqO87JQjKL+3(AGCg9wWx2ef%`#RoRrjr`xhLI-8_6sJL zw^9Nrtxdm^LX0s86ukFX>6p4$<=LJ_SH8ZFndUx4 ze!NLKJtoPM?`scM8vO_oJa+=5$skCv-Y|>?LUf^Q_=gS~m1mhMF5f1X-5r*d;c_-2OPQ?*sX{5?ZOV$cn(GGFCkiFAGZ^Vw;-hFjD)UWB>bFc$8Xi! zMF+J$edA$d;8G`j-R>ieT>D%C!HgW9FSie;nkA*)} zz-EdKubu1aE~|Ib+1K{9g;!+XVx*deR>?t+9VaH`-?EPW>iFX8WhgT5#^@aU!^qCM zt7+!JL7#*Xo{fqSeJLJ^aKDICOVjD5=zwP}R(nl0Y0uVq&HE$ih|*iv56P`P+k94h zf>2MR(KX+OqeyUwrVSy=;$LDOD)`yk)uA{xLT{vu5akWUr znj^M*mBI5oW1IP@&1v+x?XULCe_1I!ex9jYDp5NEn}i?2#B(b?(n10c!#Xm5RoZiY zZ-O@RyWDyRxZLu2Mht_0X&O%U8O~ugStWM&6Sq9vy`jWsf`5cd7TefR%gHa2`}yF6 z(l#gf`0U2#d%0#Bm)KaKkeBhX&j_bVCV?SxNr!>4cjY;FsWUSjB>B+U*{O2A^Em2o!D1VEJCGk-W>e;M{P*Fhoy*$_ z38^KmZE-wrXwWGK^Uh;=)P3L857L8(Wo9SEr_gqdHnR<=L&NZs|^) ze%)@Fs&rz%&>LV%xp2szVRY){VLMoZ*TJnUqN4RT4{PnBDe2ZJy4*j{rLP#h-b2et z|CO~>V!j6@AC3E7eYV(~uYU3CwtA;{ij5_DI4ea7&kP~8hYRk~&4D3&z|Fgc)kS)o z?HN2){n`!N_GsjX(%WW2KjfcRq6I1SuDO~2ewtS^QiSfqb#-o(dmr`e%lSUnga`)@ zaChJ;=T;DtP=RKZTSIq#ka&x>__+RozMvGp#o?=HB4u6U89Zc_+b{wK#=J0VDZ2Fi z1T?(7b+^+vnal77w~(o9?y8@GzU5&aUZMyBAbGZ+6^I{jViUY9PQFpzs@SZh{GvGr z6KVX$%~k2CP$2<9u-4N6eO=#zD`vyGorr8u>@585(0?R zOvlI{DvE}xsHz#A;+B>sPX6qaa=%t&@!0Z9T9}PWC6%y~@O}tV>d!k*mE}+Bb~gHe zcq+IOJjV7dPzy6tZNn7*VukdsD0U98FU?)?0K7_cxFuv>V;7~3+ z=g5ap?jz_VU{yAO*IHdz+PJxk_p3rtSe_5AtR|k+!@EEmD(?DKrrkVxufbV}J6at& zfpF*2O3yPF>#=!yuEMY39S(j3kVriObR7RnE6^7mzDB}^DzIA}l(K?!8yqrm8;I>b);Wd&|ma+`jLCskK2 z*=}t?@Hz8S4NoQlG6$qg6Nt_ijKa=og?-z9HnOi*g^a9|uKlvQbR;&-uE(rR355m@T$V`?KGV!B6_rk2_ui zJ2fBHPZpqhGel$C|X1XLd(l`+T$I>K7 zQdUas0(?))?Id4<4O~dx#5(9xa{L%z5&cFG z$!14FX2cUimVl6vK@_8T6)X~RQ}o}{_#o&tFd`r6=WRLNlfm*Y{uk2!{+u&Lk&A8P?&B(}2p|gk zTO$2NFk%b?aB?=gWT+pTIifS6rlduvWyELVUr2RWi>mnsiOtUo#ihGezH7M^3{R8> Y%dgxA!!mz?0|DV=Bo!sf#Pt3D578?@a{vGU literal 0 HcmV?d00001 diff --git a/ios/ExpensifyCash/Info.plist b/ios/ExpensifyCash/Info.plist index 7b39bead2cee..3243bcf0c400 100644 --- a/ios/ExpensifyCash/Info.plist +++ b/ios/ExpensifyCash/Info.plist @@ -90,7 +90,7 @@ UIFileSharingEnabled UILaunchStoryboardName - LaunchScreen + BootSplash UIRequiredDeviceCapabilities armv7 diff --git a/src/Expensify.js b/src/Expensify.js index 23d7af2dc892..b3289e8559b4 100644 --- a/src/Expensify.js +++ b/src/Expensify.js @@ -3,7 +3,8 @@ import PropTypes from 'prop-types'; import React, {PureComponent} from 'react'; import {View} from 'react-native'; import Onyx, {withOnyx} from 'react-native-onyx'; -import RNBootSplash from 'react-native-bootsplash'; + +import BootSplash from './libs/BootSplash'; import listenToStorageEvents from './libs/listenToStorageEvents'; import * as ActiveClientManager from './libs/ActiveClientManager'; import ONYXKEYS from './ONYXKEYS'; @@ -53,6 +54,9 @@ const propTypes = { // Whether a new update is available and ready to install. updateAvailable: PropTypes.bool, + + // Whether the initial data needed to render the app is ready + appDataLoaded: PropTypes.bool, }; const defaultProps = { @@ -61,6 +65,7 @@ const defaultProps = { accountID: null, }, updateAvailable: false, + appDataLoaded: false, }; class Expensify extends PureComponent { @@ -82,7 +87,7 @@ class Expensify extends PureComponent { // When we don't have an authToken we'll want to show the sign in screen immediately so we'll hide our // boot screen right away if (!this.getAuthToken()) { - RNBootSplash.hide({fade: true}); + BootSplash.hide({fade: true}); } this.setState({isOnyxMigrated: true}); @@ -100,7 +105,18 @@ class Expensify extends PureComponent { // that we can remove it again once the content is ready const previousAuthToken = lodashGet(prevProps, 'session.authToken', null); if (this.getAuthToken() && !previousAuthToken) { - RNBootSplash.show({fade: true}); + BootSplash.show({fade: true}); + } + + if (this.getAuthToken() && this.props.appDataLoaded) { + BootSplash.getVisibilityStatus() + .then((value) => { + if (value !== 'visible') { + return; + } + + BootSplash.hide({fade: true}); + }); } } @@ -135,4 +151,7 @@ export default withOnyx({ key: ONYXKEYS.UPDATE_AVAILABLE, initWithStoredValues: false, }, + appDataLoaded: { + key: ONYXKEYS.APP_DATA_LOADED, + }, })(Expensify); diff --git a/src/ONYXKEYS.js b/src/ONYXKEYS.js index 883047058594..e909a58e6128 100644 --- a/src/ONYXKEYS.js +++ b/src/ONYXKEYS.js @@ -9,6 +9,9 @@ export default { // which tab is the leader, and which ones are the followers ACTIVE_CLIENTS: 'activeClients', + // A key that is set when we are still waiting for the initial round of reports to load + APP_DATA_LOADED: 'appDataLoaded', + NETWORK_REQUEST_QUEUE: 'networkRequestQueue', // What the active route is for our navigator. Global route that determines what views to display. diff --git a/src/components/OptionsList.js b/src/components/OptionsList.js index 1a0d92ef1dc4..f554f83d6da5 100644 --- a/src/components/OptionsList.js +++ b/src/components/OptionsList.js @@ -74,9 +74,6 @@ const propTypes = { // Toggle between compact and default view of the option optionMode: PropTypes.oneOf(['compact', 'default']), - - // Optional callback to pass to the SectionList so we can listen for the layout of this component - onLayout: PropTypes.func, }; const defaultProps = { @@ -97,7 +94,6 @@ const defaultProps = { innerRef: null, showTitleTooltip: false, optionMode: undefined, - onLayout: () => {}, }; class OptionsList extends Component { @@ -226,7 +222,6 @@ class OptionsList extends Component { renderItem={this.renderItem} renderSectionHeader={this.renderSectionHeader} extraData={this.props.focusedIndex} - onLayout={this.props.onLayout} /> ); diff --git a/src/libs/BootSplash/index.js b/src/libs/BootSplash/index.js new file mode 100644 index 000000000000..764986b28d44 --- /dev/null +++ b/src/libs/BootSplash/index.js @@ -0,0 +1,5 @@ +export default { + hide: () => {}, + show: () => {}, + getVisibilityStatus: () => new Promise(resolve => resolve()), +}; diff --git a/src/libs/BootSplash/index.native.js b/src/libs/BootSplash/index.native.js new file mode 100644 index 000000000000..1954d7829233 --- /dev/null +++ b/src/libs/BootSplash/index.native.js @@ -0,0 +1,3 @@ +import RNBootSplash from 'react-native-bootsplash'; + +export default RNBootSplash; diff --git a/src/libs/actions/Report.js b/src/libs/actions/Report.js index 3d91b3551643..ea05eddde8b8 100644 --- a/src/libs/actions/Report.js +++ b/src/libs/actions/Report.js @@ -315,6 +315,7 @@ function fetchChatReportsByIDs(chatList) { // than updating props for each report and re-rendering had merge been used. Onyx.mergeCollection(ONYXKEYS.COLLECTION.REPORT_IOUS, reportIOUData); Onyx.mergeCollection(ONYXKEYS.COLLECTION.REPORT, simplifiedReports); + Onyx.merge(ONYXKEYS.APP_DATA_LOADED, true); // Fetch the personal details if there are any PersonalDetails.getFromReportParticipants(Object.values(simplifiedReports)); diff --git a/src/pages/home/sidebar/SidebarLinks.js b/src/pages/home/sidebar/SidebarLinks.js index 9640548974ff..7f24fa96180e 100644 --- a/src/pages/home/sidebar/SidebarLinks.js +++ b/src/pages/home/sidebar/SidebarLinks.js @@ -3,8 +3,6 @@ import {View, TouchableOpacity} from 'react-native'; import _ from 'underscore'; import PropTypes from 'prop-types'; import {withOnyx} from 'react-native-onyx'; -import RNBootSplash from 'react-native-bootsplash'; - import styles, {getSafeAreaMargins} from '../../../styles/styles'; import ONYXKEYS from '../../../ONYXKEYS'; import SafeAreaInsetPropTypes from '../../SafeAreaInsetPropTypes'; @@ -85,19 +83,10 @@ const defaultProps = { }; class SidebarLinks extends React.Component { - constructor(props) { - super(props); - this.hideBootScreen = this.hideBootScreen.bind(this); - } - showSearchPage() { Navigation.navigate(ROUTES.SEARCH); } - hideBootScreen() { - RNBootSplash.hide({fade: true}); - } - render() { const activeReportID = parseInt(this.props.currentlyViewedReportID, 10); @@ -162,7 +151,6 @@ class SidebarLinks extends React.Component { showTitleTooltip disableFocusOptions={this.props.isSmallScreenWidth} optionMode={this.props.priorityMode === CONST.PRIORITY_MODE.GSD ? 'compact' : 'default'} - onLayout={this.hideBootScreen} /> From a29383c12081b1e7b5e4410e1fb104124d54052d Mon Sep 17 00:00:00 2001 From: Marc Glasser Date: Mon, 19 Apr 2021 11:47:34 -1000 Subject: [PATCH 3/4] add jest mocks --- __mocks__/react-native-bootsplash.js | 5 +++++ 1 file changed, 5 insertions(+) create mode 100644 __mocks__/react-native-bootsplash.js diff --git a/__mocks__/react-native-bootsplash.js b/__mocks__/react-native-bootsplash.js new file mode 100644 index 000000000000..10e6ef722e75 --- /dev/null +++ b/__mocks__/react-native-bootsplash.js @@ -0,0 +1,5 @@ +export default { + hide: jest.fn().mockResolvedValueOnce(), + show: jest.fn().mockResolvedValueOnce(), + getVisibilityStatus: jest.fn().mockResolvedValue('hidden'), +}; From a4a0bd236a4b8d3ea35d20664ee248b6a72c3f83 Mon Sep 17 00:00:00 2001 From: Marc Glasser Date: Tue, 20 Apr 2021 07:53:14 -1000 Subject: [PATCH 4/4] use set() update key name and add comments --- src/Expensify.js | 10 +++++----- src/ONYXKEYS.js | 5 +++-- src/libs/actions/Report.js | 2 +- 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/src/Expensify.js b/src/Expensify.js index b3289e8559b4..6d8fe67927b0 100644 --- a/src/Expensify.js +++ b/src/Expensify.js @@ -56,7 +56,7 @@ const propTypes = { updateAvailable: PropTypes.bool, // Whether the initial data needed to render the app is ready - appDataLoaded: PropTypes.bool, + initialReportDataLoaded: PropTypes.bool, }; const defaultProps = { @@ -65,7 +65,7 @@ const defaultProps = { accountID: null, }, updateAvailable: false, - appDataLoaded: false, + initialReportDataLoaded: false, }; class Expensify extends PureComponent { @@ -108,7 +108,7 @@ class Expensify extends PureComponent { BootSplash.show({fade: true}); } - if (this.getAuthToken() && this.props.appDataLoaded) { + if (this.getAuthToken() && this.props.initialReportDataLoaded) { BootSplash.getVisibilityStatus() .then((value) => { if (value !== 'visible') { @@ -151,7 +151,7 @@ export default withOnyx({ key: ONYXKEYS.UPDATE_AVAILABLE, initWithStoredValues: false, }, - appDataLoaded: { - key: ONYXKEYS.APP_DATA_LOADED, + initialReportDataLoaded: { + key: ONYXKEYS.INITIAL_REPORT_DATA_LOADED, }, })(Expensify); diff --git a/src/ONYXKEYS.js b/src/ONYXKEYS.js index e909a58e6128..560ae58c043a 100644 --- a/src/ONYXKEYS.js +++ b/src/ONYXKEYS.js @@ -9,8 +9,9 @@ export default { // which tab is the leader, and which ones are the followers ACTIVE_CLIENTS: 'activeClients', - // A key that is set when we are still waiting for the initial round of reports to load - APP_DATA_LOADED: 'appDataLoaded', + // A key that is set while we are still waiting for the initial round of reports to load. Once set it should not be + // false unless we sign out. If there are reports in storage when the app inits this will be `true`. + INITIAL_REPORT_DATA_LOADED: 'initialReportDataLoaded', NETWORK_REQUEST_QUEUE: 'networkRequestQueue', diff --git a/src/libs/actions/Report.js b/src/libs/actions/Report.js index ea05eddde8b8..cd3e7cfbe6fe 100644 --- a/src/libs/actions/Report.js +++ b/src/libs/actions/Report.js @@ -315,7 +315,7 @@ function fetchChatReportsByIDs(chatList) { // than updating props for each report and re-rendering had merge been used. Onyx.mergeCollection(ONYXKEYS.COLLECTION.REPORT_IOUS, reportIOUData); Onyx.mergeCollection(ONYXKEYS.COLLECTION.REPORT, simplifiedReports); - Onyx.merge(ONYXKEYS.APP_DATA_LOADED, true); + Onyx.set(ONYXKEYS.INITIAL_REPORT_DATA_LOADED, true); // Fetch the personal details if there are any PersonalDetails.getFromReportParticipants(Object.values(simplifiedReports));