@nodesecure/tree-walker 1.1.0 → 1.3.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +128 -128
- package/dist/Dependency.class.d.ts +5 -3
- package/dist/Dependency.class.d.ts.map +1 -1
- package/dist/Dependency.class.js +1 -2
- package/dist/Dependency.class.js.map +1 -1
- package/dist/npm/LocalDependencyTreeLoader.d.ts.map +1 -1
- package/dist/npm/LocalDependencyTreeLoader.js +2 -2
- package/dist/npm/LocalDependencyTreeLoader.js.map +1 -1
- package/dist/npm/walker.d.ts +2 -2
- package/dist/npm/walker.d.ts.map +1 -1
- package/dist/npm/walker.js +20 -14
- package/dist/npm/walker.js.map +1 -1
- package/package.json +46 -46
package/README.md
CHANGED
|
@@ -1,128 +1,128 @@
|
|
|
1
|
-
<p align="center"><h1 align="center">
|
|
2
|
-
@nodesecure/tree-walker
|
|
3
|
-
</h1>
|
|
4
|
-
|
|
5
|
-
<p align="center">
|
|
6
|
-
Fetch and walk the dependency tree of a given manifest
|
|
7
|
-
</p>
|
|
8
|
-
|
|
9
|
-
## Requirements
|
|
10
|
-
- [Node.js](https://nodejs.org/en/) v20 or higher
|
|
11
|
-
|
|
12
|
-
## Getting Started
|
|
13
|
-
|
|
14
|
-
This package is available in the Node Package Repository and can be easily installed with [npm](https://docs.npmjs.com/getting-started/what-is-npm) or [yarn](https://yarnpkg.com).
|
|
15
|
-
|
|
16
|
-
```bash
|
|
17
|
-
$ npm i @nodesecure/tree-walker
|
|
18
|
-
# or
|
|
19
|
-
$ yarn add @nodesecure/tree-walker
|
|
20
|
-
```
|
|
21
|
-
|
|
22
|
-
## Usage example
|
|
23
|
-
|
|
24
|
-
```ts
|
|
25
|
-
import os from "node:os";
|
|
26
|
-
|
|
27
|
-
import pacote from "pacote";
|
|
28
|
-
import { npm } from "@nodesecure/tree-walker";
|
|
29
|
-
|
|
30
|
-
const manifest = await pacote.manifest("some-package@1.0.0", {
|
|
31
|
-
cache: `${os.homedir()}/.npm`
|
|
32
|
-
});
|
|
33
|
-
|
|
34
|
-
const treeWalker = new npm.TreeWalker();
|
|
35
|
-
|
|
36
|
-
for await (const dependency of treeWalker.walk(manifest)) {
|
|
37
|
-
console.log(dependency);
|
|
38
|
-
}
|
|
39
|
-
```
|
|
40
|
-
|
|
41
|
-
> [!NOTE]
|
|
42
|
-
> This package has been designed to be used by the Scanner package/workspace.
|
|
43
|
-
|
|
44
|
-
## API
|
|
45
|
-
|
|
46
|
-
### npm.TreeWalker
|
|
47
|
-
|
|
48
|
-
#### constructor(options?: TreeWalkerOptions)
|
|
49
|
-
|
|
50
|
-
```ts
|
|
51
|
-
import pacote from "pacote";
|
|
52
|
-
import Arborist from "@npmcli/arborist";
|
|
53
|
-
|
|
54
|
-
interface LocalDependencyTreeLoaderProvider {
|
|
55
|
-
load(
|
|
56
|
-
location: string,
|
|
57
|
-
registry?: string
|
|
58
|
-
): Promise<Arborist.Node>;
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
interface PacoteProviderApi {
|
|
62
|
-
manifest(
|
|
63
|
-
spec: string,
|
|
64
|
-
opts?: pacote.Options
|
|
65
|
-
): Promise<pacote.AbbreviatedManifest & pacote.ManifestResult>;
|
|
66
|
-
}
|
|
67
|
-
|
|
68
|
-
interface TreeWalkerOptions {
|
|
69
|
-
registry?: string;
|
|
70
|
-
providers?: {
|
|
71
|
-
pacote?: PacoteProviderApi;
|
|
72
|
-
localTreeLoader?: LocalDependencyTreeLoaderProvider;
|
|
73
|
-
}
|
|
74
|
-
}
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
#### *walk(manifest: PackageJSON | ManifestVersion, options: WalkOptions): AsyncIterableIterator< DependencyJSON >
|
|
78
|
-
|
|
79
|
-
The `walk` method processes package metadata from a given **package.json file** or a **Manifest** result from the [pacote](https://www.npmjs.com/package/pacote) library.
|
|
80
|
-
|
|
81
|
-
The `options` parameter is described by the following TypeScript interface:
|
|
82
|
-
|
|
83
|
-
```ts
|
|
84
|
-
interface WalkOptions {
|
|
85
|
-
/**
|
|
86
|
-
* Specifies the maximum depth to traverse for each root dependency.
|
|
87
|
-
* For example, a value of 2 would mean only traversing dependencies and their immediate dependencies.
|
|
88
|
-
*
|
|
89
|
-
* @default Infinity
|
|
90
|
-
*/
|
|
91
|
-
maxDepth?: number;
|
|
92
|
-
|
|
93
|
-
/**
|
|
94
|
-
* Includes development dependencies in the walk.
|
|
95
|
-
* Note that enabling this option can significantly increase processing time.
|
|
96
|
-
*
|
|
97
|
-
* @default false
|
|
98
|
-
*/
|
|
99
|
-
includeDevDeps?: boolean;
|
|
100
|
-
|
|
101
|
-
/**
|
|
102
|
-
* Enables the use of Arborist for rapidly walking over the dependency tree.
|
|
103
|
-
* When enabled, it triggers different methods based on the presence of `node_modules`:
|
|
104
|
-
* - `loadActual()` if `node_modules` is available.
|
|
105
|
-
* - `loadVirtual()` otherwise.
|
|
106
|
-
*
|
|
107
|
-
* When disabled, it will iterate on all dependencies by using pacote
|
|
108
|
-
*/
|
|
109
|
-
packageLock?: {
|
|
110
|
-
/**
|
|
111
|
-
* Fetches all manifests for additional metadata.
|
|
112
|
-
* This option is useful only when `usePackageLock` is enabled.
|
|
113
|
-
*
|
|
114
|
-
* @default false
|
|
115
|
-
*/
|
|
116
|
-
fetchManifest?: boolean;
|
|
117
|
-
|
|
118
|
-
/**
|
|
119
|
-
* Specifies the location of the manifest file for Arborist.
|
|
120
|
-
* This is typically the path to the `package.json` file.
|
|
121
|
-
*/
|
|
122
|
-
location: string;
|
|
123
|
-
};
|
|
124
|
-
}
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
## License
|
|
128
|
-
MIT
|
|
1
|
+
<p align="center"><h1 align="center">
|
|
2
|
+
@nodesecure/tree-walker
|
|
3
|
+
</h1>
|
|
4
|
+
|
|
5
|
+
<p align="center">
|
|
6
|
+
Fetch and walk the dependency tree of a given manifest
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
## Requirements
|
|
10
|
+
- [Node.js](https://nodejs.org/en/) v20 or higher
|
|
11
|
+
|
|
12
|
+
## Getting Started
|
|
13
|
+
|
|
14
|
+
This package is available in the Node Package Repository and can be easily installed with [npm](https://docs.npmjs.com/getting-started/what-is-npm) or [yarn](https://yarnpkg.com).
|
|
15
|
+
|
|
16
|
+
```bash
|
|
17
|
+
$ npm i @nodesecure/tree-walker
|
|
18
|
+
# or
|
|
19
|
+
$ yarn add @nodesecure/tree-walker
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
## Usage example
|
|
23
|
+
|
|
24
|
+
```ts
|
|
25
|
+
import os from "node:os";
|
|
26
|
+
|
|
27
|
+
import pacote from "pacote";
|
|
28
|
+
import { npm } from "@nodesecure/tree-walker";
|
|
29
|
+
|
|
30
|
+
const manifest = await pacote.manifest("some-package@1.0.0", {
|
|
31
|
+
cache: `${os.homedir()}/.npm`
|
|
32
|
+
});
|
|
33
|
+
|
|
34
|
+
const treeWalker = new npm.TreeWalker();
|
|
35
|
+
|
|
36
|
+
for await (const dependency of treeWalker.walk(manifest)) {
|
|
37
|
+
console.log(dependency);
|
|
38
|
+
}
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
> [!NOTE]
|
|
42
|
+
> This package has been designed to be used by the Scanner package/workspace.
|
|
43
|
+
|
|
44
|
+
## API
|
|
45
|
+
|
|
46
|
+
### npm.TreeWalker
|
|
47
|
+
|
|
48
|
+
#### constructor(options?: TreeWalkerOptions)
|
|
49
|
+
|
|
50
|
+
```ts
|
|
51
|
+
import pacote from "pacote";
|
|
52
|
+
import Arborist from "@npmcli/arborist";
|
|
53
|
+
|
|
54
|
+
interface LocalDependencyTreeLoaderProvider {
|
|
55
|
+
load(
|
|
56
|
+
location: string,
|
|
57
|
+
registry?: string
|
|
58
|
+
): Promise<Arborist.Node>;
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
interface PacoteProviderApi {
|
|
62
|
+
manifest(
|
|
63
|
+
spec: string,
|
|
64
|
+
opts?: pacote.Options
|
|
65
|
+
): Promise<pacote.AbbreviatedManifest & pacote.ManifestResult>;
|
|
66
|
+
}
|
|
67
|
+
|
|
68
|
+
interface TreeWalkerOptions {
|
|
69
|
+
registry?: string;
|
|
70
|
+
providers?: {
|
|
71
|
+
pacote?: PacoteProviderApi;
|
|
72
|
+
localTreeLoader?: LocalDependencyTreeLoaderProvider;
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
#### *walk(manifest: PackageJSON | ManifestVersion, options: WalkOptions): AsyncIterableIterator< DependencyJSON >
|
|
78
|
+
|
|
79
|
+
The `walk` method processes package metadata from a given **package.json file** or a **Manifest** result from the [pacote](https://www.npmjs.com/package/pacote) library.
|
|
80
|
+
|
|
81
|
+
The `options` parameter is described by the following TypeScript interface:
|
|
82
|
+
|
|
83
|
+
```ts
|
|
84
|
+
interface WalkOptions {
|
|
85
|
+
/**
|
|
86
|
+
* Specifies the maximum depth to traverse for each root dependency.
|
|
87
|
+
* For example, a value of 2 would mean only traversing dependencies and their immediate dependencies.
|
|
88
|
+
*
|
|
89
|
+
* @default Infinity
|
|
90
|
+
*/
|
|
91
|
+
maxDepth?: number;
|
|
92
|
+
|
|
93
|
+
/**
|
|
94
|
+
* Includes development dependencies in the walk.
|
|
95
|
+
* Note that enabling this option can significantly increase processing time.
|
|
96
|
+
*
|
|
97
|
+
* @default false
|
|
98
|
+
*/
|
|
99
|
+
includeDevDeps?: boolean;
|
|
100
|
+
|
|
101
|
+
/**
|
|
102
|
+
* Enables the use of Arborist for rapidly walking over the dependency tree.
|
|
103
|
+
* When enabled, it triggers different methods based on the presence of `node_modules`:
|
|
104
|
+
* - `loadActual()` if `node_modules` is available.
|
|
105
|
+
* - `loadVirtual()` otherwise.
|
|
106
|
+
*
|
|
107
|
+
* When disabled, it will iterate on all dependencies by using pacote
|
|
108
|
+
*/
|
|
109
|
+
packageLock?: {
|
|
110
|
+
/**
|
|
111
|
+
* Fetches all manifests for additional metadata.
|
|
112
|
+
* This option is useful only when `usePackageLock` is enabled.
|
|
113
|
+
*
|
|
114
|
+
* @default false
|
|
115
|
+
*/
|
|
116
|
+
fetchManifest?: boolean;
|
|
117
|
+
|
|
118
|
+
/**
|
|
119
|
+
* Specifies the location of the manifest file for Arborist.
|
|
120
|
+
* This is typically the path to the `package.json` file.
|
|
121
|
+
*/
|
|
122
|
+
location: string;
|
|
123
|
+
};
|
|
124
|
+
}
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
## License
|
|
128
|
+
MIT
|
|
@@ -1,14 +1,16 @@
|
|
|
1
|
-
import
|
|
1
|
+
import type { Warning, WarningDefault } from "@nodesecure/js-x-ray";
|
|
2
|
+
import type { PackageModuleType } from "@nodesecure/mama";
|
|
2
3
|
export type NpmSpec = `${string}@${string}`;
|
|
3
4
|
export interface DependencyJSON {
|
|
4
5
|
id: number;
|
|
6
|
+
type: PackageModuleType;
|
|
5
7
|
name: string;
|
|
6
8
|
version: string;
|
|
7
9
|
usedBy: Record<string, string>;
|
|
8
10
|
isDevDependency: boolean;
|
|
9
11
|
existOnRemoteRegistry: boolean;
|
|
10
12
|
flags: string[];
|
|
11
|
-
warnings:
|
|
13
|
+
warnings: Warning<WarningDefault>[];
|
|
12
14
|
alias: Record<string, string>;
|
|
13
15
|
dependencyCount: number;
|
|
14
16
|
gitUrl: string | null;
|
|
@@ -25,7 +27,7 @@ export declare class Dependency {
|
|
|
25
27
|
existOnRemoteRegistry: boolean;
|
|
26
28
|
dependencyCount: number;
|
|
27
29
|
gitUrl: null | string;
|
|
28
|
-
warnings:
|
|
30
|
+
warnings: Warning<WarningDefault>[];
|
|
29
31
|
alias: Record<string, string>;
|
|
30
32
|
constructor(name: string, version: string, options?: DependencyOptions);
|
|
31
33
|
addChildren(): void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dependency.class.d.ts","sourceRoot":"","sources":["../src/Dependency.class.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Dependency.class.d.ts","sourceRoot":"","sources":["../src/Dependency.class.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACpE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAE1D,MAAM,MAAM,OAAO,GAAG,GAAG,MAAM,IAAI,MAAM,EAAE,CAAC;AAE5C,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,iBAAiB,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC9B,eAAe,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,MAAM,iBAAiB,GAAG;IAC9B,MAAM,CAAC,EAAE,UAAU,CAAC;CACrB,GAAG,OAAO,CAAC,IAAI,CAAC,cAAc,EAAE,IAAI,GAAG,MAAM,GAAG,SAAS,CAAC,CAAC,CAAC;AAE7D,qBAAa,UAAU;;IACrB,MAAM,CAAC,SAAS,SAAK;IAEd,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,UAAS;IACZ,qBAAqB,UAAQ;IAC7B,eAAe,SAAK;IACpB,MAAM,EAAE,IAAI,GAAG,MAAM,CAAQ;IAC7B,QAAQ,EAAE,OAAO,CAAC,cAAc,CAAC,EAAE,CAAM;IACzC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAM;gBAMxC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,OAAO,GAAE,iBAAsB;IAcjC,WAAW;IAIX,IAAI,IAAI,IAAI,OAAO,CAElB;IAED,IAAI,KAAK,aAER;IAED,IAAI,MAAM;;MAET;IAED,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,SAAS,UAAO;IAc1C,KAAK,CAAC,GAAG,CAAC,EAAE,MAAM;IASlB,mBAAmB,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,cAAc;CAoBvD"}
|
package/dist/Dependency.class.js
CHANGED
|
@@ -1,5 +1,3 @@
|
|
|
1
|
-
// Import Third-party Dependencies
|
|
2
|
-
import * as JSXRay from "@nodesecure/js-x-ray";
|
|
3
1
|
export class Dependency {
|
|
4
2
|
static currentId = 1;
|
|
5
3
|
name;
|
|
@@ -58,6 +56,7 @@ export class Dependency {
|
|
|
58
56
|
}
|
|
59
57
|
return {
|
|
60
58
|
id: typeof customId === "number" ? customId : Dependency.currentId++,
|
|
59
|
+
type: "cjs",
|
|
61
60
|
name: this.name,
|
|
62
61
|
version: this.version,
|
|
63
62
|
usedBy: this.parent,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dependency.class.js","sourceRoot":"","sources":["../src/Dependency.class.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"Dependency.class.js","sourceRoot":"","sources":["../src/Dependency.class.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalDependencyTreeLoader.d.ts","sourceRoot":"","sources":["../../src/npm/LocalDependencyTreeLoader.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LocalDependencyTreeLoader.d.ts","sourceRoot":"","sources":["../../src/npm/LocalDependencyTreeLoader.ts"],"names":[],"mappings":"AAKA,OAAO,QAAQ,MAAM,kBAAkB,CAAC;AAKxC,MAAM,WAAW,iCAAiC;IAChD,IAAI,CACF,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;CAC3B;AAED,qBAAa,yBAA0B,YAAW,iCAAiC;IAC3E,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,QAAQ,CAAC,EAAE,MAAM,GAChB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;CAoB1B"}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
// Import Node.js Dependencies
|
|
2
2
|
import path from "node:path";
|
|
3
3
|
import fs from "node:fs/promises";
|
|
4
|
-
// Import Internal Dependencies
|
|
5
|
-
import * as utils from "../utils/index.js";
|
|
6
4
|
// Import Third-party Dependencies
|
|
7
5
|
import Arborist from "@npmcli/arborist";
|
|
6
|
+
// Import Internal Dependencies
|
|
7
|
+
import * as utils from "../utils/index.js";
|
|
8
8
|
export class LocalDependencyTreeLoader {
|
|
9
9
|
async load(location, registry) {
|
|
10
10
|
const arb = new Arborist({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LocalDependencyTreeLoader.js","sourceRoot":"","sources":["../../src/npm/LocalDependencyTreeLoader.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElC,+BAA+B;AAC/B,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"LocalDependencyTreeLoader.js","sourceRoot":"","sources":["../../src/npm/LocalDependencyTreeLoader.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,kBAAkB,CAAC;AAElC,kCAAkC;AAClC,OAAO,QAAQ,MAAM,kBAAkB,CAAC;AAExC,+BAA+B;AAC/B,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAS3C,MAAM,OAAO,yBAAyB;IACpC,KAAK,CAAC,IAAI,CACR,QAAgB,EAChB,QAAiB;QAEjB,MAAM,GAAG,GAAG,IAAI,QAAQ,CAAC;YACvB,GAAG,KAAK,CAAC,SAAS;YAClB,IAAI,EAAE,QAAQ;YACd,QAAQ;SACT,CAAC,CAAC;QAEH,IAAI,CAAC;YACH,MAAM,EAAE,CAAC,MAAM,CACb,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,cAAc,CAAC,CACpC,CAAC;YAEF,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC;YAEvB,OAAO,GAAG,CAAC,cAAc,EAAE,CAAC;QAC9B,CAAC;QACD,MAAM,CAAC;YACL,OAAO,GAAG,CAAC,WAAW,EAAE,CAAC;QAC3B,CAAC;IACH,CAAC;CACF"}
|
package/dist/npm/walker.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import pacote from "pacote";
|
|
2
|
-
import type { PackageJSON, ManifestVersion } from "@nodesecure/npm-types";
|
|
2
|
+
import type { PackageJSON, WorkspacesPackageJSON, ManifestVersion } from "@nodesecure/npm-types";
|
|
3
3
|
import { type LocalDependencyTreeLoaderProvider } from "./LocalDependencyTreeLoader.js";
|
|
4
4
|
import { type DependencyJSON, type NpmSpec } from "../Dependency.class.js";
|
|
5
5
|
export interface PacoteProviderApi {
|
|
@@ -64,6 +64,6 @@ export declare class TreeWalker {
|
|
|
64
64
|
private resolveDependencyVersion;
|
|
65
65
|
private walkRemoteDependency;
|
|
66
66
|
private walkLocalDependency;
|
|
67
|
-
walk(manifest: PackageJSON | ManifestVersion, options?: WalkOptions): AsyncIterableIterator<DependencyJSON>;
|
|
67
|
+
walk(manifest: PackageJSON | WorkspacesPackageJSON | ManifestVersion, options?: WalkOptions): AsyncIterableIterator<DependencyJSON>;
|
|
68
68
|
}
|
|
69
69
|
//# sourceMappingURL=walker.d.ts.map
|
package/dist/npm/walker.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"walker.d.ts","sourceRoot":"","sources":["../../src/npm/walker.ts"],"names":[],"mappings":"AAMA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAK5B,OAAO,KAAK,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"walker.d.ts","sourceRoot":"","sources":["../../src/npm/walker.ts"],"names":[],"mappings":"AAMA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAK5B,OAAO,KAAK,EAAE,WAAW,EAAE,qBAAqB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAIjG,OAAO,EAEL,KAAK,iCAAiC,EACvC,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAEL,KAAK,cAAc,EACnB,KAAK,OAAO,EACb,MAAM,wBAAwB,CAAC;AAiBhC,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CACN,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,CAAC,OAAO,GACpB,OAAO,CAAC,MAAM,CAAC,mBAAmB,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC;IAC/D,SAAS,CACP,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,CAAC,OAAO,GACpB,OAAO,CAAC,MAAM,CAAC,oBAAoB,GAAG,MAAM,CAAC,eAAe,CAAC,CAAC;CAClE;AAED,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE;QACV,MAAM,CAAC,EAAE,iBAAiB,CAAC;QAC3B,eAAe,CAAC,EAAE,iCAAiC,CAAC;KACrD,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B;;;;;OAKG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAElB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;IAEzB;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE;QACZ;;;;;WAKG;QACH,aAAa,CAAC,EAAE,OAAO,CAAC;QAExB;;;WAGG;QACH,QAAQ,EAAE,MAAM,CAAC;KAClB,CAAC;CACH;AAED,qBAAa,UAAU;IACrB;;OAEG;IACI,YAAY,EAAE,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAa;IACrD,QAAQ,EAAE,MAAM,CAAC;IAExB,OAAO,CAAC,SAAS,CAGd;gBAGD,OAAO,GAAE,iBAAsB;IAQjC,OAAO,KAAK,eAAe,GAM1B;IAED,OAAO,CAAC,eAAe;YAaT,wBAAwB;YA2BvB,oBAAoB;YAqEpB,mBAAmB;IAiE3B,IAAI,CACT,QAAQ,EAAE,WAAW,GAAG,qBAAqB,GAAG,eAAe,EAC/D,OAAO,GAAE,WAAgB,GACxB,qBAAqB,CAAC,cAAc,CAAC;CA+FzC"}
|
package/dist/npm/walker.js
CHANGED
|
@@ -107,7 +107,7 @@ export class TreeWalker {
|
|
|
107
107
|
yield current;
|
|
108
108
|
}
|
|
109
109
|
async *walkLocalDependency(packageName, node, options) {
|
|
110
|
-
const { parent, fetchManifest = false, includeDevDeps = false } = options;
|
|
110
|
+
const { currDepth = 1, maxDepth, parent, fetchManifest = false, includeDevDeps = false } = options;
|
|
111
111
|
const { version, integrity = node.integrity } = node.package;
|
|
112
112
|
const updatedVersion = version === "*" || typeof version === "undefined" ?
|
|
113
113
|
"latest" : version;
|
|
@@ -127,18 +127,23 @@ export class TreeWalker {
|
|
|
127
127
|
}
|
|
128
128
|
}
|
|
129
129
|
current.addFlag("hasDependencies", node.edgesOut.size > 0);
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
}
|
|
134
|
-
const
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
141
|
-
|
|
130
|
+
if (currDepth < maxDepth) {
|
|
131
|
+
const config = {
|
|
132
|
+
currDepth: currDepth + 1, parent: current, maxDepth, fetchManifest, includeDevDeps
|
|
133
|
+
};
|
|
134
|
+
for (const [packageName, { to: toNode }] of node.edgesOut) {
|
|
135
|
+
if (toNode === null || (!includeDevDeps && toNode.dev)) {
|
|
136
|
+
continue;
|
|
137
|
+
}
|
|
138
|
+
const spec = `${packageName}@${toNode.package.version}`;
|
|
139
|
+
if (this.relationsMap.has(spec)) {
|
|
140
|
+
current.addChildren();
|
|
141
|
+
this.relationsMap.get(spec).add(current.spec);
|
|
142
|
+
}
|
|
143
|
+
else {
|
|
144
|
+
this.relationsMap.set(spec, new Set([current.spec]));
|
|
145
|
+
yield* this.walkLocalDependency(packageName, toNode, config);
|
|
146
|
+
}
|
|
142
147
|
}
|
|
143
148
|
}
|
|
144
149
|
yield current;
|
|
@@ -147,7 +152,7 @@ export class TreeWalker {
|
|
|
147
152
|
this.relationsMap.clear();
|
|
148
153
|
const { maxDepth = Infinity, packageLock = null, includeDevDeps = false } = options;
|
|
149
154
|
const { dependencies, customResolvers, alias } = utils.mergeDependencies(manifest);
|
|
150
|
-
const rootDependency = new Dependency(manifest
|
|
155
|
+
const rootDependency = new Dependency(manifest?.name ?? "workspace", manifest?.version ?? "1.0.0", {
|
|
151
156
|
alias: Object.fromEntries(alias)
|
|
152
157
|
});
|
|
153
158
|
try {
|
|
@@ -190,6 +195,7 @@ export class TreeWalker {
|
|
|
190
195
|
.filter(edgesOut.entries(), ([, { to }]) => to !== null && (includeDevDeps ? true : (!to.dev || to.isWorkspace)))
|
|
191
196
|
.map(([packageName, { to }]) => [packageName, to.isWorkspace ? to.target : to])
|
|
192
197
|
.map(([packageName, to]) => this.walkLocalDependency(packageName, to, {
|
|
198
|
+
maxDepth,
|
|
193
199
|
parent: rootDependency,
|
|
194
200
|
includeDevDeps,
|
|
195
201
|
...packageLockOptions
|
package/dist/npm/walker.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"walker.js","sourceRoot":"","sources":["../../src/npm/walker.ts"],"names":[],"mappings":"AAAA,8BAA8B;AAC9B,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,kCAAkC;AAClC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,qBAAqB,MAAM,yBAAyB,CAAC;AAC5D,OAAO,MAAM,MAAM,QAAQ,CAAC;AAC5B,OAAO,QAAQ,MAAM,kBAAkB,CAAC;AACxC,aAAa;AACb,OAAO,YAAY,MAAM,mBAAmB,CAAC;AAC7C,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAGjE,+BAA+B;AAC/B,OAAO,KAAK,KAAK,MAAM,mBAAmB,CAAC;AAC3C,OAAO,EACL,yBAAyB,EAE1B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,UAAU,EAGX,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"walker.js","sourceRoot":"","sources":["../../src/npm/walker.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,46 +1,46 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "@nodesecure/tree-walker",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "NodeSecure tree walker",
|
|
5
|
-
"type": "module",
|
|
6
|
-
"exports": "./dist/index.js",
|
|
7
|
-
"types": "./dist/index.d.ts",
|
|
8
|
-
"scripts": {
|
|
9
|
-
"build": "tsc -b",
|
|
10
|
-
"prepublishOnly": "npm run build",
|
|
11
|
-
"test-only": "
|
|
12
|
-
"test": "c8 -r html npm run test-only"
|
|
13
|
-
},
|
|
14
|
-
"files": [
|
|
15
|
-
"dist"
|
|
16
|
-
],
|
|
17
|
-
"keywords": [
|
|
18
|
-
"NodeSecure",
|
|
19
|
-
"tree",
|
|
20
|
-
"walker"
|
|
21
|
-
],
|
|
22
|
-
"author": "GENTILHOMME Thomas <gentilhomme.thomas@gmail.com>",
|
|
23
|
-
"license": "MIT",
|
|
24
|
-
"repository": {
|
|
25
|
-
"type": "git",
|
|
26
|
-
"url": "git+https://github.com/NodeSecure/scanner.git"
|
|
27
|
-
},
|
|
28
|
-
"bugs": {
|
|
29
|
-
"url": "https://github.com/NodeSecure/scanner/issues"
|
|
30
|
-
},
|
|
31
|
-
"homepage": "https://github.com/NodeSecure/tree/master/workspaces/tree-walker#readme",
|
|
32
|
-
"dependencies": {
|
|
33
|
-
"@nodesecure/js-x-ray": "^
|
|
34
|
-
"@nodesecure/npm-registry-sdk": "^3.0.0",
|
|
35
|
-
"@nodesecure/npm-types": "^1.1.0",
|
|
36
|
-
"@npmcli/arborist": "^
|
|
37
|
-
"combine-async-iterators": "^3.0.0",
|
|
38
|
-
"itertools": "^2.3.1",
|
|
39
|
-
"npm-pick-manifest": "^
|
|
40
|
-
"pacote": "^
|
|
41
|
-
"semver": "^7.6.0"
|
|
42
|
-
},
|
|
43
|
-
"devDependencies": {
|
|
44
|
-
"@types/npmcli__arborist": "^
|
|
45
|
-
}
|
|
46
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "@nodesecure/tree-walker",
|
|
3
|
+
"version": "1.3.0",
|
|
4
|
+
"description": "NodeSecure tree walker",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"exports": "./dist/index.js",
|
|
7
|
+
"types": "./dist/index.d.ts",
|
|
8
|
+
"scripts": {
|
|
9
|
+
"build": "tsc -b",
|
|
10
|
+
"prepublishOnly": "npm run build",
|
|
11
|
+
"test-only": "tsx --test ./test/**/*.spec.ts",
|
|
12
|
+
"test": "c8 -r html npm run test-only"
|
|
13
|
+
},
|
|
14
|
+
"files": [
|
|
15
|
+
"dist"
|
|
16
|
+
],
|
|
17
|
+
"keywords": [
|
|
18
|
+
"NodeSecure",
|
|
19
|
+
"tree",
|
|
20
|
+
"walker"
|
|
21
|
+
],
|
|
22
|
+
"author": "GENTILHOMME Thomas <gentilhomme.thomas@gmail.com>",
|
|
23
|
+
"license": "MIT",
|
|
24
|
+
"repository": {
|
|
25
|
+
"type": "git",
|
|
26
|
+
"url": "git+https://github.com/NodeSecure/scanner.git"
|
|
27
|
+
},
|
|
28
|
+
"bugs": {
|
|
29
|
+
"url": "https://github.com/NodeSecure/scanner/issues"
|
|
30
|
+
},
|
|
31
|
+
"homepage": "https://github.com/NodeSecure/tree/master/workspaces/tree-walker#readme",
|
|
32
|
+
"dependencies": {
|
|
33
|
+
"@nodesecure/js-x-ray": "^8.1.0",
|
|
34
|
+
"@nodesecure/npm-registry-sdk": "^3.0.0",
|
|
35
|
+
"@nodesecure/npm-types": "^1.1.0",
|
|
36
|
+
"@npmcli/arborist": "^9.0.2",
|
|
37
|
+
"combine-async-iterators": "^3.0.0",
|
|
38
|
+
"itertools": "^2.3.1",
|
|
39
|
+
"npm-pick-manifest": "^10.0.0",
|
|
40
|
+
"pacote": "^21.0.0",
|
|
41
|
+
"semver": "^7.6.0"
|
|
42
|
+
},
|
|
43
|
+
"devDependencies": {
|
|
44
|
+
"@types/npmcli__arborist": "^6.3.0"
|
|
45
|
+
}
|
|
46
|
+
}
|