Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/vitorluizc/aliases-from-tsconfig
Reads a jsconfig/tsconfig.json baseUrl and paths and provides a methods to replace its aliases in your files paths.
https://github.com/vitorluizc/aliases-from-tsconfig
tsconfig tsconfig-paths
Last synced: about 2 months ago
JSON representation
Reads a jsconfig/tsconfig.json baseUrl and paths and provides a methods to replace its aliases in your files paths.
- Host: GitHub
- URL: https://github.com/vitorluizc/aliases-from-tsconfig
- Owner: VitorLuizC
- License: mit
- Created: 2022-11-14T16:12:21.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2024-04-25T22:03:19.000Z (8 months ago)
- Last Synced: 2024-04-26T23:40:42.333Z (8 months ago)
- Topics: tsconfig, tsconfig-paths
- Language: TypeScript
- Homepage:
- Size: 284 KB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Aliases from `tsconfig.json`
[![Continuous Integrations](https://github.com/VitorLuizC/aliases-from-tsconfig/actions/workflows/continuous-integrations.yaml/badge.svg?branch=main)](https://github.com/VitorLuizC/aliases-from-tsconfig/actions/workflows/continuous-integrations.yaml)
[![License](https://badgen.net/github/license/VitorLuizC/aliases-from-tsconfig)](./LICENSE)Reads a jsconfig/tsconfig.json baseUrl and paths and provides a method to replace its aliases in your files paths.
## Installation
This library is published in the NPM registry and can be installed using any compatible package manager.
```sh
npm install aliases-from-tsconfig --save# For Yarn, use the command below.
yarn add aliases-from-tsconfig
```## Usage for Custom Implementations
Create an `AliasesFromTSConfig` instance with the path to your jsconfig/tsconfig.json, and use its methods to check if the file's path has an alias or to apply the alias.
```js
import AliasesFromTSConfig from 'aliases-from-tsconfig';const aliases = new AliasesFromTSConfig('./tsconfig.json');
aliases.apply('@/components/Button/ButtonGhost.js');
//=> './app/assets/components/Button/ButtonGhost.js'function processFilePath(path) {
if (aliases.hasAlias(path)) {
console.log(`The file path "${path}" has an alias from tsconfig.json.`);
}return aliases.apply(path);
}
```## Usage with Webpack
Create an instance of `AliasesFromTSConfig` using the path to your `tsconfig.json` as argument, and then call the method `getAliasesForWebpack` to get the correct alias configuration for webpack.
```js
// configuration/webpack.config.mjs
import AliasesFromTSConfig from 'aliases-from-tsconfig';const aliases = new AliasesFromTSConfig('../jsconfig.json');
export default {
resolve: {
alias: aliases.getAliasesForWebpack(),
// ...
},
// ...
};
```## Documentation
[Documentation generated from source files by Typedoc](./docs/README.md).
## License
Released under [MIT License](./LICENSE).