Socket
Socket
Sign inDemoInstall

periscopic

Package Overview
Dependencies
Maintainers
1
Versions
17
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

periscopic - npm Package Compare versions

Comparing version 3.0.1 to 3.0.2

4

CHANGELOG.md
# periscopic changelog
## 3.0.2
* Tidy up types
## 3.0.1

@@ -4,0 +8,0 @@

2

package.json
{
"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;
SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc