diff options
Diffstat (limited to 'tensorflow/tensorboard/gulp_tasks/compile.js')
-rw-r--r-- | tensorflow/tensorboard/gulp_tasks/compile.js | 95 |
1 files changed, 0 insertions, 95 deletions
diff --git a/tensorflow/tensorboard/gulp_tasks/compile.js b/tensorflow/tensorboard/gulp_tasks/compile.js deleted file mode 100644 index 01af60eba7..0000000000 --- a/tensorflow/tensorboard/gulp_tasks/compile.js +++ /dev/null @@ -1,95 +0,0 @@ -/* Copyright 2015 The TensorFlow Authors. All Rights Reserved. - -Licensed under the Apache License, Version 2.0 (the "License"); -you may not use this file except in compliance with the License. -You may obtain a copy of the License at - - http://www.apache.org/licenses/LICENSE-2.0 - -Unless required by applicable law or agreed to in writing, software -distributed under the License is distributed on an "AS IS" BASIS, -WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -See the License for the specific language governing permissions and -limitations under the License. -==============================================================================*/ - -const gulp = require('gulp'); -const ts = require('gulp-typescript'); -const typescript = require('typescript'); -const gutil = require('gulp-util'); -const filter = require('gulp-filter'); -const merge = require('merge2'); -const browserify = require('browserify'); -const tsify = require('tsify'); -const source = require('vinyl-source-stream'); -const glob = require('glob').sync; -const concat = require('gulp-concat'); - -const tsProject = ts.createProject('./tsconfig.json', { - typescript: typescript, - noExternalResolve: true, // opt-in for faster compilation! -}); - -/** List of components (and their external deps) that are using es6 modules. */ -const ES6_COMPONENTS = [{ - name: 'vz_projector', - deps: [ - 'd3/d3.min.js', 'weblas/dist/weblas.js', 'three.js/build/three.min.js', - 'three.js/examples/js/controls/OrbitControls.js', - 'numericjs/lib/numeric-1.2.6.js' - ] -}]; - -module.exports = function(includeDeps) { - return function() { - // Compile all components that are using ES6 modules into a bundle.js - // using browserify. - const entries = ['typings/index.d.ts']; - const deps = {}; - ES6_COMPONENTS.forEach(function(component) { - // Collect all the typescript files across the components. - entries = entries.concat(glob( - 'components/' + component.name + '/**/*.ts', - // Do not include tests or IDE-purposed files. - {ignore: ['**/*_test.ts', '**/deps.d.ts']})); - // Collect the unique external deps across all components using es6 - // modules. - component.deps.forEach(function(dep) { - deps['components/' + dep] = true; - }); - }); - deps = Object.keys(deps); - - // Compile, bundle all the typescript files and prepend their deps. - browserify(entries) - .plugin(tsify) - .bundle() - .on('error', function(error) { console.error(error.toString()); }) - .pipe(source('bundle.js')) - .pipe(gulp.dest('components')) - .on('end', function() { - // Typescript was compiled and bundled. Now we need to prepend - // the external dependencies. - if (includeDeps) { - gulp.src(deps.concat(['components/bundle.js'])) - .pipe(concat('bundle.js')) - .pipe(gulp.dest('components')); - } - }); - - // Compile components that are using global namespaces producing 1 js file - // for each ts file. - const isComponent = filter([ - 'components/tf_*/**/*.ts', 'components/vz_*/**/*.ts', 'typings/**/*.ts', - 'components/plottable/plottable.d.ts' - // Ignore components that use es6 modules. - ].concat(ES6_COMPONENTS.map(function(component) { - return '!components/' + component.name + '/**/*.ts'; - }))); - - return tsProject.src() - .pipe(isComponent) - .pipe(ts(tsProject)) - .js.pipe(gulp.dest('.')); - }; -}; |