From 5a7489d1960e3c18c8c07082a427e82035257463 Mon Sep 17 00:00:00 2001 From: Matt Moore <46995600+muttmuure@users.noreply.github.com> Date: Fri, 14 Feb 2025 19:45:07 +0000 Subject: [PATCH 01/14] Update Configure-Netsuite.md --- .../connections/netsuite/Configure-Netsuite.md | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md b/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md index 26db42df9e5b..4d82ef89e4fd 100644 --- a/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md +++ b/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md @@ -119,8 +119,10 @@ In addition to inviting employees, this feature enables a custom set of approval ## I notice that company card expenses export to NetSuite right away when I approve a report, but reimbursable expenses don’t, why is that? When Auto Sync is enabled and you reimburse employees through Expensify, we help to automatically send finalized expenses to NetSuite. The timing of the export depends on the type of expense it is. - - **If you reimburse members through Expensify:** Reimbursing an expense report will trigger auto-export to NetSuite. When the expense report is exported to NetSuite, a corresponding bill payment will also be created in NetSuite. - - **If you reimburse members outside of Expensify:** Expense reports will be exported to NetSuite at the time of final approval. After you mark the report as paid in NetSuite, the reimbursed status will be synced back to Expensify the next time the integration syncs. + +- **If you reimburse members through Expensify:** Reimbursing an expense report will trigger auto-export to NetSuite. When the expense report is exported to NetSuite, a corresponding bill payment will also be created in NetSuite. + +- **If you reimburse members outside of Expensify:** Expense reports will be exported to NetSuite at the time of final approval. After you mark the report as paid in NetSuite, the reimbursed status will be synced back to Expensify the next time the integration syncs. ## How do I configure my default corporate cards in NetSuite? @@ -157,6 +159,6 @@ Auto-sync will only export newly approved reports to NetSuite. Reports that were When using multi-currency features with NetSuite, remember these points: -**Employee/Vendor currency:** The currency set for a NetSuite vendor or employee record must match the subsidiary currency for whichever subsidiary you export that user's reports to. A currency mismatch will cause export errors. -**Bank Account Currency:** When synchronizing bill payments, your bank account’s currency must match the subsidiary’s currency. Failure to do so will result in an “Invalid Account” error. + - **Employee/Vendor currency:** The currency set for a NetSuite vendor or employee record must match the subsidiary currency for whichever subsidiary you export that user's reports to. A currency mismatch will cause export errors. + - **Bank Account Currency:** When synchronizing bill payments, your bank account’s currency must match the subsidiary’s currency. Failure to do so will result in an “Invalid Account” error. {% include faq-end.md %} From c44c6ee290dc9faf633205fd53189523f0c13b6e Mon Sep 17 00:00:00 2001 From: Matt Moore <46995600+muttmuure@users.noreply.github.com> Date: Mon, 17 Feb 2025 08:33:40 +0000 Subject: [PATCH 02/14] Update Configure-Netsuite.md setence case titles --- .../connections/netsuite/Configure-Netsuite.md | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md b/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md index 4d82ef89e4fd..8d7c0e84eedc 100644 --- a/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md +++ b/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md @@ -4,20 +4,20 @@ description: Configure the Import, Export, and Advanced settings for Expensify's order: 2 --- -# Best Practices Using NetSuite +# Best practices using NetSuite Using Expensify with NetSuite brings a seamless, efficient approach to managing expenses. With automatic syncing, expense reports flow directly into NetSuite, reducing manual entry and errors while giving real-time visibility into spending. This integration speeds up approvals, simplifies reimbursements, and provides clear insights for smarter budgeting and compliance. Together, Expensify and NetSuite make expense management faster, more accurate, and stress-free. -# Accessing the NetSuite Configuration Settings +# Accessing the NetSuite configuration settings NetSuite is connected at the workspace level, and each workspace can have a unique configuration that dictates how the connection functions. To access the connection settings: -1. Click your profile image or icon in the bottom left menu. +1. Click Settings the bottom left menu. 2. Scroll down and click **Workspaces** in the left menu. 3. Select the workspace you want to access settings for. 4. Click **Accounting** in the left menu. -# Step 1: Configure Import Settings +# Step 1: Configure import settings The following steps help you determine how data will be imported from NetSuite to Expensify. @@ -42,7 +42,7 @@ The following steps help you determine how data will be imported from NetSuite t When you’re done configuring the settings, or anytime you make changes in the future, sync the NetSuite connection. This will ensure changes are saved and updated across both systems. {% include end-info.html %} -# Step 2: Configure Export Settings +# Step 2: Configure export settings The following steps help you determine how data will be exported from Expensify to NetSuite. @@ -72,7 +72,7 @@ The following steps help you determine how data will be exported from Expensify - _Export to next open period_: When this feature is enabled and you try exporting an expense report to a closed NetSuite period, we will automatically export to the next open period instead of returning an error. 3. Sync the connection by closing the right-hand menu and clicking the three-dot icon > Sync Now option. -# Step 3: Configure Advanced Settings +# Step 3: Configure advanced settings The following steps help you determine the advanced settings for your NetSuite connection. From 47671e38a44bcfc73ac96b092c431a135a9dc1a5 Mon Sep 17 00:00:00 2001 From: Matt Moore <46995600+muttmuure@users.noreply.github.com> Date: Mon, 17 Feb 2025 08:40:14 +0000 Subject: [PATCH 03/14] Update Configure-Netsuite.md Fix bulleting of corp card FAQ --- .../new-expensify/connections/netsuite/Configure-Netsuite.md | 1 - 1 file changed, 1 deletion(-) diff --git a/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md b/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md index 8d7c0e84eedc..65170acfdd7a 100644 --- a/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md +++ b/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md @@ -121,7 +121,6 @@ In addition to inviting employees, this feature enables a custom set of approval When Auto Sync is enabled and you reimburse employees through Expensify, we help to automatically send finalized expenses to NetSuite. The timing of the export depends on the type of expense it is. - **If you reimburse members through Expensify:** Reimbursing an expense report will trigger auto-export to NetSuite. When the expense report is exported to NetSuite, a corresponding bill payment will also be created in NetSuite. - - **If you reimburse members outside of Expensify:** Expense reports will be exported to NetSuite at the time of final approval. After you mark the report as paid in NetSuite, the reimbursed status will be synced back to Expensify the next time the integration syncs. ## How do I configure my default corporate cards in NetSuite? From 489e7cd4db81042ba79ca3954f54e127957c3472 Mon Sep 17 00:00:00 2001 From: Sheena Trepanier Date: Wed, 19 Feb 2025 11:07:40 -0800 Subject: [PATCH 04/14] Update Configure-Netsuite.md Suggesting some new changes to formatting and wording. Very minor stuff. --- .../netsuite/Configure-Netsuite.md | 26 +++++++++---------- 1 file changed, 13 insertions(+), 13 deletions(-) diff --git a/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md b/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md index 65170acfdd7a..5f5a54818330 100644 --- a/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md +++ b/docs/articles/new-expensify/connections/netsuite/Configure-Netsuite.md @@ -12,7 +12,7 @@ Using Expensify with NetSuite brings a seamless, efficient approach to managing NetSuite is connected at the workspace level, and each workspace can have a unique configuration that dictates how the connection functions. To access the connection settings: -1. Click Settings the bottom left menu. +1. Click Settings in the bottom left menu. 2. Scroll down and click **Workspaces** in the left menu. 3. Select the workspace you want to access settings for. 4. Click **Accounting** in the left menu. @@ -25,10 +25,10 @@ The following steps help you determine how data will be imported from NetSuite t 2. In the right-hand menu, review each of the following import settings: - _Categories_: Your NetSuite Expense Categories are automatically imported into Expensify as categories. This is enabled by default and cannot be disabled. - _Department, Classes, and Locations_: The NetSuite connection allows you to import each independently and utilize tags, report fields, or employee defaults as the coding method. - - Tags are applied at the expense level and apply to single expense. + - Tags are applied at the expense level and apply to a single expense. - Report Fields are applied at the report header level and apply to all expenses on the report. - The employee default is applied when the expense is exported to NetSuite and comes from the default on the submitter’s employee record in NetSuite. - - _Customers and Projects_: The NetSuite connections allows you to import customers and projects into Expensify as Tags or Report Fields. + - _Customers and Projects_: The NetSuite connection allows you to import customers and projects into Expensify as Tags or Report Fields. -_Cross-subsidiary customers/projects_: Enable to import Customers and Projects across all NetSuite subsidiaries to a single Expensify workspace. This setting requires you to enable “Intercompany Time and Expense” in NetSuite. To enable that feature in NetSuite, go to **Setup > Company > Setup Tasks: Enable Features > Advanced Features**. -_Tax_: Enable to import NetSuite Tax Groups and configure further on the Taxes tab of your workspace settings menu. -_Custom Segments and Records_: Enable to import segments and records are tags or report fields. @@ -36,7 +36,7 @@ The following steps help you determine how data will be imported from NetSuite t - If configuring Custom Records as Tags, use the Field ID on the Transaction Columns tab (under **Custom Segments > Transaction Columns**). - Don’t use the “Filtered by” feature available for Custom Segments. Expensify can’t make these dependent on other fields. If you do have a filter selected, we suggest switching that filter in NetSuite to “Subsidiary” and enabling all subsidiaries to ensure you don’t receive any errors upon exporting reports. -_Custom Lists_: Enable to import lists as tags or reports fields. -3. Sync the connection by closing the right-hand menu and clicking the three-dot icon > Sync Now option. Once the sync completes, you should see the values for any enabled tags or report fields in the corresponding Tag or Report Field tabs in the workspace settings menu. +3. Sync the connection by closing the right-hand menu and clicking the **three-dot icon** > **Sync Now** option. Once the sync completes, you should see the values for any enabled tags or report fields in the corresponding Tag or Report Field tabs in the workspace settings menu. {% include info.html %} When you’re done configuring the settings, or anytime you make changes in the future, sync the NetSuite connection. This will ensure changes are saved and updated across both systems. @@ -59,7 +59,7 @@ The following steps help you determine how data will be exported from Expensify - _Journal Entries_: Out-of-pocket expenses will be exported to NetSuite as journal entries. All the transactions will be posted to the payable account specified in the workspace. You can also set an approval level in NetSuite for the journal entries. - By default, journal entry forms do not contain a customer column, so it is not possible to export customers or projects with this export option. Also, the credit line and header-level classifications are pulled from the employee record. - _Export company card expenses as_: - - _Expense Reports_:To export company card expenses as expense reports, you will need to configure your default corporate cards in NetSuite. + - _Expense Reports_: To export company card expenses as expense reports, you must configure your default corporate cards in NetSuite. - _Vendor Bills_: Company card expenses will be posted as a vendor bill payable to the default vendor specified in your workspace Accounting settings. You can also set an approval level in NetSuite for the bills. - _Journal Entries_: Company Card expenses will be posted to the Journal Entries posting account selected in your workspace Accounting settings. - Important Notes: @@ -70,7 +70,7 @@ The following steps help you determine how data will be exported from Expensify - _Invoice item_: Choose whether Expensify creates an "Expensify invoice line item" for you upon export (if one doesn’t exist already) or select an existing invoice item. - _Export foreign currency amount_: Enabling this feature allows you to send the original amount of the expense rather than the converted total when exporting to NetSuite. This option is only available when exporting out-of-pocket expenses as Expense Reports. - _Export to next open period_: When this feature is enabled and you try exporting an expense report to a closed NetSuite period, we will automatically export to the next open period instead of returning an error. -3. Sync the connection by closing the right-hand menu and clicking the three-dot icon > Sync Now option. +3. Sync the connection by closing the right-hand menu and clicking the **three-dot icon** > **Sync Now** option. # Step 3: Configure advanced settings @@ -84,8 +84,8 @@ The following steps help you determine the advanced settings for your NetSuite c - _Sync reimbursed reports_: Any time a report is paid using Expensify ACH, the corresponding bill payment will be created in the NetSuite. - _Reimbursments account_: Select the account that matches the default account for Bill Payments in your NetSuite account. - _Collections account_: When exporting invoices, once marked as Paid, the payment is marked against the account selected. - - _Invite employees and set approvals_: Enabling this feature will invite all employees from the connected NetSuite subsidiary to your Expensify workspace. Once imported, Expensify will send them an email letting them know they’ve been added to a workspace. - - In addition to inviting employees, this feature enables a custom set of approval workflow options, which you can manage in Expensify Classic. (Click Switch to Expensify Classic from the Settings menu.) + - _Invite employees and set approvals_: Enabling this feature will invite all employees from the connected NetSuite subsidiary to your Expensify workspace. Once imported, Expensify will email them to let them know they’ve been added to a workspace. + This feature invites employees and enables a custom set of approval workflow options, which you can manage in Expensify Classic. (Click Switch to Expensify Classic from the Settings menu.) - _Auto create employees/vendors_: With this feature enabled, Expensify will automatically create a new employee or vendor in NetSuite (if one doesn’t already exist) using the name and email of the report submitter. - _Enable newly imported categories_: Toggle to enable this feature and anytime a new Expense Category is created in NetSuite, it will be imported into Expensify as an enabled category. Otherwise, it will import disabled and employees will be unable to see it as an option to code to an expense. - _Setting approval levels_: You can set the NetSuite approval level for each different export type; Expense report, Vendor bill, and Journal entry. @@ -93,7 +93,7 @@ The following steps help you determine the advanced settings for your NetSuite c - _Custom form ID_: By default, Expensify creates entries using the preferred transaction form set in NetSuite. Enabling this setting allows you to designate a specific transaction form. - _Out-of-pocket expense_: - _Company card expense_: -3. Sync the connection by closing the right-hand menu and clicking the three-dot icon > Sync Now option. +3. Sync the connection by closing the right-hand menu and clicking the **three-dot icon** > **Sync Now** option. {% include faq-begin.md %} @@ -107,18 +107,18 @@ Once imported, you can turn specific tags on or off under **Settings > Workspace Yes, you can automatically import your employees and set their approval workflow with your connection between NetSuite and Expensify. -Enabling this feature will invite all employees from the connected NetSuite subsidiary to your Expensify workspace. Once imported, Expensify will send them an email letting them know they’ve been added to a workspace. +Enabling this feature will invite all employees from the connected NetSuite subsidiary to your Expensify workspace. Once imported, Expensify will email them to let them know they’ve been added to a workspace. In addition to inviting employees, this feature enables a custom set of approval workflow options, which you can manage in Expensify Classic. (Click Switch to Expensify Classic from the Settings menu.) Your options for approval include: -- **Basic Approval:** A single level of approval, where all users submit directly to a Final Approver. The Final Approver defaults to the workspace owner but can be edited on the people page. +- **Basic Approval:** This is a single level of approval, where all users submit directly to a Final Approver. The Final Approver defaults to the workspace owner but can be edited on the people page. - **Manager Approval (default):** Two levels of approval route reports first to an employee’s NetSuite expense approver or supervisor, and second to a workspace-wide Final Approver. By NetSuite convention, Expensify will map to the supervisor if no expense approver exists. The Final Approver defaults to the workspace owner but can be edited on the people page. - **Configure Manually:** Employees will be imported, but all levels of approval must be manually configured on the workspace’s People settings page. If you enable this setting, it’s recommended you review the newly imported employees and managers on the **Settings > Workspaces > Group > [Workspace Name] > People** page. ## I notice that company card expenses export to NetSuite right away when I approve a report, but reimbursable expenses don’t, why is that? -When Auto Sync is enabled and you reimburse employees through Expensify, we help to automatically send finalized expenses to NetSuite. The timing of the export depends on the type of expense it is. +When Auto Sync is enabled and you reimburse employees through Expensify, we help you automatically send finalized expenses to NetSuite. The timing of the export depends on the type of expense. - **If you reimburse members through Expensify:** Reimbursing an expense report will trigger auto-export to NetSuite. When the expense report is exported to NetSuite, a corresponding bill payment will also be created in NetSuite. - **If you reimburse members outside of Expensify:** Expense reports will be exported to NetSuite at the time of final approval. After you mark the report as paid in NetSuite, the reimbursed status will be synced back to Expensify the next time the integration syncs. @@ -148,7 +148,7 @@ You can also select the default account on your employee record to use individua If a report is reimbursed via ACH or marked as reimbursed in Expensify and then exported to NetSuite, the report is automatically marked as paid in NetSuite. -If a report is exported to NetSuite, and then marked as paid in NetSuite, the report will automatically be marked as reimbursed in Expensify during the next sync. +If a report is exported to NetSuite and then marked as paid in NetSuite, it will automatically be marked as reimbursed in Expensify during the next sync. ## Will enabling auto-sync affect existing approved and reimbursed reports? From c44f743265a9bd168def365bd3c9b8e27593966b Mon Sep 17 00:00:00 2001 From: Rutika Pawar <183392827+twilight2294@users.noreply.github.com> Date: Sun, 23 Feb 2025 12:10:44 +0530 Subject: [PATCH 05/14] fix: Bookmark icon button disappears when returning from another section --- .../Search/SearchPageHeader/SearchPageHeaderInput.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/components/Search/SearchPageHeader/SearchPageHeaderInput.tsx b/src/components/Search/SearchPageHeader/SearchPageHeaderInput.tsx index 020553d9b1f5..0fb38f36ebd9 100644 --- a/src/components/Search/SearchPageHeader/SearchPageHeaderInput.tsx +++ b/src/components/Search/SearchPageHeader/SearchPageHeaderInput.tsx @@ -258,7 +258,7 @@ function SearchPageHeaderInput({ {showPopupButton && ( Date: Tue, 25 Feb 2025 13:24:24 -0500 Subject: [PATCH 06/14] Update and rename Create-A-Group.md to Domain-Groups.md https://github.com/Expensify/Expensify/issues/473907 --- .../domains/Create-A-Group.md | 26 ------------ .../domains/Domain-Groups.md | 42 +++++++++++++++++++ 2 files changed, 42 insertions(+), 26 deletions(-) delete mode 100644 docs/articles/expensify-classic/domains/Create-A-Group.md create mode 100644 docs/articles/expensify-classic/domains/Domain-Groups.md diff --git a/docs/articles/expensify-classic/domains/Create-A-Group.md b/docs/articles/expensify-classic/domains/Create-A-Group.md deleted file mode 100644 index fb70faffa27e..000000000000 --- a/docs/articles/expensify-classic/domains/Create-A-Group.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -title: Create a group -description: How to set different rules for different members of your domain ---- -
- -To set different domain rules for different members, you can place them into groups. For example, many organizations create different groups for employees and managers since they generally need different domain permissions. - -To create a group, - -1. Hover over Settings, then click **Domains**. -2. Click the name of the domain. -3. Click the **Groups** tab on the left. -4. Click **Create Group**. -5. Select all of the group settings and permissions. - - **Permission Group Name**: Enter a name for the group - - **Default Group**: Determine if new domain members will be automatically added to this group. - - **Strictly enforce expense workspace rules**: Determine if all expense rules must be met before people in this group can submit a report. - - **Restrict primary login selection**: Determine if members of this group will be restricted from using a personal email address to access their Expensify account. - - **Restrict expense workspace creation/removal**: Determine if members of this group will be allowed to create new workspaces. - - **Preferred workspace**: Determine if this group will automatically have their expenses and reports posted to a specific workspace. - - **Set preferred workspace to**: If preferred workspace is enabled, select which workspace members of this group will have set as their preferred workspace. - - **Expensify Card Preferred Workspace**: If preferred workspace is enabled, determine if Expensify Card transactions for this group will be posted to the preferred workspace listed for the Expensify Card instead of the preferred workspace listed in the above settings. -6. Click **Save**. - -
\ No newline at end of file diff --git a/docs/articles/expensify-classic/domains/Domain-Groups.md b/docs/articles/expensify-classic/domains/Domain-Groups.md new file mode 100644 index 000000000000..97f67427ece3 --- /dev/null +++ b/docs/articles/expensify-classic/domains/Domain-Groups.md @@ -0,0 +1,42 @@ +--- +title: Domain Groups +description: How to set different rules for different members of your domain +--- + +To set different domain rules for different members, you can place them into groups. This allows organizations to customize permissions based on roles, such as employees and managers, ensuring they have the appropriate access and settings. + +--- +# Configuring Domain Groups + +1. Hover over **Settings**, then click **Domains**. +2. Click the name of the domain. +3. Click the **Groups** tab. +4. Click **Create Group**. +5. Configure the group settings and permissions: + - **Permission Group Name**: Enter a name for the group. + - **Default Group**: Choose if new domain members will be automatically added to this group. + - **Strictly enforce expense workspace rules**: Decide if all expense rules must be met before group members can submit a report. + - **Restrict primary login selection**: Choose whether members can access their Expensify account using a personal email. + - **Restrict expense workspace creation/removal**: Set whether members can create or remove workspaces. + - **Preferred workspace**: Select a default workspace for group members' expenses and reports. + - **Set preferred workspace to**: If enabled, specify which workspace will be set as preferred. + - **Expensify Card Preferred Workspace**: If the preferred workspace is enabled, check whether Expensify Card transactions for this group will be posted to the preferred workspace for the Expensify Card instead of the one in the above settings. +6. Click **Save**. + +--- +# When to Use Different Domain Group Permissions + +## Strictly enforce expense workspace rules +This setting ensures all workspace-level rules are followed before an expense report is submitted. This prevents expense reports from being submitted with missing receipts, incorrect categories, or violations. + +## Restrict primary login selection +Enable this setting to ensure employees use their company email instead of a personal email account when submitting expense reports. This helps to maintain security and compliance within your organization. + +## Restrict expense workspace creation/removal +Set this to prevent employees from creating additional workspaces outside of the company workspace they're already a member of. This will ensure expense reports are always routed through the correct company-approved channels. + +## Preferred workspace +If you have multiple workspaces across several teams, use this setting to assign an employee to their corresponding workspace. For instance, use this for sales teams so their expenses automatically post to the "Sales Department" workspace, reducing the need for manual adjustments. + +## Expensify Card Preferred Workspace +Enable this if your team uses the Expensify Cards for business expenses. This will ensure that all transactions are posted directly to the correct workspace without additional setup. From c9f46ad3435f7aa6bf26b8c5a7ee0405a2602fb4 Mon Sep 17 00:00:00 2001 From: maddylewis <38016013+maddylewis@users.noreply.github.com> Date: Tue, 25 Feb 2025 13:27:13 -0500 Subject: [PATCH 07/14] Update redirects.csv --- docs/redirects.csv | 1 + 1 file changed, 1 insertion(+) diff --git a/docs/redirects.csv b/docs/redirects.csv index 35b3a0d45814..ca0d81be100c 100644 --- a/docs/redirects.csv +++ b/docs/redirects.csv @@ -651,3 +651,4 @@ https://help.expensify.com/articles/expensify-classic/workspaces/Set-up-your-ind https://help.expensify.com/articles/expensify-classic/travel/Book-with-Expensify-Travel,https://help.expensify.com/articles/new-expensify/travel/Book-with-Expensify-Travel https://help.expensify.com/articles/expensify-classic/domains/Add-Domain-Members-and-Admins,https://help.expensify.com/articles/expensify-classic/domains/Domain-Members https://help.expensify.com/articles/expensify-classic/domains/Switch-Domain-Member-to-Admin,https://help.expensify.com/articles/expensify-classic/domains/Domain-Members +https://help.expensify.com/articles/expensify-classic/domains/Create-A-Group,https://help.expensify.com/articles/expensify-classic/domains/Domain-Groups From b2e31b2a86b8b1027fc99980499c3702d2194c69 Mon Sep 17 00:00:00 2001 From: Mario Mazzotti Date: Wed, 26 Feb 2025 13:02:25 -0300 Subject: [PATCH 08/14] remove meet guide task --- src/CONST.ts | 13 ------------- 1 file changed, 13 deletions(-) diff --git a/src/CONST.ts b/src/CONST.ts index 95c966b40959..c97107358e6d 100755 --- a/src/CONST.ts +++ b/src/CONST.ts @@ -124,16 +124,6 @@ const createWorkspaceTask: OnboardingTask = { `*Your new workspace is ready!* [Check it out](${workspaceSettingsLink}).`, }; -const meetGuideTask: OnboardingTask = { - type: 'meetGuide', - autoCompleted: false, - title: 'Meet your setup specialist', - description: ({adminsRoomLink}) => - `Meet your setup specialist, who can answer any questions as you get started with Expensify. Yes, a real human!\n` + - '\n' + - `Chat with the specialist in your [#admins room](${adminsRoomLink}).`, -}; - const setupCategoriesTask: OnboardingTask = { type: 'setupCategories', autoCompleted: false, @@ -5178,7 +5168,6 @@ const CONST = { tasks: [ createWorkspaceTask, selfGuidedTourTask, - meetGuideTask, { type: 'setupCategoriesAndTags', autoCompleted: false, @@ -5277,7 +5266,6 @@ const CONST = { }, tasks: [ createWorkspaceTask, - meetGuideTask, setupCategoriesTask, { type: 'inviteAccountant', @@ -5346,7 +5334,6 @@ const CONST = { [onboardingChoices.ADMIN]: { message: "As an admin, learn how to manage your team's workspace and submit expenses yourself.", tasks: [ - meetGuideTask, { type: 'reviewWorkspaceSettings', autoCompleted: false, From 924bd2533d1f312d8993b0d87de207f74ef58b9e Mon Sep 17 00:00:00 2001 From: Mario Mazzotti Date: Wed, 26 Feb 2025 13:28:29 -0300 Subject: [PATCH 09/14] fix affected unit test --- tests/actions/PolicyTest.ts | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/tests/actions/PolicyTest.ts b/tests/actions/PolicyTest.ts index 9aa8f3db7d17..b06fe5625b79 100644 --- a/tests/actions/PolicyTest.ts +++ b/tests/actions/PolicyTest.ts @@ -138,8 +138,9 @@ describe('actions/Policy', () => { expect(reportAction.pendingAction).toBe(CONST.RED_BRICK_ROAD_PENDING_ACTION.ADD); expect(reportAction.actorAccountID).toBe(ESH_ACCOUNT_ID); }); - // Created report action and and default MANAGE_TEAM intent tasks (7) assigned to user by guide, signingoff messages (1) - expect(adminReportActions.length).toBe(9); + // Created Report Action, MANAGE_TEAM tasks (minus tasks that requires integrations to be enabled) and signoff message + const manageTeamDefaultTaskCount = (CONST.ONBOARDING_MESSAGES[CONST.ONBOARDING_CHOICES.MANAGE_TEAM].tasks.length) - 2; + expect(adminReportActions.length).toBe(2 + manageTeamDefaultTaskCount); let createdTaskReportActions = 0; let signingOffMessage = 0; let taskReportActions = 0; From f1f262f60da6654e7fafbf7cefdb1935105f9cdc Mon Sep 17 00:00:00 2001 From: Mario Mazzotti Date: Wed, 26 Feb 2025 13:41:37 -0300 Subject: [PATCH 10/14] fix task count for test --- tests/actions/PolicyTest.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/actions/PolicyTest.ts b/tests/actions/PolicyTest.ts index b06fe5625b79..5d10dc34272c 100644 --- a/tests/actions/PolicyTest.ts +++ b/tests/actions/PolicyTest.ts @@ -161,7 +161,7 @@ describe('actions/Policy', () => { }); expect(createdTaskReportActions).toBe(1); expect(signingOffMessage).toBe(1); - expect(taskReportActions).toBe(7); + expect(taskReportActions).toBe(manageTeamDefaultTaskCount); // Check for success data (fetch as MockFetch)?.resume?.(); From 4f525c312bc7cfb9817bff6a327a9580a25e9847 Mon Sep 17 00:00:00 2001 From: Mario Mazzotti Date: Wed, 26 Feb 2025 14:01:58 -0300 Subject: [PATCH 11/14] prettier --- tests/actions/PolicyTest.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tests/actions/PolicyTest.ts b/tests/actions/PolicyTest.ts index 5d10dc34272c..9ff5e614604d 100644 --- a/tests/actions/PolicyTest.ts +++ b/tests/actions/PolicyTest.ts @@ -139,7 +139,7 @@ describe('actions/Policy', () => { expect(reportAction.actorAccountID).toBe(ESH_ACCOUNT_ID); }); // Created Report Action, MANAGE_TEAM tasks (minus tasks that requires integrations to be enabled) and signoff message - const manageTeamDefaultTaskCount = (CONST.ONBOARDING_MESSAGES[CONST.ONBOARDING_CHOICES.MANAGE_TEAM].tasks.length) - 2; + const manageTeamDefaultTaskCount = CONST.ONBOARDING_MESSAGES[CONST.ONBOARDING_CHOICES.MANAGE_TEAM].tasks.length - 2; expect(adminReportActions.length).toBe(2 + manageTeamDefaultTaskCount); let createdTaskReportActions = 0; let signingOffMessage = 0; From 03bfa8c76b992cc90461f0bcd7fdef2b1d27dcb9 Mon Sep 17 00:00:00 2001 From: Tim Golen Date: Wed, 26 Feb 2025 10:42:43 -0700 Subject: [PATCH 12/14] Increase cached key size limit --- src/setup/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/setup/index.ts b/src/setup/index.ts index bf0e1c3fd2b9..d69362e549a8 100644 --- a/src/setup/index.ts +++ b/src/setup/index.ts @@ -26,7 +26,7 @@ export default function () { keys: ONYXKEYS, // Increase the cached key count so that the app works more consistently for accounts with large numbers of reports - maxCachedKeysCount: 20000, + maxCachedKeysCount: 100000, safeEvictionKeys: [ONYXKEYS.COLLECTION.REPORT_ACTIONS], initialKeyStates: { // Clear any loading and error messages so they do not appear on app startup From b2a778e54abb6ba0b56f476b5e004bd9e10a1c4c Mon Sep 17 00:00:00 2001 From: OSBotify Date: Wed, 26 Feb 2025 18:15:21 +0000 Subject: [PATCH 13/14] Update version to 9.1.6-1 --- android/app/build.gradle | 4 ++-- ios/NewExpensify/Info.plist | 2 +- ios/NewExpensifyTests/Info.plist | 2 +- ios/NotificationServiceExtension/Info.plist | 2 +- package-lock.json | 4 ++-- package.json | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/android/app/build.gradle b/android/app/build.gradle index 49fcdbb4fa68..353a90e106cd 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -114,8 +114,8 @@ android { minSdkVersion rootProject.ext.minSdkVersion targetSdkVersion rootProject.ext.targetSdkVersion multiDexEnabled rootProject.ext.multiDexEnabled - versionCode 1009010600 - versionName "9.1.6-0" + versionCode 1009010601 + versionName "9.1.6-1" // 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" diff --git a/ios/NewExpensify/Info.plist b/ios/NewExpensify/Info.plist index 754aad26679e..660d47c14cc9 100644 --- a/ios/NewExpensify/Info.plist +++ b/ios/NewExpensify/Info.plist @@ -44,7 +44,7 @@ CFBundleVersion - 9.1.6.0 + 9.1.6.1 FullStory OrgId diff --git a/ios/NewExpensifyTests/Info.plist b/ios/NewExpensifyTests/Info.plist index 3b820bfc9d5a..8c2e965dc10f 100644 --- a/ios/NewExpensifyTests/Info.plist +++ b/ios/NewExpensifyTests/Info.plist @@ -19,6 +19,6 @@ CFBundleSignature ???? CFBundleVersion - 9.1.6.0 + 9.1.6.1 diff --git a/ios/NotificationServiceExtension/Info.plist b/ios/NotificationServiceExtension/Info.plist index 8db6346d0067..501130d59be1 100644 --- a/ios/NotificationServiceExtension/Info.plist +++ b/ios/NotificationServiceExtension/Info.plist @@ -13,7 +13,7 @@ CFBundleShortVersionString 9.1.6 CFBundleVersion - 9.1.6.0 + 9.1.6.1 NSExtension NSExtensionPointIdentifier diff --git a/package-lock.json b/package-lock.json index d3e395b5b442..7f8faefda96e 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "new.expensify", - "version": "9.1.6-0", + "version": "9.1.6-1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "new.expensify", - "version": "9.1.6-0", + "version": "9.1.6-1", "hasInstallScript": true, "license": "MIT", "dependencies": { diff --git a/package.json b/package.json index 94acee81e628..f9305724957c 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "new.expensify", - "version": "9.1.6-0", + "version": "9.1.6-1", "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.", From 64133431cc755b31ab622c4737a02d15a6b5eaaa Mon Sep 17 00:00:00 2001 From: OSBotify Date: Wed, 26 Feb 2025 18:15:21 +0000 Subject: [PATCH 14/14] Update Mobile-Expensify submodule version to 9.1.6-1 --- Mobile-Expensify | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Mobile-Expensify b/Mobile-Expensify index 80f59d5dc24a..98b5a1240dce 160000 --- a/Mobile-Expensify +++ b/Mobile-Expensify @@ -1 +1 @@ -Subproject commit 80f59d5dc24a2159897f814c8017eff313970873 +Subproject commit 98b5a1240dce670f8bd97bcdac187fc725090c07