{"_id":"babel-preset-const-enum","_rev":"3-79dfa2a2a8277f9cda6aec162f37db8e","name":"babel-preset-const-enum","dist-tags":{"latest":"1.0.0"},"versions":{"0.0.0":{"name":"babel-preset-const-enum","version":"0.0.0","description":"Babel preset for TypeScript `const` enums","repository":{"type":"git","url":"git+https://github.com/dosentmatter/babel-preset-const-enum.git"},"author":{"name":"Kevin Lau"},"license":"MIT","main":"lib/index.js","keywords":["babel-preset","typescript","const","enum","terser","uglify","minify","compress"],"scripts":{"build":"babel src --out-dir lib","prepublishOnly":"yarn run build","test":"jest","prettier-fix":"prettier --write src/**/*.js"},"peerDependencies":{"@babel/core":"^7.0.0-0","@babel/generator":"^7.0.0-0"},"dependencies":{"@babel/helper-plugin-utils":"^7.0.0","babel-plugin-const-enum":"^0.0.3"},"devDependencies":{"@babel/cli":"^7.5.0","@babel/core":"^7.5.0","@babel/generator":"^7.5.0","@babel/preset-env":"^7.5.0","babel-jest":"^24.8.0","jest":"^24.8.0","prettier":"^1.18.2"},"gitHead":"758e939bfb9b16fe7560b3d1a8b53f9c8a78f245","bugs":{"url":"https://github.com/dosentmatter/babel-preset-const-enum/issues"},"homepage":"https://github.com/dosentmatter/babel-preset-const-enum#readme","_id":"babel-preset-const-enum@0.0.0","_npmVersion":"6.5.0","_nodeVersion":"11.9.0","_npmUser":{"name":"dosentmatter","email":"kelau1993+npm@gmail.com"},"dist":{"integrity":"sha512-ixMz8oSbue5V7JrRJGj4f8OTJDFD9hqqfISrzqlm74Z+h4j805OCO9UW4/DyJ2k30LOryTlgraE5ZMffmP9wsQ==","shasum":"d5a9ce682b69db9d2bb4dcd7cef001c86c7c5264","tarball":"https://registry.npmjs.org/babel-preset-const-enum/-/babel-preset-const-enum-0.0.0.tgz","fileCount":4,"unpackedSize":5557,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdr/zRCRA9TVsSAnZWagAAt3cQAIdO3DLCY16EjSFASMDA\nf5my6QkgZOYThXGNWvnOgFvlX+/WvHF1uuyZqknANkOsUQpNHgBQc/AlsirU\nO5Fesb9O5B+a1ueiXEClu6YbWEDZo5xdzkXXA0rdFwXkS1gt56F4xr4Rs9iw\nZzLGzT8n+tmbYCWU9QJGQmps3bAXRwv+oc8W1REwsPtYJrJQ6DzP3nIw8S4E\nioTsylmK6JwEkVxbbOOH0c5fepd73rYuXt7ID/ns4IFIDIX07PYA5Vmr+kb3\nt/qRvW4VvRc1bzATmK+nWeWUDOSIXvj3L8ibQEy/MadjJ/Q4m4/wGPJgEFGt\nw1rsPossbpiLX4aOOSPAGDqWX+bQtQal7LmwLm8Mny6tNOnz2Yh0CuvA3qwA\niIIU6yg5XjXMypZtOdIXPG90pc+yf8nAW5emHtKSQKCvZ0eEHcf/7N3ckHaI\nV2zj/NGSUjSslOxxO33dWmMpE3H12fTo0WDR7JoEQTTXxOiSF3Zw7cs28Aej\nsl9DP8bzst6Z0en+mVHFDu60c3pl35Cq0D8hkZzJHC9CY8lVG6hOfADYh7nt\nMN9iPoouP2mygpQ/sqAV2ok37VOVG+u5dpYnVfOGFjszWj3xaVfiEndUCuir\nT9ASk8S/KFO9o5IuqXjSg2WUXcBPHgs2g1YwTiFcVk3p4YV/3ssinkGLwz1x\nnmTk\r\n=1eVz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICeKkGdgHF71ei42Lci7q+tgAP7BvSaNOF861YL5p58xAiEArPfRsFatcs5DvQUXrWKP4GNEQqLHPLMPzP4efnAkDHI="}]},"maintainers":[{"name":"dosentmatter","email":"kelau1993+npm@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/babel-preset-const-enum_0.0.0_1571814609441_0.5858977494406188"},"_hasShrinkwrap":false},"0.0.1":{"name":"babel-preset-const-enum","version":"0.0.1","description":"Babel preset for TypeScript `const` enums","repository":{"type":"git","url":"git+https://github.com/dosentmatter/babel-preset-const-enum.git"},"author":{"name":"Kevin Lau"},"license":"MIT","main":"lib/index.js","keywords":["babel-preset","typescript","const","enum","terser","uglify","minify","compress"],"scripts":{"build":"babel src --out-dir lib","prepublishOnly":"yarn run build","test":"jest","prettier-fix":"prettier --write src/**/*.js"},"peerDependencies":{"@babel/core":"^7.0.0-0"},"dependencies":{"@babel/helper-plugin-utils":"^7.0.0","babel-plugin-const-enum":"^0.0.4"},"devDependencies":{"@babel/cli":"^7.5.0","@babel/core":"^7.5.0","@babel/generator":"^7.5.0","@babel/preset-env":"^7.5.0","babel-jest":"^24.8.0","jest":"^24.8.0","prettier":"^1.18.2"},"gitHead":"8b9afcb8f7754e647a8e4a81d5d3677d68260bb1","bugs":{"url":"https://github.com/dosentmatter/babel-preset-const-enum/issues"},"homepage":"https://github.com/dosentmatter/babel-preset-const-enum#readme","_id":"babel-preset-const-enum@0.0.1","_npmVersion":"6.5.0","_nodeVersion":"11.9.0","_npmUser":{"name":"dosentmatter","email":"kelau1993+npm@gmail.com"},"dist":{"integrity":"sha512-xz+Qs5/dTjSpU2bh4EghQPwt1aQ1G3x8L6jCbWwdxnQHg7upGgi7GVGECzDoLyuBBrpFt0HIYnmcUossNcxi6Q==","shasum":"43ec1f57dc99254824afb64f7eef0d1df55ed4ae","tarball":"https://registry.npmjs.org/babel-preset-const-enum/-/babel-preset-const-enum-0.0.1.tgz","fileCount":4,"unpackedSize":5521,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJdx7HHCRA9TVsSAnZWagAAUFcP/ifN2ZrJOrFZtoleAgs4\nlYBL7seqlPXeaQ9RHreJfq5x/MHyPOP34WPYObspXSUVxi03qYEumZaSBK7z\n82NGpMejJCIQe/YzSHwUbHWkR3tFwvW/HeiR9hchRo1pHBgIAUnjHn0L57AD\nHlr1w2giVFEozNfHO/l6SsHY4sMz/hbYWvtod17Mf52bz8L5azNFu8ukZ+IB\nWmW2VkGgLWp9i+7OwIFZbGJiWJ8ocUqjlDh0nstIO48+YMzhC3wsnmpgh8d/\nG8uiflIpsHsfdg1zZFLMR73efnEs5bm5qMEJA6NXNla/1/lL4HNZS3OCaTrQ\nqWu58KjYTC/dmgR+zpd7uqZ8QAR3ptvg8IN7bY6gyNH4qlqr+ldEO3U/lAQm\n9vd3W9pPEl+5yN4ttF73i/gHVeAyOU84SDp/mY7VBbj0iYonN0RUBIu6Y3qK\n/htCUeCX+Ofi24+xeTNP2jCZCGk7FE2iW1N4MyzQGFbfCItmgbSp07UWlak6\niHPu3L4sTJwVNvofj/yhXHZ9efjANEEAHfnnxmzpnrRPbO9XW0o/M0SwwBz+\nhEtUldoJPLIlWXoJlcAbc3TVqjnyMN7ldKVf0cXLAsqXGy+FthHNnba/hJrz\nZHARbj5WYyLM0LKvq3c5apprRFVrPn+2YjXHQrl4N81f+jXYXElB6x32fehP\nDYgK\r\n=VahX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIF4DfB7PpEOyqWdlr0F3EC1Zeoal+sNUhrObu6C4oM5hAiBYKM9A0UwbheN1x1X8SfEzxWtyujTGlg1C7vi16V9ujQ=="}]},"maintainers":[{"name":"dosentmatter","email":"kelau1993+npm@gmail.com"}],"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/babel-preset-const-enum_0.0.1_1573368262859_0.4813295559468975"},"_hasShrinkwrap":false},"1.0.0":{"name":"babel-preset-const-enum","version":"1.0.0","description":"Babel preset for TypeScript `const` enums","repository":{"type":"git","url":"git+https://github.com/dosentmatter/babel-preset-const-enum.git"},"author":{"name":"Kevin Lau"},"license":"MIT","main":"lib/index.js","keywords":["babel-preset","typescript","const","enum","terser","uglify","minify","compress"],"scripts":{"build":"babel src --out-dir lib","prepublishOnly":"yarn run build","test":"jest","prettier-fix":"prettier --write src/**/*.js __tests__/**/*.js"},"peerDependencies":{"@babel/core":"^7.0.0-0"},"dependencies":{"@babel/helper-plugin-utils":"^7.0.0","babel-plugin-const-enum":"^1.0.0"},"devDependencies":{"@babel/cli":"^7.5.0","@babel/core":"^7.5.0","@babel/generator":"^7.5.0","@babel/preset-env":"^7.5.0","babel-jest":"^25.3.0","jest":"^25.3.0","prettier":"^2.0.4"},"gitHead":"3fdcbe12eaba3b5ee3e6780f69381a18fa21216f","bugs":{"url":"https://github.com/dosentmatter/babel-preset-const-enum/issues"},"homepage":"https://github.com/dosentmatter/babel-preset-const-enum#readme","_id":"babel-preset-const-enum@1.0.0","_nodeVersion":"13.8.0","_npmVersion":"6.13.6","dist":{"integrity":"sha512-DHfcv3mkgIqPaFODzig3Esb91cCqZlnImSl7VAwJDtIsqJvx4H08kpl051um68gjqnAXg5up5nnn6NK+Cq0blA==","shasum":"d5273efda2a084fae52768c34130d64ce2524cb4","tarball":"https://registry.npmjs.org/babel-preset-const-enum/-/babel-preset-const-enum-1.0.0.tgz","fileCount":4,"unpackedSize":5538,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.4\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJeku7nCRA9TVsSAnZWagAARxsP/R0bDYvpQ5+bcxRNAUTE\nkOpMjIbuaDT2giF5KaMLQBzawk5IWjKQEI4f4byHLyFflFYUsCwScOFLkouM\noiwoZ8rZAT0N/e3WKySO3SkYKMlsxe6LmWSA8EQ/mdzga2mm4SbYM2RkJaYx\n7YlR2X19V04F9c0BmEEamLFEwHJxKrX9d8vd3VNGUpiRu78jmTumc3fTq41o\nnLjoBfCdsV2R3IEfcSPEYbNT8liBmpfDvxMJgpIbe2Ax2sWGVd3CwwQ5NEMh\nmux0tUUjIbOcL3rKrNbLsh+HSK9QAyeBb4g6Z0/g1WrUsbXF+Tu1Y/Sxi98Y\nUlnXlWdtTsOuvTI41Idn70dbgFoVY/WAo3fGLaCj0hVjKF9DrP6Ci9uZt7RO\nTgW87IHYbfsbIISt+Yi7yRD+zDZgDXzboVDRGbDWi/+sQeOGRImJx0ekGKLr\n8D8C6gjJw0hVzZXoIHw2VFVihhqfKEraF/HRjEgGcAQeXESBSdLnZNPmr4iF\n2a9svrv4YGKafQo1gCvC3S/G5GPS8Q1TTBnEGHnwYgp/KzELrWgBH1rSTu3H\nYxN+uk0pCUs8czNetalMDoFdLHGMKlj0nt844grx0A8Sm+D4q30y8nfXNMVC\nLzcm0cy44t6JwCfOe0JrBm1WX7PsWWNCGcf38+Rc4P5FpjZ7kqHN4p0GvY1R\nJ9Jr\r\n=7ck4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCSv/J+R5ZWXtnvLgTOhUdWa3SrpKJgjHrVNV3jRuPnsgIhAIEdapV2uYSSLkf56Vw9x8jC0yiML24/qQPK71CFvsYC"}]},"maintainers":[{"name":"dosentmatter","email":"kelau1993+npm@gmail.com"}],"_npmUser":{"name":"dosentmatter","email":"kelau1993+npm@gmail.com"},"directories":{},"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/babel-preset-const-enum_1.0.0_1586687719390_0.9491309624497226"},"_hasShrinkwrap":false}},"time":{"created":"2019-10-23T07:10:09.441Z","0.0.0":"2019-10-23T07:10:09.555Z","modified":"2022-04-11T16:47:07.833Z","0.0.1":"2019-11-10T06:44:23.001Z","1.0.0":"2020-04-12T10:35:19.484Z"},"maintainers":[{"name":"dosentmatter","email":"kelau1993+npm@gmail.com"}],"description":"Babel preset for TypeScript `const` enums","homepage":"https://github.com/dosentmatter/babel-preset-const-enum#readme","keywords":["babel-preset","typescript","const","enum","terser","uglify","minify","compress"],"repository":{"type":"git","url":"git+https://github.com/dosentmatter/babel-preset-const-enum.git"},"author":{"name":"Kevin Lau"},"bugs":{"url":"https://github.com/dosentmatter/babel-preset-const-enum/issues"},"license":"MIT","readme":"# babel-preset-const-enum\n\n> Babel preset for TypeScript `const` enums\n\n## Install\n\nUsing npm:\n\n```sh\nnpm install --save-dev babel-preset-const-enum\n```\n\nor using yarn:\n\n```sh\nyarn add babel-preset-const-enum --dev\n```\n\n## Description\n\nThis preset runs\n[`babel-plugin-const-enum`](https://github.com/dosentmatter/babel-plugin-const-enum)\nonly on files with extensions `.ts` or `.tsx`. This prevents `SyntaxError`s from\nhappening when mistakenly running `babel-plugin-const-enum` on non-TypeScript\nfiles such as [flow](https://flow.org/), which uses a `.js` extension.\n\nA babel preset is required because plugins don't have access to the file\nextension of the file the plugin may run on.\n\n## Usage\n\nYou are most likely using\n[`@babel/preset-typescript`](https://babeljs.io/docs/en/babel-preset-typescript)\nas along with this preset. Make sure that `babel-preset-const-enum` comes after\n`@babel/preset-typescript` in the preset array so that\n`babel-preset-const-enum` [runs first](https://babeljs.io/docs/en/presets#preset-ordering).\nThis preset needs to run first to transform the `const enum`s into code that\n`@babel/preset-typescript` allows.\n\n`.babelrc`\n\n```json\n{\n  \"presets\": [\"@babel/typescript\", \"const-enum\"]\n}\n```\n\n### `allExtensions`\n\n`boolean`, defaults to `false`.\n\nIndicates that every file extension should be parsed.\n\n### `transform: removeConst` (default)\n\nRemoves the `const` keyword to use regular `enum`.\nCan be used in a slower dev build to allow `const`, while prod still uses `tsc`.\nSee [babel#6476](https://github.com/babel/babel/issues/6476).\n\n```ts\n// Before:\nconst enum MyEnum {\n  A = 1,\n  B = A,\n  C,\n  D = C,\n  E = 1,\n  F,\n  G = A * E,\n  H = A ** (B ** C),\n  I = A << 20,\n}\n\n// After:\nenum MyEnum {\n  A = 1,\n  B = A,\n  C,\n  D = C,\n  E = 1,\n  F,\n  G = A * E,\n  H = A ** (B ** C),\n  I = A << 20,\n}\n```\n\n`.babelrc`\n\n```json\n{\n  \"presets\": [\"const-enum\"]\n}\n```\n\nOr Explicitly:\n\n`.babelrc`\n\n```json\n{\n  \"presets\": [\n    [\n      \"const-enum\",\n      {\n        \"transform\": \"removeConst\"\n      }\n    ]\n  ]\n}\n```\n\n### `transform: constObject`\n\nTransforms into a `const` object literal.\nCan be further compressed using Uglify/Terser to inline `enum` access.\nSee [babel#8741](https://github.com/babel/babel/issues/8741).\n\n```ts\n// Before:\nconst enum MyEnum {\n  A = 1,\n  B = A,\n  C,\n  D = C,\n  E = 1,\n  F,\n  G = A * E,\n  H = A ** (B ** C),\n  I = A << 20,\n}\n\n// After:\nconst MyEnum = {\n  A: 1,\n  B: 1,\n  C: 2,\n  D: 2,\n  E: 1,\n  F: 2,\n  G: 1,\n  H: 1,\n  I: 1048576,\n};\n```\n\n`.babelrc`\n\n```json\n{\n  \"presets\": [\n    [\n      \"const-enum\",\n      {\n        \"transform\": \"constObject\"\n      }\n    ]\n  ]\n}\n```\n","readmeFilename":"README.md"}