{"dist":{"shasum":"bb1f204573e11869fb9137f8967cf7234eaa03f0","tarball":"https://registry.npmjs.org/@builder/swc/-/swc-0.1.4-beta.6.tgz","fileCount":6,"integrity":"sha512-MGWF4195W6zPNwIfwc6XYPo5ZVPL+nvsZ3ScPjMP4gvPLIW07TnXeHkPm7AUGIi0dGG9+loDUnWGJVFmG8P0VA==","signatures":[{"sig":"MEQCIG9xMbme4NLp/aZbCnZA7HuQ/XWaY6nGSJ6xAPK6CYhEAiAEVwhXK90wXhIs2dnaJfLMO0iENN1Qadp3mEQnPRgtgA==","keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA"}],"unpackedSize":32480,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v4.10.10\r\nComment: https://openpgpjs.org\r\n\r\nwsFzBAEBCAAGBQJilZHSACEJED1NWxICdlZqFiEECWMYAoorWMhJKdjhPU1b\r\nEgJ2VmqHcA//TBAB1a/mjJ7Hesnk5LZKGShPxx3RP51NEwhqCI2QKx1fHyLV\r\nxk6vznV+mOHXVv6dJIL4z8ryoGjCT5Nof9VQ/B4dAtXlC2pofx1eF6TFo8Ot\r\nR86ewGxRk6BlYnM1Lmt0BN4q/XJBbyIuN8FuqzZtBMC5MZIRuAYotNij+3Rr\r\nhNvbWhD2EE26w+DekEIIL/8GlHKXcJFYpgN4cpuuspqqlRGhpb6ZChgT4qoc\r\n4bu3+MHGQBvT4lgJr8PnFCWiZKSxUNHxVYHe7NemU/fisx5GzuAROASORy0+\r\nUQm5tm9RDmZH/n+7gyxDrORc8ge0WB7bU4DewZsmWPl5XEBw4sePqWbpSKTu\r\nclpxaUKB63Uw/OSeV65J0QL+u9yXm77DqJ7eVCHrqePdF9bWqgfTHJ3vRTn4\r\nzFKFCSdqohZo1pZ0qYQXHahaUpJmQcCevK/Zo3vlSzm8F0zw2c2D0wMO4rc2\r\nDj+tZh8z6LLhx1TryBKyfaBAChSuHTcPEuyiG/wgXj56OdvZLiixbq/zzXPu\r\n5YNP8CR3MH+z3sD5Zt7OjoH5cSKrfdt9kf96fW051d/IG5QxJu6Ibeh1Xdb1\r\nxYvwrSgQEMHcpa8Z6tjGK7lAmuNTLaMbpuDr3oRJna625U0PQGAy5eJ1Pw3L\r\nIbZ4HiqgiLdfLKRUEyAo3Ai05fkUhl7QtWw=\r\n=3QAr\r\n-----END PGP SIGNATURE-----\r\n"},"main":"lib/index.js","name":"@builder/swc","napi":{"name":"builder-swc","triples":{"defaults":true,"additional":["x86_64-unknown-linux-musl","i686-pc-windows-msvc","aarch64-unknown-linux-gnu","aarch64-apple-darwin","aarch64-unknown-linux-musl","aarch64-pc-windows-msvc"]}},"husky":{"hooks":{"pre-push":"npm run lint","commit-msg":"commitlint -E HUSKY_GIT_PARAMS"}},"types":"./lib/index.d.ts","readme":"## @builder/swc\n\n>swc version is 0.180.0\n\n<img src=\"https://img.shields.io/npm/v/@builder/swc.svg\" alt=\"npm package\" />\n<img src=\"https://img.shields.io/npm/dm/@builder/swc.svg\" alt=\"npm downloads\" />\n\nCustom swc for [ice.js](https://github.com/alibaba/ice) and [rax-app](https://github.com/raxjs/rax-app).\n\n<i>Customization is achieved through the pass hook of swc.</i>\n\n### Platform Support\n\n- Windows x64\n- Windows aarch64\n- Window ia32\n- macOS x64\n- macOS aarch64\n- Linux aarch64 gnu\n- Linux aarch64 musl\n- Linux x64 gnu\n- Linux x64 musl\n\n### API\n\n#### transformSync(code: string, options)\n\n> Return { code: string, map?: string }\n\nSynchronous transform code. You can pass [@swc/core options](https://swc.rs/docs/configuration/compilation) directly.\n\n```js\nimport { transformSync } from '@builder/swc';\n\nconst { code, map } = transformSync('var a = 1;', {\n  jsc: {\n    parser: {\n      syntax: \"ecmascript\",\n    },\n    transform: {},\n  },\n});\n```\n\n**options.keepPlatform**\n\nTransform the variables which exported by `universal-env` to bool. The output code will remove other platform code by compressor.\n\n```js\nimport { transformSync } from '@builder/swc';\n\n// Case 1: import specifier\n// Input\nvar input = `\nimport { isWeb, isWeex } from 'universal-env';\n\nif (isWeb) {\n  console.log('This is web code');\n} else {\n  console.log('This is weex code');\n}\n`;\n\nvar { code, map } = transformSync(input, {\n  jsc: {\n    parser: {\n      syntax: \"ecmascript\",\n    },\n    transform: {},\n  },\n  keepPlatform: 'web',\n});\n\nconsole.log(code);\n/* The output code is:\nvar isWeb = true;\nvar isWeex = false;\n\nif (isWeb) {\n  console.log('This is web code');\n} else {\n  console.log('This is weex code');\n}\n*/\n\n// Case 2: import namespace specifier\n// Input\nvar input = `\nimport * as env from 'universal-env';\n\nif (env.isWeb) {\n  console.log('This is web code');\n} else {\n  console.log('This is weex code');\n}\n`;\n\nvar { code, map } = transformSync(input, {\n  jsc: {\n    parser: {\n      syntax: \"ecmascript\",\n    },\n    transform: {},\n  },\n  keepPlatform: 'web',\n});\n\nconsole.log(code);\n/* The output code is:\nvar env = {\n  isWeb: true\n};\n\nif (env.isWeb) {\n  console.log('This is web code');\n} else {\n  console.log('This is weex code');\n}\n*/\n```\n\n#### transform(code: string, options)\n\n> Return Promise<{ code: string, map?: string }>\n\nAsynchronous transform code. The options is the same as `transformSync`.\n\n```js\nimport { transformSync } from '@builder/swc';\n\nconst { code, map } = await transformSync(input, {\n  jsc: {\n    parser: {\n      syntax: \"ecmascript\",\n    },\n    transform: {},\n  },\n  keepPlatform: 'web',\n});\n```\n\n\n#### minify\n\n> Return Promise<{ code: string, map?: string }>\n\nIt is the same as [@swc/core](https://swc.rs/docs/configuration/minification).\n\nThis API is asynchronous and all of parsing, minification, and code generation will be done in background thread.\n\n```js\nimport { minify } from \"@builder/swc\";\n\nconst { code, map } = await minify(\n  \"import foo from '@src/app'; console.log(foo)\",\n  {\n    compress: false,\n    mangle: true,\n  }\n);\n\nexpect(code).toMatchInlineSnapshot(`\"import a from'@src/app';console.log(a);\"`);\n```\n\n#### minifySync\n\n> { code: string, map?: string }\n\nIt is the same as [@swc/core](https://swc.rs/docs/configuration/minification).\n\n```js\nimport { minifySync } from \"@builder/swc\";\n\nconst { code, map } = minifySync(\n  \"import foo from '@src/app'; console.log(foo)\",\n  {\n    compress: false,\n    mangle: true,\n  }\n);\n\nexpect(code).toMatchInlineSnapshot(`\"import a from'@src/app';console.log(a);\"`);\n```\n","engines":{"node":">= 12"},"gitHead":"17a24eac7e652f36b9db2b4cb6687bc1fc78b925","license":"MIT","scripts":{"ci":"npm run lint && npm run test","lint":"eslint --cache --ext .js,.jsx,.ts,.tsx ./","test":"jest --forceExit --ci","build":"npm run clean && npx tsc --build ./tsconfig.json","clean":"rimraf ./lib","setup":"rm -rf node_modules && yarn install && npm run build","watch":"npm run clean && npx tsc --build ./tsconfig.json -w","publish":"npm run copy:swc && ts-node ./scripts/publishPackage.ts","version":"napi version -p ./npm -c ./package.json","copy:swc":"ts-node ./scripts/copySwcBinaries.ts","lint:fix":"npm run lint -- --fix","build:swc":"napi build --platform --release --cargo-cwd ./ ./native --js=false","clean:swc":"rimraf ./native","test:watch":"jest --watch","clean:binary":"rimraf","publish:beta":"npm run copy:swc && PUBLISH_TYPE=beta ts-node ./scripts/publishPackageWithDistTag.ts"},"_npmUser":{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},"workspaces":["./npm/*","./*"],"_npmVersion":"8.11.0","description":">swc version is 0.180.0","directories":{},"maintainers":[{"name":"maoxiaoke","email":"thebigyellowbee@qq.com"},{"name":"solojiang","email":"feifeishen1996@gmail.com"},{"name":"chriscindy","email":"yxy0919@foxmail.com"},{"name":"rax-publisher","email":"rax-public@alibaba-inc.com"},{"name":"sobear","email":"sobear.me@gmail.com"},{"name":"clarkxia","email":"xiawenwu41@gmail.com"},{"name":"luhengchang228","email":"luhengchang228@126.com"}],"_nodeVersion":"16.15.0","dependencies":{"@napi-rs/triples":"^1.0.3","@builder/swc-darwin-x64":"0.1.4-beta.5","@builder/swc-darwin-arm64":"0.1.4-beta.5","@builder/swc-linux-x64-gnu":"0.1.4-beta.5","@builder/swc-linux-x64-musl":"0.1.4-beta.5","@builder/swc-win32-x64-msvc":"0.1.4-beta.5","@builder/swc-linux-arm64-gnu":"0.1.4-beta.5","@builder/swc-win32-ia32-msvc":"0.1.4-beta.5","@builder/swc-linux-arm64-musl":"0.1.4-beta.5","@builder/swc-win32-arm64-msvc":"0.1.4-beta.5"},"_hasShrinkwrap":false,"readmeFilename":"README.md","devDependencies":{"jest":"^27.4.5","husky":"^4.1.0","eslint":"^7.0.0","rimraf":"^3.0.2","semver":"^7.3.5","ts-jest":"^27.1.2","ts-node":"^8.6.1","fs-extra":"^10.0.0","typescript":"^4.0.0","@types/jest":"^27.4.0","@types/node":"^14.17.15","@napi-rs/cli":"^2.0.0","@applint/spec":"^1.0.0","ice-npm-utils":"^3.0.1","@commitlint/cli":"^11.0.0"},"optionalDependencies":{"@builder/swc-darwin-x64":"0.1.4-beta.5","@builder/swc-darwin-arm64":"0.1.4-beta.5","@builder/swc-linux-x64-gnu":"0.1.4-beta.5","@builder/swc-linux-x64-musl":"0.1.4-beta.5","@builder/swc-win32-x64-msvc":"0.1.4-beta.5","@builder/swc-linux-arm64-gnu":"0.1.4-beta.5","@builder/swc-win32-ia32-msvc":"0.1.4-beta.5","@builder/swc-linux-arm64-musl":"0.1.4-beta.5","@builder/swc-win32-arm64-msvc":"0.1.4-beta.5"},"_npmOperationalInternal":{"tmp":"tmp/swc_0.1.4-beta.6_1653969362176_0.08814558923595173","host":"s3://npm-registry-packages"},"_id":"@builder/swc@0.1.4-beta.6","version":"0.1.4-beta.6"}