{"_id":"@d2js/babel-preset-app","_rev":"1-b9c941502da763e9c9156bd30ee1499f","name":"@d2js/babel-preset-app","dist-tags":{"latest":"2.15.8-rc.2"},"versions":{"2.15.8-rc.1":{"name":"@d2js/babel-preset-app","version":"2.15.8-rc.1","description":"babel-preset-app for D2js","repository":{"type":"git","url":"git+https://github.com/d2js/framework.git"},"license":"MIT","author":{"name":"NKDuy"},"main":"src/index.js","dependencies":{"@babel/compat-data":"^7.14.0","@babel/core":"^7.14.0","@babel/helper-compilation-targets":"^7.13.16","@babel/helper-module-imports":"^7.13.12","@babel/plugin-proposal-class-properties":"^7.13.0","@babel/plugin-proposal-decorators":"^7.13.15","@babel/plugin-proposal-nullish-coalescing-operator":"^7.13.8","@babel/plugin-proposal-optional-chaining":"^7.13.12","@babel/plugin-proposal-private-methods":"^7.13.0","@babel/plugin-transform-runtime":"^7.13.15","@babel/preset-env":"^7.14.1","@babel/runtime":"^7.14.0","@kdujs/babel-preset-jsx":"^1.2.4","core-js":"^2.6.5","core-js-compat":"^3.12.1","regenerator-runtime":"^0.13.7"},"publishConfig":{"access":"public"},"gitHead":"c27b1e72424b9a4646d0da6f9c7d1be21cf469b8","bugs":{"url":"https://github.com/d2js/framework/issues"},"homepage":"https://github.com/d2js/framework#readme","_id":"@d2js/babel-preset-app@2.15.8-rc.1","_nodeVersion":"18.16.1","_npmVersion":"9.5.1","dist":{"integrity":"sha512-Qlc2vaM8zy/DjHhFaqDlfe2Ro8qfzW5VPUxctGZjO+gouIipN6wKS0QdEaOV9x4vB6rCeT+yinPjer/6NU17dw==","shasum":"2f492fd9b462d27553f0824a39c3e68c06769e42","tarball":"https://registry.npmjs.org/@d2js/babel-preset-app/-/babel-preset-app-2.15.8-rc.1.tgz","fileCount":4,"unpackedSize":11515,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIF7gdRrd3XMyfJ/03BeHW4qMfztS+sL5sLkeIOy9mlQ0AiEAmr1M9zhCumU0KQ8F24U05hHrlYCZXSQBT6Oyn3CCVVI="}]},"_npmUser":{"name":"nkduy","email":"nkduy.dev@gmail.com"},"directories":{},"maintainers":[{"name":"nkduy","email":"nkduy.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/babel-preset-app_2.15.8-rc.1_1690251164132_0.2623672900674623"},"_hasShrinkwrap":false},"2.15.8-rc.2":{"name":"@d2js/babel-preset-app","version":"2.15.8-rc.2","description":"babel-preset-app for D2js","repository":{"type":"git","url":"git+https://github.com/d2js/framework.git"},"license":"MIT","author":{"name":"NKDuy"},"main":"src/index.js","dependencies":{"@babel/compat-data":"^7.14.0","@babel/core":"^7.14.0","@babel/helper-compilation-targets":"^7.13.16","@babel/helper-module-imports":"^7.13.12","@babel/plugin-proposal-class-properties":"^7.13.0","@babel/plugin-proposal-decorators":"^7.13.15","@babel/plugin-proposal-nullish-coalescing-operator":"^7.13.8","@babel/plugin-proposal-optional-chaining":"^7.13.12","@babel/plugin-proposal-private-methods":"^7.13.0","@babel/plugin-transform-runtime":"^7.13.15","@babel/preset-env":"^7.14.1","@babel/runtime":"^7.14.0","@kdujs/babel-preset-jsx":"^1.2.4","core-js":"^2.6.5","core-js-compat":"^3.12.1","regenerator-runtime":"^0.13.7"},"publishConfig":{"access":"public"},"gitHead":"c27b1e72424b9a4646d0da6f9c7d1be21cf469b8","bugs":{"url":"https://github.com/d2js/framework/issues"},"homepage":"https://github.com/d2js/framework#readme","_id":"@d2js/babel-preset-app@2.15.8-rc.2","_nodeVersion":"18.16.1","_npmVersion":"9.5.1","dist":{"integrity":"sha512-f+MRYqThcoZNMT3Mr9HpDtT65kRyRxSWRq6x55ZDpIbEwQnZpylabF8qi9pYGf8VNrq/ue679cimR1tEMTA1GA==","shasum":"35ed308828305c36222510167544f8c2203ddd45","tarball":"https://registry.npmjs.org/@d2js/babel-preset-app/-/babel-preset-app-2.15.8-rc.2.tgz","fileCount":4,"unpackedSize":11515,"signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCFap0VlN4yeYYn33TWx/2PWUc0aUYxxhitIklxcgDrgAIgGGC+X5+e1/QIaLR8tlsyufReJl109Ts3yQmypKaQc0s="}]},"_npmUser":{"name":"nkduy","email":"nkduy.dev@gmail.com"},"directories":{},"maintainers":[{"name":"nkduy","email":"nkduy.dev@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/babel-preset-app_2.15.8-rc.2_1690251273781_0.9828554257844022"},"_hasShrinkwrap":false}},"time":{"created":"2023-07-25T02:12:44.046Z","2.15.8-rc.1":"2023-07-25T02:12:44.283Z","modified":"2023-07-25T02:14:34.125Z","2.15.8-rc.2":"2023-07-25T02:14:33.934Z"},"maintainers":[{"name":"nkduy","email":"nkduy.dev@gmail.com"}],"description":"babel-preset-app for D2js","homepage":"https://github.com/d2js/framework#readme","repository":{"type":"git","url":"git+https://github.com/d2js/framework.git"},"author":{"name":"NKDuy"},"bugs":{"url":"https://github.com/d2js/framework/issues"},"license":"MIT","readme":"# `@d2js/babel-preset-app`\n\n> Default babel preset for D2js\n\n## Usage\n\nThis is the default preset used by D2js, which is mainly a wrapper around the `@babel/preset-env` preset. It also optionally uses the `@kdujs/babel-preset-jsx` preset as well as `@babel/plugin-proposal-decorators`, `@babel/plugin-proposal-class-properties`, `@babel/plugin-transform-runtime`. Furthermore the preset is adding polyfills.\n\n**Note**: Since `core-js@2` and `core-js@3` are both supported from Babel 7.4.0, we recommend directly adding `core-js` and setting the version via the [`corejs`](#corejs) option.\n\n```sh\nyarn add --dev core-js@3 @babel/runtime-corejs3\n\n# or\n\nyarn add --dev core-js@2 @babel/runtime-corejs2\n\n```\n\nUsually, no additional configuration is required. If needed though, there is an option to fine-tune the preset's behavior. Just add the following to `d2js.config.js`:\n\n```js\nbabel: {\n  presets(env, [ preset, options ]) {\n    return [\n      [ \"@d2js/babel-preset-app\", options ]\n    ]\n  }\n}\n```\n\n`env` is an object which contains `envName` (`server`, `client`, `modern`) and all `d2jsEnv` properties (`isDev`, `isServer`, `isClient`, `isModern`, `isLegacy`)\n\n`preset` is the preset package name `@d2js/babel-preset-app`\n\n`options` is an object with parameters, for example:\n\n```js\nconst options = {\n  useBuiltIns: \"entry\"\n}\n```\n\nBelow is a list of all available `options` parameters:\n\n### Options\n\n* **bugfixes** - [`@babel/preset-env`](https://babeljs.io/docs/en/babel-preset-env#bugfixes)\n* **configPath** - [`@babel/preset-env` parameter](https://babeljs.io/docs/en/babel-preset-env#configpath)\n* **forceAllTransforms** - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#forcealltransforms)' parameter\n* **debug**, default  `false` - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#debug)' parameter\n* **decoratorsBeforeExport**\n* **decoratorsLegacy**, default true\n* **exclude** - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#exclude)' parameter\n* **ignoreBrowserslistConfig**, defaults to value of `modern` - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#ignorebrowserslistconfig)' parameter\n* **include** - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#include)' parameter\n* **jsx**, default true, can be a an object passed as params to [@kdujs/babel-preset-jsx`](https://www.npmjs.com/package/@kdujs/babel-preset-jsx)\n* **loose**, default `false` - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#loose)' parameter and also sets `loose=true` for `@babel/plugin-proposal-class-properties`\n* **modules**, default `false` - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#modules)' parameter\n* **polyfills**, default `core-js@2: ['es6.array.iterator','es6.promise','es6.object.assign','es7.promise.finally']`, `core-js@3: ['es.array.iterator','es.promise','es.object.assign','es.promise.finally']`, more [in the corresponding repository](https://github.com/zloirock/core-js)\n* **shippedProposals** - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#shippedproposals)' parameter\n* **spec** - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#spec)' parameter\n* **targets** - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#targets)' parameter\n* **useBuiltIns**, default `\"usage\"` - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#usebuiltins)' parameter\n* **corejs**, default `{ version: 2 }` - '[@babel/preset-env](https://babeljs.io/docs/en/babel-preset-env#corejs)' parameter\n\nThere are [detailed docs](https://babeljs.io/docs/en/babel-preset-env#options) for the parameters of '@babel/preset-env'.\n\n### Example 1. Change targets for server and client respectively\n\n```js\nexport default {\n  build: {\n    babel: {\n      presets({ envName }) {\n        const envTargets = {\n          client: { browsers: [\"last 2 versions\"], ie: 11 },\n          server: { node: \"current\" },\n        }\n        return [\n          [\n            \"@d2js/babel-preset-app\",\n            {\n              targets: envTargets[envName]\n            }\n          ]\n        ]\n      }\n    }\n  }\n}\n```\n\n### Example 2. Use core-js@3\n\n**NOTE**: Make sure that all dependencies have been upgraded to use core-js@3. If core-js@2 and core-js@3 are both dependent, babel may resolve incorrect core-js package which is hoisted by yarn/npm.\n\n```sh\nyarn add --dev core-js@3 @babel/runtime-corejs3\n```\n\n```js\nexport default {\n  build: {\n    babel: {\n      // envName: server, client, modern\n      presets({ envName }) {\n        return [\n          [\n            '@d2js/babel-preset-app',\n            {\n              corejs: { version: 3 }\n            }\n          ]\n        ]\n      }\n    }\n  }\n}\n```\n","readmeFilename":"README.md"}