Sha256: f44bf4023149ea1e9bdc975ed582ef1471caee7268f1b99b98732379081da50a

Contents?: true

Size: 1.5 KB

Versions: 39

Compression:

Stored size: 1.5 KB

Contents

{"version":3,"names":["_core","require","_traverse","rewriteThisVisitor","rewriteThis","programPath","visitors","environmentVisitor","ThisExpression","path","replaceWith","t","unaryExpression","numericLiteral","noScope","traverse","node"],"sources":["../src/rewrite-this.ts"],"sourcesContent":["import { types as t } from \"@babel/core\";\nimport traverse, { visitors, type NodePath } from \"@babel/traverse\";\n\n/**\n * A lazily constructed visitor to walk the tree, rewriting all `this` references in the\n * top-level scope to be `void 0` (undefined).\n *\n */\nlet rewriteThisVisitor: Parameters<typeof traverse>[1];\n\nexport default function rewriteThis(programPath: NodePath) {\n  if (!rewriteThisVisitor) {\n    rewriteThisVisitor = visitors.environmentVisitor({\n      ThisExpression(path) {\n        path.replaceWith(t.unaryExpression(\"void\", t.numericLiteral(0), true));\n      },\n    });\n    rewriteThisVisitor.noScope = true;\n  }\n  // Rewrite \"this\" to be \"undefined\".\n  traverse(programPath.node, rewriteThisVisitor);\n}\n"],"mappings":";;;;;;AAAA,IAAAA,KAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAOA,IAAIE,kBAAkD;AAEvC,SAASC,WAAWA,CAACC,WAAqB,EAAE;EACzD,IAAI,CAACF,kBAAkB,EAAE;IACvBA,kBAAkB,GAAGG,kBAAQ,CAACC,kBAAkB,CAAC;MAC/CC,cAAcA,CAACC,IAAI,EAAE;QACnBA,IAAI,CAACC,WAAW,CAACC,WAAC,CAACC,eAAe,CAAC,MAAM,EAAED,WAAC,CAACE,cAAc,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;MACxE;IACF,CAAC,CAAC;IACFV,kBAAkB,CAACW,OAAO,GAAG,IAAI;EACnC;EAEA,IAAAC,iBAAQ,EAACV,WAAW,CAACW,IAAI,EAAEb,kBAAkB,CAAC;AAChD","ignoreList":[]}

Version data entries

39 entries across 26 versions & 2 rubygems

Version Path
immosquare-cleaner-0.1.67 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.66 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.65 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.64 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.63 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
rapid_stack-0.2.0 templates/frontend/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
rapid_stack-0.1.1 templates/FrontEnd/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
rapid_stack-0.1.0 templates/FrontEnd/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.62 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.61 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.60 node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.60 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.59 node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.59 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.58 node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.58 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.57 node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.57 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.56 node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map
immosquare-cleaner-0.1.56 node_modules/@babel/plugin-transform-modules-systemjs/node_modules/@babel/helper-module-transforms/lib/rewrite-this.js.map