From 7eb9ac9aebceeff58119645a7956c03c3ca588e0 Mon Sep 17 00:00:00 2001 From: bang9 Date: Mon, 4 Nov 2024 18:56:23 +0900 Subject: [PATCH 1/2] fix: handle libraries using build.gradle.kts files --- .../src/config/__tests__/findLibraryName.test.ts | 2 +- packages/cli-platform-android/src/config/findLibraryName.ts | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/packages/cli-platform-android/src/config/__tests__/findLibraryName.test.ts b/packages/cli-platform-android/src/config/__tests__/findLibraryName.test.ts index 143107400..96998d24e 100644 --- a/packages/cli-platform-android/src/config/__tests__/findLibraryName.test.ts +++ b/packages/cli-platform-android/src/config/__tests__/findLibraryName.test.ts @@ -86,7 +86,7 @@ describe('android::findLibraryName', () => { }); it('returns the library name if declared with inside a build.gradle.kts file', () => { - expect(findLibraryName('/', '/valid/singlequotes')).toBe('justalibrary'); + expect(findLibraryName('/', '/valid/gradlekts')).toBe('justalibrary'); }); it('returns the library name if defined inside codegenConfig', () => { diff --git a/packages/cli-platform-android/src/config/findLibraryName.ts b/packages/cli-platform-android/src/config/findLibraryName.ts index 318180d51..b442970b8 100644 --- a/packages/cli-platform-android/src/config/findLibraryName.ts +++ b/packages/cli-platform-android/src/config/findLibraryName.ts @@ -24,7 +24,9 @@ export function findLibraryName(root: string, sourceDir: string) { return undefined; } - const match = buildGradleContents.match(/libraryName = ["'](.+)["']/); + const match = + buildGradleContents.match(/libraryName = ["'](.+)["']/) ?? + buildGradleContents.match(/libraryName\.set\(["'](.+)["']\)/); if (match) { return match[1]; From 4f5eba3fe6cf53ff3f6c8ec60c97f942aa08b99a Mon Sep 17 00:00:00 2001 From: bang9 Date: Mon, 4 Nov 2024 22:40:25 +0900 Subject: [PATCH 2/2] chore: apply review --- .../src/config/findLibraryName.ts | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/packages/cli-platform-android/src/config/findLibraryName.ts b/packages/cli-platform-android/src/config/findLibraryName.ts index b442970b8..735d32764 100644 --- a/packages/cli-platform-android/src/config/findLibraryName.ts +++ b/packages/cli-platform-android/src/config/findLibraryName.ts @@ -15,19 +15,17 @@ export function findLibraryName(root: string, sourceDir: string) { } // If not, we check if the library specified it in the build.gradle file. - let buildGradleContents = ''; + let match: RegExpMatchArray | null = null; if (fs.existsSync(buildGradlePath)) { - buildGradleContents = fs.readFileSync(buildGradlePath, 'utf-8'); + const buildGradleContents = fs.readFileSync(buildGradlePath, 'utf-8'); + match = buildGradleContents.match(/libraryName = ["'](.+)["']/); } else if (fs.existsSync(buildGradleKtsPath)) { - buildGradleContents = fs.readFileSync(buildGradleKtsPath, 'utf-8'); + const buildGradleContents = fs.readFileSync(buildGradleKtsPath, 'utf-8'); + match = buildGradleContents.match(/libraryName\.set\(["'](.+)["']\)/); } else { return undefined; } - const match = - buildGradleContents.match(/libraryName = ["'](.+)["']/) ?? - buildGradleContents.match(/libraryName\.set\(["'](.+)["']\)/); - if (match) { return match[1]; } else {