diff --git a/.github/PULL_REQUEST_TEMPLATE.md b/.github/PULL_REQUEST_TEMPLATE.md index c463fc559bd..e9c61c6ca5b 100644 --- a/.github/PULL_REQUEST_TEMPLATE.md +++ b/.github/PULL_REQUEST_TEMPLATE.md @@ -75,7 +75,7 @@ This is a checklist for PR authors & reviewers. Please make sure to complete all - [ ] I verified that comments were added to code that is not self explanatory - [ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing. - [ ] I verified any copy / text shown in the product was added in all `src/languages/*` files - - [ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy. + - [ ] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the `Waiting for Copy` label for a copy review on the original GH to get the correct copy. - [ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README. - [ ] I verified the JSDocs style guidelines (in [`STYLE.md`](https://github.com/Expensify/App/blob/main/contributingGuides/STYLE.md#jsdocs)) were followed - [ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers @@ -128,7 +128,7 @@ The reviewer will copy/paste it into a new comment and complete it after the aut - [ ] I verified that comments were added to code that is not self explanatory - [ ] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing. - [ ] I verified any copy / text shown in the product was added in all `src/languages/*` files - - [ ] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy. + - [ ] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the `Waiting for Copy` label for a copy review on the original GH to get the correct copy. - [ ] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README. - [ ] I verified the JSDocs style guidelines (in [`STYLE.md`](https://github.com/Expensify/App/blob/main/contributingGuides/STYLE.md#jsdocs)) were followed - [ ] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers diff --git a/.github/actions/javascript/contributorChecklist/contributorChecklist.js b/.github/actions/javascript/contributorChecklist/contributorChecklist.js index e9e740623d4..7411fbf88bd 100644 --- a/.github/actions/javascript/contributorChecklist/contributorChecklist.js +++ b/.github/actions/javascript/contributorChecklist/contributorChecklist.js @@ -24,7 +24,7 @@ const completedAuthorChecklist = `- [x] I linked the correct issue in the \`### - [x] I verified that comments were added to code that is not self explanatory - [x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing. - [x] I verified any copy / text shown in the product was added in all \`src/languages/*\` files - - [x] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy. + - [x] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the \`Waiting for Copy\` label for a copy review on the original GH to get the correct copy. - [x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README. - [x] I verified the JSDocs style guidelines (in [\`STYLE.md\`](https://github.com/Expensify/App/blob/main/contributingGuides/STYLE.md#jsdocs)) were followed - [x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers @@ -71,7 +71,7 @@ const completedReviewerChecklist = `- [x] I have verified the author checklist i - [x] I verified that comments were added to code that is not self explanatory - [x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing. - [x] I verified any copy / text shown in the product was added in all \`src/languages/*\` files - - [x] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy. + - [x] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the \`Waiting for Copy\` label for a copy review on the original GH to get the correct copy. - [x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README. - [x] I verified the JSDocs style guidelines (in [\`STYLE.md\`](https://github.com/Expensify/App/blob/main/contributingGuides/STYLE.md#jsdocs)) were followed - [x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers diff --git a/.github/actions/javascript/contributorChecklist/index.js b/.github/actions/javascript/contributorChecklist/index.js index 225704c5d10..452ea1bf180 100644 --- a/.github/actions/javascript/contributorChecklist/index.js +++ b/.github/actions/javascript/contributorChecklist/index.js @@ -34,7 +34,7 @@ const completedAuthorChecklist = `- [x] I linked the correct issue in the \`### - [x] I verified that comments were added to code that is not self explanatory - [x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing. - [x] I verified any copy / text shown in the product was added in all \`src/languages/*\` files - - [x] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy. + - [x] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the \`Waiting for Copy\` label for a copy review on the original GH to get the correct copy. - [x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README. - [x] I verified the JSDocs style guidelines (in [\`STYLE.md\`](https://github.com/Expensify/App/blob/main/contributingGuides/STYLE.md#jsdocs)) were followed - [x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers @@ -81,7 +81,7 @@ const completedReviewerChecklist = `- [x] I have verified the author checklist i - [x] I verified that comments were added to code that is not self explanatory - [x] I verified that any new or modified comments were clear, correct English, and explained "why" the code was doing something instead of only explaining "what" the code was doing. - [x] I verified any copy / text shown in the product was added in all \`src/languages/*\` files - - [x] I verified any copy / text that was added to the app is correct English and approved by marketing by tagging the marketing team on the original GH to get the correct copy. + - [x] I verified any copy / text that was added to the app is correct English and approved by marketing by adding the \`Waiting for Copy\` label for a copy review on the original GH to get the correct copy. - [x] I verified proper file naming conventions were followed for any new files or renamed files. All non-platform specific files are named after what they export and are not named "index.js". All platform-specific files are named for the platform the code supports as outlined in the README. - [x] I verified the JSDocs style guidelines (in [\`STYLE.md\`](https://github.com/Expensify/App/blob/main/contributingGuides/STYLE.md#jsdocs)) were followed - [x] If a new code pattern is added I verified it was agreed to be used by multiple Expensify engineers diff --git a/.github/actions/javascript/markPullRequestsAsDeployed/action.yml b/.github/actions/javascript/markPullRequestsAsDeployed/action.yml index 020298326dd..7015293d2bb 100644 --- a/.github/actions/javascript/markPullRequestsAsDeployed/action.yml +++ b/.github/actions/javascript/markPullRequestsAsDeployed/action.yml @@ -28,5 +28,5 @@ inputs: description: "Web job result ('success', 'failure', 'cancelled', or 'skipped')" required: true runs: - using: "node12" + using: "node16" main: "./index.js" diff --git a/Gemfile.lock b/Gemfile.lock index ac75d801e73..5ac76318918 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -1,38 +1,39 @@ GEM remote: https://rubygems.org/ specs: - CFPropertyList (3.0.3) + CFPropertyList (3.0.5) + rexml activesupport (6.1.6) concurrent-ruby (~> 1.0, >= 1.0.2) i18n (>= 1.6, < 2) minitest (>= 5.1) tzinfo (~> 2.0) zeitwerk (~> 2.3) - addressable (2.8.0) - public_suffix (>= 2.0.2, < 5.0) + addressable (2.8.1) + public_suffix (>= 2.0.2, < 6.0) algoliasearch (1.27.5) httpclient (~> 2.8, >= 2.8.3) json (>= 1.5.1) artifactory (3.0.15) atomos (0.1.3) aws-eventstream (1.2.0) - aws-partitions (1.495.0) - aws-sdk-core (3.121.0) + aws-partitions (1.646.0) + aws-sdk-core (3.160.0) aws-eventstream (~> 1, >= 1.0.2) - aws-partitions (~> 1, >= 1.239.0) + aws-partitions (~> 1, >= 1.525.0) aws-sigv4 (~> 1.1) - jmespath (~> 1.0) - aws-sdk-kms (1.48.0) - aws-sdk-core (~> 3, >= 3.120.0) + jmespath (~> 1, >= 1.6.1) + aws-sdk-kms (1.58.0) + aws-sdk-core (~> 3, >= 3.127.0) aws-sigv4 (~> 1.1) - aws-sdk-s3 (1.102.0) - aws-sdk-core (~> 3, >= 3.120.0) + aws-sdk-s3 (1.114.0) + aws-sdk-core (~> 3, >= 3.127.0) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.4) - aws-sigv4 (1.4.0) + aws-sigv4 (1.5.2) aws-eventstream (~> 1, >= 1.0.2) babosa (1.0.4) - claide (1.0.3) + claide (1.1.0) cocoapods (1.11.3) addressable (~> 2.8) claide (>= 1.0.2, < 2.0) @@ -80,22 +81,23 @@ GEM rake (>= 12.0.0, < 14.0.0) domain_name (0.5.20190701) unf (>= 0.0.5, < 1.0.0) - dotenv (2.7.6) - emoji_regex (3.2.2) + dotenv (2.8.1) + emoji_regex (3.2.3) escape (0.0.4) ethon (0.15.0) ffi (>= 1.15.0) - excon (0.85.0) - faraday (1.7.1) + excon (0.93.0) + faraday (1.10.2) faraday-em_http (~> 1.0) faraday-em_synchrony (~> 1.0) faraday-excon (~> 1.1) - faraday-httpclient (~> 1.0.1) + faraday-httpclient (~> 1.0) + faraday-multipart (~> 1.0) faraday-net_http (~> 1.0) - faraday-net_http_persistent (~> 1.1) + faraday-net_http_persistent (~> 1.0) faraday-patron (~> 1.0) faraday-rack (~> 1.0) - multipart-post (>= 1.2, < 3) + faraday-retry (~> 1.0) ruby2_keywords (>= 0.0.4) faraday-cookie_jar (0.0.7) faraday (>= 0.8.0) @@ -104,14 +106,17 @@ GEM faraday-em_synchrony (1.0.0) faraday-excon (1.1.0) faraday-httpclient (1.0.1) + faraday-multipart (1.0.4) + multipart-post (~> 2) faraday-net_http (1.0.1) faraday-net_http_persistent (1.2.0) faraday-patron (1.0.0) faraday-rack (1.0.0) - faraday_middleware (1.1.0) + faraday-retry (1.0.3) + faraday_middleware (1.2.0) faraday (~> 1.0) - fastimage (2.2.5) - fastlane (2.206.2) + fastimage (2.2.6) + fastlane (2.210.1) CFPropertyList (>= 2.3, < 4.0.0) addressable (>= 2.8, < 3.0.0) artifactory (~> 3.0) @@ -154,9 +159,9 @@ GEM fourflusher (2.3.1) fuzzy_match (2.0.4) gh_inspector (1.1.3) - google-apis-androidpublisher_v3 (0.10.0) - google-apis-core (>= 0.4, < 2.a) - google-apis-core (0.4.1) + google-apis-androidpublisher_v3 (0.29.0) + google-apis-core (>= 0.9.0, < 2.a) + google-apis-core (0.9.0) addressable (~> 2.5, >= 2.5.1) googleauth (>= 0.16.2, < 2.a) httpclient (>= 2.8.1, < 3.a) @@ -165,45 +170,45 @@ GEM retriable (>= 2.0, < 4.a) rexml webrick - google-apis-iamcredentials_v1 (0.7.0) - google-apis-core (>= 0.4, < 2.a) - google-apis-playcustomapp_v1 (0.5.0) - google-apis-core (>= 0.4, < 2.a) - google-apis-storage_v1 (0.6.0) - google-apis-core (>= 0.4, < 2.a) + google-apis-iamcredentials_v1 (0.15.0) + google-apis-core (>= 0.9.0, < 2.a) + google-apis-playcustomapp_v1 (0.11.0) + google-apis-core (>= 0.9.0, < 2.a) + google-apis-storage_v1 (0.19.0) + google-apis-core (>= 0.9.0, < 2.a) google-cloud-core (1.6.0) google-cloud-env (~> 1.0) google-cloud-errors (~> 1.0) - google-cloud-env (1.5.0) - faraday (>= 0.17.3, < 2.0) - google-cloud-errors (1.1.0) - google-cloud-storage (1.34.1) - addressable (~> 2.5) + google-cloud-env (1.6.0) + faraday (>= 0.17.3, < 3.0) + google-cloud-errors (1.3.0) + google-cloud-storage (1.43.0) + addressable (~> 2.8) digest-crc (~> 0.4) google-apis-iamcredentials_v1 (~> 0.1) - google-apis-storage_v1 (~> 0.1) + google-apis-storage_v1 (~> 0.19.0) google-cloud-core (~> 1.6) googleauth (>= 0.16.2, < 2.a) mini_mime (~> 1.0) - googleauth (0.17.1) - faraday (>= 0.17.3, < 2.0) + googleauth (1.2.0) + faraday (>= 0.17.3, < 3.a) jwt (>= 1.4, < 3.0) memoist (~> 0.16) multi_json (~> 1.11) os (>= 0.9, < 2.0) - signet (~> 0.15) + signet (>= 0.16, < 2.a) highline (2.0.3) - http-cookie (1.0.4) + http-cookie (1.0.5) domain_name (~> 0.5) httpclient (2.8.3) i18n (1.10.0) concurrent-ruby (~> 1.0) - jmespath (1.4.0) - json (2.5.1) - jwt (2.2.3) + jmespath (1.6.1) + json (2.6.2) + jwt (2.5.0) memoist (0.16.2) mini_magick (4.11.0) - mini_mime (1.1.1) + mini_mime (1.1.2) minitest (5.16.2) molinillo (0.8.0) multi_json (1.15.0) @@ -213,11 +218,11 @@ GEM naturally (2.2.1) netrc (0.11.0) optparse (0.1.1) - os (1.1.1) + os (1.1.4) plist (3.6.0) - public_suffix (4.0.6) + public_suffix (4.0.7) rake (13.0.6) - representable (3.1.1) + representable (3.2.0) declarative (< 0.1.0) trailblazer-option (>= 0.1.1, < 0.2.0) uber (< 0.2.0) @@ -228,9 +233,9 @@ GEM ruby2_keywords (0.0.5) rubyzip (2.3.2) security (0.1.3) - signet (0.15.0) - addressable (~> 2.3) - faraday (>= 0.17.3, < 2.0) + signet (0.17.0) + addressable (~> 2.8) + faraday (>= 0.17.5, < 3.a) jwt (>= 1.5, < 3.0) multi_json (~> 1.10) simctl (1.6.8) @@ -239,7 +244,7 @@ GEM terminal-notifier (2.0.0) terminal-table (1.8.0) unicode-display_width (~> 1.1, >= 1.1.1) - trailblazer-option (0.1.1) + trailblazer-option (0.1.2) tty-cursor (0.7.1) tty-screen (0.8.1) tty-spinner (0.9.3) @@ -251,11 +256,11 @@ GEM uber (0.1.0) unf (0.1.4) unf_ext - unf_ext (0.0.7.7) - unicode-display_width (1.7.0) + unf_ext (0.0.8.2) + unicode-display_width (1.8.0) webrick (1.7.0) word_wrap (1.0.0) - xcodeproj (1.21.0) + xcodeproj (1.22.0) CFPropertyList (>= 2.3.3, < 4.0) atomos (~> 0.1.3) claide (>= 1.0.2, < 2.0) @@ -281,4 +286,4 @@ DEPENDENCIES xcpretty (~> 0) BUNDLED WITH - 2.3.9 + 2.3.24 diff --git a/android/app/build.gradle b/android/app/build.gradle index bee6495f236..8d4ddaaec71 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -156,8 +156,8 @@ android { minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion multiDexEnabled rootProject.ext.multiDexEnabled - versionCode 1001021704 - versionName "1.2.17-4" + versionCode 1001021803 + versionName "1.2.18-3" buildConfigField "boolean", "IS_NEW_ARCHITECTURE_ENABLED", isNewArchitectureEnabled().toString() if (isNewArchitectureEnabled()) { diff --git a/docs/Gemfile b/docs/Gemfile index 34133513fc9..7cad729ee45 100644 --- a/docs/Gemfile +++ b/docs/Gemfile @@ -30,3 +30,5 @@ gem "wdm", "~> 0.1.1", :platforms => [:mingw, :x64_mingw, :mswin] gem "http_parser.rb", "~> 0.6.0", :platforms => [:jruby] gem "webrick", "~> 1.7" + +gem 'jekyll-seo-tag' diff --git a/docs/Gemfile.lock b/docs/Gemfile.lock index 276ffcdc336..c51a81d0b60 100644 --- a/docs/Gemfile.lock +++ b/docs/Gemfile.lock @@ -260,6 +260,7 @@ DEPENDENCIES github-pages http_parser.rb (~> 0.6.0) jekyll-feed (~> 0.12) + jekyll-seo-tag tzinfo (~> 1.2) tzinfo-data wdm (~> 0.1.1) diff --git a/docs/README.md b/docs/README.md index c583fd94eb8..47ecfcfb083 100644 --- a/docs/README.md +++ b/docs/README.md @@ -53,6 +53,22 @@ Copy the [template](https://github.com/Expensify/App/blob/main/docs/TEMPLATE.md) The sections of the article will be filled and nested automatically in the LHN, just ensure to use the [heading markdown tags](https://www.markdownguide.org/cheat-sheet/) correctly. +## Add meta-description tags for SEO + +At the top of template file we're going to find a few variables that will help us to define the meta-description of the article for SEO: + +``` +--- +title: The title of the post, page, or document +description: A short description of the page's content +image: (Optional) URL to an image associated with the post, page, or document (e.g., /assets/page-pic.jpg) +author: (Optional) Page-, post-, or document-specific author information. +locale: (Optional) Page-, post-, or document-specific locale information. Takes priority over existing front matter attribute lang. +--- +``` + +Just update the content for each variable accordingly or remove it if the information is not available. More details [here](https://github.com/jekyll/jekyll-seo-tag/blob/master/docs/usage.md#usage). + ## Add a new entry in the hub page There are 3 main components in the hub page: 1. Stage title, 2. Row of Card buttons and 3. Card buttons. diff --git a/docs/TEMPLATE.md b/docs/TEMPLATE.md index 7532ab74ac2..4408e56382a 100644 --- a/docs/TEMPLATE.md +++ b/docs/TEMPLATE.md @@ -1,4 +1,6 @@ --- +title: The title of the post, page, or document +description: A short description of the page's content --- diff --git a/docs/_config.yml b/docs/_config.yml index 2ea71f94b44..759dc1a1260 100644 --- a/docs/_config.yml +++ b/docs/_config.yml @@ -1,7 +1,17 @@ +title: Expensify Help +tagline: Expensify Help - all your Expensify questions answered in one place. +description: Got a question about receipts, expenses, corporate cards, or anything else in the spend management universe? Get answers at help.expensify.com. +url: help.expensify.com +author: Expensify +logo: /assets/images/expensify-help.svg defaults: - scope: path: "" # an empty string here means all files in the project values: layout: "default" + exclude: [README.md, TEMPLATE.md] + +plugins: + - jekyll-seo-tag diff --git a/docs/_layouts/default.html b/docs/_layouts/default.html index b062f7b5ca7..e3d5a1bab5a 100644 --- a/docs/_layouts/default.html +++ b/docs/_layouts/default.html @@ -12,6 +12,9 @@ + + + {% seo %} diff --git a/docs/articles/request-money/SmartScan.md b/docs/articles/request-money/SmartScan.md index 542704cc62f..300c014bb98 100644 --- a/docs/articles/request-money/SmartScan.md +++ b/docs/articles/request-money/SmartScan.md @@ -1,4 +1,6 @@ --- +title: Smart Scan +description: SmartScan is the time-saving tool that every Expensify user needs. Using SmartScan, you can quickly upload receipts and walk away to take care of more important things. --- # About diff --git a/docs/hubs/request-money.html b/docs/hubs/request-money.html index 6eff0606150..b330e690821 100644 --- a/docs/hubs/request-money.html +++ b/docs/hubs/request-money.html @@ -1,6 +1,7 @@ --- layout: default lhn_content: 'request-money' +title: Request money ---

diff --git a/docs/hubs/send-money.html b/docs/hubs/send-money.html index 859cdd242fe..8547602c0ed 100644 --- a/docs/hubs/send-money.html +++ b/docs/hubs/send-money.html @@ -1,6 +1,7 @@ --- layout: default lhn_content: 'send-money' +title: Send money ---

diff --git a/docs/main.html b/docs/main.html index f76f218b4c1..c4547dd7b11 100644 --- a/docs/main.html +++ b/docs/main.html @@ -9,8 +9,7 @@

- Find all the answers to all your Expensify questions, as well as support for user and admin questions from the - Expensify Community. + Find the answers to all of your questions about receipts, expenses, corporate cards, or anything else in the spend management universe.

diff --git a/ios/NewExpensify/Info.plist b/ios/NewExpensify/Info.plist index 173ddbe45ef..5d2160fb41a 100644 --- a/ios/NewExpensify/Info.plist +++ b/ios/NewExpensify/Info.plist @@ -17,7 +17,7 @@ CFBundlePackageType APPL CFBundleShortVersionString - 1.2.17 + 1.2.18 CFBundleSignature ???? CFBundleURLTypes @@ -30,7 +30,7 @@ CFBundleVersion - 1.2.17.4 + 1.2.18.3 ITSAppUsesNonExemptEncryption LSApplicationQueriesSchemes diff --git a/ios/NewExpensifyTests/Info.plist b/ios/NewExpensifyTests/Info.plist index 225c28d7430..bbfc0448c76 100644 --- a/ios/NewExpensifyTests/Info.plist +++ b/ios/NewExpensifyTests/Info.plist @@ -15,10 +15,10 @@ CFBundlePackageType BNDL CFBundleShortVersionString - 1.2.17 + 1.2.18 CFBundleSignature ???? CFBundleVersion - 1.2.17.4 + 1.2.18.3 diff --git a/package-lock.json b/package-lock.json index 3dc583b76a9..821195655b5 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "new.expensify", - "version": "1.2.17-4", + "version": "1.2.18-3", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "new.expensify", - "version": "1.2.17-4", + "version": "1.2.18-3", "hasInstallScript": true, "license": "MIT", "dependencies": { @@ -68,7 +68,7 @@ "react-native-image-picker": "^4.8.5", "react-native-image-size": "git+https://github.com/Expensify/react-native-image-size#6b5ab5110dc3ed554f8eafbc38d7d87c17147972", "react-native-modal": "^13.0.0", - "react-native-onyx": "1.0.17", + "react-native-onyx": "1.0.24", "react-native-pdf": "^6.6.2", "react-native-performance": "^2.0.0", "react-native-permissions": "^3.0.1", @@ -24269,6 +24269,11 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, + "node_modules/fast-equals": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-4.0.3.tgz", + "integrity": "sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg==" + }, "node_modules/fast-glob": { "version": "3.2.11", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", @@ -35650,11 +35655,12 @@ } }, "node_modules/react-native-onyx": { - "version": "1.0.17", - "resolved": "https://registry.npmjs.org/react-native-onyx/-/react-native-onyx-1.0.17.tgz", - "integrity": "sha512-ls2GjURfpBcGnIkwVrg2uuLnTBwd0vrEiUvbMo+GF3k81GAp2flCkVTM7ciAbo155Izk50dm0uXHYq1PIjwTxw==", + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/react-native-onyx/-/react-native-onyx-1.0.24.tgz", + "integrity": "sha512-53URFiTpH0w0d4Qy4bTW1Wsse7dbmpyo5vRx48iQ3Wn+ZmZbDnwCeCS+aP1+8qJiQPuyDvz9tByKoI6UfkH3rA==", "dependencies": { "ascii-table": "0.0.9", + "fast-equals": "^4.0.3", "lodash": "^4.17.21", "underscore": "^1.13.1" }, @@ -61591,6 +61597,11 @@ "integrity": "sha512-xJuoT5+L99XlZ8twedaRf6Ax2TgQVxvgZOYoPKqZufmJib0tL2tegPBOZb1pVNgIhlqDlA0eO0c3wBvQcmzx4w==", "dev": true }, + "fast-equals": { + "version": "4.0.3", + "resolved": "https://registry.npmjs.org/fast-equals/-/fast-equals-4.0.3.tgz", + "integrity": "sha512-G3BSX9cfKttjr+2o1O22tYMLq0DPluZnYtq1rXumE1SpL/F/SLIfHx08WYQoWSIpeMYf8sRbJ8++71+v6Pnxfg==" + }, "fast-glob": { "version": "3.2.11", "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.2.11.tgz", @@ -70399,11 +70410,12 @@ } }, "react-native-onyx": { - "version": "1.0.17", - "resolved": "https://registry.npmjs.org/react-native-onyx/-/react-native-onyx-1.0.17.tgz", - "integrity": "sha512-ls2GjURfpBcGnIkwVrg2uuLnTBwd0vrEiUvbMo+GF3k81GAp2flCkVTM7ciAbo155Izk50dm0uXHYq1PIjwTxw==", + "version": "1.0.24", + "resolved": "https://registry.npmjs.org/react-native-onyx/-/react-native-onyx-1.0.24.tgz", + "integrity": "sha512-53URFiTpH0w0d4Qy4bTW1Wsse7dbmpyo5vRx48iQ3Wn+ZmZbDnwCeCS+aP1+8qJiQPuyDvz9tByKoI6UfkH3rA==", "requires": { "ascii-table": "0.0.9", + "fast-equals": "^4.0.3", "lodash": "^4.17.21", "underscore": "^1.13.1" } diff --git a/package.json b/package.json index c9eabc0f056..fd84147bfb8 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "new.expensify", - "version": "1.2.17-4", + "version": "1.2.18-3", "author": "Expensify, Inc.", "homepage": "https://new.expensify.com", "description": "New Expensify is the next generation of Expensify: a reimagination of payments based atop a foundation of chat.", @@ -96,7 +96,7 @@ "react-native-image-picker": "^4.8.5", "react-native-image-size": "git+https://github.com/Expensify/react-native-image-size#6b5ab5110dc3ed554f8eafbc38d7d87c17147972", "react-native-modal": "^13.0.0", - "react-native-onyx": "1.0.17", + "react-native-onyx": "1.0.24", "react-native-pdf": "^6.6.2", "react-native-performance": "^2.0.0", "react-native-permissions": "^3.0.1", diff --git a/src/components/FormAlertWithSubmitButton.js b/src/components/FormAlertWithSubmitButton.js index c3ef4b464c9..3fbb5ac607b 100644 --- a/src/components/FormAlertWithSubmitButton.js +++ b/src/components/FormAlertWithSubmitButton.js @@ -28,7 +28,7 @@ const propTypes = { message: PropTypes.string, /** Callback fired when the "fix the errors" link is pressed */ - onFixTheErrorsPressed: PropTypes.func, + onFixTheErrorsLinkPressed: PropTypes.func, /** Submit function */ onSubmit: PropTypes.func.isRequired, @@ -43,7 +43,7 @@ const defaultProps = { isMessageHtml: false, containerStyles: [], isLoading: false, - onFixTheErrorsPressed: () => {}, + onFixTheErrorsLinkPressed: () => {}, enabledWhenOffline: false, }; @@ -53,7 +53,7 @@ const FormAlertWithSubmitButton = props => ( isAlertVisible={props.isAlertVisible} isMessageHtml={props.isMessageHtml} message={props.message} - onFixTheErrorsPressed={props.onFixTheErrorsPressed} + onFixTheErrorsLinkPressed={props.onFixTheErrorsLinkPressed} > {isOffline => ((isOffline && !props.enabledWhenOffline) ? (