Skip to content

Commit 7ab66e7

Browse files
authored
fix(*): make all attributes of PackageJson as optional (#269)
1 parent 06c704a commit 7ab66e7

File tree

4 files changed

+9
-6
lines changed

4 files changed

+9
-6
lines changed

src/index.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -121,9 +121,10 @@ export class Escapin {
121121
moduleName: string,
122122
location: 'dependencies' | 'devDependencies' = 'dependencies',
123123
): void {
124-
this.packageJson[location][moduleName] = `^${u.getLatestVersion(
125-
moduleName,
126-
)}`;
124+
const deps = this.packageJson[location];
125+
if (deps !== undefined) {
126+
deps[moduleName] = `^${u.getLatestVersion(moduleName)}`;
127+
}
127128
}
128129

129130
public savePackageJson(): void {

src/state.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -114,6 +114,7 @@ export class BaseState {
114114
return (
115115
moduleName in
116116
Object.assign(
117+
new Object(),
117118
dependencies,
118119
devDependencies,
119120
peerDependencies,

src/types.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@ export interface Credential {
2323
export interface PackageJson {
2424
main?: string;
2525
scripts?: { [script: string]: string };
26-
dependencies: { [moduleName: string]: string };
27-
devDependencies: { [moduleName: string]: string };
26+
dependencies?: { [moduleName: string]: string };
27+
devDependencies?: { [moduleName: string]: string };
2828
peerDependencies?: { [moduleName: string]: string };
2929
optionalDependencies?: { [moduleName: string]: string };
3030
bundledDependencies?: string[];

src/visitors/functionTypes/index.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,8 @@ const visitor: Visitor<BaseState> = {
2727

2828
escapin.save();
2929

30-
const { dependencies, devDependencies } = escapin.packageJson;
30+
const dependencies = escapin.packageJson.dependencies || new Object();
31+
const devDependencies = escapin.packageJson.devDependencies || new Object();
3132
const modules = [
3233
...Object.keys(dependencies),
3334
...Object.keys(devDependencies),

0 commit comments

Comments
 (0)