Learn about our RFC process, Open RFC meetings & more.Join in the discussion! »

gulp-ts-alias

1.1.0 • Public • Published

gulp-ts-alias

Build Status Coverage Status dependencies Status

Resolve TypeScript import aliases and paths defined in tsconfig.

Install

npm install --save-dev gulp-ts-alias

Information

There have been previous attempts at releasing Gulp plugins that accomplish something similar, but all have become unmaintained.

For legacy sake, here is a list of previous packages/scripts that have been considered:

gulp-ts-paths path-alias-resolver

Usage

const typescript = require('gulp-typescript');
const sourcemaps = require('gulp-sourcemaps');
const alias = require('gulp-ts-alias');
 
const project = typescript.createProject('tsconfig.json');
 
function build() {
  const compiled = src('./src/**/*.ts')
    .pipe(alias({ configuration: project.config }))
    .pipe(sourcemaps.init())
    .pipe(project());
 
  return compiled.js
    .pipe(sourcemaps.write({ sourceRoot: file => path.relative(path.join(file.cwd, file.path), file.base) }))
    .pipe(dest('build/'))
}

Example

The following configuration is common in tsconfig configuration files

{
  "rootDir": "./src",
  "baseUrl": ".",
  "paths": {
    "@/*": ["src/*"],
  }
}

In practice, these path aliases are often used in this fashion

Input:

import express from 'express';
 
import A from './file'; // Normal relative import
 
// Aliased import, resolves to some relative path to rootDir
import B from '@/components';

Output:

import express from 'express';
 
import A from './file';
 
// gulp-ts-alias finds the correct relative path
// and replaces it before compilation
import B from '../../components';

Install

npm i gulp-ts-alias

DownloadsWeekly Downloads

453

Version

1.1.0

License

MIT

Unpacked Size

27.7 kB

Total Files

9

Last publish

Collaborators

  • avatar