Latest Threat Research:SANDWORM_MODE: Shai-Hulud-Style npm Worm Hijacks CI Workflows and Poisons AI Toolchains.Details
Socket
Book a DemoInstallSign in
Socket

@babel/plugin-transform-property-mutators

Package Overview
Dependencies
Maintainers
4
Versions
91
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@babel/plugin-transform-property-mutators - npm Package Compare versions

Comparing version
8.0.0-beta.3
to
8.0.0-beta.4
+2
-2
lib/index.js

@@ -27,3 +27,3 @@ import { declare } from '@babel/helper-plugin-utils';

const node = map[key];
if (key[0] === "_") return;
if (key.startsWith("_")) return;
const prop = types.objectProperty(types.identifier(key), node);

@@ -40,3 +40,3 @@ types.inheritsComments(prop, node);

var index = declare(api => {
api.assertVersion("8.0.0-beta.3");
api.assertVersion("^7.0.0-0 || ^8.0.0 || 8.0.0-beta.4");
return {

@@ -43,0 +43,0 @@ name: "transform-property-mutators",

@@ -1,1 +0,1 @@

{"version":3,"file":"index.js","sources":["../src/define-map.ts","../src/index.ts"],"sourcesContent":["import { types as t } from \"@babel/core\";\n\ntype DefineMap = {\n _inherits: t.Node[];\n _key: t.Expression;\n get?: t.Expression;\n set?: t.Expression;\n kind: \"get\" | \"set\";\n};\n\nexport type MutatorMap = Record<string, DefineMap>;\n\nexport function pushAccessor(\n mutatorMap: MutatorMap,\n node: t.ObjectMethod & { kind: \"get\" | \"set\"; computed: false },\n) {\n const alias = t.toKeyAlias(node);\n const map = (mutatorMap[alias] ??= {\n _inherits: [],\n _key: node.key,\n } as DefineMap);\n\n map._inherits.push(node);\n\n const value = t.functionExpression(\n null,\n node.params,\n node.body,\n node.generator,\n node.async,\n );\n value.returnType = node.returnType;\n t.inheritsComments(value, node);\n map[node.kind] = value;\n\n return map;\n}\n\nexport function toDefineObject(mutatorMap: any) {\n const objExpr = t.objectExpression([]);\n\n Object.keys(mutatorMap).forEach(function (mutatorMapKey) {\n const map = mutatorMap[mutatorMapKey];\n map.configurable = t.booleanLiteral(true);\n map.enumerable = t.booleanLiteral(true);\n\n const mapNode = t.objectExpression([]);\n\n const propNode = t.objectProperty(map._key, mapNode, map._computed);\n\n Object.keys(map).forEach(function (key) {\n const node = map[key];\n if (key[0] === \"_\") return;\n\n const prop = t.objectProperty(t.identifier(key), node);\n t.inheritsComments(prop, node);\n t.removeComments(node);\n\n mapNode.properties.push(prop);\n });\n\n objExpr.properties.push(propNode);\n });\n\n return objExpr;\n}\n","import { declare } from \"@babel/helper-plugin-utils\";\nimport { type MutatorMap, pushAccessor, toDefineObject } from \"./define-map.ts\";\nimport { types as t } from \"@babel/core\";\n\nexport default declare(api => {\n api.assertVersion(REQUIRED_VERSION(7));\n\n return {\n name: \"transform-property-mutators\",\n\n visitor: {\n ObjectExpression(path) {\n const { node } = path;\n let mutatorMap: MutatorMap | undefined;\n const newProperties = node.properties.filter(function (prop) {\n if (\n t.isObjectMethod(prop) &&\n !prop.computed &&\n (prop.kind === \"get\" || prop.kind === \"set\")\n ) {\n pushAccessor(\n (mutatorMap ??= {}),\n prop as t.ObjectMethod & { kind: \"get\" | \"set\"; computed: false },\n );\n return false;\n }\n return true;\n });\n\n if (mutatorMap === undefined) {\n return;\n }\n\n node.properties = newProperties;\n\n path.replaceWith(\n t.callExpression(\n t.memberExpression(\n t.identifier(\"Object\"),\n t.identifier(\"defineProperties\"),\n ),\n [node, toDefineObject(mutatorMap)],\n ),\n );\n },\n },\n };\n});\n"],"names":["pushAccessor","mutatorMap","node","alias","t","toKeyAlias","map","_inherits","_key","key","push","value","functionExpression","params","body","generator","async","returnType","inheritsComments","kind","toDefineObject","objExpr","objectExpression","Object","keys","forEach","mutatorMapKey","configurable","booleanLiteral","enumerable","mapNode","propNode","objectProperty","_computed","prop","identifier","removeComments","properties","declare","api","assertVersion","name","visitor","ObjectExpression","path","newProperties","filter","isObjectMethod","computed","undefined","replaceWith","callExpression","memberExpression"],"mappings":"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"}
{"version":3,"file":"index.js","sources":["../src/define-map.ts","../src/index.ts"],"sourcesContent":["import { types as t } from \"@babel/core\";\n\ntype DefineMap = {\n _inherits: t.Node[];\n _key: t.Expression;\n get?: t.Expression;\n set?: t.Expression;\n kind: \"get\" | \"set\";\n};\n\nexport type MutatorMap = Record<string, DefineMap>;\n\nexport function pushAccessor(\n mutatorMap: MutatorMap,\n node: t.ObjectMethod & { kind: \"get\" | \"set\"; computed: false },\n) {\n const alias = t.toKeyAlias(node);\n const map = (mutatorMap[alias] ??= {\n _inherits: [],\n _key: node.key,\n } as DefineMap);\n\n map._inherits.push(node);\n\n const value = t.functionExpression(\n null,\n node.params,\n node.body,\n node.generator,\n node.async,\n );\n value.returnType = node.returnType;\n t.inheritsComments(value, node);\n map[node.kind] = value;\n\n return map;\n}\n\nexport function toDefineObject(mutatorMap: any) {\n const objExpr = t.objectExpression([]);\n\n Object.keys(mutatorMap).forEach(function (mutatorMapKey) {\n const map = mutatorMap[mutatorMapKey];\n map.configurable = t.booleanLiteral(true);\n map.enumerable = t.booleanLiteral(true);\n\n const mapNode = t.objectExpression([]);\n\n const propNode = t.objectProperty(map._key, mapNode, map._computed);\n\n Object.keys(map).forEach(function (key) {\n const node = map[key];\n if (key.startsWith(\"_\")) return;\n\n const prop = t.objectProperty(t.identifier(key), node);\n t.inheritsComments(prop, node);\n t.removeComments(node);\n\n mapNode.properties.push(prop);\n });\n\n objExpr.properties.push(propNode);\n });\n\n return objExpr;\n}\n","import { declare } from \"@babel/helper-plugin-utils\";\nimport { type MutatorMap, pushAccessor, toDefineObject } from \"./define-map.ts\";\nimport { types as t } from \"@babel/core\";\n\nexport default declare(api => {\n api.assertVersion(REQUIRED_VERSION(7));\n\n return {\n name: \"transform-property-mutators\",\n\n visitor: {\n ObjectExpression(path) {\n const { node } = path;\n let mutatorMap: MutatorMap | undefined;\n const newProperties = node.properties.filter(function (prop) {\n if (\n t.isObjectMethod(prop) &&\n !prop.computed &&\n (prop.kind === \"get\" || prop.kind === \"set\")\n ) {\n pushAccessor(\n (mutatorMap ??= {}),\n prop as t.ObjectMethod & { kind: \"get\" | \"set\"; computed: false },\n );\n return false;\n }\n return true;\n });\n\n if (mutatorMap === undefined) {\n return;\n }\n\n node.properties = newProperties;\n\n path.replaceWith(\n t.callExpression(\n t.memberExpression(\n t.identifier(\"Object\"),\n t.identifier(\"defineProperties\"),\n ),\n [node, toDefineObject(mutatorMap)],\n ),\n );\n },\n },\n };\n});\n"],"names":["pushAccessor","mutatorMap","node","alias","t","toKeyAlias","map","_inherits","_key","key","push","value","functionExpression","params","body","generator","async","returnType","inheritsComments","kind","toDefineObject","objExpr","objectExpression","Object","keys","forEach","mutatorMapKey","configurable","booleanLiteral","enumerable","mapNode","propNode","objectProperty","_computed","startsWith","prop","identifier","removeComments","properties","declare","api","assertVersion","name","visitor","ObjectExpression","path","newProperties","filter","isObjectMethod","computed","undefined","replaceWith","callExpression","memberExpression"],"mappings":"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"}
{
"name": "@babel/plugin-transform-property-mutators",
"version": "8.0.0-beta.3",
"version": "8.0.0-beta.4",
"description": "Compile ES5 property mutator shorthand syntax to Object.defineProperty",

@@ -20,10 +20,10 @@ "repository": {

"dependencies": {
"@babel/helper-plugin-utils": "^8.0.0-beta.3"
"@babel/helper-plugin-utils": "^8.0.0-beta.4"
},
"peerDependencies": {
"@babel/core": "^8.0.0-beta.3"
"@babel/core": "^7.0.0-0"
},
"devDependencies": {
"@babel/core": "^8.0.0-beta.3",
"@babel/helper-plugin-test-runner": "^8.0.0-beta.3"
"@babel/core": "^8.0.0-beta.4",
"@babel/helper-plugin-test-runner": "^8.0.0-beta.4"
},

@@ -30,0 +30,0 @@ "engines": {