1 | # JavaScript Pack [![npm-latest]][npm]
|
2 |
|
3 | > Transpile JavaScript using Babel.
|
4 |
|
5 | Internally the `JavaScript Pack` uses `esbuild` to transpile the code if needed.
|
6 | To configure compilation targets in your project, a `browerslist` configuration can be used.
|
7 | Linting code via `ESLint` can be utilized by creating an `.eslintrc` file.
|
8 |
|
9 | ## Overview
|
10 |
|
11 | - [Setup](#setup)
|
12 | - [API](#api)
|
13 | - [Usage](#usage)
|
14 | - [License](#license)
|
15 |
|
16 | ## Setup
|
17 |
|
18 | `JavaScript Pack` is included in the [`complete`][edition-complete] edition.
|
19 |
|
20 | **Current Release**
|
21 |
|
22 | ```bash
|
23 | npm install --save-dev @packmule/javascript-pack @babel/core eslint
|
24 | ```
|
25 |
|
26 | **Nightly Build**
|
27 |
|
28 | ```bash
|
29 | npm install --save-dev @packmule/javascript-pack@nightly @babel/core eslint
|
30 | ```
|
31 |
|
32 | ## API
|
33 |
|
34 | ```typescript
|
35 | JavaScriptPack()
|
36 | .include(glob: string)
|
37 | ```
|
38 |
|
39 | ### Hints
|
40 |
|
41 | - **cache** - _Controls cache utilization of the `babel-loader`._
|
42 | - **lint** - _Controls source-code linting via `eslint-webpack-plugin`._
|
43 | - **fix** - _Controls source-code fixing via `eslint-webpack-plugin`._
|
44 |
|
45 | ## Usage
|
46 |
|
47 | **Example**
|
48 |
|
49 | Process JavaScript code.
|
50 |
|
51 | ```typescript
|
52 | import Packmule from '@packmule/core';
|
53 | import JavascriptPack from '@packmule/javascript-pack';
|
54 |
|
55 | const packmule = new Packmule();
|
56 | packmule.add(new JavaScriptPack());
|
57 | return packmule.generate();
|
58 | ```
|
59 |
|
60 | ## License
|
61 |
|
62 | [MIT](https://choosealicense.com/licenses/mit/)
|
63 |
|
64 | ---
|
65 |
|
66 | [<img src="https://avatars.githubusercontent.com/u/4364197?s=64">](https://www.pixelart.at/)
|
67 |
|
68 | [packmule-hints]: https://www.npmjs.com/package/@packmule/core#hints
|
69 | [packmule-api]: https://www.npmjs.com/package/@packmule/core#api
|
70 | [npm]: https://www.npmjs.com/package/@packmule/javascript-pack
|
71 | [npm-latest]: https://img.shields.io/npm/v/@packmule/javascript-pack/latest?color=%230AC2FF&label=release&style=for-the-badge
|
72 | [edition-default]: https://www.npmjs.com/package/@packmule/default
|
73 | [edition-complete]: https://www.npmjs.com/package/@packmule/complete
|