mirror of
https://github.com/frappe/erpnext.git
synced 2026-08-28 14:18:24 +00:00
feat: new banking module (#54720)
* feat: initial SPA setup for banking * wip: bring over new banking module * feat: added Espresso design tokens * feat: button styles * fix: add all ink colors * wip: espresso design system changes * feat: button and badge espresso components * fix: button styling for reconcile * feat: Espresso progress bar * feat: Espresso toggle switch * feat: Espresso tabs design * fix: vertical tab support * fix: button sizing across modals * feat: Espresso style table layout * feat: Espresso tooltip * feat: Espresso elevations and checkbox * feat: Dialog with Espresso styles * feat: Espresso textarea * fix: input styles * fix: colors on bank picker * fix: breadcrumb styling * fix: bank picker styling * feat: create doctypes and fields for bank reconciliation * feat: APIs for banking * fix: use date format parser * fix: font styling to match Espresso * wip: settings modal * feat: settings dialog component * fix: icons and invalid requests * feat: preferences tab * fix: adjust icon stroke width to 1.5 * feat: rule configuration in settings * fix: remove sheet component * feat: alert and error banner component * feat: dropdown in Espresso * feat: popover and select in Espresso * fix: cleanup more styles * fix: match size of link fields * feat: command styling * fix: remove unused style tokens * fix: styles for global date picker dropdown * fix: styles for match and reconcile * feat: table Espresso component * feat: remove all other design tokens * fix: remove unused tokens * fix: form elements * fix: remove unused styles and fix filters in bank transaction list * feat: fetch bank rec doctypes for filtering * fix: record payment modal * feat: support for dark mode switching * fix: move bank logos to public folder * feat: add support for RTL * feat: support for RTL * chore: send layout direction in dev boot * fix: make checkbox work in RTL * feat: dark mode support * fix: dark mode style * feat: bank logos in dark mode * feat: dark mode bank logos * chore: use dark mode bank logos everywhere * chore: move rule evaluation to controller * chore: add tests for bank transaction rules * fix: move deps to fix actions errors * fix: move tw-animate-css to deps * fix: remove shadcn * fix: do not open modal if no transactions selected * fix: add translation strings * feat: add banner on existing bank reconciliation tool * feat: bank statement import * fix: translations and layout directions * fix: validation for transaction matching rule * fix: styles * fix: show conflicting transactions in alert * fix: show help text for new banking module forms * feat: show total debits and credits * fix: dark mode colors in automatic config * feat: add keyboard shortcuts help * feat: added keyboard shortcut for settings * fix: decrease size of progress bar * chore: bump packages * feat: add tests for statement import * fix: settings dialog * fix: show banner on small screens * fix: show banner when no bank account set
This commit is contained in:
397
banking/src/components/features/BankReconciliation/logos.ts
Normal file
397
banking/src/components/features/BankReconciliation/logos.ts
Normal file
@@ -0,0 +1,397 @@
|
||||
export const BANK_LOGOS: { keywords: string[], logo: string, locale?: string[], logoDark?: string, darkModeInvert?: boolean, logoClassName?: string }[] = [
|
||||
// United States + International
|
||||
{
|
||||
keywords: ['American Express', 'Amex'],
|
||||
logo: 'Amex.svg',
|
||||
locale: ['Global', 'United States']
|
||||
},
|
||||
{
|
||||
keywords: ['Bank of America', 'BOA'],
|
||||
logo: 'Bank_of_America.png',
|
||||
darkModeInvert: true,
|
||||
locale: ['United States']
|
||||
},
|
||||
{
|
||||
keywords: ['Barclays'],
|
||||
logo: 'Barclays.svg',
|
||||
locale: ['Global', 'United Kingdom'],
|
||||
logoClassName: 'h-12',
|
||||
},
|
||||
{
|
||||
keywords: ['BNP Paribas'],
|
||||
logo: 'BNP_Paribas.svg',
|
||||
logoDark: 'BNP_Paribas-Dark.svg',
|
||||
locale: ['Global', 'France'],
|
||||
logoClassName: 'max-w-24'
|
||||
},
|
||||
{
|
||||
keywords: ['Bank of New York Mellon', 'BNY Mellon', 'BNY'],
|
||||
logo: 'BNY_Mellon.svg',
|
||||
locale: ['Global', 'United States'],
|
||||
logoDark: 'BNY_Mellon-Dark.svg',
|
||||
},
|
||||
{
|
||||
keywords: ['Capital One'],
|
||||
logo: 'Capital_One.png',
|
||||
locale: ['United States'],
|
||||
darkModeInvert: true
|
||||
},
|
||||
{
|
||||
keywords: ['Charles Schwab', 'Schwab'],
|
||||
logo: 'Charles_Schwab.svg',
|
||||
locale: ['United States'],
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ['Chase'],
|
||||
logo: 'chase.svg',
|
||||
locale: ['Global', 'United States'],
|
||||
logoDark: 'chase-Dark.svg',
|
||||
},
|
||||
{
|
||||
keywords: ['Citi', 'Citibank', 'Citi Group', 'Citi Financial Services'],
|
||||
logo: 'Citi.svg',
|
||||
locale: ['Global', 'United States']
|
||||
},
|
||||
{
|
||||
keywords: ['Deutsche Bank'],
|
||||
logo: 'Deutsche_Bank.svg',
|
||||
locale: ['Global', 'Germany'],
|
||||
darkModeInvert: true,
|
||||
},
|
||||
{
|
||||
keywords: ['Goldman Sachs'],
|
||||
logo: 'Goldman_Sachs.svg',
|
||||
locale: ['Global', 'United States'],
|
||||
darkModeInvert: true,
|
||||
},
|
||||
{
|
||||
keywords: ['HSBC'],
|
||||
logo: 'HSBC.svg',
|
||||
locale: ['Global', 'United Kingdom'],
|
||||
logoDark: 'HSBC-dark.svg',
|
||||
},
|
||||
{
|
||||
keywords: ['JPMorgan Chase', 'JPMorgan', 'JP Morgan', 'JP Morgan Chase', 'JPMorgan Chase & Co', 'JPM', 'JPMC'],
|
||||
logo: 'jpmc.svg',
|
||||
locale: ['Global', 'United States'],
|
||||
darkModeInvert: true,
|
||||
},
|
||||
{
|
||||
keywords: ['Morgan Stanley'],
|
||||
logo: 'Morgan_Stanley.png',
|
||||
locale: ['Global', 'United States'],
|
||||
darkModeInvert: true,
|
||||
},
|
||||
{
|
||||
keywords: ['PNC', 'PNC Financial Services Group', 'PNC Financial Services', 'Pittsburgh National Corporation'],
|
||||
logo: 'PNC.png',
|
||||
locale: ['United States']
|
||||
},
|
||||
{
|
||||
keywords: ['Santander'],
|
||||
logo: 'Santander.svg',
|
||||
locale: ['Global']
|
||||
},
|
||||
{
|
||||
keywords: ['TD Bank', 'Toronto Dominion Bank'],
|
||||
logo: 'Toronto_Dominion_Bank.png',
|
||||
locale: ['Canada']
|
||||
},
|
||||
{
|
||||
keywords: ['Truist'],
|
||||
logo: 'Truist.svg',
|
||||
locale: ['United States'],
|
||||
darkModeInvert: true,
|
||||
logoClassName: 'h-8'
|
||||
},
|
||||
{
|
||||
keywords: ['UBS'],
|
||||
logo: 'UBS.svg',
|
||||
locale: ['Global', 'Switzerland'],
|
||||
logoDark: 'UBS-dark.svg',
|
||||
},
|
||||
{
|
||||
keywords: ['US Bank', 'USBank', 'U.S. Bank', 'U.S. Bancorp'],
|
||||
logo: 'USBank.svg',
|
||||
locale: ['United States'],
|
||||
logoDark: 'USBank-dark.svg',
|
||||
},
|
||||
{
|
||||
keywords: ['Wells Fargo', 'Wells Fargo'],
|
||||
logo: 'Wells_Fargo.svg',
|
||||
locale: ['United States'],
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ['OakStar', 'Oakstar', 'Oakstar'],
|
||||
logo: 'Oakstar.png',
|
||||
logoDark: 'Oakstar-dark.webp',
|
||||
locale: ['United States'],
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ['PlainsCapital', 'Plains Capital'],
|
||||
logo: 'PlainsCapitalBank.png',
|
||||
locale: ['United States'],
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ["Standard Chartered"],
|
||||
logo: 'Standard_Chartered.png',
|
||||
logoDark: 'Standard_Chartered-dark.png',
|
||||
locale: ['Global'],
|
||||
},
|
||||
// India
|
||||
{
|
||||
keywords: ['HDFC Bank', 'HDFC'],
|
||||
logo: 'HDFC.svg',
|
||||
locale: ['India'],
|
||||
},
|
||||
{
|
||||
keywords: ['ICICI Bank', 'ICICI'],
|
||||
logo: 'ICICI.svg',
|
||||
logoDark: 'ICICI-dark.svg',
|
||||
locale: ['India'],
|
||||
},
|
||||
{
|
||||
keywords: ['SBI', 'State Bank of India'],
|
||||
logo: 'State_Bank_of_India.svg',
|
||||
logoDark: 'State_bank_of_India-Dark.svg',
|
||||
locale: ['India'],
|
||||
logoClassName: 'h-4.5'
|
||||
},
|
||||
{
|
||||
keywords: ['Punjab National Bank', 'PNB'],
|
||||
logo: 'Punjab_National_Bank.svg',
|
||||
locale: ['India']
|
||||
},
|
||||
{
|
||||
keywords: ['Union Bank of India', 'Union Bank'],
|
||||
logo: 'Union_Bank_of_India.svg',
|
||||
locale: ['India']
|
||||
},
|
||||
{
|
||||
keywords: ['Yes Bank', 'Yes'],
|
||||
logo: 'Yes_Bank.svg',
|
||||
locale: ['India'],
|
||||
logoDark: 'Yes_Bank-dark.svg',
|
||||
},
|
||||
{
|
||||
keywords: ['RBL Bank', 'RBL'],
|
||||
logo: 'RBL_Bank.svg',
|
||||
locale: ['India'],
|
||||
logoDark: 'RBL_Bank-dark.svg',
|
||||
},
|
||||
{
|
||||
keywords: ['Axis Bank', 'Axis'],
|
||||
logo: 'Axis_Bank.svg',
|
||||
locale: ['India'],
|
||||
darkModeInvert: true
|
||||
},
|
||||
{
|
||||
keywords: ['Bank of Baroda', 'BOB'],
|
||||
logo: 'Bank_of_Baroda.svg',
|
||||
locale: ['India', 'Kenya'],
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ['Bank of India', 'BOI'],
|
||||
logo: 'Bank_of_India.png',
|
||||
locale: ['India'],
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ['Bank of Maharashtra', 'BOM'],
|
||||
logo: 'Bank_of_Maharashtra.png',
|
||||
locale: ['India'],
|
||||
logoClassName: 'min-w-24'
|
||||
},
|
||||
{
|
||||
keywords: ['Kotak Mahindra Bank', 'Kotak'],
|
||||
logo: 'Kotak_Mahindra.svg',
|
||||
locale: ['India']
|
||||
},
|
||||
{
|
||||
keywords: ['IndusInd Bank', 'IndusInd'],
|
||||
logo: 'IndusInd_Bank.svg',
|
||||
locale: ['India'],
|
||||
darkModeInvert: true,
|
||||
},
|
||||
{
|
||||
keywords: ['IDBI Bank', 'IDBI'],
|
||||
logo: 'IDBI_Bank.svg',
|
||||
locale: ['India']
|
||||
},
|
||||
{
|
||||
keywords: ['IDFC First Bank', 'IDFC First'],
|
||||
logo: 'IDFC_First_Bank.svg',
|
||||
locale: ['India']
|
||||
},
|
||||
{
|
||||
keywords: ['Federal Bank'],
|
||||
logo: 'Federal_Bank.png',
|
||||
logoDark: 'Federal_Bank-dark.png',
|
||||
locale: ['India']
|
||||
},
|
||||
{
|
||||
keywords: ['Fi Bank'],
|
||||
logo: 'Fi_Bank.svg',
|
||||
locale: ['India']
|
||||
},
|
||||
{
|
||||
keywords: ['RazorpayX', 'Razorpay'],
|
||||
logo: 'Razorpay.svg',
|
||||
logoDark: 'Razorpay-dark.svg',
|
||||
locale: ['India']
|
||||
},
|
||||
{
|
||||
keywords: ['Revolut'],
|
||||
logo: 'Revolut.png',
|
||||
locale: ['Global'],
|
||||
darkModeInvert: true
|
||||
},
|
||||
{
|
||||
keywords: ['Starling Bank'],
|
||||
logo: 'Starling_Bank.png',
|
||||
logoDark: 'Starling_Bank-dark.png',
|
||||
locale: ['Global', 'UK'],
|
||||
logoClassName: 'h-10'
|
||||
},
|
||||
// Australia and New Zealand
|
||||
{
|
||||
keywords: ["Commonwealth Bank", "CBA"],
|
||||
logo: "Commonwealth_Bank.svg",
|
||||
locale: ['Australia', 'New Zealand'],
|
||||
},
|
||||
{
|
||||
keywords: ["Airwallex"],
|
||||
logo: "Airwallex.png",
|
||||
logoDark: "Airwallex-dark.png",
|
||||
locale: ['Global']
|
||||
},
|
||||
{
|
||||
keywords: ["Judo Bank"],
|
||||
logo: "Judo_Bank.svg",
|
||||
logoDark: "Judo_Bank-dark.svg",
|
||||
locale: ['Australia', 'New Zealand']
|
||||
},
|
||||
{
|
||||
keywords: ["Alpha"], // This might conflict with Alpha Bank in Greece
|
||||
logo: "Alpha_Bank.svg",
|
||||
darkModeInvert: true,
|
||||
logoClassName: 'h-4.5',
|
||||
locale: ['Australia', 'New Zealand']
|
||||
},
|
||||
{
|
||||
keywords: ["Australian Tax Office", "Australian Taxation Office"],
|
||||
logo: "Australian_Tax_Office.png",
|
||||
darkModeInvert: true,
|
||||
locale: ['Australia']
|
||||
},
|
||||
{
|
||||
keywords: ["Westpac"],
|
||||
logo: "Westpac.svg",
|
||||
locale: ['Australia']
|
||||
},
|
||||
{
|
||||
keywords: ["ANZ", "ANZ Bank", "Australia and New Zealand Banking Group"],
|
||||
logo: "ANZ.png",
|
||||
locale: ['Australia', 'New Zealand']
|
||||
},
|
||||
{
|
||||
keywords: ["Macquarie Group", "Macquarie Bank"],
|
||||
logo: "Macquarie.svg",
|
||||
darkModeInvert: true,
|
||||
locale: ['Australia']
|
||||
},
|
||||
// Nicaragua
|
||||
{
|
||||
keywords: ["Banco Atlantida", "Banco Atlántida"],
|
||||
logo: "Banco_Atlantida.png",
|
||||
locale: ['Nicaragua']
|
||||
},
|
||||
{
|
||||
keywords: ["Banco de Finanzas"],
|
||||
logo: "Banco_de_Finanzas.svg",
|
||||
locale: ['Nicaragua'],
|
||||
logoClassName: 'h-4.5'
|
||||
},
|
||||
{
|
||||
keywords: ["Avanz"],
|
||||
logo: "Avanz.svg",
|
||||
logoDark: "Avanz-dark.svg",
|
||||
locale: ['Nicaragua'],
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ["Ficohsa"],
|
||||
logo: "Ficohsa.svg",
|
||||
locale: ['Nicaragua']
|
||||
},
|
||||
{
|
||||
keywords: ["BAC", "BAC Credomatic"],
|
||||
logo: "BAC_Credomatic.svg",
|
||||
locale: ['Nicaragua'],
|
||||
logoClassName: 'h-4.5'
|
||||
},
|
||||
{
|
||||
keywords: ["Banco Lafise"],
|
||||
logo: "Banco_Lafise.png",
|
||||
darkModeInvert: true,
|
||||
locale: ['Nicaragua']
|
||||
},
|
||||
// German
|
||||
{
|
||||
keywords: ["Sparkasse"],
|
||||
logo: "Sparkasse.png",
|
||||
locale: ['Germany']
|
||||
},
|
||||
{
|
||||
keywords: ["Volksbank", "Raiffeisenbank", "VR-Bank"],
|
||||
logo: "Volksbanken_Raiffeisenbanken.svg",
|
||||
locale: ['Germany'],
|
||||
logoClassName: 'min-w-32'
|
||||
},
|
||||
// Kenya
|
||||
{
|
||||
keywords: ["KCB Bank", "KCB"],
|
||||
logo: "KCB_Bank_Kenya.png",
|
||||
locale: ['Kenya']
|
||||
},
|
||||
{
|
||||
keywords: ["Equity Bank"],
|
||||
logo: "Equity_Bank.png",
|
||||
logoDark: "Equity_Bank-dark.png",
|
||||
locale: ['Kenya'],
|
||||
},
|
||||
{
|
||||
keywords: ["I&M"],
|
||||
logo: "I&M.png",
|
||||
locale: ['Kenya']
|
||||
},
|
||||
{
|
||||
keywords: ["ABSA"],
|
||||
logo: "ABSA.png",
|
||||
locale: ['Kenya'],
|
||||
darkModeInvert: true,
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ["Stanbic"],
|
||||
logo: "Stanbic.png",
|
||||
locale: ['Kenya'],
|
||||
logoClassName: 'h-7'
|
||||
},
|
||||
{
|
||||
keywords: ["DTB", "Diamond Trust Bank"],
|
||||
logo: "Diamond_Trust_Bank.png",
|
||||
locale: ['Kenya']
|
||||
},
|
||||
{
|
||||
keywords: ["Prime Bank"],
|
||||
logo: "Prime_Bank.png",
|
||||
locale: ['Kenya'],
|
||||
logoClassName: 'max-w-28'
|
||||
}
|
||||
]
|
||||
Reference in New Issue
Block a user