jaywcjlove/tsbb
### [`v4.0.0`](https://togithub.com/jaywcjlove/tsbb/releases/tag/v4.0.0)
[Compare Source](https://togithub.com/jaywcjlove/tsbb/compare/v3.7.9...v4.0.0)
[![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/tsbb@4.0.0/file/README.md)
Documentation v4.0.0: https://raw.githack.com/jaywcjlove/tsbb/9963c7e/index.html\
Comparing Changes: https://github.com/jaywcjlove/tsbb/compare/v4.0.0-alpha.3...v4.0.0\
Migrate from tsbb 3.x to 4.x: [https://github.com/jaywcjlove/tsbb/issues/439](https://togithub.com/jaywcjlove/tsbb/issues/439)
```bash
npm i tsbb@4.0.0
```
#### Updates in version v4
1. Updated typescript v5 dependency
2. Updated jest v29 dependency
3. Refactored feature package management
4. Refactored create-tsbb based on package internal examples generation
5. Updated template examples
```diff
- tsbb build [options]
+ tsbb build [source…] [options]
- --entry, -e
- --emit-type
- --no-emit-type
- --disable-babel
- --no-babel-option
- --file-names, -f
+ --use-babel Use Babel.(works in babel)
--source-maps Enables the generation of sourcemap files.(works in babel)
--env-name The current active environment used during configuration loading.(works in babel)
--esm Output "esm" directory.(works in babel)
--cjs Output "cjs" directory.(works in babel)
```
```diff
- $ tsbb build --file-names src/main.ts --file-names src/good.ts
+ $ tsbb build src/main.ts src/good.ts
```
```diff
- $ tsbb build --entry src/main.ts
+ $ tsbb build src/main.ts
```
```bash
$ tsbb build src/*.ts # Build your project.
$ tsbb build src/main.ts src/good.ts # Specify the entry directory.
```
```bash
$ tsbb build src/*.ts --use-babel --no-source-maps # No ".js.map" file is generated. (works in babel)
$ tsbb watch src/*.ts --use-babel --cjs ./cjs # Watch Output directory.
$ tsbb build src/*.ts --use-babel --esm ./es # Output directory.
$ tsbb build src/*.ts --use-babel --use-vue # To add Vue JSX support.
$ tsbb test # Run test suites related
$ tsbb test --coverage --bail # Test coverage information should be collected
```
```diff
Usage: create-tsbb [options] [--help|h]
Options:
--version, -v Show version number
--help, -h Displays help information.
- --output, -o Output directory.
--example, -e Example from: https://jaywcjlove.github.io/tsbb , default: "basic"
--force, -f Overwrite target directory if it exists. default: false
- --path, -p Specify the download target git address. default: "https://jaywcjlove.github.io/tsbb"
```
#### TypeScript Project
To configure the **`tsconfig.json`** properly, you must first define either the **`include`** or **`files`** field(s) to specify which files need to be compiled. Once you've done that, you can then specify the **`outDir`** for the output directory in the configuration.
```typescript
{
"$schema": "http://json.schemastore.org/tsconfig",
"compilerOptions": {
"module": "commonjs",
"target": "esnext",
"outDir": "./lib",
"strict": true,
"skipLibCheck": true
},
"include": ["src/**/*"],
"exclude": [
"node_modules",
"**/*.spec.ts"
]
}
```
After completing `tsconfig.jso` configuration, you can configure *scripts* in `package.json`:
```javascript
{
"scripts": {
"watch": "tsbb watch",
"build": "tsbb build"
},
"devDependencies": {
"tsbb": "*"
}
}
```
#### Babel Project
Adding the parameter `--use-babel` to your project enables babel to compile and output **`cjs`**/**`esm`** files simultaneously, while **`ts`** is only needed for *type* output.
```bash
$ tsbb build "src/*ts" --use-babel
```
You can change the built-in settings of Babel by adding a **`.babelrc`** configuration file. Additionally, you can modify the **Babel** configurations for **`esm`** and **`cjs`** separately through environment variables. Please refer to the example below:
```js
{
"env": {
"cjs": {
"presets": ["@babel/preset-typescript"]
},
"esm": {
"presets": ["@babel/preset-env", {
"modules": false,
"loose": true,
"targets": {
"esmodules": true,
},
}]
}
}
}
```
At compile time, specify the environment variable `--envName='xxx'` to enable reading of relevant configurations from the settings. This environment variable can also be customized.
```js
{
"env": {
"xxx": { ... }
}
}
```
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
~3.7.2
->~4.0.0
Release Notes
jaywcjlove/tsbb
### [`v4.0.0`](https://togithub.com/jaywcjlove/tsbb/releases/tag/v4.0.0) [Compare Source](https://togithub.com/jaywcjlove/tsbb/compare/v3.7.9...v4.0.0) [![](https://img.shields.io/badge/Open%20in-unpkg-blue)](https://uiwjs.github.io/npm-unpkg/#/pkg/tsbb@4.0.0/file/README.md) Documentation v4.0.0: https://raw.githack.com/jaywcjlove/tsbb/9963c7e/index.html\ Comparing Changes: https://github.com/jaywcjlove/tsbb/compare/v4.0.0-alpha.3...v4.0.0\ Migrate from tsbb 3.x to 4.x: [https://github.com/jaywcjlove/tsbb/issues/439](https://togithub.com/jaywcjlove/tsbb/issues/439) ```bash npm i tsbb@4.0.0 ``` #### Updates in version v4 1. Updated typescript v5 dependency 2. Updated jest v29 dependency 3. Refactored feature package management 4. Refactored create-tsbb based on package internal examples generation 5. Updated template examples ```diff - tsbb build [options] + tsbb build [source…] [options] - --entry, -e - --emit-type - --no-emit-type - --disable-babel - --no-babel-option - --file-names, -f + --use-babel Use Babel.(works in babel) --source-maps Enables the generation of sourcemap files.(works in babel) --env-name The current active environment used during configuration loading.(works in babel) --esm Output "esm" directory.(works in babel) --cjs Output "cjs" directory.(works in babel) ``` ```diff - $ tsbb build --file-names src/main.ts --file-names src/good.ts + $ tsbb build src/main.ts src/good.ts ``` ```diff - $ tsbb build --entry src/main.ts + $ tsbb build src/main.ts ``` ```bash $ tsbb build src/*.ts # Build your project. $ tsbb build src/main.ts src/good.ts # Specify the entry directory. ``` ```bash $ tsbb build src/*.ts --use-babel --no-source-maps # No ".js.map" file is generated. (works in babel) $ tsbb watch src/*.ts --use-babel --cjs ./cjs # Watch Output directory. $ tsbb build src/*.ts --use-babel --esm ./es # Output directory. $ tsbb build src/*.ts --use-babel --use-vue # To add Vue JSX support. $ tsbb test # Run test suites related $ tsbb test --coverage --bail # Test coverage information should be collected ``` ```diff Usage: create-tsbbConfiguration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by Mend Renovate. View repository job log here.