Skip to content

Commit f2ccd15

Browse files
committed
feat: build related package.json entries are overridden instead of retained
This reduces boilerplate work post-inject in the standard case.
1 parent ae71878 commit f2ccd15

File tree

4 files changed

+24
-334
lines changed

4 files changed

+24
-334
lines changed

docs/presets.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Presets
2+
3+
## semver-workflow
4+
5+
Prompt for branch config
6+
7+
Prompt for releaserc config
8+
9+
10+
11+
## renovate

src/actions/verify.ts

Lines changed: 0 additions & 328 deletions
This file was deleted.

src/actions/verify/validations.ts

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -90,6 +90,10 @@ export function validateModule(packageJson: PackageJson): string[] {
9090
`.trimStart()
9191
)
9292
}
93+
94+
if (packageJson.typings) {
95+
errors.push(outdent`Found typings field in package.json. Use types instead.`)
96+
}
9397
return errors
9498
}
9599

src/npm/package.ts

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -241,6 +241,9 @@ export async function writePackageJson(data: PackageData, options: InjectOptions
241241

242242
const manifest: PackageJson = {
243243
...alwaysOnTop,
244+
// Use already configured values by default
245+
...(prev || {}),
246+
// but we override these to enforce standardization
244247
source: flags.typescript ? './src/index.ts' : './src/index.js',
245248
main: './lib/cjs/index.js',
246249
module: './lib/esm/index.js',
@@ -252,14 +255,11 @@ export async function writePackageJson(data: PackageData, options: InjectOptions
252255
},
253256
},
254257
files: ['src', 'lib', 'v2-incompatible.js', 'sanity.json'],
255-
scripts: {},
256-
repository: {},
257258
engines: {
258259
node: '>=14.0.0',
259260
},
260-
261-
// Use already configured values by default
262-
...(prev || {}),
261+
scripts: {...prev.scripts},
262+
repository: {...prev.repository},
263263

264264
// We're de-declaring properties because of key order in package.json
265265
...alwaysOnTop,
@@ -272,6 +272,9 @@ export async function writePackageJson(data: PackageData, options: InjectOptions
272272
...urlsFromOrigin(gitOrigin),
273273
}
274274

275+
// we use types, not typings
276+
delete manifest.typings
277+
275278
const differs = JSON.stringify(prev) !== JSON.stringify(manifest)
276279
log.debug('Does manifest differ? %s', differs ? 'yes' : 'no')
277280
if (differs) {
@@ -313,7 +316,7 @@ export function addScript(cmd: string, existing: string) {
313316
return existing
314317
}
315318

316-
return existing ? `${existing} && ${cmd}` : cmd
319+
return cmd
317320
}
318321

319322
export async function addPackageJsonScripts(

0 commit comments

Comments
 (0)