скомпилировать машинописный текст в js с помощью веб-пакета и сохранить структуру каталогов

Я хочу, чтобы webpack скомпилировал мой проект узла машинописного текста в js, но я хочу, чтобы он поддерживал структуру каталогов, а не объединял в 1 файл.

Это возможно?

Моя структура:

src
   |_controllers
     |_home
       |_index.ts
   |_ services
    // etc.

И я хочу, чтобы он скомпилировался:

dist
   |_controllers
     |_home
       |_index.ts
   |_ services
    // etc.

на данный момент мой конфиг такой:

{
    name: 'api',
    target: 'node',
    externals: getExternals(),
    entry: isDevelopment ? [...entries] : entries,
    devtool: !isDevelopment && 'cheap-module-source-map',
    output: {
      path: paths.appBuild,
      filename: '[name].js',
      libraryTarget: 'commonjs2'
    },
    plugins: [
      new WriteFilePlugin(),
      new webpack.optimize.LimitChunkCountPlugin({
        maxChunks: 1
      }),
      isProduction && new webpack.optimize.ModuleConcatenationPlugin()
    ]
  }

Возможно ли это с помощью веб-пакета?

Я не могу использовать только tsc, потому что у меня есть монорепозиторий с рабочими пространствами пряжи, и у меня может быть такая ссылка:

import {something} from '@my/package';

@my/package не существует в npm и существует только в контексте монорепозитория, я могу использовать внешние узлы с веб-пакетом, чтобы включить его в пакет. Я не думаю, что смогу сохранить структуру папок таким образом.

Решат ли эту проблему новые ссылки на проекты typescript 3.0?


person dagda1    schedule 27.08.2018    source источник
comment
Это немного странно, так как веб-пакет используется для пакетов... и вам не нужен пакет, вы просто хотите скомпилировать. См. также: stackoverflow.com/questions/40096470 /   -  person Andrei Tătar    schedule 27.08.2018
comment
Можете ли вы привести пример, показывающий, как относительные пути не будут работать с простым tsc?   -  person Sly_cardinal    schedule 27.08.2018
comment
Можете ли вы объяснить, почему вам не нужен пакет? Как вы считаете, в чем преимущество сохранения структуры каталогов, а не создания пакета, разбитого на части в зависимости от того, что нужно пользователям, может понадобиться и понадобится только при определенных условиях?   -  person Mike 'Pomax' Kamermans    schedule 27.08.2018
comment
используйте компилятор чистого машинописного текста, он делает то, что вы ищете.   -  person PlayMa256    schedule 27.08.2018
comment
я обновил вопрос: ссылки на рабочее пространство пряжи являются проблемой   -  person dagda1    schedule 27.08.2018
comment
вы можете использовать paths compilerOptions, чтобы переназначить любой путь на любой путь в tsconfig.json. Не можешь?   -  person smnbbrv    schedule 27.08.2018
comment
Я беру конкретно про продакшн, не хочется весь монорепозиторий заливать на сервер.   -  person dagda1    schedule 27.08.2018
comment
Если вы ссылаетесь на @my/package, куда вы ожидаете, что он будет скопирован в выходных данных?   -  person Matt McCutchen    schedule 28.08.2018