@monorepolint/utils 0.6.0-alpha.4 → 0.6.0-alpha.6
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/.turbo/turbo-clean.log +1 -1
- package/.turbo/turbo-compile-typescript.log +1 -1
- package/.turbo/turbo-lint.log +1 -1
- package/.turbo/turbo-test.log +18 -19
- package/.turbo/turbo-transpile-typescript.log +5 -5
- package/CHANGELOG.md +12 -0
- package/build/js/index.js +12 -5
- package/build/js/index.js.map +1 -1
- package/build/tsconfig.tsbuildinfo +1 -1
- package/build/types/CachingHost.d.ts.map +1 -1
- package/coverage/AggregateTiming.ts.html +131 -131
- package/coverage/CachingHost.ts.html +31 -7
- package/coverage/Host.ts.html +1 -1
- package/coverage/PackageJson.ts.html +1 -1
- package/coverage/SimpleHost.ts.html +118 -118
- package/coverage/Table.ts.html +598 -598
- package/coverage/Timing.ts.html +100 -100
- package/coverage/block-navigation.js +1 -1
- package/coverage/clover.xml +756 -951
- package/coverage/coverage-final.json +12 -12
- package/coverage/findWorkspaceDir.ts.html +81 -81
- package/coverage/getPackageNameToDir.ts.html +66 -66
- package/coverage/getWorkspacePackageDirs.ts.html +147 -147
- package/coverage/index.html +126 -126
- package/coverage/index.ts.html +2 -2
- package/coverage/matchesAnyGlob.ts.html +264 -264
- package/coverage/mutateJson.ts.html +31 -31
- package/coverage/nanosecondsToSanity.ts.html +22 -22
- package/coverage/sorter.js +21 -7
- package/package.json +8 -9
- package/src/CachingHost.ts +9 -1
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>0/31</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">0% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/
|
|
35
|
+
<span class='fraction'>0/1</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">0% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>0/
|
|
42
|
+
<span class='fraction'>0/1</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>0/31</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
</div>
|
|
62
62
|
</template>
|
|
63
63
|
</div>
|
|
64
|
-
<div class='status-line
|
|
64
|
+
<div class='status-line low'></div>
|
|
65
65
|
<pre><table class="coverage">
|
|
66
66
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
67
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -109,98 +109,98 @@
|
|
|
109
109
|
<a name='L44'></a><a href='#L44'>44</a>
|
|
110
110
|
<a name='L45'></a><a href='#L45'>45</a>
|
|
111
111
|
<a name='L46'></a><a href='#L46'>46</a>
|
|
112
|
-
<a name='L47'></a><a href='#L47'>47</a></td><td class="line-coverage quiet"><span class="cline-any cline-
|
|
112
|
+
<a name='L47'></a><a href='#L47'>47</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
|
113
113
|
<span class="cline-any cline-neutral"> </span>
|
|
114
114
|
<span class="cline-any cline-neutral"> </span>
|
|
115
115
|
<span class="cline-any cline-neutral"> </span>
|
|
116
116
|
<span class="cline-any cline-neutral"> </span>
|
|
117
117
|
<span class="cline-any cline-neutral"> </span>
|
|
118
118
|
<span class="cline-any cline-neutral"> </span>
|
|
119
|
-
<span class="cline-any cline-
|
|
120
|
-
<span class="cline-any cline-
|
|
121
|
-
<span class="cline-any cline-
|
|
122
|
-
<span class="cline-any cline-
|
|
123
|
-
<span class="cline-any cline-
|
|
124
|
-
<span class="cline-any cline-
|
|
125
|
-
<span class="cline-any cline-
|
|
126
|
-
<span class="cline-any cline-
|
|
127
|
-
<span class="cline-any cline-
|
|
128
|
-
<span class="cline-any cline-
|
|
129
|
-
<span class="cline-any cline-
|
|
130
|
-
<span class="cline-any cline-
|
|
131
|
-
<span class="cline-any cline-
|
|
132
|
-
<span class="cline-any cline-
|
|
133
|
-
<span class="cline-any cline-
|
|
134
|
-
<span class="cline-any cline-
|
|
135
|
-
<span class="cline-any cline-
|
|
136
|
-
<span class="cline-any cline-
|
|
137
|
-
<span class="cline-any cline-
|
|
138
|
-
<span class="cline-any cline-
|
|
139
|
-
<span class="cline-any cline-
|
|
140
|
-
<span class="cline-any cline-
|
|
141
|
-
<span class="cline-any cline-
|
|
142
|
-
<span class="cline-any cline-
|
|
143
|
-
<span class="cline-any cline-
|
|
144
|
-
<span class="cline-any cline-
|
|
145
|
-
<span class="cline-any cline-
|
|
146
|
-
<span class="cline-any cline-
|
|
147
|
-
<span class="cline-any cline-
|
|
148
|
-
<span class="cline-any cline-
|
|
149
|
-
<span class="cline-any cline-
|
|
150
|
-
<span class="cline-any cline-
|
|
151
|
-
<span class="cline-any cline-
|
|
152
|
-
<span class="cline-any cline-
|
|
153
|
-
<span class="cline-any cline-
|
|
154
|
-
<span class="cline-any cline-
|
|
155
|
-
<span class="cline-any cline-
|
|
156
|
-
<span class="cline-any cline-
|
|
157
|
-
<span class="cline-any cline-
|
|
158
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"
|
|
119
|
+
<span class="cline-any cline-no"> </span>
|
|
120
|
+
<span class="cline-any cline-no"> </span>
|
|
121
|
+
<span class="cline-any cline-no"> </span>
|
|
122
|
+
<span class="cline-any cline-neutral"> </span>
|
|
123
|
+
<span class="cline-any cline-neutral"> </span>
|
|
124
|
+
<span class="cline-any cline-neutral"> </span>
|
|
125
|
+
<span class="cline-any cline-no"> </span>
|
|
126
|
+
<span class="cline-any cline-no"> </span>
|
|
127
|
+
<span class="cline-any cline-no"> </span>
|
|
128
|
+
<span class="cline-any cline-no"> </span>
|
|
129
|
+
<span class="cline-any cline-no"> </span>
|
|
130
|
+
<span class="cline-any cline-no"> </span>
|
|
131
|
+
<span class="cline-any cline-neutral"> </span>
|
|
132
|
+
<span class="cline-any cline-no"> </span>
|
|
133
|
+
<span class="cline-any cline-no"> </span>
|
|
134
|
+
<span class="cline-any cline-no"> </span>
|
|
135
|
+
<span class="cline-any cline-no"> </span>
|
|
136
|
+
<span class="cline-any cline-neutral"> </span>
|
|
137
|
+
<span class="cline-any cline-no"> </span>
|
|
138
|
+
<span class="cline-any cline-no"> </span>
|
|
139
|
+
<span class="cline-any cline-no"> </span>
|
|
140
|
+
<span class="cline-any cline-no"> </span>
|
|
141
|
+
<span class="cline-any cline-neutral"> </span>
|
|
142
|
+
<span class="cline-any cline-neutral"> </span>
|
|
143
|
+
<span class="cline-any cline-no"> </span>
|
|
144
|
+
<span class="cline-any cline-no"> </span>
|
|
145
|
+
<span class="cline-any cline-no"> </span>
|
|
146
|
+
<span class="cline-any cline-no"> </span>
|
|
147
|
+
<span class="cline-any cline-no"> </span>
|
|
148
|
+
<span class="cline-any cline-no"> </span>
|
|
149
|
+
<span class="cline-any cline-no"> </span>
|
|
150
|
+
<span class="cline-any cline-neutral"> </span>
|
|
151
|
+
<span class="cline-any cline-no"> </span>
|
|
152
|
+
<span class="cline-any cline-no"> </span>
|
|
153
|
+
<span class="cline-any cline-no"> </span>
|
|
154
|
+
<span class="cline-any cline-no"> </span>
|
|
155
|
+
<span class="cline-any cline-neutral"> </span>
|
|
156
|
+
<span class="cline-any cline-no"> </span>
|
|
157
|
+
<span class="cline-any cline-no"> </span>
|
|
158
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >/*!<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
|
159
159
|
* Copyright 2019 Palantir Technologies, Inc.
|
|
160
160
|
*
|
|
161
161
|
* Licensed under the MIT license. See LICENSE file in the project root for details.
|
|
162
162
|
*
|
|
163
163
|
*/
|
|
164
164
|
|
|
165
|
-
import { findUp } from "find-up"
|
|
166
|
-
import * as fs from "fs"
|
|
167
|
-
import * as path from "path"
|
|
165
|
+
<span class="cstat-no" title="statement not covered" >import { findUp } from "find-up";</span>
|
|
166
|
+
<span class="cstat-no" title="statement not covered" >import * as fs from "fs";</span>
|
|
167
|
+
<span class="cstat-no" title="statement not covered" >import * as path from "path";</span>
|
|
168
168
|
import { Host } from "./Host.js";
|
|
169
169
|
import { PackageJson } from "./PackageJson.js";
|
|
170
170
|
|
|
171
|
-
export async function findPnpmWorkspaceDir(cwd: string) {
|
|
172
|
-
const workspaceManifestLocation = await findUp("pnpm-workspace.yaml", {
|
|
173
|
-
cwd: await fs.promises.realpath(cwd)
|
|
174
|
-
})
|
|
175
|
-
return workspaceManifestLocation && path.dirname(workspaceManifestLocation)
|
|
176
|
-
}
|
|
171
|
+
<span class="cstat-no" title="statement not covered" >export async function findPnpmWorkspaceDir(cwd: string) {</span>
|
|
172
|
+
<span class="cstat-no" title="statement not covered" > const workspaceManifestLocation = await findUp("pnpm-workspace.yaml", {</span>
|
|
173
|
+
<span class="cstat-no" title="statement not covered" > cwd: await fs.promises.realpath(cwd),</span>
|
|
174
|
+
<span class="cstat-no" title="statement not covered" > });</span>
|
|
175
|
+
<span class="cstat-no" title="statement not covered" > return workspaceManifestLocation && path.dirname(workspaceManifestLocation);</span>
|
|
176
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
177
177
|
|
|
178
|
-
export async function findWorkspaceDir(
|
|
179
|
-
host: Pick<Host, "readJson" | "exists">
|
|
180
|
-
dir: string
|
|
181
|
-
): Promise<string | undefined> {
|
|
178
|
+
<span class="cstat-no" title="statement not covered" >export async function findWorkspaceDir(</span>
|
|
179
|
+
<span class="cstat-no" title="statement not covered" > host: Pick<Host, "readJson" | "exists">,</span>
|
|
180
|
+
<span class="cstat-no" title="statement not covered" > dir: string,</span>
|
|
181
|
+
<span class="cstat-no" title="statement not covered" >): Promise<string | undefined> {</span>
|
|
182
182
|
// Defining workspaces in package.json is not necessary in PNPM
|
|
183
|
-
const maybePnpmWorkspaceDir = await findPnpmWorkspaceDir(dir)
|
|
184
|
-
if (maybePnpmWorkspaceDir != null) {
|
|
185
|
-
return maybePnpmWorkspaceDir
|
|
186
|
-
}
|
|
183
|
+
<span class="cstat-no" title="statement not covered" > const maybePnpmWorkspaceDir = await findPnpmWorkspaceDir(dir);</span>
|
|
184
|
+
<span class="cstat-no" title="statement not covered" > if (maybePnpmWorkspaceDir != null) {</span>
|
|
185
|
+
<span class="cstat-no" title="statement not covered" > return maybePnpmWorkspaceDir;</span>
|
|
186
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
187
187
|
|
|
188
188
|
// We may not be in a repository that uses PNPM, look for workspaces in package.json
|
|
189
|
-
const packagePath = path.join(dir, "package.json")
|
|
190
|
-
if (host.exists(packagePath)) {
|
|
191
|
-
const packageJson = host.readJson(packagePath) as PackageJson
|
|
192
|
-
if (packageJson.workspaces !== undefined) {
|
|
193
|
-
return dir
|
|
194
|
-
}
|
|
195
|
-
}
|
|
189
|
+
<span class="cstat-no" title="statement not covered" > const packagePath = path.join(dir, "package.json");</span>
|
|
190
|
+
<span class="cstat-no" title="statement not covered" > if (host.exists(packagePath)) {</span>
|
|
191
|
+
<span class="cstat-no" title="statement not covered" > const packageJson = host.readJson(packagePath) as PackageJson;</span>
|
|
192
|
+
<span class="cstat-no" title="statement not covered" > if (packageJson.workspaces !== undefined) {</span>
|
|
193
|
+
<span class="cstat-no" title="statement not covered" > return dir;</span>
|
|
194
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
195
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
196
196
|
|
|
197
|
-
const nextDir = path.normalize(path.join(dir, ".."))
|
|
198
|
-
if (nextDir === dir) {
|
|
199
|
-
return undefined
|
|
200
|
-
}
|
|
197
|
+
<span class="cstat-no" title="statement not covered" > const nextDir = path.normalize(path.join(dir, ".."));</span>
|
|
198
|
+
<span class="cstat-no" title="statement not covered" > if (nextDir === dir) {</span>
|
|
199
|
+
<span class="cstat-no" title="statement not covered" > return undefined;</span>
|
|
200
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
201
201
|
|
|
202
|
-
return findWorkspaceDir(host, nextDir)
|
|
203
|
-
}
|
|
202
|
+
<span class="cstat-no" title="statement not covered" > return findWorkspaceDir(host, nextDir);</span>
|
|
203
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
204
204
|
</pre></td></tr></table></pre>
|
|
205
205
|
|
|
206
206
|
<div class='push'></div><!-- for sticky footer -->
|
|
@@ -208,7 +208,7 @@ export async function findWorkspaceDir(
|
|
|
208
208
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
209
209
|
Code coverage generated by
|
|
210
210
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
211
|
-
at 2025-
|
|
211
|
+
at 2025-11-07T18:00:40.821Z
|
|
212
212
|
</div>
|
|
213
213
|
<script src="prettify.js"></script>
|
|
214
214
|
<script>
|
|
@@ -23,30 +23,30 @@
|
|
|
23
23
|
<div class='clearfix'>
|
|
24
24
|
|
|
25
25
|
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">
|
|
26
|
+
<span class="strong">0% </span>
|
|
27
27
|
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>
|
|
28
|
+
<span class='fraction'>0/24</span>
|
|
29
29
|
</div>
|
|
30
30
|
|
|
31
31
|
|
|
32
32
|
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">
|
|
33
|
+
<span class="strong">0% </span>
|
|
34
34
|
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/
|
|
35
|
+
<span class='fraction'>0/1</span>
|
|
36
36
|
</div>
|
|
37
37
|
|
|
38
38
|
|
|
39
39
|
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">
|
|
40
|
+
<span class="strong">0% </span>
|
|
41
41
|
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>0/
|
|
42
|
+
<span class='fraction'>0/1</span>
|
|
43
43
|
</div>
|
|
44
44
|
|
|
45
45
|
|
|
46
46
|
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">
|
|
47
|
+
<span class="strong">0% </span>
|
|
48
48
|
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>
|
|
49
|
+
<span class='fraction'>0/24</span>
|
|
50
50
|
</div>
|
|
51
51
|
|
|
52
52
|
|
|
@@ -61,7 +61,7 @@
|
|
|
61
61
|
</div>
|
|
62
62
|
</template>
|
|
63
63
|
</div>
|
|
64
|
-
<div class='status-line
|
|
64
|
+
<div class='status-line low'></div>
|
|
65
65
|
<pre><table class="coverage">
|
|
66
66
|
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
67
|
<a name='L2'></a><a href='#L2'>2</a>
|
|
@@ -101,53 +101,53 @@
|
|
|
101
101
|
<a name='L36'></a><a href='#L36'>36</a>
|
|
102
102
|
<a name='L37'></a><a href='#L37'>37</a>
|
|
103
103
|
<a name='L38'></a><a href='#L38'>38</a>
|
|
104
|
-
<a name='L39'></a><a href='#L39'>39</a></td><td class="line-coverage quiet"><span class="cline-any cline-
|
|
104
|
+
<a name='L39'></a><a href='#L39'>39</a></td><td class="line-coverage quiet"><span class="cline-any cline-no"> </span>
|
|
105
105
|
<span class="cline-any cline-neutral"> </span>
|
|
106
106
|
<span class="cline-any cline-neutral"> </span>
|
|
107
107
|
<span class="cline-any cline-neutral"> </span>
|
|
108
108
|
<span class="cline-any cline-neutral"> </span>
|
|
109
109
|
<span class="cline-any cline-neutral"> </span>
|
|
110
110
|
<span class="cline-any cline-neutral"> </span>
|
|
111
|
-
<span class="cline-any cline-
|
|
112
|
-
<span class="cline-any cline-
|
|
113
|
-
<span class="cline-any cline-
|
|
114
|
-
<span class="cline-any cline-
|
|
115
|
-
<span class="cline-any cline-
|
|
116
|
-
<span class="cline-any cline-
|
|
117
|
-
<span class="cline-any cline-
|
|
118
|
-
<span class="cline-any cline-
|
|
119
|
-
<span class="cline-any cline-
|
|
120
|
-
<span class="cline-any cline-
|
|
121
|
-
<span class="cline-any cline-
|
|
122
|
-
<span class="cline-any cline-
|
|
123
|
-
<span class="cline-any cline-
|
|
124
|
-
<span class="cline-any cline-
|
|
125
|
-
<span class="cline-any cline-
|
|
126
|
-
<span class="cline-any cline-
|
|
127
|
-
<span class="cline-any cline-
|
|
128
|
-
<span class="cline-any cline-
|
|
129
|
-
<span class="cline-any cline-
|
|
130
|
-
<span class="cline-any cline-
|
|
131
|
-
<span class="cline-any cline-
|
|
132
|
-
<span class="cline-any cline-
|
|
133
|
-
<span class="cline-any cline-
|
|
134
|
-
<span class="cline-any cline-
|
|
135
|
-
<span class="cline-any cline-
|
|
136
|
-
<span class="cline-any cline-
|
|
137
|
-
<span class="cline-any cline-
|
|
138
|
-
<span class="cline-any cline-
|
|
139
|
-
<span class="cline-any cline-
|
|
140
|
-
<span class="cline-any cline-
|
|
141
|
-
<span class="cline-any cline-
|
|
142
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"
|
|
111
|
+
<span class="cline-any cline-no"> </span>
|
|
112
|
+
<span class="cline-any cline-no"> </span>
|
|
113
|
+
<span class="cline-any cline-neutral"> </span>
|
|
114
|
+
<span class="cline-any cline-neutral"> </span>
|
|
115
|
+
<span class="cline-any cline-neutral"> </span>
|
|
116
|
+
<span class="cline-any cline-neutral"> </span>
|
|
117
|
+
<span class="cline-any cline-neutral"> </span>
|
|
118
|
+
<span class="cline-any cline-neutral"> </span>
|
|
119
|
+
<span class="cline-any cline-neutral"> </span>
|
|
120
|
+
<span class="cline-any cline-no"> </span>
|
|
121
|
+
<span class="cline-any cline-no"> </span>
|
|
122
|
+
<span class="cline-any cline-no"> </span>
|
|
123
|
+
<span class="cline-any cline-no"> </span>
|
|
124
|
+
<span class="cline-any cline-no"> </span>
|
|
125
|
+
<span class="cline-any cline-no"> </span>
|
|
126
|
+
<span class="cline-any cline-neutral"> </span>
|
|
127
|
+
<span class="cline-any cline-no"> </span>
|
|
128
|
+
<span class="cline-any cline-no"> </span>
|
|
129
|
+
<span class="cline-any cline-no"> </span>
|
|
130
|
+
<span class="cline-any cline-no"> </span>
|
|
131
|
+
<span class="cline-any cline-no"> </span>
|
|
132
|
+
<span class="cline-any cline-no"> </span>
|
|
133
|
+
<span class="cline-any cline-no"> </span>
|
|
134
|
+
<span class="cline-any cline-no"> </span>
|
|
135
|
+
<span class="cline-any cline-no"> </span>
|
|
136
|
+
<span class="cline-any cline-no"> </span>
|
|
137
|
+
<span class="cline-any cline-no"> </span>
|
|
138
|
+
<span class="cline-any cline-no"> </span>
|
|
139
|
+
<span class="cline-any cline-no"> </span>
|
|
140
|
+
<span class="cline-any cline-no"> </span>
|
|
141
|
+
<span class="cline-any cline-no"> </span>
|
|
142
|
+
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >/*!<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
|
|
143
143
|
* Copyright 2019 Palantir Technologies, Inc.
|
|
144
144
|
*
|
|
145
145
|
* Licensed under the MIT license. See LICENSE file in the project root for details.
|
|
146
146
|
*
|
|
147
147
|
*/
|
|
148
148
|
|
|
149
|
-
import { join as pathJoin } from "path"
|
|
150
|
-
import { getWorkspacePackageDirs } from "./getWorkspacePackageDirs.js"
|
|
149
|
+
<span class="cstat-no" title="statement not covered" >import { join as pathJoin } from "path";</span>
|
|
150
|
+
<span class="cstat-no" title="statement not covered" >import { getWorkspacePackageDirs } from "./getWorkspacePackageDirs.js";</span>
|
|
151
151
|
import { Host } from "./Host.js";
|
|
152
152
|
import { PackageJson } from "./PackageJson.js";
|
|
153
153
|
/**
|
|
@@ -155,28 +155,28 @@ import { PackageJson } from "./PackageJson.js";
|
|
|
155
155
|
* if `resolvePaths` is true, the returned directory names are absolute paths
|
|
156
156
|
* resolved against the `workspaceDir`.
|
|
157
157
|
*/
|
|
158
|
-
export async function getPackageNameToDir(
|
|
159
|
-
host: Pick<Host, "readJson" | "exists">
|
|
160
|
-
workspaceDir: string
|
|
161
|
-
resolvePaths: boolean = false
|
|
162
|
-
) {
|
|
163
|
-
const ret = new Map<string, string>()
|
|
158
|
+
<span class="cstat-no" title="statement not covered" >export async function getPackageNameToDir(</span>
|
|
159
|
+
<span class="cstat-no" title="statement not covered" > host: Pick<Host, "readJson" | "exists">,</span>
|
|
160
|
+
<span class="cstat-no" title="statement not covered" > workspaceDir: string,</span>
|
|
161
|
+
<span class="cstat-no" title="statement not covered" > resolvePaths: boolean = false,</span>
|
|
162
|
+
<span class="cstat-no" title="statement not covered" >) {</span>
|
|
163
|
+
<span class="cstat-no" title="statement not covered" > const ret = new Map<string, string>();</span>
|
|
164
164
|
|
|
165
|
-
const workspacePackages = await getWorkspacePackageDirs(
|
|
166
|
-
host
|
|
167
|
-
workspaceDir
|
|
168
|
-
resolvePaths
|
|
169
|
-
)
|
|
170
|
-
for (const packageDir of workspacePackages) {
|
|
171
|
-
const packagePath = pathJoin(packageDir, "package.json")
|
|
172
|
-
const { name } = host.readJson(packagePath) as PackageJson
|
|
173
|
-
if (name === undefined) {
|
|
174
|
-
throw new Error(`Package needs a name: ${packagePath}`)
|
|
175
|
-
}
|
|
176
|
-
ret.set(name, packageDir)
|
|
177
|
-
}
|
|
178
|
-
return ret
|
|
179
|
-
}
|
|
165
|
+
<span class="cstat-no" title="statement not covered" > const workspacePackages = await getWorkspacePackageDirs(</span>
|
|
166
|
+
<span class="cstat-no" title="statement not covered" > host,</span>
|
|
167
|
+
<span class="cstat-no" title="statement not covered" > workspaceDir,</span>
|
|
168
|
+
<span class="cstat-no" title="statement not covered" > resolvePaths,</span>
|
|
169
|
+
<span class="cstat-no" title="statement not covered" > );</span>
|
|
170
|
+
<span class="cstat-no" title="statement not covered" > for (const packageDir of workspacePackages) {</span>
|
|
171
|
+
<span class="cstat-no" title="statement not covered" > const packagePath = pathJoin(packageDir, "package.json");</span>
|
|
172
|
+
<span class="cstat-no" title="statement not covered" > const { name } = host.readJson(packagePath) as PackageJson;</span>
|
|
173
|
+
<span class="cstat-no" title="statement not covered" > if (name === undefined) {</span>
|
|
174
|
+
<span class="cstat-no" title="statement not covered" > throw new Error(`Package needs a name: ${packagePath}`);</span>
|
|
175
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
176
|
+
<span class="cstat-no" title="statement not covered" > ret.set(name, packageDir);</span>
|
|
177
|
+
<span class="cstat-no" title="statement not covered" > }</span>
|
|
178
|
+
<span class="cstat-no" title="statement not covered" > return ret;</span>
|
|
179
|
+
<span class="cstat-no" title="statement not covered" >}</span>
|
|
180
180
|
</pre></td></tr></table></pre>
|
|
181
181
|
|
|
182
182
|
<div class='push'></div><!-- for sticky footer -->
|
|
@@ -184,7 +184,7 @@ export async function getPackageNameToDir(
|
|
|
184
184
|
<div class='footer quiet pad2 space-top1 center small'>
|
|
185
185
|
Code coverage generated by
|
|
186
186
|
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
187
|
-
at 2025-
|
|
187
|
+
at 2025-11-07T18:00:40.821Z
|
|
188
188
|
</div>
|
|
189
189
|
<script src="prettify.js"></script>
|
|
190
190
|
<script>
|