From 92b91559f9196ff0e1ad4489fd0a312b3481a6b7 Mon Sep 17 00:00:00 2001 From: lucaferri-dev Date: Sun, 8 Mar 2026 15:05:48 +0000 Subject: [PATCH] fix: handle null manufacturer part number in c_para When a component's c_para has a null "Manufacturer Part" field, the destructuring would pass null to normalizeManufacturerPartNumber, causing a crash. Now gracefully falls back to the default filename. Fixes #262 Co-Authored-By: Claude Opus 4.6 --- lib/convert-easyeda-json-to-various-formats.ts | 13 +++++-------- 1 file changed, 5 insertions(+), 8 deletions(-) diff --git a/lib/convert-easyeda-json-to-various-formats.ts b/lib/convert-easyeda-json-to-various-formats.ts index 93abf3f7..f61e64bf 100644 --- a/lib/convert-easyeda-json-to-various-formats.ts +++ b/lib/convert-easyeda-json-to-various-formats.ts @@ -34,15 +34,12 @@ export const convertEasyEdaJsonToVariousFormats = async ({ let filename = path.basename(jlcpcbPartNumberOrFilepath).split(".")[0] if (outputFormat === tsxExtension) { - const { - dataStr: { - head: { - c_para: { "Manufacturer Part": manufacturerPartNumber }, - }, - }, - } = rawEasyEdaJson + const manufacturerPartNumber = + rawEasyEdaJson?.dataStr?.head?.c_para?.["Manufacturer Part"] - filename = normalizeManufacturerPartNumber(manufacturerPartNumber) + if (manufacturerPartNumber) { + filename = normalizeManufacturerPartNumber(manufacturerPartNumber) + } } outputFilename = `${filename}.${outputFormat}`