auto: sync 2026-06-02 16:41

This commit is contained in:
Capucine Gest
2026-06-02 16:41:34 +02:00
parent db8e086294
commit e80f5cb681
4 changed files with 29 additions and 15 deletions
+14 -7
View File
@@ -221,9 +221,11 @@ function parseCalendarHTML(html: string): TECalendarEvent[] {
// Utilisé par la macro route pour remplir forecasts.cpiCore / forecasts.cpiMoM.
export interface TEInflationForecasts {
cpiYoY: string | null;
cpiCore: string | null;
cpiMoM: string | null;
cpiYoY: string | null;
cpiCore: string | null;
cpiMoM: string | null;
cpiCoreMoM: string | null;
ppiMoM: string | null;
}
export async function fetchTEInflationForecasts(
@@ -241,14 +243,19 @@ export async function fetchTEInflationForecasts(
const ccy = ev.currency;
const title = ev.title.toLowerCase();
if (!result[ccy]) result[ccy] = { cpiYoY: null, cpiCore: null, cpiMoM: null };
if (!result[ccy]) result[ccy] = { cpiYoY: null, cpiCore: null, cpiMoM: null, cpiCoreMoM: null, ppiMoM: null };
const r = result[ccy]!;
if (!r.cpiCore && /core.*inflation.*yoy|core.*cpi.*yoy|core.*rate.*yoy/i.test(title)) {
// Order matters: Core MoM before generic MoM, Core YoY before generic YoY, PPI before CPI
if (!r.ppiMoM && /ppi.*mom|producer.*price.*mom/i.test(title)) {
r.ppiMoM = ev.forecast;
} else if (!r.cpiCoreMoM && /core.*mom|core.*inflation.*mom|core.*rate.*mom/i.test(title)) {
r.cpiCoreMoM = ev.forecast;
} else if (!r.cpiCore && /core.*inflation.*yoy|core.*cpi.*yoy|core.*rate.*yoy/i.test(title)) {
r.cpiCore = ev.forecast;
} else if (!r.cpiMoM && /inflation.*mom|cpi.*mom|rate.*mom/i.test(title)) {
} else if (!r.cpiMoM && /^(?!.*core).*(?:inflation.*mom|cpi.*mom|rate.*mom)/i.test(title)) {
r.cpiMoM = ev.forecast;
} else if (!r.cpiYoY && /inflation.*yoy|cpi.*yoy|inflation\s+rate.*yoy/i.test(title)) {
} else if (!r.cpiYoY && /^(?!.*core).*(?:inflation.*yoy|cpi.*yoy|inflation\s+rate.*yoy)/i.test(title)) {
r.cpiYoY = ev.forecast;
}
}