Skip to content

Commit

Permalink
Merge branch 'main' into hayata-navigate-to-accounting-page-on-enable…
Browse files Browse the repository at this point in the history
…menet
  • Loading branch information
Hayata Suenaga committed May 2, 2024
2 parents 41d105b + 729c9ac commit ff02b21
Show file tree
Hide file tree
Showing 73 changed files with 833 additions and 547 deletions.
16 changes: 15 additions & 1 deletion .eslintrc.js
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,7 @@ const restrictedImportPatterns = [

module.exports = {
extends: ['expensify', 'plugin:storybook/recommended', 'plugin:react-native-a11y/basic', 'plugin:@dword-design/import-alias/recommended', 'prettier'],
plugins: ['react-native-a11y'],
plugins: ['react-native-a11y', 'testing-library'],
parser: 'babel-eslint',
ignorePatterns: ['!.*', 'src/vendor', '.github/actions/**/index.js', 'desktop/dist/*.js', 'dist/*.js', 'node_modules/.bin/**', 'node_modules/.cache/**', '.git/**'],
env: {
Expand Down Expand Up @@ -130,6 +130,20 @@ module.exports = {
files: ['tests/**/*.js', 'tests/**/*.ts', 'tests/**/*.jsx', 'assets/**/*.js', '.storybook/**/*.js'],
rules: {'@dword-design/import-alias/prefer-alias': ['off']},
},
{
files: ['tests/**/*.js', 'tests/**/*.ts', 'tests/**/*.jsx', 'tests/**/*.tsx'],
extends: ['plugin:testing-library/react'],
rules: {
'testing-library/await-async-queries': 'error',
'testing-library/await-async-utils': 'error',
'testing-library/no-debugging-utils': 'error',
'testing-library/no-manual-cleanup': 'error',
'testing-library/no-unnecessary-act': 'error',
'testing-library/prefer-find-by': 'error',
'testing-library/prefer-presence-queries': 'error',
'testing-library/prefer-screen-queries': 'error',
},
},
{
files: ['*.js', '*.jsx'],
settings: {
Expand Down
4 changes: 2 additions & 2 deletions android/app/build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -98,8 +98,8 @@ android {
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
multiDexEnabled rootProject.ext.multiDexEnabled
versionCode 1001046900
versionName "1.4.69-0"
versionCode 1001046902
versionName "1.4.69-2"
// Supported language variants must be declared here to avoid from being removed during the compilation.
// This also helps us to not include unnecessary language variants in the APK.
resConfigs "en", "es"
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,9 @@ You can format the text in a chat message using markdown.
- **Bold**: Add two asterisks ** on both sides of the text.
- ~~Strikethrough~~: Add two tildes ~~ on both sides of the text.
- Heading: Add a number sign # in front of the text.
- Inline image: Add `![Alt text](image URL)` and add the URL to the image and alt text that describes the image.
- Tag another member: Add an at symbol @ and enter the member's name, username, or email address.
- Mention a room: Add a number sign # and enter the room name
- > Blockquote: Add an angled bracket > in front of the text.
- `Code block for a small amount of text`: Add a backtick ` on both sides of the text.
- Code block for the entire message: Add three backticks ``` at the beginning and the end of the message.
Expand Down
125 changes: 125 additions & 0 deletions docs/articles/new-expensify/expenses/Create-an-expense.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,125 @@
---
title: Create an expense
description: Request payment from an employer or a friend
redirect_from: articles/request-money/Request-and-Split-Bills/
---
<div id="new-expensify" markdown="1">

You can create an expense to request payment from an employer’s workspace or from a friend using any of the following options:
- **SmartScan**: Take a picture of a receipt to capture the expense details automatically.
- **Add manually**: Manually enter the expense details.
- **Create a distance expense**: Capture mileage expenses by entering the addresses you traveled to. Expensify automatically calculates the distance, the rate per mile, and the total cost.

# SmartScan a receipt

{% include selector.html values="desktop, mobile" %}

{% include option.html value="desktop" %}
1. Click the + icon in the bottom left menu and select **Submit Expense**.
2. Click **Scan**.
3. Drag and drop the receipt into Expensify, or click **Choose File** to select it from your saved files. *Note: The SmartScan process will auto-populate the merchant, date, and amount.*
4. Use the search field to find the desired workspace or an individual’s name, email, or phone number.
5. Add a description, category, tags, or tax as desired, or as required by your workspace.
6. (Optional) Enable the expense as billable if it should be billed to a client.
7. Click **Submit Expense**.
{% include end-option.html %}

{% include option.html value="mobile" %}
1. Tap the + icon at the bottom of the screen and select **Submit Expense**.
2. Tap **Scan**.
3. Tap the green button to take a photo of a receipt, or tap the Image icon to the left of it to upload a receipt from your phone. *Note: The SmartScan process will auto-populate the merchant, date, and amount.*
4. Use the search field to find the desired workspace or an individual’s name, email, or phone number.
5. Add a description, category, tags, or tax as desired, or as required by your workspace.
6. (Optional) Enable the expense as billable if it should be billed to a client.
7. Tap **Submit**.
{% include end-option.html %}

{% include end-selector.html %}

{% include info.html %}
You can also forward receipts to [email protected] using an email address that is your primary or secondary email address. SmartScan will automatically pull all of the details from the receipt and add it to your expenses.
{% include end-info.html %}

# Manually add an expense

{% include selector.html values="desktop, mobile" %}

{% include option.html value="desktop" %}
1. Click the + icon in the bottom left menu and select **Submit Expense**.
2. Click **Manual**.
3. Enter the amount on the receipt and click **Next**. *Note: Click the currency symbol to select a different currency.*
4. Use the search field to find the desired workspace or an individual’s name, email, or phone number.
5. (Optional) Add a description.
6. Add a merchant.
7. Click **Show more** to add additional fields (like a category) as desired, or as required by your workspace.
8. Click **Submit**.
{% include end-option.html %}

{% include option.html value="mobile" %}
1. Tap the + icon at the bottom of the screen and select **Submit Expense**.
2. Tap **Manual**.
3. Enter the amount on the receipt and tap **Next**. *Note: Click the currency symbol to select a different currency.*
4. Use the search field to find the desired workspace or an individual’s name, email, or phone number.
5. (Optional) Add a description.
6. Add a merchant.
7. Tap **Show more** to add additional fields (like a category) as desired, or as required by your workspace.
8. Tap **Submit**.
{% include end-option.html %}

{% include end-selector.html %}

# Create a distance expense

{% include selector.html values="desktop, mobile" %}

{% include option.html value="desktop" %}
1. Click the + icon in the bottom left menu and select **Submit Expense**.
2. Click **Distance**.
3. Click **Start** and enter the starting location of your trip.
4. Click **Stop** and enter the ending location of your trip.
5. (Optional) Click **Add stop** to add additional stops, if applicable.
6. Tap **Next**.
7. Use the search field to find the desired workspace or an individual’s name, email, or phone number.
8. (Optional) Add a description.
9. Click **Submit**.
{% include end-option.html %}

{% include option.html value="mobile" %}
1. Tap the + icon at the bottom of the screen and select **Submit Expense**.
2. Tap **Distance**.
3. Tap **Start** and enter the starting location of your trip.
4. Tap **Stop** and enter the ending location of your trip.
5. (Optional) Tap **Add stop** to add additional stops, if applicable.
6. Tap **Next**.
7. Use the search field to find the desired workspace or an individual’s name, email, or phone number.
8.(Optional) Add a description.
9. Tap **Submit**.
{% include end-option.html %}

{% include end-selector.html %}

# Next Steps

The next steps for the expense depend on whether it was submitted to a workspace or to an individual:
- **Expenses submitted to a workspace** are automatically added to a report and checked for any violations or inconsistencies. A chat thread for the expense is also added to your chat inbox. When you open the chat, the top banner will show the expense status and any next steps. By default, reports are automatically submitted for approval every Sunday. However, if it is ready for early submission, you can manually submit a report for approval. Once a report is submitted, your approver will be prompted to review your expense report. If changes are required, you will receive a notification to resolve any violations and resubmit. You will also be notified once your approver approves or denies your expenses.
- **Expenses submitted to a friend** are sent right to that individual via email or text. You can chat with them about the expense in Expensify Chat, and you can receive payments through your Expensify Wallet or outside of Expensify.

{% include faq-begin.md %}
**Can I divide a payment between multiple people?**

Yes, you can split an expense to share the cost between multiple people.

**Can I pay someone in another currency?**

While you can record your expenses in different currencies, Expensify wallets are only available for members who can add a U.S. personal bank account.

**Can I change an expense once I’ve submitted it?**

Yes, you can edit an expense until it is paid. When an expense is submitted to a workspace, you, your approvers, and admins can edit the details on an expense except for the amount and date.

**What are expense reports?**

In Expensify, expenses are submitted on an expense report. When a draft report is open, all new expenses are added to the draft report. Once a report is submitted, it shows what stage of the approval process the expenses are in and any required next steps.
{% include faq-end.md %}

</div>
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
---
title: Manually submit reports for approval
description: Submit a report before the submission date
---
<div id="new-expensify" markdown="1">

By default, reports are automatically submitted for approval every Sunday. However, if it is ready for early submission, you can manually submit your report for approval.

To manually submit an expense for approval,

{% include selector.html values="desktop, mobile" %}

{% include option.html value="desktop" %}
1. In your chat inbox, click the expense you want to submit for approval. *Note: A green dot will appear to the right of newly created expenses.*
2. Review the next step provided at the top of the expense report.
3. If the next step is to submit the report, click **Submit**.
{% include end-option.html %}

{% include option.html value="mobile" %}
1. In your chat inbox, tap the expense you want to submit for approval. *Note: A green dot will appear to the right of newly created expenses.*
2. Review the next step provided at the top of the expense report.
3. If the next step is to submit the report, tap **Submit**.
{% include end-option.html %}

{% include end-selector.html %}

{% include faq-begin.md %}
**How do I know the status of my expense report?**

You’ll see a Next Steps prompt at the top of your expense report to guide you through the next steps and give you a status of your report. Your workspace may have an automation set up that will automatically submit your expense reports when they are due, or you may be required to manually submit your expenses.

**Can I add more expenses to my expense report?**

Yes, you can add expenses to a report that is in a Draft or Processing status. Once a report is Approved or Reimbursed, expenses cannot be added or edited.

**How can I get reimbursed?**

The reimbursement options depend on the workspace’s settings.
- If the workspace is set up to send reimbursements directly to your personal bank account, you can connect a personal bank account to receive ACH payments.
- You can receive reimbursements with your Expensify Wallet or outside of Expensify.
{% include faq-end.md %}

</div>
37 changes: 0 additions & 37 deletions docs/articles/new-expensify/expenses/Request-Money.md

This file was deleted.

39 changes: 39 additions & 0 deletions docs/articles/new-expensify/expenses/Split-an-expense.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
---
title: Split an expense
description: Divide an expense between multiple people
---
<div id="new-expensify" markdown="1">

Splitting an expense allows the person who paid the bill to request money from multiple people who will split the cost with them.

To split an expense with other people,

{% include selector.html values="desktop, mobile" %}

{% include option.html value="desktop" %}
1. Click the + icon in the bottom left menu and select **Split Expense**.
2. Upload a photo of your receipt, or manually enter the total bill amount.
3. Click **Next**.
4. Enter the names, email addresses, or phone numbers for the people you want to request money from. *Note: You can select multiple people.*
5. Click **Next**.
6. (Optional) Enter a reason for the request in the Description field.
7. (Optional) If you manually entered the bill amount, add the merchant and date of purchase.
8. Click **Split**.
{% include end-option.html %}

{% include option.html value="mobile" %}
1. Tap the + icon at the bottom of the screen and select **Split Expense**.
2. Take a photo of your receipt, or manually enter the total bill amount.
3. Tap **Next**.
4. Enter the names, email addresses, or phone numbers for the people you want to request money from. Note: You can select multiple people
5. Tap **Next**.
6. (Optional) Enter a reason for the request in the Description field.
7. (Optional) If you manually entered the bill amount, add the merchant and date of purchase.
8. Click **Split**.
{% include end-option.html %}

{% include end-selector.html %}

Each person will receive an email or text with the details of the request. You can also chat with them about the expense in Expensify Chat, and you can receive payments through your Expensify Wallet or outside of Expensify.

</div>
1 change: 1 addition & 0 deletions docs/redirects.csv
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,7 @@ https://help.expensify.com/articles/expensify-classic/settings/Merge-Accounts,ht
https://help.expensify.com/articles/expensify-classic/settings/Preferences,https://help.expensify.com/expensify-classic/hubs/settings/account-settings
https://help.expensify.com/articles/expensify-classic/getting-started/support/Your-Expensify-Account-Manager,https://use.expensify.com/support
https://help.expensify.com/articles/expensify-classic/settings/Copilot,https://help.expensify.com/expensify-classic/hubs/copilots-and-delegates/
https://help.expensify.com/articles/expensify-classic/workspaces/Domains-Overview,https://help.expensify.com/expensify-classic/hubs/domains/
https://help.expensify.com/articles/expensify-classic/workspace-and-domain-settings/reports/Currency,https://help.expensify.com/articles/expensify-classic/reports/Currency
https://help.expensify.com/articles/expensify-classic/workspace-and-domain-settings/reports/Report-Fields-And-Titles,https://help.expensify.com/articles/expensify-classic/workspaces/reports/Report-Fields-And-Titles
https://help.expensify.com/articles/expensify-classic/workspace-and-domain-settings/reports/Scheduled-Submit,https://help.expensify.com/articles/expensify-classic/workspaces/reports/Scheduled-Submit
Expand Down
2 changes: 1 addition & 1 deletion ios/NewExpensify/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@
</dict>
</array>
<key>CFBundleVersion</key>
<string>1.4.69.0</string>
<string>1.4.69.2</string>
<key>FullStory</key>
<dict>
<key>OrgId</key>
Expand Down
2 changes: 1 addition & 1 deletion ios/NewExpensifyTests/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -19,6 +19,6 @@
<key>CFBundleSignature</key>
<string>????</string>
<key>CFBundleVersion</key>
<string>1.4.69.0</string>
<string>1.4.69.2</string>
</dict>
</plist>
2 changes: 1 addition & 1 deletion ios/NotificationServiceExtension/Info.plist
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@
<key>CFBundleShortVersionString</key>
<string>1.4.69</string>
<key>CFBundleVersion</key>
<string>1.4.69.0</string>
<string>1.4.69.2</string>
<key>NSExtension</key>
<dict>
<key>NSExtensionPointIdentifier</key>
Expand Down
Loading

0 comments on commit ff02b21

Please sign in to comment.