periscopic
Advanced tools
Comparing version 3.0.1 to 3.0.2
# periscopic changelog | ||
## 3.0.2 | ||
* Tidy up types | ||
## 3.0.1 | ||
@@ -4,0 +8,0 @@ |
{ | ||
"name": "periscopic", | ||
"description": "periscopic", | ||
"version": "3.0.1", | ||
"version": "3.0.2", | ||
"repository": "Rich-Harris/periscopic", | ||
@@ -6,0 +6,0 @@ "module": "src/index.js", |
@@ -1,18 +0,8 @@ | ||
// @ts-check | ||
import { walk } from 'estree-walker'; | ||
import is_reference from 'is-reference'; | ||
/** @typedef { import('estree').Node} Node */ | ||
/** @typedef { import('estree').VariableDeclaration} VariableDeclaration */ | ||
/** @typedef { import('estree').ClassDeclaration} ClassDeclaration */ | ||
/** @typedef { import('estree').VariableDeclarator} VariableDeclarator */ | ||
/** @typedef { import('estree').Property} Property */ | ||
/** @typedef { import('estree').RestElement} RestElement */ | ||
/** @typedef { import('estree').Identifier} Identifier */ | ||
/** @param {import('estree').Node} expression */ | ||
export function analyze(expression) { | ||
/** @typedef {import('estree').Node} Node */ | ||
/** | ||
* | ||
* @param {Node} expression | ||
*/ | ||
export function analyze(expression) { | ||
/** @type {WeakMap<Node, Scope>} */ | ||
@@ -26,3 +16,3 @@ const map = new WeakMap(); | ||
/** @type {[Scope, Identifier][]} */ | ||
/** @type {[Scope, import('estree').Identifier][]} */ | ||
const references = []; | ||
@@ -33,3 +23,2 @@ let current_scope = scope; | ||
/** | ||
* | ||
* @param {Node} node | ||
@@ -103,6 +92,3 @@ * @param {Node} parent | ||
/** | ||
* | ||
* @param {Node} node | ||
*/ | ||
/** @param {Node} node */ | ||
leave(node) { | ||
@@ -148,3 +134,3 @@ if (map.has(node)) { | ||
/** @type {Map<string, Node>} */ | ||
/** @type {Map<string, import('estree').Node>} */ | ||
this.declarations = new Map(); | ||
@@ -159,6 +145,3 @@ | ||
/** | ||
* | ||
* @param {VariableDeclaration | ClassDeclaration} node | ||
*/ | ||
/** @param {import('estree').VariableDeclaration | import('estree').ClassDeclaration} node */ | ||
add_declaration(node) { | ||
@@ -169,6 +152,3 @@ if (node.type === 'VariableDeclaration') { | ||
} else { | ||
/** | ||
* | ||
* @param {VariableDeclarator} declarator | ||
*/ | ||
/** @param {import('estree').VariableDeclarator} declarator */ | ||
const handle_declarator = (declarator) => { | ||
@@ -189,3 +169,2 @@ extract_names(declarator.id).forEach(name => { | ||
/** | ||
* | ||
* @param {string} name | ||
@@ -200,3 +179,2 @@ * @returns {Scope | null} | ||
/** | ||
* | ||
* @param {string} name | ||
@@ -213,4 +191,3 @@ * @returns {boolean} | ||
/** | ||
* | ||
* @param {Node} param | ||
* @param {import('estree').Node} param | ||
* @returns {string[]} | ||
@@ -223,6 +200,5 @@ */ | ||
/** | ||
* | ||
* @param {Node} param | ||
* @param {Identifier[]} nodes | ||
* @returns {Identifier[]} | ||
* @param {import('estree').Node} param | ||
* @param {import('estree').Identifier[]} nodes | ||
* @returns {import('estree').Identifier[]} | ||
*/ | ||
@@ -244,6 +220,3 @@ export function extract_identifiers(param, nodes = []) { | ||
case 'ObjectPattern': | ||
/** | ||
* | ||
* @param {Property | RestElement} prop | ||
*/ | ||
/** @param {import('estree').Property | import('estree').RestElement} prop */ | ||
const handle_prop = (prop) => { | ||
@@ -261,6 +234,3 @@ if (prop.type === 'RestElement') { | ||
case 'ArrayPattern': | ||
/** | ||
* | ||
* @param {Node} element | ||
*/ | ||
/** @param {import('estree').Node} element */ | ||
const handle_element = (element) => { | ||
@@ -267,0 +237,0 @@ if (element) extract_identifiers(element, nodes); |
@@ -1,13 +0,3 @@ | ||
/** @typedef { import('estree').Node} Node */ | ||
/** @typedef { import('estree').VariableDeclaration} VariableDeclaration */ | ||
/** @typedef { import('estree').ClassDeclaration} ClassDeclaration */ | ||
/** @typedef { import('estree').VariableDeclarator} VariableDeclarator */ | ||
/** @typedef { import('estree').Property} Property */ | ||
/** @typedef { import('estree').RestElement} RestElement */ | ||
/** @typedef { import('estree').Identifier} Identifier */ | ||
/** | ||
* | ||
* @param {Node} expression | ||
*/ | ||
export function analyze(expression: Node): { | ||
/** @param {import('estree').Node} expression */ | ||
export function analyze(expression: import('estree').Node): { | ||
map: WeakMap<import("estree").Node, Scope>; | ||
@@ -18,14 +8,12 @@ scope: Scope; | ||
/** | ||
* | ||
* @param {Node} param | ||
* @param {import('estree').Node} param | ||
* @returns {string[]} | ||
*/ | ||
export function extract_names(param: Node): string[]; | ||
export function extract_names(param: import('estree').Node): string[]; | ||
/** | ||
* | ||
* @param {Node} param | ||
* @param {Identifier[]} nodes | ||
* @returns {Identifier[]} | ||
* @param {import('estree').Node} param | ||
* @param {import('estree').Identifier[]} nodes | ||
* @returns {import('estree').Identifier[]} | ||
*/ | ||
export function extract_identifiers(param: Node, nodes?: Identifier[]): Identifier[]; | ||
export function extract_identifiers(param: import('estree').Node, nodes?: import('estree').Identifier[]): import('estree').Identifier[]; | ||
export class Scope { | ||
@@ -37,4 +25,4 @@ constructor(parent: any, block: any); | ||
block: boolean; | ||
/** @type {Map<string, Node>} */ | ||
declarations: Map<string, Node>; | ||
/** @type {Map<string, import('estree').Node>} */ | ||
declarations: Map<string, import('estree').Node>; | ||
/** @type {Set<string>} */ | ||
@@ -44,9 +32,5 @@ initialised_declarations: Set<string>; | ||
references: Set<string>; | ||
/** @param {import('estree').VariableDeclaration | import('estree').ClassDeclaration} node */ | ||
add_declaration(node: import('estree').VariableDeclaration | import('estree').ClassDeclaration): void; | ||
/** | ||
* | ||
* @param {VariableDeclaration | ClassDeclaration} node | ||
*/ | ||
add_declaration(node: VariableDeclaration | ClassDeclaration): void; | ||
/** | ||
* | ||
* @param {string} name | ||
@@ -57,3 +41,2 @@ * @returns {Scope | null} | ||
/** | ||
* | ||
* @param {string} name | ||
@@ -64,8 +47,1 @@ * @returns {boolean} | ||
} | ||
export type Node = import("estree").Identifier | import("estree").SimpleLiteral | import("estree").RegExpLiteral | import("estree").Program | import("estree").FunctionDeclaration | import("estree").FunctionExpression | import("estree").ArrowFunctionExpression | import("estree").SwitchCase | import("estree").CatchClause | import("estree").VariableDeclarator | import("estree").ExpressionStatement | import("estree").BlockStatement | import("estree").EmptyStatement | import("estree").DebuggerStatement | import("estree").WithStatement | import("estree").ReturnStatement | import("estree").LabeledStatement | import("estree").BreakStatement | import("estree").ContinueStatement | import("estree").IfStatement | import("estree").SwitchStatement | import("estree").ThrowStatement | import("estree").TryStatement | import("estree").WhileStatement | import("estree").DoWhileStatement | import("estree").ForStatement | import("estree").ForInStatement | import("estree").ForOfStatement | import("estree").VariableDeclaration | import("estree").ClassDeclaration | import("estree").ThisExpression | import("estree").ArrayExpression | import("estree").ObjectExpression | import("estree").YieldExpression | import("estree").UnaryExpression | import("estree").UpdateExpression | import("estree").BinaryExpression | import("estree").AssignmentExpression | import("estree").LogicalExpression | import("estree").MemberExpression | import("estree").ConditionalExpression | import("estree").SimpleCallExpression | import("estree").NewExpression | import("estree").SequenceExpression | import("estree").TemplateLiteral | import("estree").TaggedTemplateExpression | import("estree").ClassExpression | import("estree").MetaProperty | import("estree").AwaitExpression | import("estree").Property | import("estree").AssignmentProperty | import("estree").Super | import("estree").TemplateElement | import("estree").SpreadElement | import("estree").ObjectPattern | import("estree").ArrayPattern | import("estree").RestElement | import("estree").AssignmentPattern | import("estree").ClassBody | import("estree").MethodDefinition | import("estree").ImportDeclaration | import("estree").ExportNamedDeclaration | import("estree").ExportDefaultDeclaration | import("estree").ExportAllDeclaration | import("estree").ImportSpecifier | import("estree").ImportDefaultSpecifier | import("estree").ImportNamespaceSpecifier | import("estree").ExportSpecifier; | ||
export type VariableDeclaration = import("estree").VariableDeclaration; | ||
export type ClassDeclaration = import("estree").ClassDeclaration; | ||
export type VariableDeclarator = import("estree").VariableDeclarator; | ||
export type Property = import("estree").Property; | ||
export type RestElement = import("estree").RestElement; | ||
export type Identifier = import("estree").Identifier; |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
11958
242