From e278de03353b0b782a66f4777573f14915e3d1a7 Mon Sep 17 00:00:00 2001 From: Judd Younce Date: Wed, 14 Sep 2016 18:28:23 +0000 Subject: [PATCH] fix(typescript): fix the build from breaking when typescript server has no tsconfig.json --- src/helpers/TsProject.coffee | 13 +++++++++++-- src/tasks/compile/typescript-server.coffee | 18 ++++++++---------- 2 files changed, 19 insertions(+), 12 deletions(-) diff --git a/src/helpers/TsProject.coffee b/src/helpers/TsProject.coffee index f1c9dba..c78b2cd 100644 --- a/src/helpers/TsProject.coffee +++ b/src/helpers/TsProject.coffee @@ -28,16 +28,25 @@ class TsProject # =========================================== class Typescript constructor: (@id, @ts, @tsconfig, @opts={}) -> + @hasTsConfig = help.hasTsConfig @tsconfig @opts.typescript = typescript - return @setProject().getProject() + return @setProject().setProjectConfig().getProject() setProject: -> - if help.hasTsConfig @tsconfig + if @hasTsConfig @project = @ts.createProject @tsconfig, @opts else @project = @ts.createProject @opts @ + setProjectConfig: -> + return @ if @hasTsConfig + # gulp-typescript needs these set if no tsconfig.json + @project.config = {} + @project.configFileName = @tsconfig + @project.options.rootDir = './' + @ + getProject: -> @project diff --git a/src/tasks/compile/typescript-server.coffee b/src/tasks/compile/typescript-server.coffee index 97957d6..fb04f35 100644 --- a/src/tasks/compile/typescript-server.coffee +++ b/src/tasks/compile/typescript-server.coffee @@ -1,12 +1,11 @@ module.exports = (config, gulp, taskOpts={}) -> - q = require 'q' - path = require 'path' - ts = require 'gulp-typescript' - log = require "#{config.req.helpers}/log" - promiseHelp = require "#{config.req.helpers}/promise" - TsProject = require "#{config.req.helpers}/TsProject" - updateFileBase = require "#{config.req.plugins}/gulp-update-file-base" - forWatchFile = !!taskOpts.watchFile + q = require 'q' + path = require 'path' + ts = require 'gulp-typescript' + log = require "#{config.req.helpers}/log" + promiseHelp = require "#{config.req.helpers}/promise" + TsProject = require "#{config.req.helpers}/TsProject" + forWatchFile = !!taskOpts.watchFile # helpers # ======= @@ -28,9 +27,8 @@ module.exports = (config, gulp, taskOpts={}) -> runTask = (paths) -> defer = q.defer() src = help.getSrc paths - fileBase = paths.src tsProject = TsProject.get 'server', ts, paths.tsconfig - tsResult = tsProject.src(src).pipe ts tsProject + tsResult = tsProject.src().pipe ts tsProject reference = if paths.watchFile then [src[0]] else undefined tsResult.js .pipe ts.filter tsProject, { referencedFrom: reference }