Skip to content

Commit

Permalink
fix: fix cloning type parameter declarations
Browse files Browse the repository at this point in the history
  • Loading branch information
wessberg committed Jan 9, 2023
1 parent 9f85f42 commit 0d3c1a1
Show file tree
Hide file tree
Showing 4 changed files with 9 additions and 8 deletions.
2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
Expand Up @@ -96,7 +96,7 @@
"typescript-4-8-2": "npm:[email protected]"
},
"dependencies": {
"compatfactory": "^2.0.6"
"compatfactory": "^2.0.7"
},
"peerDependencies": {
"typescript": "^3.x || ^4.x"
Expand Down
8 changes: 4 additions & 4 deletions pnpm-lock.yaml

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 3 additions & 3 deletions src/clone-node/clone-node.ts
Original file line number Diff line number Diff line change
Expand Up @@ -252,7 +252,7 @@ import {cloneAssertClause} from "./clone-assert-clause.js";
import {cloneAssertEntry} from "./clone-assert-entry.js";
import {isImportTypeAssertionContainer} from "./util/is-import-type-assertion-container.js";
import {cloneImportTypeAssertionContainer} from "./clone-import-type-assertion-container.js";
import { cloneSatisfiesExpression } from "./clone-satisfies-expression.js";
import {cloneSatisfiesExpression} from "./clone-satisfies-expression.js";

export function setParentNodes<T extends MetaNode>(node: T, options: Partial<SetParentNodesOptions>): T {
return setParents(node, toSetParentNodesOptions(options));
Expand Down Expand Up @@ -496,7 +496,7 @@ function executeCloneNode<T extends MetaNode>(node: T | undefined, options: Clon
return cloneThrowStatement(node, options as unknown as CloneNodeVisitorOptions<TS.ThrowStatement>);
} else if (options.typescript.isReturnStatement(node)) {
return cloneReturnStatement(node, options as unknown as CloneNodeVisitorOptions<TS.ReturnStatement>);
} else if (options.typescript.isSatisfiesExpression?.(node)) {
} else if (options.typescript.isSatisfiesExpression?.(node)) {
return cloneSatisfiesExpression(node, options as unknown as CloneNodeVisitorOptions<TS.SatisfiesExpression>);
} else if (options.typescript.isNewExpression(node)) {
return cloneNewExpression(node, options as unknown as CloneNodeVisitorOptions<TS.NewExpression>);
Expand Down Expand Up @@ -550,7 +550,7 @@ function executeCloneNode<T extends MetaNode>(node: T | undefined, options: Clon
return cloneAsExpression(node, options as unknown as CloneNodeVisitorOptions<TS.AsExpression>);
} else if (
("isTypeAssertionExpression" in options.typescript && options.typescript.isTypeAssertionExpression(node)) ||
("isTypeAssertion" in options.typescript && options.typescript.isTypeAssertion(node))
(!("isTypeAssertionExpression" in options.typescript) && "isTypeAssertion" in options.typescript && (options.typescript as typeof TS).isTypeAssertion(node))
) {
return cloneTypeAssertion(node, options as unknown as CloneNodeVisitorOptions<TS.TypeAssertion>);
} else if (options.typescript.isAwaitExpression(node)) {
Expand Down
1 change: 1 addition & 0 deletions src/clone-node/clone-type-parameter-declaration.ts
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@ import {TS} from "./type/ts.js";

export function cloneTypeParameterDeclaration(node: TS.TypeParameterDeclaration, options: CloneNodeVisitorOptions<TS.TypeParameterDeclaration>): TS.TypeParameterDeclaration {
return options.factory.createTypeParameterDeclaration(
options.hook("modifiers", options.nextNodes(node.modifiers), node.modifiers),
options.hook("name", options.nextNode(node.name), node.name),
options.hook("constraint", options.nextNode(node.constraint), node.constraint),
options.hook("default", options.nextNode(node.default), node.default)
Expand Down

0 comments on commit 0d3c1a1

Please sign in to comment.