From ec07bbc2e4bca90508ac27b2a7740f2017473277 Mon Sep 17 00:00:00 2001
From: Rhys Arkins <rhys@arkins.net>
Date: Sun, 28 Mar 2021 17:02:06 +0200
Subject: [PATCH] refactor: npm extract

---
 .../npm/extract/__snapshots__/index.spec.ts.snap   | 14 ++++++++++++++
 lib/manager/npm/extract/index.ts                   | 11 +++++------
 2 files changed, 19 insertions(+), 6 deletions(-)

diff --git a/lib/manager/npm/extract/__snapshots__/index.spec.ts.snap b/lib/manager/npm/extract/__snapshots__/index.spec.ts.snap
index a00e9bb99c..035deb0bc1 100644
--- a/lib/manager/npm/extract/__snapshots__/index.spec.ts.snap
+++ b/lib/manager/npm/extract/__snapshots__/index.spec.ts.snap
@@ -18,6 +18,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": undefined,
   "packageJsonName": undefined,
   "packageJsonType": "app",
@@ -141,6 +142,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": undefined,
   "packageJsonName": undefined,
   "packageJsonType": "library",
@@ -304,6 +306,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": undefined,
   "packageJsonName": undefined,
   "packageJsonType": "app",
@@ -353,6 +356,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": undefined,
   "packageJsonName": undefined,
   "packageJsonType": "app",
@@ -413,6 +417,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": undefined,
   "packageJsonName": undefined,
   "packageJsonType": "library",
@@ -467,6 +472,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": undefined,
   "packageJsonName": undefined,
   "packageJsonType": "library",
@@ -603,6 +609,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": "1.0.0",
   "packageJsonName": "renovate",
   "packageJsonType": "app",
@@ -739,6 +746,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": "1.0.0",
   "packageJsonName": "renovate",
   "packageJsonType": "app",
@@ -875,6 +883,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": "1.0.0",
   "packageJsonName": "renovate",
   "packageJsonType": "app",
@@ -897,6 +906,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": "0.0.8",
   "packageJsonName": "@a/b",
   "packageJsonType": "app",
@@ -1035,6 +1045,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": "1.0.0",
   "packageJsonName": "renovate",
   "packageJsonType": "app",
@@ -1057,6 +1068,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": "0.0.8",
   "packageJsonName": "@a/b",
   "packageJsonType": "app",
@@ -1081,6 +1093,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": "0.0.8",
   "packageJsonName": "@a/b",
   "packageJsonType": "app",
@@ -1219,6 +1232,7 @@ Object {
   },
   "npmLock": undefined,
   "npmrc": undefined,
+  "packageFile": "package.json",
   "packageFileVersion": "1.0.0",
   "packageJsonName": "renovate",
   "packageJsonType": "app",
diff --git a/lib/manager/npm/extract/index.ts b/lib/manager/npm/extract/index.ts
index 838127aaa1..56bb8e110e 100644
--- a/lib/manager/npm/extract/index.ts
+++ b/lib/manager/npm/extract/index.ts
@@ -360,6 +360,7 @@ export async function extractPackageFile(
   }
 
   return {
+    packageFile: fileName,
     deps,
     packageJsonName,
     packageFileVersion,
@@ -392,15 +393,13 @@ export async function extractAllPackageFiles(
 ): Promise<PackageFile[]> {
   const npmFiles: PackageFile[] = [];
   for (const packageFile of packageFiles) {
+    // const npmrc = ini.parse((config.npmrc || '').replace(/\\n/g, '\n'));
     const content = await readLocalFile(packageFile, 'utf8');
     // istanbul ignore else
     if (content) {
-      const deps = await extractPackageFile(content, packageFile, config);
-      if (deps) {
-        npmFiles.push({
-          packageFile,
-          ...deps,
-        });
+      const res = await extractPackageFile(content, packageFile, config);
+      if (res) {
+        npmFiles.push(res);
       }
     } else {
       logger.debug({ packageFile }, 'packageFile has no content');
-- 
GitLab