Skip to content

Commit

Permalink
fix(bin): parameter migrations for v6.0.0+
Browse files Browse the repository at this point in the history
  • Loading branch information
RealShadowNova committed Oct 27, 2022
1 parent 1fe1a9b commit a46263a
Showing 1 changed file with 40 additions and 10 deletions.
50 changes: 40 additions & 10 deletions src/bin/lib/migrateProjectJson.ts
Original file line number Diff line number Diff line change
Expand Up @@ -871,7 +871,10 @@ function migrateSourceJson(
throw new Error(`Unsupported typeDocJsonParserVersion: ${typeDocJsonParserVersion}`);
}

function migrateParameterJson(parameterJson: Migration.MajorTwo.MinorOne.Misc.ParameterJson, typeDocJsonParserVersion: string): ParameterParser.Json {
function migrateParameterJson(
parameterJson: Migration.MajorTwo.MinorOne.Misc.ParameterJson | Migration.MajorSix.MinorZero.Misc.ParameterJson,
typeDocJsonParserVersion: string
): ParameterParser.Json {
const { id, name, type } = parameterJson;

switch (typeDocJsonParserVersion) {
Expand Down Expand Up @@ -900,24 +903,33 @@ function migrateParameterJson(parameterJson: Migration.MajorTwo.MinorOne.Misc.Pa
case '5.1.0':

case '5.2.0':
return {
id,
name,
comment: {
description: null,
blockTags: [],
modifierTags: []
},
type
};

case '6.0.0':

case '6.0.1':

case '6.0.2':

case '7.0.0':
case '7.0.0': {
const { comment } = parameterJson as Migration.MajorSix.MinorZero.Misc.ParameterJson;

return {
id,
name,
comment: {
description: null,
blockTags: [],
modifierTags: []
},
comment,
type
};
}
}

throw new Error(`Unsupported typeDocJsonParserVersion: ${typeDocJsonParserVersion}`);
Expand Down Expand Up @@ -1438,7 +1450,9 @@ export namespace Migration {
}

export namespace ClassJson {
export type MethodJson = Omit<MajorFour.MinorZero.ClassJson.MethodJson, 'comment'>;
export interface MethodJson extends Omit<MajorFour.MinorZero.ClassJson.MethodJson, 'comment' | 'signatures'> {
signatures: Misc.SignatureJson[];
}
}

export interface EnumJson extends Omit<MajorFour.MinorZero.EnumJson, 'properties'> {
Expand All @@ -1454,7 +1468,13 @@ export namespace Migration {
}

export namespace InterfaceJson {
export type MethodJson = Omit<MajorFour.MinorZero.InterfaceJson.MethodJson, 'comment'>;
export interface MethodJson extends Omit<MajorFour.MinorZero.InterfaceJson.MethodJson, 'comment'> {
signatures: Misc.SignatureJson[];
}
}

export interface FunctionJson extends Omit<MajorTwo.MinorThree.FunctionJson, 'signatures'> {
signatures: Misc.SignatureJson[];
}

export type VariableJson = MajorThree.MinorZero.ConstantJson;
Expand All @@ -1465,6 +1485,16 @@ export namespace Migration {
interfaces: InterfaceJson[];
variables: VariableJson[];
}

export namespace Misc {
export interface ParameterJson extends MajorTwo.MinorOne.Misc.ParameterJson {
comment: MajorTwo.MinorOne.Misc.CommentJson;
}

export interface SignatureJson extends MajorTwo.MinorOne.Misc.SignatureJson {
parameters: ParameterJson[];
}
}
}
}

Expand Down Expand Up @@ -1507,7 +1537,7 @@ export namespace Migration {
}

export namespace Misc {
export interface SignatureJson extends Omit<MajorTwo.MinorOne.Misc.SignatureJson, 'typeParameters'> {
export interface SignatureJson extends Omit<MajorSix.MinorZero.Misc.SignatureJson, 'typeParameters'> {
typeParameters: TypeParameterJson[];
}

Expand Down

0 comments on commit a46263a

Please sign in to comment.