diff --git a/src/CONST.ts b/src/CONST.ts index a9be263b74df0..4454c5e987c99 100755 --- a/src/CONST.ts +++ b/src/CONST.ts @@ -1135,6 +1135,13 @@ const CONST = { MENTION_ICON: 'mention-icon', SMALL_NORMAL: 'small-normal', }, + EXPENSIFY_CARD: { + FRAUD_TYPES: { + DOMAIN: 'domain', + INDIVIDUAL: 'individal', + NONE: 'none', + }, + }, AVATAR_ROW_SIZE: { DEFAULT: 4, LARGE_SCREEN: 8, diff --git a/src/ONYXKEYS.ts b/src/ONYXKEYS.ts index eca271c12217c..b3ef88cc0094d 100755 --- a/src/ONYXKEYS.ts +++ b/src/ONYXKEYS.ts @@ -142,11 +142,11 @@ const ONYXKEYS = { /** The user's bank accounts */ BANK_ACCOUNT_LIST: 'bankAccountList', - /** The user's credit cards (renamed from cardList) */ + /** The user's payment and P2P cards */ FUND_LIST: 'fundList', - // The user's Expensify cards - CORPORATE_CARD_LIST: 'corporateCardList', + /** The user's cash card and imported cards (including the Expensify Card) */ + CARD_LIST: 'cardList', /** Stores information about the user's saved statements */ WALLET_STATEMENT: 'walletStatement', @@ -341,7 +341,8 @@ type OnyxValues = { [ONYXKEYS.WALLET_ADDITIONAL_DETAILS]: OnyxTypes.WalletAdditionalDetails; [ONYXKEYS.WALLET_TERMS]: OnyxTypes.WalletTerms; [ONYXKEYS.BANK_ACCOUNT_LIST]: Record; - [ONYXKEYS.FUND_LIST]: Record; + [ONYXKEYS.FUND_LIST]: Record; + [ONYXKEYS.CARD_LIST]: Record; [ONYXKEYS.WALLET_STATEMENT]: OnyxTypes.WalletStatement; [ONYXKEYS.PERSONAL_BANK_ACCOUNT]: OnyxTypes.PersonalBankAccount; [ONYXKEYS.REIMBURSEMENT_ACCOUNT]: OnyxTypes.ReimbursementAccount; diff --git a/src/types/onyx/Card.ts b/src/types/onyx/Card.ts index 71ef3d4d98e75..deaf32cabd1f5 100644 --- a/src/types/onyx/Card.ts +++ b/src/types/onyx/Card.ts @@ -1,32 +1,17 @@ -type AdditionalData = { - isBillingCard?: boolean; - isP2PDebitCard?: boolean; -}; - -type AccountData = { - additionalData?: AdditionalData; - addressName?: string; - addressState?: string; - addressStreet?: string; - addressZip?: number; - cardMonth?: number; - - /** The masked credit card number */ - cardNumber?: string; - - cardYear?: number; - created?: string; - currency?: string; - fundID?: number; -}; +import {ValueOf} from 'type-fest'; +import CONST from '../../CONST'; type Card = { - accountData?: AccountData; - accountType?: string; - description?: string; - key?: string; - methodID?: number; - title?: string; + cardID: number; + state: number; + bank: string; + availableSpend: number; + domainName: string; + maskedPan: string; + isVirtual: boolean; + fraud: ValueOf; + cardholderFirstName: string; + cardholderLastName: string; }; export default Card; diff --git a/src/types/onyx/Fund.ts b/src/types/onyx/Fund.ts new file mode 100644 index 0000000000000..7c7c0445081aa --- /dev/null +++ b/src/types/onyx/Fund.ts @@ -0,0 +1,32 @@ +type AdditionalData = { + isBillingCard?: boolean; + isP2PDebitCard?: boolean; +}; + +type AccountData = { + additionalData?: AdditionalData; + addressName?: string; + addressState?: string; + addressStreet?: string; + addressZip?: number; + cardMonth?: number; + + /** The masked credit card number */ + cardNumber?: string; + + cardYear?: number; + created?: string; + currency?: string; + fundID?: number; +}; + +type Fund = { + accountData?: AccountData; + accountType?: string; + description?: string; + key?: string; + methodID?: number; + title?: string; +}; + +export default Fund; diff --git a/src/types/onyx/index.ts b/src/types/onyx/index.ts index 8d48eccf1464b..039448fac5313 100644 --- a/src/types/onyx/index.ts +++ b/src/types/onyx/index.ts @@ -24,6 +24,7 @@ import WalletAdditionalDetails from './WalletAdditionalDetails'; import WalletTerms from './WalletTerms'; import BankAccount from './BankAccount'; import Card from './Card'; +import Fund from './Fund'; import WalletStatement from './WalletStatement'; import PersonalBankAccount from './PersonalBankAccount'; import FrequentlyUsedEmoji from './FrequentlyUsedEmoji'; @@ -70,6 +71,7 @@ export type { WalletTerms, BankAccount, Card, + Fund, WalletStatement, PersonalBankAccount, ReimbursementAccount,