diff --git a/__mocks__/reportData/connections.ts b/__mocks__/reportData/connections.ts index fce23ed5f492..784a1ec73d4e 100644 --- a/__mocks__/reportData/connections.ts +++ b/__mocks__/reportData/connections.ts @@ -25,6 +25,7 @@ const syncOptions: NetSuiteConnectionConfig['syncOptions'] = { const netSuiteConnection: Pick = { netsuite: { + // cspell:disable-next-line accountID: 'TESTACC68486', config: { autoSync: { @@ -169,7 +170,7 @@ const netSuiteConnection: Pick = { { email: 'fakeemail+2@gmail.com', id: '3', - name: 'Jesse Pinkman, Inc.', + name: 'Jesse Pink Man, Inc.', }, ], }, diff --git a/assets/images/bankicons/american-express.svg b/assets/images/bank-icons/american-express.svg similarity index 100% rename from assets/images/bankicons/american-express.svg rename to assets/images/bank-icons/american-express.svg diff --git a/assets/images/bankicons/bank-of-america.svg b/assets/images/bank-icons/bank-of-america.svg similarity index 100% rename from assets/images/bankicons/bank-of-america.svg rename to assets/images/bank-icons/bank-of-america.svg diff --git a/assets/images/bankicons/bb-t.svg b/assets/images/bank-icons/bb-t.svg similarity index 100% rename from assets/images/bankicons/bb-t.svg rename to assets/images/bank-icons/bb-t.svg diff --git a/assets/images/bankicons/capital-one.svg b/assets/images/bank-icons/capital-one.svg similarity index 100% rename from assets/images/bankicons/capital-one.svg rename to assets/images/bank-icons/capital-one.svg diff --git a/assets/images/bankicons/charles-schwab.svg b/assets/images/bank-icons/charles-schwab.svg similarity index 100% rename from assets/images/bankicons/charles-schwab.svg rename to assets/images/bank-icons/charles-schwab.svg diff --git a/assets/images/bankicons/chase.svg b/assets/images/bank-icons/chase.svg similarity index 100% rename from assets/images/bankicons/chase.svg rename to assets/images/bank-icons/chase.svg diff --git a/assets/images/bankicons/citibank.svg b/assets/images/bank-icons/citibank.svg similarity index 100% rename from assets/images/bankicons/citibank.svg rename to assets/images/bank-icons/citibank.svg diff --git a/assets/images/bankicons/citizens-bank.svg b/assets/images/bank-icons/citizens-bank.svg similarity index 100% rename from assets/images/bankicons/citizens-bank.svg rename to assets/images/bank-icons/citizens-bank.svg diff --git a/assets/images/bankicons/discover.svg b/assets/images/bank-icons/discover.svg similarity index 100% rename from assets/images/bankicons/discover.svg rename to assets/images/bank-icons/discover.svg diff --git a/assets/images/bankicons/expensify-background.png b/assets/images/bank-icons/expensify-background.png similarity index 100% rename from assets/images/bankicons/expensify-background.png rename to assets/images/bank-icons/expensify-background.png diff --git a/assets/images/bankicons/expensify.svg b/assets/images/bank-icons/expensify.svg similarity index 100% rename from assets/images/bankicons/expensify.svg rename to assets/images/bank-icons/expensify.svg diff --git a/assets/images/bankicons/fidelity.svg b/assets/images/bank-icons/fidelity.svg similarity index 100% rename from assets/images/bankicons/fidelity.svg rename to assets/images/bank-icons/fidelity.svg diff --git a/assets/images/bankicons/generic-bank-account.svg b/assets/images/bank-icons/generic-bank-account.svg similarity index 100% rename from assets/images/bankicons/generic-bank-account.svg rename to assets/images/bank-icons/generic-bank-account.svg diff --git a/assets/images/bankicons/huntington-bank.svg b/assets/images/bank-icons/huntington-bank.svg similarity index 100% rename from assets/images/bankicons/huntington-bank.svg rename to assets/images/bank-icons/huntington-bank.svg diff --git a/assets/images/bankicons/navy-federal-credit-union.svg b/assets/images/bank-icons/navy-federal-credit-union.svg similarity index 100% rename from assets/images/bankicons/navy-federal-credit-union.svg rename to assets/images/bank-icons/navy-federal-credit-union.svg diff --git a/assets/images/bankicons/pnc.svg b/assets/images/bank-icons/pnc.svg similarity index 100% rename from assets/images/bankicons/pnc.svg rename to assets/images/bank-icons/pnc.svg diff --git a/assets/images/bankicons/regions-bank.svg b/assets/images/bank-icons/regions-bank.svg similarity index 100% rename from assets/images/bankicons/regions-bank.svg rename to assets/images/bank-icons/regions-bank.svg diff --git a/assets/images/bankicons/suntrust.svg b/assets/images/bank-icons/suntrust.svg similarity index 100% rename from assets/images/bankicons/suntrust.svg rename to assets/images/bank-icons/suntrust.svg diff --git a/assets/images/bankicons/td-bank.svg b/assets/images/bank-icons/td-bank.svg similarity index 100% rename from assets/images/bankicons/td-bank.svg rename to assets/images/bank-icons/td-bank.svg diff --git a/assets/images/bankicons/us-bank.svg b/assets/images/bank-icons/us-bank.svg similarity index 100% rename from assets/images/bankicons/us-bank.svg rename to assets/images/bank-icons/us-bank.svg diff --git a/assets/images/bankicons/usaa.svg b/assets/images/bank-icons/usaa.svg similarity index 100% rename from assets/images/bankicons/usaa.svg rename to assets/images/bank-icons/usaa.svg diff --git a/cspell.json b/cspell.json index 279dff5b39f9..f57c5dca949c 100644 --- a/cspell.json +++ b/cspell.json @@ -281,6 +281,7 @@ "LDFLAGS", "LHNGBR", "LIBCPP", + "libexec", "licence", "LIGHTBOXES", "Limpich", @@ -308,6 +309,7 @@ "mediumitalic", "memberof", "metainfo", + "metatags", "microtime", "Microtransaction", "microtransactions", @@ -404,6 +406,7 @@ "payrollcode", "pbxproj", "pdfreport", + "pdfs", "Perfetto", "persistable", "Pettinella", @@ -475,6 +478,7 @@ "RNVP", "Rosiclair", "rpartition", + "rstrip", "RTER", "s3uqn2oe4m85tufi6mqflbfbuajrm2i3", "SAASPASS", diff --git a/docs/articles/expensify-classic/domains/Domain-Migration.md b/docs/articles/expensify-classic/domains/Domain-Migration.md index 3763fdd84cf4..ea2febd4a575 100644 --- a/docs/articles/expensify-classic/domains/Domain-Migration.md +++ b/docs/articles/expensify-classic/domains/Domain-Migration.md @@ -6,7 +6,7 @@ keywords: [Expensify Classic, domain migration, change email address, update com
-If your company updates its email domain (e.g., from `@olddomain.com` to `@newdomain.com`), Expensify offers two migration options: **automatic** and **manual**. This guide walks you through both. +If your company updates its email domain (e.g., from `@old-domain.com` to `@new-domain.com`), Expensify offers two migration options: **automatic** and **manual**. This guide walks you through both. **Important:** If your company uses the Expensify Card, do not request cards or create a new domain manually. Contact the Concierge or your Account Manager to have Expensify handle the migration. diff --git a/docs/articles/expensify-classic/getting-started/Create-a-Company-Workspace.md b/docs/articles/expensify-classic/getting-started/Create-a-Company-Workspace.md index 5b160e7d93a3..85a3d39fdd7c 100644 --- a/docs/articles/expensify-classic/getting-started/Create-a-Company-Workspace.md +++ b/docs/articles/expensify-classic/getting-started/Create-a-Company-Workspace.md @@ -97,7 +97,7 @@ You can flag rule violations for: - **Expense violations** – Set limits and thresholds. - **Cash expenses** – Define policies. - **Rebilling** – Enable/disable rebilling. - - **eReceipts** – Turn on automatic receipts for non-loding expenses under $75 (_**Note:** eReceipts are IRS-compliant for expenses under $75. Additionally, all lodging expenses require a paper receipt_. + - **eReceipts** – Turn on automatic receipts for non-loading expenses under $75 (_**Note:** eReceipts are IRS-compliant for expenses under $75. Additionally, all lodging expenses require a paper receipt_. - **Receipt visibility** – Set access controls. - **Time expenses** – Enable time tracking if needed. 3. Go to **Settings > Workspace > [Workspace Name] > Distance rates** to set mileage reimbursement rates. diff --git a/docs/articles/new-expensify/settings/Locked-Account-Tool.md b/docs/articles/new-expensify/settings/Locked-Account-Tool.md index a63d89095c70..a1f6668ff0e4 100644 --- a/docs/articles/new-expensify/settings/Locked-Account-Tool.md +++ b/docs/articles/new-expensify/settings/Locked-Account-Tool.md @@ -65,7 +65,7 @@ The **Lock Account** button is located at `Settings > Security > Lock Account`. ## Unlocking an account -This button is not reversible without the assistance of an Expensify team member. Once the account is locked, a member of the Expensify team will work with you to take the necessary steps to secure your account and remove any unauthorised access. Only once these steps are taken will the account be unlocked. +This button is not reversible without the assistance of an Expensify team member. Once the account is locked, a member of the Expensify team will work with you to take the necessary steps to secure your account and remove any unauthorized access. Only once these steps are taken will the account be unlocked. --- diff --git a/jest/setupMockImages.ts b/jest/setupMockImages.ts index c48797b3c07b..7f9d50dab797 100644 --- a/jest/setupMockImages.ts +++ b/jest/setupMockImages.ts @@ -19,6 +19,6 @@ function mockImages(imagePath: string) { export default () => { mockImages('images'); mockImages('images/avatars'); - mockImages('images/bankicons'); + mockImages('images/bank-icons'); mockImages('images/product-illustrations'); }; diff --git a/scripts/bumpVersion.ts b/scripts/bumpVersion.ts index 53e202cc5c49..b502397642b1 100755 --- a/scripts/bumpVersion.ts +++ b/scripts/bumpVersion.ts @@ -138,7 +138,7 @@ async function updateIOS(version: string) { [PLIST_KEYS.CF_BUNDLE_VERSION]: cfVersion, }); - // Update plists + // Update plist await Promise.all( [PLIST_PATH, PLIST_PATH_NSE, PLIST_PATH_SHARE, MOBILE_EXPENSIFY_PLIST_PATH, MOBILE_EXPENSIFY_PLIST_PATH_NSE, MOBILE_EXPENSIFY_PLIST_PATH_SS].map(async (file) => { console.log(`Updating ${file}`); diff --git a/src/CONST.ts b/src/CONST.ts index ef2e43c1ad47..47d69b04b42d 100755 --- a/src/CONST.ts +++ b/src/CONST.ts @@ -3564,7 +3564,7 @@ const CONST = { * Group 2: Optional email group between \s+....\s* start rule with @+valid email or short mention * Group 3: Title is remaining characters */ - TASK_TITLE_WITH_OPTONAL_SHORT_MENTION: `^\\[\\]\\s+(?:@(?:${EMAIL_WITH_OPTIONAL_DOMAIN.source}))?\\s*([\\s\\S]*)`, + TASK_TITLE_WITH_OPTIONAL_SHORT_MENTION: `^\\[\\]\\s+(?:@(?:${EMAIL_WITH_OPTIONAL_DOMAIN.source}))?\\s*([\\s\\S]*)`, }, PRONOUNS: { @@ -3727,7 +3727,7 @@ const CONST = { SPEND_MANAGEMENT_URL: `${USE_EXPENSIFY_URL}/spend-management`, EXPENSE_REPORTS_URL: `${USE_EXPENSIFY_URL}/expense-reports`, COMPANY_CARD_URL: `${USE_EXPENSIFY_URL}/company-credit-card`, - RECIEPT_SCANNING_URL: `${USE_EXPENSIFY_URL}/receipt-scanning-app`, + RECEIPT_SCANNING_URL: `${USE_EXPENSIFY_URL}/receipt-scanning-app`, BILL_PAY_URL: `${USE_EXPENSIFY_URL}/bills`, INVOICES_URL: `${USE_EXPENSIFY_URL}/invoices`, PAYROLL_URL: `${USE_EXPENSIFY_URL}/payroll`, @@ -7035,7 +7035,7 @@ const CONST = { SCAN_TEST_TOOLTIP: 'scanTestTooltip', SCAN_TEST_TOOLTIP_MANAGER: 'scanTestTooltipManager', SCAN_TEST_CONFIRMATION: 'scanTestConfirmation', - OUTSANDING_FILTER: 'outstandingFilter', + OUTSTANDING_FILTER: 'outstandingFilter', GBR_RBR_CHAT: 'chatGBRRBR', ACCOUNT_SWITCHER: 'accountSwitcher', EXPENSE_REPORTS_FILTER: 'expenseReportsFilter', diff --git a/src/components/Attachments/AttachmentView/useAttachmentErrors.ts b/src/components/Attachments/AttachmentView/useAttachmentErrors.ts index 6405565b3c5c..7027e654b0f2 100644 --- a/src/components/Attachments/AttachmentView/useAttachmentErrors.ts +++ b/src/components/Attachments/AttachmentView/useAttachmentErrors.ts @@ -17,9 +17,9 @@ function convertSourceToString(source: AttachmentSource) { /** * A custom React hook that provides functionalities to manage attachment errors. - * - `setAttachmentError(key)`: Sets or unsets an error for a given key. - * - `clearAttachmentErrors()`: Clears all errors. - * - `isErrorInAttachment(key)`: Checks if there is an error associated with a specific key. + * - `setAttachmentError(key)`: Set or unset an error for a given key. + * - `clearAttachmentErrors()`: Clear all errors. + * - `isErrorInAttachment(key)`: Check if there is an error associated with a specific key. * Errors are indexed by a serialized key - for example url or source object. */ function useAttachmentErrors() { diff --git a/src/components/DatePicker/CalendarPicker/index.tsx b/src/components/DatePicker/CalendarPicker/index.tsx index 0e1ae279bcbf..f9b6c4917c20 100644 --- a/src/components/DatePicker/CalendarPicker/index.tsx +++ b/src/components/DatePicker/CalendarPicker/index.tsx @@ -28,7 +28,7 @@ type CalendarPickerProps = { maxDate?: Date; /** Restrict selection to only specific dates */ - selectedableDates?: string[]; + selectableDates?: string[]; /** Day component to render for dates */ DayComponent?: typeof Day; @@ -55,7 +55,7 @@ function CalendarPicker({ maxDate = setYear(new Date(), CONST.CALENDAR_PICKER.MAX_YEAR), onSelected, DayComponent = Day, - selectedableDates, + selectableDates, }: CalendarPickerProps) { // eslint-disable-next-line rulesdir/prefer-shouldUseNarrowLayout-instead-of-isSmallScreenWidth const {isSmallScreenWidth} = useResponsiveLayout(); @@ -257,7 +257,7 @@ function CalendarPicker({ const currentDate = new Date(currentYearView, currentMonthView, day); const isBeforeMinDate = currentDate < startOfDay(new Date(minDate)); const isAfterMaxDate = currentDate > startOfDay(new Date(maxDate)); - const isSelectable = selectedableDates ? selectedableDates?.some((date) => isSameDay(parseISO(date), currentDate)) : true; + const isSelectable = selectableDates ? selectableDates?.some((date) => isSameDay(parseISO(date), currentDate)) : true; const isDisabled = !day || isBeforeMinDate || isAfterMaxDate || !isSelectable; const isSelected = !!day && isSameDay(parseISO(value.toString()), new Date(currentYearView, currentMonthView, day)); const handleOnPress = () => { diff --git a/src/components/Icon/BankIcons/index.native.ts b/src/components/Icon/BankIcons/index.native.ts index af6cd0679fda..aaf8456b2771 100644 --- a/src/components/Icon/BankIcons/index.native.ts +++ b/src/components/Icon/BankIcons/index.native.ts @@ -1,4 +1,4 @@ -import GenericBank from '@assets/images/bankicons/generic-bank-account.svg'; +import GenericBank from '@assets/images/bank-icons/generic-bank-account.svg'; import GenericBankCard from '@assets/images/cardicons/generic-bank-card.svg'; import type {BankIconParams} from '@components/Icon/BankIconsUtils'; import {getBankIconAsset, getBankNameKey} from '@components/Icon/BankIconsUtils'; diff --git a/src/components/Icon/BankIcons/index.ts b/src/components/Icon/BankIcons/index.ts index cf233da702fa..7fdc3ed2b95a 100644 --- a/src/components/Icon/BankIcons/index.ts +++ b/src/components/Icon/BankIcons/index.ts @@ -1,4 +1,4 @@ -import GenericBank from '@assets/images/bankicons/generic-bank-account.svg'; +import GenericBank from '@assets/images/bank-icons/generic-bank-account.svg'; import GenericBankCard from '@assets/images/cardicons/generic-bank-card.svg'; import type {BankIconParams} from '@components/Icon/BankIconsUtils'; import {getBankIconAsset, getBankNameKey} from '@components/Icon/BankIconsUtils'; diff --git a/src/components/Icon/BankIconsUtils.ts b/src/components/Icon/BankIconsUtils.ts index c91ec030c9ba..120165c8694a 100644 --- a/src/components/Icon/BankIconsUtils.ts +++ b/src/components/Icon/BankIconsUtils.ts @@ -19,47 +19,47 @@ function getBankIconAsset(bankNameKey: BankNameKey, isCard: boolean): IconAsset // The purpose is to avoid importing these at the app startup stage. // Depending on whether 'isCard' is true, it selects either a card icon or a bank icon. const iconMappings = { - [CONST.BANK_NAMES.EXPENSIFY]: isCard ? (require('@assets/images/cardicons/expensify-card-dark.svg') as IconAsset) : (require('@assets/images/bankicons/expensify.svg') as IconAsset), + [CONST.BANK_NAMES.EXPENSIFY]: isCard ? (require('@assets/images/cardicons/expensify-card-dark.svg') as IconAsset) : (require('@assets/images/bank-icons/expensify.svg') as IconAsset), [CONST.BANK_NAMES.AMERICAN_EXPRESS]: isCard ? (require('@assets/images/cardicons/american-express.svg') as IconAsset) - : (require('@assets/images/bankicons/american-express.svg') as IconAsset), + : (require('@assets/images/bank-icons/american-express.svg') as IconAsset), [CONST.BANK_NAMES.BANK_OF_AMERICA]: isCard ? (require('@assets/images/cardicons/bank-of-america.svg') as IconAsset) - : (require('@assets/images/bankicons/bank-of-america.svg') as IconAsset), - [CONST.BANK_NAMES.BB_T]: isCard ? (require('@assets/images/cardicons/bb-t.svg') as IconAsset) : (require('@assets/images/bankicons/bb-t.svg') as IconAsset), - [CONST.BANK_NAMES.CAPITAL_ONE]: isCard ? (require('@assets/images/cardicons/capital-one.svg') as IconAsset) : (require('@assets/images/bankicons/capital-one.svg') as IconAsset), - [CONST.BANK_NAMES.CHASE]: isCard ? (require('@assets/images/cardicons/chase.svg') as IconAsset) : (require('@assets/images/bankicons/chase.svg') as IconAsset), + : (require('@assets/images/bank-icons/bank-of-america.svg') as IconAsset), + [CONST.BANK_NAMES.BB_T]: isCard ? (require('@assets/images/cardicons/bb-t.svg') as IconAsset) : (require('@assets/images/bank-icons/bb-t.svg') as IconAsset), + [CONST.BANK_NAMES.CAPITAL_ONE]: isCard ? (require('@assets/images/cardicons/capital-one.svg') as IconAsset) : (require('@assets/images/bank-icons/capital-one.svg') as IconAsset), + [CONST.BANK_NAMES.CHASE]: isCard ? (require('@assets/images/cardicons/chase.svg') as IconAsset) : (require('@assets/images/bank-icons/chase.svg') as IconAsset), [CONST.BANK_NAMES.CHARLES_SCHWAB]: isCard ? (require('@assets/images/cardicons/charles-schwab.svg') as IconAsset) - : (require('@assets/images/bankicons/charles-schwab.svg') as IconAsset), - [CONST.BANK_NAMES.CITIBANK]: isCard ? (require('@assets/images/cardicons/citibank.svg') as IconAsset) : (require('@assets/images/bankicons/citibank.svg') as IconAsset), - [CONST.BANK_NAMES.CITIZENS_BANK]: isCard ? (require('@assets/images/cardicons/citizens.svg') as IconAsset) : (require('@assets/images/bankicons/citizens-bank.svg') as IconAsset), - [CONST.BANK_NAMES.DISCOVER]: isCard ? (require('@assets/images/cardicons/discover.svg') as IconAsset) : (require('@assets/images/bankicons/discover.svg') as IconAsset), - [CONST.BANK_NAMES.FIDELITY]: isCard ? (require('@assets/images/cardicons/fidelity.svg') as IconAsset) : (require('@assets/images/bankicons/fidelity.svg') as IconAsset), + : (require('@assets/images/bank-icons/charles-schwab.svg') as IconAsset), + [CONST.BANK_NAMES.CITIBANK]: isCard ? (require('@assets/images/cardicons/citibank.svg') as IconAsset) : (require('@assets/images/bank-icons/citibank.svg') as IconAsset), + [CONST.BANK_NAMES.CITIZENS_BANK]: isCard ? (require('@assets/images/cardicons/citizens.svg') as IconAsset) : (require('@assets/images/bank-icons/citizens-bank.svg') as IconAsset), + [CONST.BANK_NAMES.DISCOVER]: isCard ? (require('@assets/images/cardicons/discover.svg') as IconAsset) : (require('@assets/images/bank-icons/discover.svg') as IconAsset), + [CONST.BANK_NAMES.FIDELITY]: isCard ? (require('@assets/images/cardicons/fidelity.svg') as IconAsset) : (require('@assets/images/bank-icons/fidelity.svg') as IconAsset), [CONST.BANK_NAMES.GENERIC_BANK]: isCard ? (require('@assets/images/cardicons/generic-bank-card.svg') as IconAsset) - : (require('@assets/images/bankicons/generic-bank-account.svg') as IconAsset), + : (require('@assets/images/bank-icons/generic-bank-account.svg') as IconAsset), [CONST.BANK_NAMES.HUNTINGTON_BANK]: isCard ? (require('@assets/images/cardicons/huntington-bank.svg') as IconAsset) - : (require('@assets/images/bankicons/huntington-bank.svg') as IconAsset), + : (require('@assets/images/bank-icons/huntington-bank.svg') as IconAsset), [CONST.BANK_NAMES.HUNTINGTON_NATIONAL]: isCard ? (require('@assets/images/cardicons/huntington-bank.svg') as IconAsset) - : (require('@assets/images/bankicons/huntington-bank.svg') as IconAsset), + : (require('@assets/images/bank-icons/huntington-bank.svg') as IconAsset), [CONST.BANK_NAMES.NAVY_FEDERAL_CREDIT_UNION]: isCard ? (require('@assets/images/cardicons/navy-federal-credit-union.svg') as IconAsset) - : (require('@assets/images/bankicons/navy-federal-credit-union.svg') as IconAsset), - [CONST.BANK_NAMES.PNC]: isCard ? (require('@assets/images/cardicons/pnc.svg') as IconAsset) : (require('@assets/images/bankicons/pnc.svg') as IconAsset), - [CONST.BANK_NAMES.REGIONS_BANK]: isCard ? (require('@assets/images/cardicons/regions-bank.svg') as IconAsset) : (require('@assets/images/bankicons/regions-bank.svg') as IconAsset), - [CONST.BANK_NAMES.SUNTRUST]: isCard ? (require('@assets/images/cardicons/suntrust.svg') as IconAsset) : (require('@assets/images/bankicons/suntrust.svg') as IconAsset), - [CONST.BANK_NAMES.TD_BANK]: isCard ? (require('@assets/images/cardicons/td-bank.svg') as IconAsset) : (require('@assets/images/bankicons/td-bank.svg') as IconAsset), - [CONST.BANK_NAMES.US_BANK]: isCard ? (require('@assets/images/cardicons/us-bank.svg') as IconAsset) : (require('@assets/images/bankicons/us-bank.svg') as IconAsset), - [CONST.BANK_NAMES.USAA]: isCard ? (require('@assets/images/cardicons/usaa.svg') as IconAsset) : (require('@assets/images/bankicons/usaa.svg') as IconAsset), + : (require('@assets/images/bank-icons/navy-federal-credit-union.svg') as IconAsset), + [CONST.BANK_NAMES.PNC]: isCard ? (require('@assets/images/cardicons/pnc.svg') as IconAsset) : (require('@assets/images/bank-icons/pnc.svg') as IconAsset), + [CONST.BANK_NAMES.REGIONS_BANK]: isCard ? (require('@assets/images/cardicons/regions-bank.svg') as IconAsset) : (require('@assets/images/bank-icons/regions-bank.svg') as IconAsset), + [CONST.BANK_NAMES.SUNTRUST]: isCard ? (require('@assets/images/cardicons/suntrust.svg') as IconAsset) : (require('@assets/images/bank-icons/suntrust.svg') as IconAsset), + [CONST.BANK_NAMES.TD_BANK]: isCard ? (require('@assets/images/cardicons/td-bank.svg') as IconAsset) : (require('@assets/images/bank-icons/td-bank.svg') as IconAsset), + [CONST.BANK_NAMES.US_BANK]: isCard ? (require('@assets/images/cardicons/us-bank.svg') as IconAsset) : (require('@assets/images/bank-icons/us-bank.svg') as IconAsset), + [CONST.BANK_NAMES.USAA]: isCard ? (require('@assets/images/cardicons/usaa.svg') as IconAsset) : (require('@assets/images/bank-icons/usaa.svg') as IconAsset), } as const; // Fallback to generic bank/card icon const iconModule = iconMappings[bankValue] || - (isCard ? (require('@assets/images/cardicons/generic-bank-card.svg') as IconAsset) : (require('@assets/images/bankicons/generic-bank-account.svg') as IconAsset)); + (isCard ? (require('@assets/images/cardicons/generic-bank-card.svg') as IconAsset) : (require('@assets/images/bank-icons/generic-bank-account.svg') as IconAsset)); return iconModule; } diff --git a/src/components/ProductTrainingContext/TOOLTIPS.ts b/src/components/ProductTrainingContext/TOOLTIPS.ts index 35fe9afd6fb0..2b94f69c8f44 100644 --- a/src/components/ProductTrainingContext/TOOLTIPS.ts +++ b/src/components/ProductTrainingContext/TOOLTIPS.ts @@ -12,7 +12,7 @@ const { SCAN_TEST_TOOLTIP, SCAN_TEST_TOOLTIP_MANAGER, SCAN_TEST_CONFIRMATION, - OUTSANDING_FILTER, + OUTSTANDING_FILTER, GBR_RBR_CHAT, ACCOUNT_SWITCHER, EXPENSE_REPORTS_FILTER, @@ -161,13 +161,13 @@ const TOOLTIPS: Record = { priority: 1100, shouldShow: () => true, }, - [OUTSANDING_FILTER]: { + [OUTSTANDING_FILTER]: { content: [ {text: 'productTrainingTooltip.outstandingFilter.part1', isBold: false}, {text: 'productTrainingTooltip.outstandingFilter.part2', isBold: true}, ], - onHideTooltip: () => dismissProductTraining(OUTSANDING_FILTER), - name: OUTSANDING_FILTER, + onHideTooltip: () => dismissProductTraining(OUTSTANDING_FILTER), + name: OUTSTANDING_FILTER, priority: 1925, shouldShow: ({isUserPolicyAdmin}) => isUserPolicyAdmin, }, diff --git a/src/components/ScreenWrapper/index.tsx b/src/components/ScreenWrapper/index.tsx index a2ec206b2e1f..8d33647a5e56 100644 --- a/src/components/ScreenWrapper/index.tsx +++ b/src/components/ScreenWrapper/index.tsx @@ -418,8 +418,8 @@ function ScreenWrapper( [isSoftKeyNavigation, smallScreenOfflineIndicatorBackgroundStyle, offlineIndicatorStyle, styles.pl5], ); - // This context allows us to disable the safe area padding offseting the offline indicator in scrollable components like 'ScrollView', 'SelectionList' or 'FormProvider'. - // This is useful e.g. for the RightModalNavigator, where we want to avoid the safe area padding offseting the offline indicator because we only show the offline indicator on small screens. + // This context allows us to disable the safe area padding offsetting the offline indicator in scrollable components like 'ScrollView', 'SelectionList' or 'FormProvider'. + // This is useful e.g. for the RightModalNavigator, where we want to avoid the safe area padding offsetting the offline indicator because we only show the offline indicator on small screens. const {isInNarrowPane} = useContext(NarrowPaneContext); const {addSafeAreaPadding, showOnSmallScreens, showOnWideScreens, originalValues} = useContext(ScreenWrapperOfflineIndicatorContext); const offlineIndicatorContextValue = useMemo(() => { diff --git a/src/components/Search/SearchPageHeader/SearchStatusBar.tsx b/src/components/Search/SearchPageHeader/SearchStatusBar.tsx index 1661cfa76b31..13e08139a656 100644 --- a/src/components/Search/SearchPageHeader/SearchStatusBar.tsx +++ b/src/components/Search/SearchPageHeader/SearchStatusBar.tsx @@ -281,7 +281,7 @@ function SearchStatusBar({queryJSON, onStatusChange, headerButtonsOptions}: Sear ? queryJSON.status.includes(CONST.SEARCH.STATUS.EXPENSE.OUTSTANDING) : queryJSON.status === CONST.SEARCH.STATUS.EXPENSE.OUTSTANDING; const {renderProductTrainingTooltip, shouldShowProductTrainingTooltip, hideProductTrainingTooltip} = useProductTrainingContext( - CONST.PRODUCT_TRAINING_TOOLTIP_NAMES.OUTSANDING_FILTER, + CONST.PRODUCT_TRAINING_TOOLTIP_NAMES.OUTSTANDING_FILTER, isScreenFocused && !isOutstandingStatusActive && queryJSON.type === CONST.SEARCH.DATA_TYPES.EXPENSE, ); // Controls the visibility of the educational tooltip based on user scrolling. diff --git a/src/hooks/useSearchResults.ts b/src/hooks/useSearchResults.ts index caade03bcd63..55addef7ec13 100644 --- a/src/hooks/useSearchResults.ts +++ b/src/hooks/useSearchResults.ts @@ -6,7 +6,7 @@ import usePrevious from './usePrevious'; /** * This hook filters (and optionally sorts) a dataset based on a search parameter. * It utilizes `useTransition` to allow the searchQuery to change rapidly, while more expensive renders that occur using - * the result of the filtering and sorting are deprioritized, allowing them to happen in the background. + * the result of the filtering and sorting are de-prioritized, allowing them to happen in the background. */ function useSearchResults(data: TValue[], filterData: (datum: TValue, searchInput: string) => boolean, sortData: (data: TValue[]) => TValue[] = (d) => d) { const [inputValue, setInputValue] = useState(''); diff --git a/src/pages/Debug/DebugDetails.tsx b/src/pages/Debug/DebugDetails.tsx index d67a0a8f47f6..f290d6d4c79f 100644 --- a/src/pages/Debug/DebugDetails.tsx +++ b/src/pages/Debug/DebugDetails.tsx @@ -29,7 +29,7 @@ type DebugDetailsProps = { /** Type of debug form - required to access constant field options for a specific form */ formType: ValueOf; - /** The report or report action data to be displayed and editted. */ + /** The report or report action data to be displayed and edited. */ data: OnyxEntry | OnyxEntry | OnyxEntry | OnyxEntry; /** Whether the provided policy has enabled tags */ diff --git a/src/pages/Debug/Transaction/DebugTransactionViolations.tsx b/src/pages/Debug/Transaction/DebugTransactionViolations.tsx index e3d3f518f88a..9449378b6a63 100644 --- a/src/pages/Debug/Transaction/DebugTransactionViolations.tsx +++ b/src/pages/Debug/Transaction/DebugTransactionViolations.tsx @@ -11,7 +11,7 @@ import ROUTES from '@src/ROUTES'; import type {TransactionViolation} from '@src/types/onyx'; type DebugTransactionViolationsProps = { - /** The transactionID we are gettings the transaction violations for */ + /** The transactionID we are getting the transaction violations for */ transactionID: string; }; diff --git a/src/pages/OnboardingAccounting/BaseOnboardingAccounting.tsx b/src/pages/OnboardingAccounting/BaseOnboardingAccounting.tsx index abb3dd90fd9f..e0b44a6e36ee 100644 --- a/src/pages/OnboardingAccounting/BaseOnboardingAccounting.tsx +++ b/src/pages/OnboardingAccounting/BaseOnboardingAccounting.tsx @@ -71,7 +71,7 @@ function BaseOnboardingAccounting({shouldUseNativeStyles}: BaseOnboardingAccount const isLoading = onboarding?.isLoading; const prevIsLoading = usePrevious(isLoading); - // Set onboardingPolicyID and onboardingAdminsChatReportID if a workspace is created by the backend for OD signups + // Set onboardingPolicyID and onboardingAdminsChatReportID if a workspace is created by the backend for OD signup useEffect(() => { if (!paidGroupPolicy || onboardingPolicyID) { return; diff --git a/src/pages/OnboardingPersonalDetails/BaseOnboardingPersonalDetails.tsx b/src/pages/OnboardingPersonalDetails/BaseOnboardingPersonalDetails.tsx index baa323f6b233..e5b838b9baf0 100644 --- a/src/pages/OnboardingPersonalDetails/BaseOnboardingPersonalDetails.tsx +++ b/src/pages/OnboardingPersonalDetails/BaseOnboardingPersonalDetails.tsx @@ -51,7 +51,7 @@ function BaseOnboardingPersonalDetails({currentUserPersonalDetails, shouldUseNat const {canUseDefaultRooms, canUsePrivateDomainOnboarding} = usePermissions(); const {activeWorkspaceID} = useActiveWorkspace(); - const isPrivateDomainAndHasAccesiblePolicies = canUsePrivateDomainOnboarding && !account?.isFromPublicDomain && !!account?.hasAccessibleDomainPolicies; + const isPrivateDomainAndHasAccessiblePolicies = canUsePrivateDomainOnboarding && !account?.isFromPublicDomain && !!account?.hasAccessibleDomainPolicies; const isValidated = isCurrentUserValidated(loginList); useEffect(() => { @@ -90,7 +90,7 @@ function BaseOnboardingPersonalDetails({currentUserPersonalDetails, shouldUseNat clearPersonalDetailsDraft(); setPersonalDetails(firstName, lastName); - if (isPrivateDomainAndHasAccesiblePolicies && !onboardingPurposeSelected) { + if (isPrivateDomainAndHasAccessiblePolicies && !onboardingPurposeSelected) { const nextRoute = isValidated ? ROUTES.ONBOARDING_WORKSPACES : ROUTES.ONBOARDING_PRIVATE_DOMAIN; Navigation.navigate(nextRoute.getRoute(route.params?.backTo)); return; @@ -98,7 +98,7 @@ function BaseOnboardingPersonalDetails({currentUserPersonalDetails, shouldUseNat completeOnboarding(firstName, lastName); }, - [isPrivateDomainAndHasAccesiblePolicies, onboardingPurposeSelected, isValidated, route.params?.backTo, completeOnboarding], + [isPrivateDomainAndHasAccessiblePolicies, onboardingPurposeSelected, isValidated, route.params?.backTo, completeOnboarding], ); const validate = (values: FormOnyxValues<'onboardingPersonalDetailsForm'>) => { @@ -142,8 +142,8 @@ function BaseOnboardingPersonalDetails({currentUserPersonalDetails, shouldUseNat style={[styles.defaultModalContainer, shouldUseNativeStyles && styles.pt8]} > diff --git a/src/pages/ReimbursementAccount/NonUSD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormSubSteps/Confirmation.tsx b/src/pages/ReimbursementAccount/NonUSD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormSubSteps/Confirmation.tsx index 696ebe4fc489..a672adcee657 100644 --- a/src/pages/ReimbursementAccount/NonUSD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormSubSteps/Confirmation.tsx +++ b/src/pages/ReimbursementAccount/NonUSD/BeneficialOwnerInfo/BeneficialOwnerDetailsFormSubSteps/Confirmation.tsx @@ -111,7 +111,7 @@ function Confirmation({onNext, onMove, isEditing, ownerBeingModifiedID}: Confirm ...(isDocumentNeededStatus.isCodiceFiscaleNeeded ? [ { - title: values.codiceFisacle.map((file) => file.name).join(', '), + title: values.codiceFiscale.map((file) => file.name).join(', '), description: translate('ownershipInfoStep.codiceFiscale'), shouldShowRightIcon: true, onPress: () => { @@ -131,7 +131,7 @@ function Confirmation({onNext, onMove, isEditing, ownerBeingModifiedID}: Confirm translate, values.addressProof, values.city, - values.codiceFisacle, + values.codiceFiscale, values.copyOfID, values.dob, values.firstName, diff --git a/src/pages/ReimbursementAccount/NonUSD/SignerInfo/subSteps/Confirmation.tsx b/src/pages/ReimbursementAccount/NonUSD/SignerInfo/subSteps/Confirmation.tsx index d1d084c25565..6a8ee19deced 100644 --- a/src/pages/ReimbursementAccount/NonUSD/SignerInfo/subSteps/Confirmation.tsx +++ b/src/pages/ReimbursementAccount/NonUSD/SignerInfo/subSteps/Confirmation.tsx @@ -59,7 +59,7 @@ function Confirmation({onNext, onMove, isEditing}: ConfirmationProps) { }); } - if (isDocumentNeededStatus.isProofOfDirecorsNeeded && values.proofOfDirectors.length > 0) { + if (isDocumentNeededStatus.isProofOfDirectorsNeeded && values.proofOfDirectors.length > 0) { summaryItems.push({ title: values.proofOfDirectors.map((proof) => proof.name).join(', '), description: translate('signerInfoStep.proofOfDirectors'), diff --git a/src/pages/ReimbursementAccount/NonUSD/SignerInfo/subSteps/UploadDocuments.tsx b/src/pages/ReimbursementAccount/NonUSD/SignerInfo/subSteps/UploadDocuments.tsx index c2a2e3783026..4465d5951f91 100644 --- a/src/pages/ReimbursementAccount/NonUSD/SignerInfo/subSteps/UploadDocuments.tsx +++ b/src/pages/ReimbursementAccount/NonUSD/SignerInfo/subSteps/UploadDocuments.tsx @@ -85,7 +85,7 @@ function UploadDocuments({onNext, isEditing}: UploadDocumentsProps) { }); const handleSubmitWithDownload = (values: FormOnyxValues<'reimbursementAccount'>) => { - if (isDocumentNeededStatus.isPRDandFSGNeeded && !isPDSandFSGDownloaded) { + if (isDocumentNeededStatus.isPRDAndFSGNeeded && !isPDSandFSGDownloaded) { return; } @@ -153,9 +153,9 @@ function UploadDocuments({onNext, isEditing}: UploadDocumentsProps) { /> {translate('ownershipInfoStep.copyOfIDDescription')} {(isDocumentNeededStatus.isAddressProofNeeded || - isDocumentNeededStatus.isProofOfDirecorsNeeded || + isDocumentNeededStatus.isProofOfDirectorsNeeded || isDocumentNeededStatus.isCodiceFiscaleNeeded || - isDocumentNeededStatus.isPRDandFSGNeeded) && } + isDocumentNeededStatus.isPRDAndFSGNeeded) && } )} {isDocumentNeededStatus.isAddressProofNeeded && ( @@ -180,12 +180,12 @@ function UploadDocuments({onNext, isEditing}: UploadDocumentsProps) { fileLimit={1} /> {translate('ownershipInfoStep.proofOfAddressDescription')} - {(isDocumentNeededStatus.isProofOfDirecorsNeeded || isDocumentNeededStatus.isCodiceFiscaleNeeded || isDocumentNeededStatus.isPRDandFSGNeeded) && ( + {(isDocumentNeededStatus.isProofOfDirectorsNeeded || isDocumentNeededStatus.isCodiceFiscaleNeeded || isDocumentNeededStatus.isPRDAndFSGNeeded) && ( )} )} - {isDocumentNeededStatus.isProofOfDirecorsNeeded && ( + {isDocumentNeededStatus.isProofOfDirectorsNeeded && ( {translate('signerInfoStep.proofOfDirectors')} {translate('signerInfoStep.proofOfDirectorsDescription')} - {(isDocumentNeededStatus.isCodiceFiscaleNeeded || isDocumentNeededStatus.isPRDandFSGNeeded) && } + {(isDocumentNeededStatus.isCodiceFiscaleNeeded || isDocumentNeededStatus.isPRDAndFSGNeeded) && } )} {isDocumentNeededStatus.isCodiceFiscaleNeeded && ( @@ -232,10 +232,10 @@ function UploadDocuments({onNext, isEditing}: UploadDocumentsProps) { fileLimit={1} /> {translate('signerInfoStep.codiceFiscaleDescription')} - {isDocumentNeededStatus.isPRDandFSGNeeded && } + {isDocumentNeededStatus.isPRDAndFSGNeeded && } )} - {isDocumentNeededStatus.isPRDandFSGNeeded && ( + {isDocumentNeededStatus.isPRDAndFSGNeeded && ( {translate('signerInfoStep.PDSandFSG')}