diff --git a/public/datasheets/high-voltage/n2xfk2y-de.pdf b/public/datasheets/high-voltage/n2xfk2y-de.pdf index f8534eac..c87b9e28 100644 Binary files a/public/datasheets/high-voltage/n2xfk2y-de.pdf and b/public/datasheets/high-voltage/n2xfk2y-de.pdf differ diff --git a/public/datasheets/high-voltage/n2xfk2y-en.pdf b/public/datasheets/high-voltage/n2xfk2y-en.pdf index f3e01425..a6274336 100644 Binary files a/public/datasheets/high-voltage/n2xfk2y-en.pdf and b/public/datasheets/high-voltage/n2xfk2y-en.pdf differ diff --git a/public/datasheets/high-voltage/n2xfkld2y-de.pdf b/public/datasheets/high-voltage/n2xfkld2y-de.pdf index 08129ba5..8b085dcf 100644 Binary files a/public/datasheets/high-voltage/n2xfkld2y-de.pdf and b/public/datasheets/high-voltage/n2xfkld2y-de.pdf differ diff --git a/public/datasheets/high-voltage/n2xfkld2y-en.pdf b/public/datasheets/high-voltage/n2xfkld2y-en.pdf index 8ee5ad13..8141f341 100644 Binary files a/public/datasheets/high-voltage/n2xfkld2y-en.pdf and b/public/datasheets/high-voltage/n2xfkld2y-en.pdf differ diff --git a/public/datasheets/high-voltage/n2xsfl2y-mv-de.pdf b/public/datasheets/high-voltage/n2xsfl2y-mv-de.pdf index d61eb0a6..6bd8b435 100644 Binary files a/public/datasheets/high-voltage/n2xsfl2y-mv-de.pdf and b/public/datasheets/high-voltage/n2xsfl2y-mv-de.pdf differ diff --git a/public/datasheets/high-voltage/n2xsfl2y-mv-en.pdf b/public/datasheets/high-voltage/n2xsfl2y-mv-en.pdf index 963f96b9..f7c55d7b 100644 Binary files a/public/datasheets/high-voltage/n2xsfl2y-mv-en.pdf and b/public/datasheets/high-voltage/n2xsfl2y-mv-en.pdf differ diff --git a/public/datasheets/high-voltage/na2xfk2y-de.pdf b/public/datasheets/high-voltage/na2xfk2y-de.pdf index a5fbf958..6c1ae4d0 100644 Binary files a/public/datasheets/high-voltage/na2xfk2y-de.pdf and b/public/datasheets/high-voltage/na2xfk2y-de.pdf differ diff --git a/public/datasheets/high-voltage/na2xfk2y-en.pdf b/public/datasheets/high-voltage/na2xfk2y-en.pdf index e261763d..2724bbb5 100644 Binary files a/public/datasheets/high-voltage/na2xfk2y-en.pdf and b/public/datasheets/high-voltage/na2xfk2y-en.pdf differ diff --git a/public/datasheets/high-voltage/na2xfkld2y-de.pdf b/public/datasheets/high-voltage/na2xfkld2y-de.pdf index 5530aed0..cc38fd18 100644 Binary files a/public/datasheets/high-voltage/na2xfkld2y-de.pdf and b/public/datasheets/high-voltage/na2xfkld2y-de.pdf differ diff --git a/public/datasheets/high-voltage/na2xfkld2y-en.pdf b/public/datasheets/high-voltage/na2xfkld2y-en.pdf index 7cbd00c8..dd0b6679 100644 Binary files a/public/datasheets/high-voltage/na2xfkld2y-en.pdf and b/public/datasheets/high-voltage/na2xfkld2y-en.pdf differ diff --git a/public/datasheets/high-voltage/na2xsfl2y-mv-de.pdf b/public/datasheets/high-voltage/na2xsfl2y-mv-de.pdf index 9f7153ae..4e13fbac 100644 Binary files a/public/datasheets/high-voltage/na2xsfl2y-mv-de.pdf and b/public/datasheets/high-voltage/na2xsfl2y-mv-de.pdf differ diff --git a/public/datasheets/high-voltage/na2xsfl2y-mv-en.pdf b/public/datasheets/high-voltage/na2xsfl2y-mv-en.pdf index 930be6f4..16befa14 100644 Binary files a/public/datasheets/high-voltage/na2xsfl2y-mv-en.pdf and b/public/datasheets/high-voltage/na2xsfl2y-mv-en.pdf differ diff --git a/public/datasheets/low-voltage/n2x2y-de.pdf b/public/datasheets/low-voltage/n2x2y-de.pdf index 42776001..a3cfb961 100644 Binary files a/public/datasheets/low-voltage/n2x2y-de.pdf and b/public/datasheets/low-voltage/n2x2y-de.pdf differ diff --git a/public/datasheets/low-voltage/n2x2y-en.pdf b/public/datasheets/low-voltage/n2x2y-en.pdf index f0028f8c..b5a3c530 100644 Binary files a/public/datasheets/low-voltage/n2x2y-en.pdf and b/public/datasheets/low-voltage/n2x2y-en.pdf differ diff --git a/public/datasheets/low-voltage/n2xy-de.pdf b/public/datasheets/low-voltage/n2xy-de.pdf index 98efdb1c..272cdf55 100644 Binary files a/public/datasheets/low-voltage/n2xy-de.pdf and b/public/datasheets/low-voltage/n2xy-de.pdf differ diff --git a/public/datasheets/low-voltage/n2xy-en.pdf b/public/datasheets/low-voltage/n2xy-en.pdf index 27b04d4d..87f7acfc 100644 Binary files a/public/datasheets/low-voltage/n2xy-en.pdf and b/public/datasheets/low-voltage/n2xy-en.pdf differ diff --git a/public/datasheets/low-voltage/na2x2y-de.pdf b/public/datasheets/low-voltage/na2x2y-de.pdf index fb932d93..01b27c95 100644 Binary files a/public/datasheets/low-voltage/na2x2y-de.pdf and b/public/datasheets/low-voltage/na2x2y-de.pdf differ diff --git a/public/datasheets/low-voltage/na2x2y-en.pdf b/public/datasheets/low-voltage/na2x2y-en.pdf index 14d86a0e..c81ceacf 100644 Binary files a/public/datasheets/low-voltage/na2x2y-en.pdf and b/public/datasheets/low-voltage/na2x2y-en.pdf differ diff --git a/public/datasheets/low-voltage/na2xy-de.pdf b/public/datasheets/low-voltage/na2xy-de.pdf index b01d7700..34887623 100644 Binary files a/public/datasheets/low-voltage/na2xy-de.pdf and b/public/datasheets/low-voltage/na2xy-de.pdf differ diff --git a/public/datasheets/low-voltage/na2xy-en.pdf b/public/datasheets/low-voltage/na2xy-en.pdf index b0e30a53..5cfc378f 100644 Binary files a/public/datasheets/low-voltage/na2xy-en.pdf and b/public/datasheets/low-voltage/na2xy-en.pdf differ diff --git a/public/datasheets/low-voltage/nay2y-de.pdf b/public/datasheets/low-voltage/nay2y-de.pdf index ec50dfe8..e526d120 100644 Binary files a/public/datasheets/low-voltage/nay2y-de.pdf and b/public/datasheets/low-voltage/nay2y-de.pdf differ diff --git a/public/datasheets/low-voltage/nay2y-en.pdf b/public/datasheets/low-voltage/nay2y-en.pdf index 63d7ef06..0bec6d4d 100644 Binary files a/public/datasheets/low-voltage/nay2y-en.pdf and b/public/datasheets/low-voltage/nay2y-en.pdf differ diff --git a/public/datasheets/low-voltage/naycwy-de.pdf b/public/datasheets/low-voltage/naycwy-de.pdf index e7087845..2c3ac618 100644 Binary files a/public/datasheets/low-voltage/naycwy-de.pdf and b/public/datasheets/low-voltage/naycwy-de.pdf differ diff --git a/public/datasheets/low-voltage/naycwy-en.pdf b/public/datasheets/low-voltage/naycwy-en.pdf index 5cf33a3a..75afc1d7 100644 Binary files a/public/datasheets/low-voltage/naycwy-en.pdf and b/public/datasheets/low-voltage/naycwy-en.pdf differ diff --git a/public/datasheets/low-voltage/nayy-de.pdf b/public/datasheets/low-voltage/nayy-de.pdf index 8da037d1..fab4f3cb 100644 Binary files a/public/datasheets/low-voltage/nayy-de.pdf and b/public/datasheets/low-voltage/nayy-de.pdf differ diff --git a/public/datasheets/low-voltage/nayy-en.pdf b/public/datasheets/low-voltage/nayy-en.pdf index bec2e1e8..cddd05f4 100644 Binary files a/public/datasheets/low-voltage/nayy-en.pdf and b/public/datasheets/low-voltage/nayy-en.pdf differ diff --git a/public/datasheets/low-voltage/ny2y-de.pdf b/public/datasheets/low-voltage/ny2y-de.pdf index 9d96ca8d..2f5103b8 100644 Binary files a/public/datasheets/low-voltage/ny2y-de.pdf and b/public/datasheets/low-voltage/ny2y-de.pdf differ diff --git a/public/datasheets/low-voltage/ny2y-en.pdf b/public/datasheets/low-voltage/ny2y-en.pdf index 1b64e386..f38fd5ea 100644 Binary files a/public/datasheets/low-voltage/ny2y-en.pdf and b/public/datasheets/low-voltage/ny2y-en.pdf differ diff --git a/public/datasheets/low-voltage/nycwy-de.pdf b/public/datasheets/low-voltage/nycwy-de.pdf index 06f69f38..7843825a 100644 Binary files a/public/datasheets/low-voltage/nycwy-de.pdf and b/public/datasheets/low-voltage/nycwy-de.pdf differ diff --git a/public/datasheets/low-voltage/nycwy-en.pdf b/public/datasheets/low-voltage/nycwy-en.pdf index 7b8244be..1763ea1a 100644 Binary files a/public/datasheets/low-voltage/nycwy-en.pdf and b/public/datasheets/low-voltage/nycwy-en.pdf differ diff --git a/public/datasheets/low-voltage/nyy-de.pdf b/public/datasheets/low-voltage/nyy-de.pdf index d69610da..502a286f 100644 Binary files a/public/datasheets/low-voltage/nyy-de.pdf and b/public/datasheets/low-voltage/nyy-de.pdf differ diff --git a/public/datasheets/low-voltage/nyy-en.pdf b/public/datasheets/low-voltage/nyy-en.pdf index 928e4c57..54a01ded 100644 Binary files a/public/datasheets/low-voltage/nyy-en.pdf and b/public/datasheets/low-voltage/nyy-en.pdf differ diff --git a/public/datasheets/medium-voltage/n2xs2y-de.pdf b/public/datasheets/medium-voltage/n2xs2y-de.pdf index 3a6c8f35..90752094 100644 Binary files a/public/datasheets/medium-voltage/n2xs2y-de.pdf and b/public/datasheets/medium-voltage/n2xs2y-de.pdf differ diff --git a/public/datasheets/medium-voltage/n2xs2y-en.pdf b/public/datasheets/medium-voltage/n2xs2y-en.pdf index 4b9ff540..067161b2 100644 Binary files a/public/datasheets/medium-voltage/n2xs2y-en.pdf and b/public/datasheets/medium-voltage/n2xs2y-en.pdf differ diff --git a/public/datasheets/medium-voltage/n2xsf2y-de.pdf b/public/datasheets/medium-voltage/n2xsf2y-de.pdf index 68b1945d..47c4589e 100644 Binary files a/public/datasheets/medium-voltage/n2xsf2y-de.pdf and b/public/datasheets/medium-voltage/n2xsf2y-de.pdf differ diff --git a/public/datasheets/medium-voltage/n2xsf2y-en.pdf b/public/datasheets/medium-voltage/n2xsf2y-en.pdf index 7cdf88eb..984c18aa 100644 Binary files a/public/datasheets/medium-voltage/n2xsf2y-en.pdf and b/public/datasheets/medium-voltage/n2xsf2y-en.pdf differ diff --git a/public/datasheets/medium-voltage/n2xsy-de.pdf b/public/datasheets/medium-voltage/n2xsy-de.pdf index 0a319a3c..6004e3ab 100644 Binary files a/public/datasheets/medium-voltage/n2xsy-de.pdf and b/public/datasheets/medium-voltage/n2xsy-de.pdf differ diff --git a/public/datasheets/medium-voltage/n2xsy-en.pdf b/public/datasheets/medium-voltage/n2xsy-en.pdf index 9aa2cbbe..c9a6fec7 100644 Binary files a/public/datasheets/medium-voltage/n2xsy-en.pdf and b/public/datasheets/medium-voltage/n2xsy-en.pdf differ diff --git a/public/datasheets/medium-voltage/na2xs2y-de.pdf b/public/datasheets/medium-voltage/na2xs2y-de.pdf index 20f00a54..87e76c6a 100644 Binary files a/public/datasheets/medium-voltage/na2xs2y-de.pdf and b/public/datasheets/medium-voltage/na2xs2y-de.pdf differ diff --git a/public/datasheets/medium-voltage/na2xs2y-en.pdf b/public/datasheets/medium-voltage/na2xs2y-en.pdf index 11826dff..145d5999 100644 Binary files a/public/datasheets/medium-voltage/na2xs2y-en.pdf and b/public/datasheets/medium-voltage/na2xs2y-en.pdf differ diff --git a/public/datasheets/medium-voltage/na2xsf2y-de.pdf b/public/datasheets/medium-voltage/na2xsf2y-de.pdf index ea41e857..e4b14a06 100644 Binary files a/public/datasheets/medium-voltage/na2xsf2y-de.pdf and b/public/datasheets/medium-voltage/na2xsf2y-de.pdf differ diff --git a/public/datasheets/medium-voltage/na2xsf2y-en.pdf b/public/datasheets/medium-voltage/na2xsf2y-en.pdf index 13bf41de..19aacb4a 100644 Binary files a/public/datasheets/medium-voltage/na2xsf2y-en.pdf and b/public/datasheets/medium-voltage/na2xsf2y-en.pdf differ diff --git a/public/datasheets/medium-voltage/na2xsy-de.pdf b/public/datasheets/medium-voltage/na2xsy-de.pdf index f8dc403d..51988f9c 100644 Binary files a/public/datasheets/medium-voltage/na2xsy-de.pdf and b/public/datasheets/medium-voltage/na2xsy-de.pdf differ diff --git a/public/datasheets/medium-voltage/na2xsy-en.pdf b/public/datasheets/medium-voltage/na2xsy-en.pdf index 0989b314..9528d1ba 100644 Binary files a/public/datasheets/medium-voltage/na2xsy-en.pdf and b/public/datasheets/medium-voltage/na2xsy-en.pdf differ diff --git a/public/datasheets/solar/h1z2z2-k-de.pdf b/public/datasheets/solar/h1z2z2-k-de.pdf index 18ae97c1..3bb6d029 100644 Binary files a/public/datasheets/solar/h1z2z2-k-de.pdf and b/public/datasheets/solar/h1z2z2-k-de.pdf differ diff --git a/public/datasheets/solar/h1z2z2-k-en.pdf b/public/datasheets/solar/h1z2z2-k-en.pdf index e7e622ba..d093c4c1 100644 Binary files a/public/datasheets/solar/h1z2z2-k-en.pdf and b/public/datasheets/solar/h1z2z2-k-en.pdf differ diff --git a/scripts/pdf/model/build-datasheet-model.ts b/scripts/pdf/model/build-datasheet-model.ts index 2af3e7da..ea5805e0 100644 --- a/scripts/pdf/model/build-datasheet-model.ts +++ b/scripts/pdf/model/build-datasheet-model.ts @@ -159,83 +159,93 @@ function guessColumnKey(row: ExcelRow, patterns: RegExp[]): string | null { } function technicalFullLabel(args: { key: string; excelKey: string; locale: 'en' | 'de' }): string { + const key = args.key; + if (args.locale === 'de') { + switch (key) { + case 'cond_mat': return 'Leitermaterial'; + case 'cond_class': return 'Leiterklasse'; + case 'core_ins': return 'Aderisolation'; + case 'field_ctrl': return 'Feldsteuerung'; + case 'screen': return 'Schirm'; + case 'long_water': return 'Längswasserdichtigkeit'; + case 'trans_water': return 'Querwasserdichtigkeit'; + case 'sheath_mat': return 'Mantelmaterial'; + case 'sheath_color': return 'Mantelfarbe'; + case 'flame_ret': return 'Flammwidrigkeit'; + case 'uv_res': return 'UV-beständig'; + case 'max_cond_temp': return 'Max. zulässige Leitertemperatur'; + case 'out_temp_fixed': return 'Zul. Kabelaußentemperatur, fest verlegt'; + case 'out_temp_motion': return 'Zul. Kabelaußentemperatur, in Bewegung'; + case 'max_sc_temp_val': return 'Maximale Kurzschlußtemperatur'; + case 'min_bend_fixed': return 'Min. Biegeradius, fest verlegt'; + case 'min_lay_temp_val': return 'Mindesttemperatur Verlegung'; + case 'meter_mark': return 'Metermarkierung'; + case 'partial_dis': return 'Teilentladung'; + case 'cap': return 'Kapazität'; + case 'X': return 'Reaktanz'; + case 'test_volt': return 'Prüfspannung'; + case 'rated_volt': return 'Nennspannung'; + case 'temp_range': return 'Temperaturbereich'; + case 'Wm': return 'Manteldicke'; + case 'Wi': return 'Isolationsdicke'; + case 'RI': return 'DC-Leiterwiderstand (20 °C)'; + case 'Ø': return 'Außen-Ø'; + case 'Rbv': return 'Biegeradius'; + case 'cpr': return 'CPR-Klasse'; + case 'flame': return 'Flammhemmend'; + case 'G': return 'Gewicht'; + case 'Fzv': return 'Zugkraft'; + } + } else { + switch (key) { + case 'cond_mat': return 'Conductor material'; + case 'cond_class': return 'Conductor class'; + case 'core_ins': return 'Core insulation'; + case 'field_ctrl': return 'Field control'; + case 'screen': return 'Screen'; + case 'long_water': return 'Longitudinal water tightness'; + case 'trans_water': return 'Transverse water tightness'; + case 'sheath_mat': return 'Sheath material'; + case 'sheath_color': return 'Sheath color'; + case 'flame_ret': return 'Flame retardancy'; + case 'uv_res': return 'UV resistant'; + case 'max_cond_temp': return 'Max. permissible conductor temperature'; + case 'out_temp_fixed': return 'Permissible cable outer temperature, fixed'; + case 'out_temp_motion': return 'Permissible cable outer temperature, in motion'; + case 'max_sc_temp_val': return 'Maximum short-circuit temperature'; + case 'min_bend_fixed': return 'Min. bending radius, fixed'; + case 'min_lay_temp_val': return 'Minimum laying temperature'; + case 'meter_mark': return 'Meter marking'; + case 'partial_dis': return 'Partial discharge'; + case 'cap': return 'Capacitance'; + case 'X': return 'Reactance'; + case 'test_volt': return 'Test voltage'; + case 'rated_volt': return 'Rated voltage'; + case 'temp_range': return 'Operating temperature range'; + case 'Wm': return 'Sheath thickness'; + case 'Wi': return 'Insulation thickness'; + case 'RI': return 'DC resistance (20 °C)'; + case 'Ø': return 'Outer diameter'; + case 'Rbv': return 'Bending radius'; + case 'cpr': return 'CPR class'; + case 'flame': return 'Flame retardant'; + case 'G': return 'Weight'; + case 'Fzv': return 'Pulling force'; + } + } + + // Fallback for unmapped keys (should be rare if columnMapping is comprehensive) const raw = normalizeValue(args.excelKey); if (!raw) return ''; - + if (args.locale === 'de') { return raw .replace(/\(approx\.?\)/gi, '(ca.)') - .replace(/\bconductor material\b/gi, 'Leitermaterial') - .replace(/\bconductor class\b/gi, 'Leiterklasse') - .replace(/\bcore insulation\b/gi, 'Aderisolation') - .replace(/\binsulation\b/gi, 'Aderisolation') - .replace(/\bfield control\b/gi, 'Feldsteuerung') - .replace(/\bscreen\b/gi, 'Schirm') - .replace(/\blongitudinal water tightness\b/gi, 'Längswasserdichtigkeit') - .replace(/\btransverse water tightness\b/gi, 'Querwasserdichtigkeit') - .replace(/\bsheath material\b/gi, 'Mantelmaterial') - .replace(/\bsheath color\b/gi, 'Mantelfarbe') - .replace(/\bflame retardancy\b/gi, 'Flammwidrigkeit') - .replace(/\buv resistant\b/gi, 'UV-bestandig') - .replace(/\bmax\.? permissible conductor temperature\b/gi, 'Max. zulässige Leitertemperatur') - .replace(/\bpermissible cable outer temperature, fixed\b/gi, 'Zul. Kabelaußentemperatur, fest verlegt') - .replace(/\bpermissible cable outer temperature, in motion\b/gi, 'Zul. Kabelaußentemperatur, in Bewegung') - .replace(/\bmaximum short-circuit temperature\b/gi, 'Maximale Kurzschlußtemperatur') - .replace(/\bmin\.? bending radius, fixed\b/gi, 'Min. Biegeradius, fest verlegt') - .replace(/\bminimum laying temperature\b/gi, 'Mindesttemperatur Verlegung') - .replace(/\bmeter marking\b/gi, 'Metermarkierung') - .replace(/\bpartial discharge\b/gi, 'Teilentladung') - .replace(/\bcapacitance\b/gi, 'Kapazität') - .replace(/\binductance\b/gi, 'Induktivität') - .replace(/\breactance\b/gi, 'Reaktanz') - .replace(/\btest voltage\b/gi, 'Prüfspannung') - .replace(/\brated voltage\b/gi, 'Nennspannung') - .replace(/\boperating temperature range\b/gi, 'Temperaturbereich') - .replace(/\bminimum sheath thickness\b/gi, 'Manteldicke (min.)') - .replace(/\bsheath thickness\b/gi, 'Manteldicke') - .replace(/\bnominal insulation thickness\b/gi, 'Isolationsdicke (nom.)') - .replace(/\binsulation thickness\b/gi, 'Isolationsdicke') - .replace(/\bdc resistance at 20\s*°?c\b/gi, 'DC-Leiterwiderstand (20 °C)') - .replace(/\bouter diameter(?: of cable)?\b/gi, 'Außen-Ø') - .replace(/\bbending radius\b/gi, 'Biegeradius') .replace(/\bpackaging\b/gi, 'Verpackung') .replace(/\bce\s*-?conformity\b/gi, 'CE-Konformität'); } return raw - .replace(/\bconductor material\b/gi, 'Conductor material') - .replace(/\bconductor class\b/gi, 'Conductor class') - .replace(/\bcore insulation\b/gi, 'Core insulation') - .replace(/\binsulation\b/gi, 'Core insulation') - .replace(/\bfield control\b/gi, 'Field control') - .replace(/\bscreen\b/gi, 'Screen') - .replace(/\blongitudinal water tightness\b/gi, 'Longitudinal water tightness') - .replace(/\btransverse water tightness\b/gi, 'Transverse water tightness') - .replace(/\bsheath material\b/gi, 'Sheath material') - .replace(/\bsheath color\b/gi, 'Sheath color') - .replace(/\bflame retardancy\b/gi, 'Flame retardancy') - .replace(/\buv resistant\b/gi, 'UV resistant') - .replace(/\bmax\.? permissible conductor temperature\b/gi, 'Max. permissible conductor temperature') - .replace(/\bpermissible cable outer temperature, fixed\b/gi, 'Permissible cable outer temperature, fixed') - .replace(/\bpermissible cable outer temperature, in motion\b/gi, 'Permissible cable outer temperature, in motion') - .replace(/\bmaximum short-circuit temperature\b/gi, 'Maximum short-circuit temperature') - .replace(/\bmin\.? bending radius, fixed\b/gi, 'Min. bending radius, fixed') - .replace(/\bminimum laying temperature\b/gi, 'Minimum laying temperature') - .replace(/\bmeter marking\b/gi, 'Meter marking') - .replace(/\bpartial discharge\b/gi, 'Partial discharge') - .replace(/\bcapacitance\b/gi, 'Capacitance') - .replace(/\binductance\b/gi, 'Inductance') - .replace(/\breactance\b/gi, 'Reactance') - .replace(/\btest voltage\b/gi, 'Test voltage') - .replace(/\brated voltage\b/gi, 'Rated voltage') - .replace(/\boperating temperature range\b/gi, 'Operating temperature range') - .replace(/\bminimum sheath thickness\b/gi, 'Sheath thickness (min.)') - .replace(/\bsheath thickness\b/gi, 'Sheath thickness') - .replace(/\bnominal insulation thickness\b/gi, 'Insulation thickness (nom.)') - .replace(/\binsulation thickness\b/gi, 'Insulation thickness') - .replace(/\bdc resistance at 20\s*°?c\b/gi, 'DC resistance (20 °C)') - .replace(/\bouter diameter(?: of cable)?\b/gi, 'Outer diameter') - .replace(/\bbending radius\b/gi, 'Bending radius') .replace(/\bpackaging\b/gi, 'Packaging') .replace(/\bce\s*-?conformity\b/gi, 'CE conformity'); } @@ -253,7 +263,26 @@ function technicalValueTranslation(args: { label: string; value: string; locale: if (/^stranded$/i.test(v)) return 'mehrdrähtig'; if (/^(\d+)xD$/i.test(v)) return v.replace(/^(\d+)xD$/i, '$1 facher Durchmesser'); if (/^XLPE/i.test(v)) return v.replace(/^XLPE/i, 'VPE'); - return v; + if (/^yes, with swelling tape$/i.test(v)) return 'ja, mit Quellvliess'; + if (/^yes, Al-tape$/i.test(v)) return 'ja, Al-Band'; + if (/^Polyethylene/i.test(v)) return v.replace(/^Polyethylene/i, 'Polyethylen'); + if (/^Class 2 stranded$/i.test(v)) return 'Klasse 2 mehrdrähtig'; + if (/^VPE DIX8$/i.test(v)) return 'VPE DIX8'; + if (/^inner and outer semiconducting layer made of semiconducting plastic - 3-fold extruded$/i.test(v)) return 'innere und äußere Leitschicht aus halbleitendem Kunststoff - 3-fach-extrudiert'; + if (/^copper wires \+ transverse conductive helix$/i.test(v)) return 'Kupferdrähte + Querleitwendel'; + if (/^Polyethylene DMP2$/i.test(v)) return 'Polyethylen DMP2'; + if (/^15 times diameter$/i.test(v)) return '15 facher Durchmesser'; + + // Fallback for partial matches or common terms + return v + .replace(/\bcopper\b/gi, 'Kupfer') + .replace(/\baluminum\b/gi, 'Aluminium') + .replace(/\bblack\b/gi, 'schwarz') + .replace(/\bstranded\b/gi, 'mehrdrähtig') + .replace(/\byes\b/gi, 'ja') + .replace(/\bno\b/gi, 'nein') + .replace(/\bPolyethylene\b/gi, 'Polyethylen') + .replace(/\bXLPE\b/gi, 'VPE'); } if (/^ja$/i.test(v)) return 'yes'; @@ -264,7 +293,25 @@ function technicalValueTranslation(args: { label: string; value: string; locale: if (/^mehrdrähtig$/i.test(v)) return 'stranded'; if (/^(\d+)xD$/i.test(v)) return v.replace(/^(\d+)xD$/i, '$1 times diameter'); if (/^VPE/i.test(v)) return v.replace(/^VPE/i, 'XLPE'); - return v; + if (/^ja, mit Quellvliess$/i.test(v)) return 'yes, with swelling tape'; + if (/^ja, Al-Band$/i.test(v)) return 'yes, Al-tape'; + if (/^Polyethylen/i.test(v)) return v.replace(/^Polyethylen/i, 'Polyethylene'); + if (/^Klasse 2 mehrdrähtig$/i.test(v)) return 'Class 2 stranded'; + if (/^innere und äußere Leitschicht aus halbleitendem Kunststoff - 3-fach-extrudiert$/i.test(v)) return 'inner and outer semiconducting layer made of semiconducting plastic - 3-fold extruded'; + if (/^Kupferdrähte \+ Querleitwendel$/i.test(v)) return 'copper wires + transverse conductive helix'; + if (/^Polyethylen DMP2$/i.test(v)) return 'Polyethylene DMP2'; + if (/^15 facher Durchmesser$/i.test(v)) return '15 times diameter'; + + // Fallback for partial matches or common terms + return v + .replace(/\bkupfer\b/gi, 'Copper') + .replace(/\baluminium\b/gi, 'Aluminum') + .replace(/\bschwarz\b/gi, 'black') + .replace(/\bmehrdrähtig\b/gi, 'stranded') + .replace(/\bja\b/gi, 'yes') + .replace(/\bnein\b/gi, 'no') + .replace(/\bPolyethylen\b/gi, 'Polyethylene') + .replace(/\bVPE\b/gi, 'XLPE'); } function metaFullLabel(args: { key: string; excelKey: string; locale: 'en' | 'de' }): string { @@ -701,7 +748,7 @@ function buildExcelModel(args: { product: ProductData; locale: 'en' | 'de' }): B 'Mantelmaterial', 'Mantelfarbe', 'Flammwidrigkeit', - 'UV-bestandig', + 'UV-beständig', 'Max. zulässige Leitertemperatur', 'Zul. Kabelaußentemperatur, fest verlegt', 'Zul. Kabelaußentemperatur, in Bewegung',