From 5cb8078870b27e907448aab2c33fb892ce186b2c Mon Sep 17 00:00:00 2001 From: juliopavila Date: Wed, 4 Sep 2024 10:21:07 -0300 Subject: [PATCH] fix: update regex in sourcePathFromSourceCode to match contracts and libraries Updated the regular expression in the sourcePathFromSourceCode function to account for both `contract` and `library` declarations. This resolves an issue where library definitions were not being matched, causing the function to return `null`. The new RegExp now looks for both `contract` and `library` keywords. --- src/artifact/internal/getBuildArtifact.ts | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/artifact/internal/getBuildArtifact.ts b/src/artifact/internal/getBuildArtifact.ts index 5d96bda..95b72bf 100644 --- a/src/artifact/internal/getBuildArtifact.ts +++ b/src/artifact/internal/getBuildArtifact.ts @@ -94,8 +94,10 @@ export function sourcePathFromSourceCode( compilerInput.sources )) { const sourceCode = (sourceCodeEntry as any).content; - const contractPattern = new RegExp(`contract\\s+${contractName}\\s+`, "g"); - + const contractPattern = new RegExp( + `(contract|library)\\s+${contractName}\\s+`, + "g" + ); if (contractPattern.test(sourceCode)) { return sourceName; }