|
- "use strict";Object.defineProperty(exports, "__esModule", {value: true});require('./chunk-BTQOTIPQ.js');
-
- // node_modules/.pnpm/estree-walker@3.0.3/node_modules/estree-walker/src/walker.js
- var WalkerBase = class {
- constructor() {
- this.should_skip = false;
- this.should_remove = false;
- this.replacement = null;
- this.context = {
- skip: () => this.should_skip = true,
- remove: () => this.should_remove = true,
- replace: (node) => this.replacement = node
- };
- }
- /**
- * @template {Node} Parent
- * @param {Parent | null | undefined} parent
- * @param {keyof Parent | null | undefined} prop
- * @param {number | null | undefined} index
- * @param {Node} node
- */
- replace(parent, prop, index, node) {
- if (parent && prop) {
- if (index != null) {
- parent[prop][index] = node;
- } else {
- parent[prop] = node;
- }
- }
- }
- /**
- * @template {Node} Parent
- * @param {Parent | null | undefined} parent
- * @param {keyof Parent | null | undefined} prop
- * @param {number | null | undefined} index
- */
- remove(parent, prop, index) {
- if (parent && prop) {
- if (index !== null && index !== void 0) {
- parent[prop].splice(index, 1);
- } else {
- delete parent[prop];
- }
- }
- }
- };
-
- // node_modules/.pnpm/estree-walker@3.0.3/node_modules/estree-walker/src/sync.js
- var SyncWalker = class extends WalkerBase {
- /**
- *
- * @param {SyncHandler} [enter]
- * @param {SyncHandler} [leave]
- */
- constructor(enter, leave) {
- super();
- this.should_skip = false;
- this.should_remove = false;
- this.replacement = null;
- this.context = {
- skip: () => this.should_skip = true,
- remove: () => this.should_remove = true,
- replace: (node) => this.replacement = node
- };
- this.enter = enter;
- this.leave = leave;
- }
- /**
- * @template {Node} Parent
- * @param {Node} node
- * @param {Parent | null} parent
- * @param {keyof Parent} [prop]
- * @param {number | null} [index]
- * @returns {Node | null}
- */
- visit(node, parent, prop, index) {
- if (node) {
- if (this.enter) {
- const _should_skip = this.should_skip;
- const _should_remove = this.should_remove;
- const _replacement = this.replacement;
- this.should_skip = false;
- this.should_remove = false;
- this.replacement = null;
- this.enter.call(this.context, node, parent, prop, index);
- if (this.replacement) {
- node = this.replacement;
- this.replace(parent, prop, index, node);
- }
- if (this.should_remove) {
- this.remove(parent, prop, index);
- }
- const skipped = this.should_skip;
- const removed = this.should_remove;
- this.should_skip = _should_skip;
- this.should_remove = _should_remove;
- this.replacement = _replacement;
- if (skipped)
- return node;
- if (removed)
- return null;
- }
- let key;
- for (key in node) {
- const value = node[key];
- if (value && typeof value === "object") {
- if (Array.isArray(value)) {
- const nodes = (
- /** @type {Array<unknown>} */
- value
- );
- for (let i = 0; i < nodes.length; i += 1) {
- const item = nodes[i];
- if (isNode(item)) {
- if (!this.visit(item, node, key, i)) {
- i--;
- }
- }
- }
- } else if (isNode(value)) {
- this.visit(value, node, key, null);
- }
- }
- }
- if (this.leave) {
- const _replacement = this.replacement;
- const _should_remove = this.should_remove;
- this.replacement = null;
- this.should_remove = false;
- this.leave.call(this.context, node, parent, prop, index);
- if (this.replacement) {
- node = this.replacement;
- this.replace(parent, prop, index, node);
- }
- if (this.should_remove) {
- this.remove(parent, prop, index);
- }
- const removed = this.should_remove;
- this.replacement = _replacement;
- this.should_remove = _should_remove;
- if (removed)
- return null;
- }
- }
- return node;
- }
- };
- function isNode(value) {
- return value !== null && typeof value === "object" && "type" in value && typeof value.type === "string";
- }
-
- // node_modules/.pnpm/estree-walker@3.0.3/node_modules/estree-walker/src/async.js
- var AsyncWalker = class extends WalkerBase {
- /**
- *
- * @param {AsyncHandler} [enter]
- * @param {AsyncHandler} [leave]
- */
- constructor(enter, leave) {
- super();
- this.should_skip = false;
- this.should_remove = false;
- this.replacement = null;
- this.context = {
- skip: () => this.should_skip = true,
- remove: () => this.should_remove = true,
- replace: (node) => this.replacement = node
- };
- this.enter = enter;
- this.leave = leave;
- }
- /**
- * @template {Node} Parent
- * @param {Node} node
- * @param {Parent | null} parent
- * @param {keyof Parent} [prop]
- * @param {number | null} [index]
- * @returns {Promise<Node | null>}
- */
- async visit(node, parent, prop, index) {
- if (node) {
- if (this.enter) {
- const _should_skip = this.should_skip;
- const _should_remove = this.should_remove;
- const _replacement = this.replacement;
- this.should_skip = false;
- this.should_remove = false;
- this.replacement = null;
- await this.enter.call(this.context, node, parent, prop, index);
- if (this.replacement) {
- node = this.replacement;
- this.replace(parent, prop, index, node);
- }
- if (this.should_remove) {
- this.remove(parent, prop, index);
- }
- const skipped = this.should_skip;
- const removed = this.should_remove;
- this.should_skip = _should_skip;
- this.should_remove = _should_remove;
- this.replacement = _replacement;
- if (skipped)
- return node;
- if (removed)
- return null;
- }
- let key;
- for (key in node) {
- const value = node[key];
- if (value && typeof value === "object") {
- if (Array.isArray(value)) {
- const nodes = (
- /** @type {Array<unknown>} */
- value
- );
- for (let i = 0; i < nodes.length; i += 1) {
- const item = nodes[i];
- if (isNode2(item)) {
- if (!await this.visit(item, node, key, i)) {
- i--;
- }
- }
- }
- } else if (isNode2(value)) {
- await this.visit(value, node, key, null);
- }
- }
- }
- if (this.leave) {
- const _replacement = this.replacement;
- const _should_remove = this.should_remove;
- this.replacement = null;
- this.should_remove = false;
- await this.leave.call(this.context, node, parent, prop, index);
- if (this.replacement) {
- node = this.replacement;
- this.replace(parent, prop, index, node);
- }
- if (this.should_remove) {
- this.remove(parent, prop, index);
- }
- const removed = this.should_remove;
- this.replacement = _replacement;
- this.should_remove = _should_remove;
- if (removed)
- return null;
- }
- }
- return node;
- }
- };
- function isNode2(value) {
- return value !== null && typeof value === "object" && "type" in value && typeof value.type === "string";
- }
-
- // node_modules/.pnpm/estree-walker@3.0.3/node_modules/estree-walker/src/index.js
- function walk(ast, { enter, leave }) {
- const instance = new SyncWalker(enter, leave);
- return instance.visit(ast, null);
- }
- async function asyncWalk(ast, { enter, leave }) {
- const instance = new AsyncWalker(enter, leave);
- return await instance.visit(ast, null);
- }
-
-
-
- exports.asyncWalk = asyncWalk; exports.walk = walk;
- exports.default = module.exports;
|