refactor: remove category rules and related logic from defaults, types, and services for cleaner codebase

This commit is contained in:
Julien Froidefond
2025-11-27 10:41:10 +01:00
parent 2aafce4df0
commit cf109984e5
6 changed files with 5 additions and 135 deletions

View File

@@ -1,4 +1,3 @@
import type { CategoryRule } from "./types"
// ═══════════════════════════════════════════════════════════════════════════
// STRUCTURE HIÉRARCHIQUE DES CATÉGORIES
@@ -986,58 +985,6 @@ export const defaultCategories: CategoryDefinition[] = [
},
]
// ═══════════════════════════════════════════════════════════════════════════
// RÈGLES DE CATÉGORISATION AVANCÉES
// ═══════════════════════════════════════════════════════════════════════════
export interface CategoryRuleDefinition extends Omit<CategoryRule, "id" | "categoryId"> {
categorySlug: string // Référence au slug de la catégorie
}
export const defaultCategoryRules: CategoryRuleDefinition[] = [
// Salaire - patterns typiques de virements salaire
{ categorySlug: "revenus-salaire", pattern: "^VIR(EMENT)? (RECU )?.*SALAIRE", isRegex: true },
{ categorySlug: "revenus-salaire", pattern: "^VIR(EMENT)? (RECU )?.*PAIE", isRegex: true },
// Loyer - patterns de prélèvement loyer
{ categorySlug: "logement-loyer", pattern: "^PRLV.*LOYER", isRegex: true },
{ categorySlug: "logement-loyer", pattern: "^PRLV.*FONCIA", isRegex: true },
{ categorySlug: "logement-loyer", pattern: "^PRLV.*NEXITY", isRegex: true },
// EDF/Engie
{ categorySlug: "logement-electricite", pattern: "^PRLV.*EDF", isRegex: true },
{ categorySlug: "logement-electricite", pattern: "^PRLV.*ENGIE", isRegex: true },
{ categorySlug: "logement-electricite", pattern: "^PRLV.*TOTAL.?ENERGIE", isRegex: true },
// Télécom
{ categorySlug: "abonnements-telecom", pattern: "^PRLV.*FREE( MOBILE)?", isRegex: true },
{ categorySlug: "abonnements-telecom", pattern: "^PRLV.*ORANGE", isRegex: true },
{ categorySlug: "abonnements-telecom", pattern: "^PRLV.*SFR", isRegex: true },
{ categorySlug: "abonnements-telecom", pattern: "^PRLV.*BOUYGUES", isRegex: true },
// Assurances
{ categorySlug: "finance-assurance", pattern: "^PRLV.*AXA", isRegex: true },
{ categorySlug: "finance-assurance", pattern: "^PRLV.*MAIF", isRegex: true },
{ categorySlug: "finance-assurance", pattern: "^PRLV.*MACIF", isRegex: true },
{ categorySlug: "finance-assurance", pattern: "^PRLV.*MATMUT", isRegex: true },
// Impôts
{ categorySlug: "finance-impots", pattern: "^PRLV.*DGFIP", isRegex: true },
{ categorySlug: "finance-impots", pattern: "^PRLV.*TRESOR PUBLIC", isRegex: true },
{ categorySlug: "finance-impots", pattern: "IMPOT", isRegex: false },
// Remboursements
{ categorySlug: "revenus-remboursements", pattern: "^VIR(EMENT)? (RECU )?.*CPAM", isRegex: true },
{ categorySlug: "revenus-remboursements", pattern: "^VIR(EMENT)? (RECU )?.*AMELI", isRegex: true },
{ categorySlug: "revenus-remboursements", pattern: "REMBOURSEMENT", isRegex: false },
// CAF
{ categorySlug: "revenus-allocations", pattern: "^VIR(EMENT)? (RECU )?.*CAF", isRegex: true },
{ categorySlug: "revenus-allocations", pattern: "ALLOCATION", isRegex: false },
// Retraits
{ categorySlug: "divers-retraits", pattern: "^RETRAIT DAB", isRegex: true },
{ categorySlug: "divers-retraits", pattern: "^RET DAB", isRegex: true },
]
// ═══════════════════════════════════════════════════════════════════════════
// DOSSIER RACINE

View File

@@ -48,7 +48,6 @@ const defaultData: BankingData = {
transactions: [],
folders: [defaultRootFolder],
categories: buildCategoriesFromDefaults(),
categoryRules: [],
}
export function loadData(): BankingData {

View File

@@ -43,19 +43,11 @@ export interface Category {
parentId: string | null
}
export interface CategoryRule {
id: string
categoryId: string
pattern: string
isRegex: boolean
}
export interface BankingData {
accounts: Account[]
transactions: Transaction[]
folders: Folder[]
categories: Category[]
categoryRules: CategoryRule[]
}
// OFX Parsed types