You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ignite.apache.org by an...@apache.org on 2016/03/31 09:27:43 UTC
[05/14] ignite git commit: IGNITE-2755 Optimize gulp build tasks.
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/index.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/index.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/index.js
new file mode 100644
index 0000000..f1c2e6a
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/index.js
@@ -0,0 +1,29 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import requireDir from 'require-dir';
+import sequence from 'gulp-sequence';
+
+// Require all tasks in gulpfile.js/tasks, including subfolders.
+requireDir('./tasks', { recurse: true });
+
+// Default no-arg task.
+gulp.task('default', ['build']);
+
+// Build + watch + connect task.
+gulp.task('watch', (cb) => sequence('build', 'connect', ['bundle:ignite:watch', 'sass:watch', 'jade:watch', 'copy:watch'], cb));
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/paths.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/paths.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/paths.js
new file mode 100644
index 0000000..738d8f3
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/paths.js
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import path from 'path';
+
+const root = path.dirname(__dirname);
+
+const srcDir = path.join(root, 'app');
+const destDir = path.join(root, 'build');
+
+const igniteModulesDir = process.env.IGNITE_MODULES ? path.normalize(process.env.IGNITE_MODULES) : path.join(root, 'ignite_modules');
+const igniteModulesTemp = path.join(root, 'ignite_modules_temp');
+
+export {
+ root,
+ srcDir,
+ destDir,
+ igniteModulesDir,
+ igniteModulesTemp
+};
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/build.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/build.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/build.js
new file mode 100644
index 0000000..8396400
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/build.js
@@ -0,0 +1,21 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import sequence from 'gulp-sequence';
+
+gulp.task('build', (cb) => sequence('clean', 'clean:ignite-modules-temp', 'ignite:modules', ['copy', 'jade', 'sass'], 'bundle', cb));
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/bundle.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/bundle.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/bundle.js
new file mode 100644
index 0000000..cd9cd5f
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/bundle.js
@@ -0,0 +1,75 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import jspm from 'jspm';
+import util from 'gulp-util';
+import sequence from 'gulp-sequence';
+import htmlReplace from 'gulp-html-replace';
+
+import { srcDir, destDir, igniteModulesTemp } from '../paths';
+
+const paths = [
+ './app/**/*.js',
+ './app/**/*.jade',
+ './app/data/*.json'
+];
+
+const options = {
+ minify: true
+};
+
+gulp.task('bundle', ['eslint', 'bundle:ignite']);
+
+// Package all external dependencies and ignite-console.
+gulp.task('bundle:ignite', (cb) => {
+ if (util.env.debug)
+ delete options.minify;
+
+ if (util.env.debug || util.env.sourcemaps)
+ options.sourceMaps = true;
+
+ if (util.env.debug)
+ return sequence('bundle:ignite:vendors', 'bundle:ignite:app', cb);
+
+ return sequence('bundle:ignite:app-min', 'bundle:ignite:app-min:replace', cb);
+});
+
+gulp.task('bundle:ignite:watch', () =>
+ gulp.watch(paths, ['bundle:ignite:app'])
+);
+
+gulp.task('bundle:ignite:vendors', () =>
+ jspm.bundle(`${srcDir}/index - [${srcDir}/**/*] - [./controllers/**/*] - [./helpers/**/*] - [./public/**/*!css] - [${igniteModulesTemp}/**/*] - [${igniteModulesTemp}/**/*!jade]`, `${destDir}/vendors.js`, options)
+);
+
+gulp.task('bundle:ignite:app', () =>
+ jspm.bundle(`${srcDir}/index - ${destDir}/vendors`, `${destDir}/app.js`, options)
+);
+
+gulp.task('bundle:ignite:app-min', () =>
+ jspm.bundleSFX(`${srcDir}/index`, `${destDir}/app.min.js`, options)
+);
+
+gulp.task('bundle:ignite:app-min:replace', () =>
+ gulp.src('./build/index.html')
+ .pipe(htmlReplace({
+ css: 'app.min.css',
+ js: 'app.min.js'
+ }))
+ .pipe(gulp.dest('./build'))
+);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/clean.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/clean.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/clean.js
new file mode 100644
index 0000000..4c821e8
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/clean.js
@@ -0,0 +1,35 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import ignore from 'gulp-ignore';
+import clean from 'gulp-rimraf';
+
+import { destDir, igniteModulesTemp } from '../paths';
+
+// Clean build folder, remove files.
+gulp.task('clean', () =>
+ gulp.src(`${ destDir }/*`, {read: false})
+ .pipe(ignore('jspm_packages'))
+ .pipe(ignore('system.config.js'))
+ .pipe(clean({ force: true }))
+);
+
+gulp.task('clean:ignite-modules-temp', () =>
+ gulp.src(igniteModulesTemp, {read: false})
+ .pipe(clean({ force: true }))
+);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/connect.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/connect.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/connect.js
new file mode 100644
index 0000000..c7c9607
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/connect.js
@@ -0,0 +1,36 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import connect from 'gulp-connect';
+import modrewrite from 'connect-modrewrite';
+
+import { destDir } from '../paths';
+
+// Task run static server to local development.
+gulp.task('connect', () => {
+ connect.server({
+ port: 8090,
+ root: [ destDir ],
+ middleware() {
+ return [modrewrite([
+ '^/api/v1/(.*)$ http://localhost:3000/$1 [P]'
+ ])];
+ },
+ fallback: `${destDir}/index.html`
+ });
+});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/copy.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/copy.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/copy.js
new file mode 100644
index 0000000..1de54bb
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/copy.js
@@ -0,0 +1,90 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import util from 'gulp-util';
+import cache from 'gulp-cached';
+import sequence from 'gulp-sequence';
+
+import { destDir, igniteModulesDir, igniteModulesTemp } from '../paths';
+
+const paths = [
+ './app/**/**/*.js',
+ './controllers/*.js',
+ './controllers/**/*.js',
+ './helpers/*.js',
+ './helpers/**/*.js'
+];
+
+const resourcePaths = [
+ './controllers/**/*.json',
+ './public/**/*.png',
+ './public/*.ico'
+];
+
+const igniteModulePaths = [
+ igniteModulesTemp + '/**/main.js',
+ igniteModulesTemp + '/**/module.js',
+ igniteModulesTemp + '/**/app/modules/*.js',
+ igniteModulesTemp + '/**/app/modules/**/*.js',
+ igniteModulesTemp + '/**/controllers/*.js'
+];
+
+const igniteModuleResourcePaths = [
+ igniteModulesDir + '/**/controllers/models/*.json',
+ igniteModulesDir + '/**/images/*.png'
+];
+
+gulp.task('copy', function(cb) {
+ const tasks = ['copy:resource', 'copy:ignite_modules:resource'];
+
+ if (util.env.debug || util.env.sourcemaps) {
+ tasks.push('copy:js');
+
+ tasks.push('copy:ignite_modules:js');
+ }
+
+ return sequence(tasks, cb);
+});
+
+gulp.task('copy:js', () =>
+ gulp.src(paths, {base: './'})
+ .pipe(cache('copy:js'))
+ .pipe(gulp.dest(destDir))
+);
+
+gulp.task('copy:resource', () =>
+ gulp.src(resourcePaths)
+ .pipe(gulp.dest(destDir))
+);
+
+gulp.task('copy:ignite_modules:js', () =>
+ gulp.src(igniteModulePaths)
+ .pipe(cache('copy:ignite_modules:js'))
+ .pipe(gulp.dest(`${destDir}/${igniteModulesTemp}`))
+);
+
+gulp.task('copy:ignite_modules:resource', () =>
+ gulp.src(igniteModuleResourcePaths)
+ .pipe(gulp.dest(`${destDir}/ignite_modules`))
+);
+
+gulp.task('copy:watch', (cb) => {
+ gulp.watch([resourcePaths, igniteModuleResourcePaths], ['copy:resource', 'copy:ignite_modules:resource']);
+
+ gulp.watch([paths, igniteModulePaths], sequence('copy:js', 'copy:ignite_modules:js', cb));
+});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/eslint.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/eslint.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/eslint.js
new file mode 100644
index 0000000..cb49c64
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/eslint.js
@@ -0,0 +1,43 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import cache from 'gulp-cached';
+import eslint from 'gulp-eslint';
+import sequence from 'gulp-sequence';
+
+const paths = [
+ './app/**/*.js',
+ './gulpfile.babel.js/**/*.js',
+ './gulpfile.babel.js/*.js'
+];
+
+gulp.task('eslint:node', () =>
+ gulp.src('./serve/**/*.js')
+ .pipe(cache('eslint:node'))
+ .pipe(eslint({envs: ['node']}))
+ .pipe(eslint.format())
+);
+
+gulp.task('eslint:browser', () =>
+ gulp.src(paths)
+ .pipe(cache('eslint:browser'))
+ .pipe(eslint({envs: ['browser']}))
+ .pipe(eslint.format())
+);
+
+gulp.task('eslint', (cb) => sequence('eslint:browser', 'eslint:node', cb));
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/ignite-modules.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/ignite-modules.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/ignite-modules.js
new file mode 100644
index 0000000..2281683
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/ignite-modules.js
@@ -0,0 +1,61 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import inject from 'gulp-inject';
+import clean from 'gulp-rimraf';
+import sequence from 'gulp-sequence';
+
+import { igniteModulesDir, igniteModulesTemp } from '../paths';
+
+const igniteModulePaths = [
+ igniteModulesDir + '/**/*.js',
+ igniteModulesDir + '/**/*.jade'
+];
+
+gulp.task('ignite:modules', (cb) => sequence('ignite:modules:copy', 'ignite:modules:inject', cb));
+
+gulp.task('ignite:modules:copy', () =>
+ gulp.src(igniteModulePaths)
+ .pipe(gulp.dest(igniteModulesTemp))
+);
+
+gulp.task('ignite:modules:inject', () =>
+ gulp.src(`${igniteModulesTemp}/index.js`)
+ .pipe(inject(gulp.src([`${igniteModulesTemp}/**/main.js`]), {
+ starttag: '/* ignite:modules */',
+ endtag: '/* endignite */',
+ transform: (filePath) => {
+ const igniteModuleName = filePath.replace(/.*ignite_modules_temp\/([^\/]+).*/mgi, '$1');
+
+ // return file contents as string
+ return `import './${igniteModuleName}/main';`;
+ }
+ }))
+ .pipe(inject(gulp.src([`${igniteModulesTemp}/**/main.js`]), {
+ starttag: '/* ignite-console:modules */',
+ endtag: '/* endignite */',
+ transform: (filePath, file, i) => {
+ const igniteModuleName = filePath.replace(/.*ignite_modules_temp\/([^\/]+).*/mgi, '$1');
+
+ // return file contents as string
+ return (i ? ',' : '') + `'ignite-console.${igniteModuleName}'`;
+ }
+ }))
+ .pipe(clean({ force: true }))
+ .pipe(gulp.dest(igniteModulesTemp))
+);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/jade.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/jade.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/jade.js
new file mode 100644
index 0000000..e203fc4
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/jade.js
@@ -0,0 +1,54 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import gulpJade from 'gulp-jade';
+import sequence from 'gulp-sequence';
+
+import { igniteModulesDir, destDir } from '../paths';
+
+const paths = [
+ '!./views/error.jade',
+ './views/*.jade',
+ './views/**/*.jade'
+];
+
+const igniteModulePaths = [
+ igniteModulesDir + '/**/view/**/*.jade'
+];
+
+const jadeOptions = {
+ basedir: './'
+};
+
+gulp.task('jade', (cb) => sequence('jade:source', 'jade:ignite_modules', cb));
+
+gulp.task('jade:source', () =>
+ gulp.src(paths)
+ .pipe(gulpJade(jadeOptions))
+ .pipe(gulp.dest('./build'))
+);
+
+gulp.task('jade:ignite_modules', () =>
+ gulp.src(igniteModulePaths)
+ .pipe(gulpJade(jadeOptions))
+ .pipe(gulp.dest(`${destDir}/ignite_modules`))
+);
+
+gulp.task('jade:watch', (cb) =>
+ gulp.watch([igniteModulePaths, paths], () => sequence('jade', 'inject:plugins:html', cb))
+);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/sass.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/sass.js b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/sass.js
new file mode 100644
index 0000000..bd671b9
--- /dev/null
+++ b/modules/control-center-web/src/main/js/gulpfile.babel.js/tasks/sass.js
@@ -0,0 +1,34 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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.
+ */
+
+import gulp from 'gulp';
+import sequence from 'gulp-sequence';
+import sass from 'gulp-sass';
+
+const paths = [
+ './public/stylesheets/style.scss'
+];
+
+gulp.task('sass', () =>
+ gulp.src(paths)
+ .pipe(sass({ outputStyle: 'nested' }).on('error', sass.logError))
+ .pipe(gulp.dest('./public/stylesheets'))
+);
+
+gulp.task('sass:watch', (cb) =>
+ gulp.watch(paths, () => sequence('sass', 'bundle', cb))
+);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/index.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/index.js b/modules/control-center-web/src/main/js/gulpfile.js/index.js
deleted file mode 100644
index cf287e5..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/index.js
+++ /dev/null
@@ -1,31 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var requireDir = require('require-dir');
-var sequence = require('gulp-sequence');
-
-// Require all tasks in gulpfile.js/tasks, including subfolders.
-requireDir('./tasks', { recurse: true });
-
-// Default no-arg task.
-gulp.task('default', ['build']);
-
-// Build + watch + connect task.
-gulp.task('watch', function (cb) {
- return sequence('build', 'connect', ['bundle:ignite:watch', 'bundle:legacy:watch', 'sass:watch', 'jade:watch', 'copy:watch'])(cb);
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/build.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/build.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/build.js
deleted file mode 100644
index 195bdf4..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/build.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var sequence = require('gulp-sequence');
-
-gulp.task('build', function(cb) {
- return sequence('clean', ['copy', 'jade', 'sass'], 'bundle', 'inject:plugins', cb);
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/bundle.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/bundle.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/bundle.js
deleted file mode 100644
index ce15b34..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/bundle.js
+++ /dev/null
@@ -1,68 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var jspm = require('jspm');
-var util = require('gulp-util');
-var concat = require('gulp-concat');
-var sequence = require('gulp-sequence');
-
-var paths = [
- './app/**/*.js',
- './app/**/*.jade',
- './app/data/*.json'
-];
-
-var legacy_paths = [
- '!./controllers/common-module.js',
- './controllers/*.js',
- './controllers/**/*.js',
- './helpers/generator/*.js',
- './helpers/generator/**/*.js'
-];
-
-var options = {
- minify: true
-};
-
-gulp.task('bundle', ['eslint', 'bundle:ignite', 'bundle:legacy']);
-
-// Package all external dependencies and ignite-console.
-gulp.task('bundle:ignite', function() {
- if (util.env.debug)
- delete options.minify;
-
- if (util.env.debug || util.env.sourcemaps)
- options.sourceMaps = true;
-
- return jspm.bundleSFX('app/index', 'build/app.min.js', options);
-});
-
-// Package controllers and generators.
-gulp.task('bundle:legacy', function() {
- return gulp.src(legacy_paths)
- .pipe(concat('all.js'))
- .pipe(gulp.dest('./build'));
-});
-
-gulp.task('bundle:ignite:watch', function() {
- return gulp.watch(paths, ['bundle:ignite']);
-});
-
-gulp.task('bundle:legacy:watch', function() {
- return gulp.watch(legacy_paths, ['bundle:legacy']);
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/clean.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/clean.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/clean.js
deleted file mode 100644
index 86cffae..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/clean.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var clean = require('gulp-rimraf');
-
-// Remove build folder.
-gulp.task('clean', function() {
- return gulp.src('./build', {read: false}).pipe(clean());
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/connect.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/connect.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/connect.js
deleted file mode 100644
index d5ee738..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/connect.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-// task run static server to local development
-
-var gulp = require('gulp');
-var connect = require('gulp-connect');
-var modrewrite = require('connect-modrewrite');
-
-var options = {
- livereload: true,
- port: 8090,
- root: './build',
- middleware: function (connect, opt) {
- return [modrewrite([
- '^/api/v1/(.*)$ http://localhost:3000/$1 [P]'
- ])];
- },
- fallback: './build/index.html'
-};
-
-// task run static server to local development
-gulp.task('connect', function() {
- connect.server(options);
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/copy.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/copy.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/copy.js
deleted file mode 100644
index 3caa82f..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/copy.js
+++ /dev/null
@@ -1,100 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var util = require('gulp-util');
-var sequence = require('gulp-sequence');
-
-var igniteModules = process.env.IGNITE_MODULES || './ignite_modules';
-
-var paths = [
- './app/**/**/*.js'
-];
-
-var cssPaths = [
- 'jspm_packages/**/nvd3@*/build/nv.d3.css',
- 'jspm_packages/**/angular-tree-control@*/css/*.css',
- 'jspm_packages/**/ag-grid@*/dist/ag-grid.css',
- 'jspm_packages/**/angular-loading@*/angular-loading.css',
- 'jspm_packages/**/angular-motion@*/dist/angular-motion.css'
-];
-
-var legacyPaths = [
- './controllers/*.js',
- './controllers/**/*.js',
- './controllers/**/*.json',
- './helpers/*.js',
- './helpers/**/*.js',
- './public/**/*.png',
- './public/*.ico'
-];
-
-var igniteModulePaths = [
- igniteModules + '/**/main.js',
- igniteModules + '/**/app/modules/*.js',
- igniteModules + '/**/app/modules/**/*.js',
- igniteModules + '/**/controllers/*.js',
- igniteModules + '/**/controllers/models/*.json',
- igniteModules + '/**/images/*.png'
-];
-
-gulp.task('copy', function(cb) {
- var tasks = ['copy:legacy', 'copy:font-awesome', 'copy:ui-grid', 'copy:ignite_modules'];
-
- if (util.env.debug || util.env.sourcemaps) {
- tasks.push('copy:css');
-
- tasks.push('copy:base');
- }
-
- return sequence(tasks)(cb);
-});
-
-gulp.task('copy:base', function(cb) {
- return gulp.src(paths, {base: './'}).pipe(gulp.dest('./build'));
-});
-
-gulp.task('copy:legacy', function(cb) {
- return gulp.src(legacyPaths).pipe(gulp.dest('./build'));
-});
-
-gulp.task('copy:css', function(cb) {
- return gulp.src(cssPaths, {base: './'}).pipe(gulp.dest('./build'));
-});
-
-gulp.task('copy:font-awesome', function(cb) {
- return gulp.src('./node_modules/font-awesome/fonts/*', {base: './node_modules/font-awesome'}).pipe(gulp.dest('./build'));
-});
-
-gulp.task('copy:ui-grid', function(cb) {
- return gulp.src(['jspm_packages/**/*-ui-grid@*/*.woff',
- 'jspm_packages/**/*-ui-grid@*/*.svg',
- 'jspm_packages/**/*-ui-grid@*/*.ttf',
- 'jspm_packages/**/*-ui-grid@*/*.eot'], {base: './'}).pipe(gulp.dest('./build'));
-});
-
-gulp.task('copy:ignite_modules', function(cb) {
- return gulp.src(igniteModulePaths).pipe(gulp.dest('./build/ignite_modules'));
-});
-
-gulp.task('copy:watch', function(cb) {
- gulp.watch([legacyPaths, igniteModulePaths], function(glob) {
- sequence(['copy:base', 'copy:legacy', 'copy:ignite_modules'], 'inject:plugins:js')(cb);
- });
-
- gulp.watch(paths, ['copy:base']);
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/eslint.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/eslint.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/eslint.js
deleted file mode 100644
index cddde1a..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/eslint.js
+++ /dev/null
@@ -1,44 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var cache = require('gulp-cached');
-var sequence = require('gulp-sequence');
-
-var eslint = require('gulp-eslint');
-
-var paths = [
- './app/**/*.js'
-];
-
-gulp.task('eslint:node', function() {
- return gulp.src('./serve/**/*.js')
- .pipe(cache('eslint:node'))
- .pipe(eslint({envs: ['node']}))
- .pipe(eslint.format());
-});
-
-gulp.task('eslint:browser', function() {
- return gulp.src(paths)
- .pipe(cache('eslint:browser'))
- .pipe(eslint({envs: ['browser']}))
- .pipe(eslint.format());
-});
-
-gulp.task('eslint', function(cb) {
- return sequence('eslint:browser', 'eslint:node')(cb);
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/inject-plugins.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/inject-plugins.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/inject-plugins.js
deleted file mode 100644
index bdac24c..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/inject-plugins.js
+++ /dev/null
@@ -1,70 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var inject = require('gulp-inject');
-
-var common_options = {
- read: false
-};
-
-var html_targets = [
- './build/index.html'
-];
-
-var js_targets = [
- './build/common-module.js'
-];
-
-var js_sources = [
- './build/ignite_modules/**/main.js'
-];
-
-var html_sources = [
- './build/ignite_modules/**/main.js',
- './build/ignite_modules/**/app/modules/*.js',
- './build/ignite_modules/**/app/modules/*.js',
- './build/ignite_modules/**/app/modules/**/*.js'
-];
-
-gulp.task('inject:plugins:html', function() {
- gulp.src(html_targets)
- .pipe(inject(gulp.src(html_sources, common_options), {
- starttag: '<!-- ignite:plugins-->',
- endtag: '<!-- endignite-->',
- transform: function (filePath, file, i, length) {
- // return file contents as string
- return '<script src="' + filePath.replace(/\/build(.*)/mgi, '$1') + '"></script>';
- }
- }))
- .pipe(gulp.dest('./build'));
-});
-
-gulp.task('inject:plugins:js', function() {
- gulp.src(js_targets)
- .pipe(inject(gulp.src(js_sources, common_options), {
- starttag: '/* ignite:plugins */',
- endtag: ' /* endignite */',
- transform: function (filePath, file, i, length) {
- // return file contents as string
- return ", 'ignite-console." + filePath.replace(/.*ignite_modules\/([^\/]+).*/mgi, '$1') + "'";
- }
- }))
- .pipe(gulp.dest('./build'));
-});
-
-gulp.task('inject:plugins', ['inject:plugins:html', 'inject:plugins:js']);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/jade.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/jade.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/jade.js
deleted file mode 100644
index 58a9bf5..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/jade.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var gulpJade = require('gulp-jade');
-var sequence = require('gulp-sequence');
-
-var igniteModules = process.env.IGNITE_MODULES || './ignite_modules';
-
-var paths = [
- '!./views/error.jade',
- './views/*.jade',
- './views/**/*.jade'
-];
-
-var igniteModulePaths = [
- igniteModules + '/**/view/**/*.jade'
-];
-
-var jadeOptions = {
- basedir: './'
-};
-
-gulp.task('jade', function(cb) {
- return sequence('jade:source', 'jade:ignite_modules')(cb)
-});
-
-gulp.task('jade:source', function (cb) {
- return gulp.src(paths).pipe(gulpJade(jadeOptions)).pipe(gulp.dest('./build'));
-});
-
-gulp.task('jade:ignite_modules', function (cb) {
- return gulp.src(igniteModulePaths)
- .pipe(gulpJade(jadeOptions))
- .pipe(gulp.dest('./build/ignite_modules'));
-});
-
-gulp.task('jade:watch', function (cb) {
- return gulp.watch([igniteModulePaths, paths], function(glob) {
- sequence('jade', 'inject:plugins:html')(cb)
- });
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/production.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/production.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/production.js
deleted file mode 100644
index e682bcd..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/production.js
+++ /dev/null
@@ -1,28 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var sequence = require('gulp-sequence');
-var environments = require('gulp-environments');
-
-var production = environments.production;
-
-gulp.task('set-prod', production.task);
-
-gulp.task('production', function(cb) {
- sequence('set-prod', 'build', cb)
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/gulpfile.js/tasks/sass.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/gulpfile.js/tasks/sass.js b/modules/control-center-web/src/main/js/gulpfile.js/tasks/sass.js
deleted file mode 100644
index d50a91d..0000000
--- a/modules/control-center-web/src/main/js/gulpfile.js/tasks/sass.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one or more
- * contributor license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright ownership.
- * The ASF licenses this file to You 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.
- */
-
-var gulp = require('gulp');
-var gulpSequence = require('gulp-sequence');
-var sass = require('gulp-sass');
-
-var paths = [
- './public/stylesheets/style.scss'
-];
-
-gulp.task('sass', function () {
- return gulp.src(paths)
- .pipe(sass({ outputStyle: 'nested' }).on('error', sass.logError))
- .pipe(gulp.dest('./public/stylesheets'));
-});
-
-gulp.task('sass:watch', function (cb) {
- gulp.watch(paths, function(glob) {
- gulpSequence('sass', 'bundle')(cb)
- });
-});
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/common-utils.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/common-utils.js b/modules/control-center-web/src/main/js/helpers/common-utils.js
index f1d46fa..fb87c07 100644
--- a/modules/control-center-web/src/main/js/helpers/common-utils.js
+++ b/modules/control-center-web/src/main/js/helpers/common-utils.js
@@ -16,7 +16,7 @@
*/
// Entry point for common utils.
-$commonUtils = {};
+const $commonUtils = {};
/**
* @param v Value to check.
@@ -113,7 +113,4 @@ $commonUtils.randomString = function (len) {
return res;
};
-// For server side we should export Java code generation entry point.
-if (typeof window === 'undefined') {
- module.exports = $commonUtils;
-}
+export default $commonUtils;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/data-structures.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/data-structures.js b/modules/control-center-web/src/main/js/helpers/data-structures.js
index c106acf..8959531 100644
--- a/modules/control-center-web/src/main/js/helpers/data-structures.js
+++ b/modules/control-center-web/src/main/js/helpers/data-structures.js
@@ -16,7 +16,7 @@
*/
// Entry point for common data structures.
-$dataStructures = {};
+const $dataStructures = {};
// Java build-in primitive.
$dataStructures.JAVA_BUILD_IN_PRIMITIVES = ['boolean', 'byte', 'double', 'float', 'int', 'long', 'short'];
@@ -81,3 +81,5 @@ $dataStructures.fullClassName = function (clsName) {
return clsName;
};
+
+export default $dataStructures;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/generator/generator-common.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-common.js b/modules/control-center-web/src/main/js/helpers/generator/generator-common.js
index 227ef81..822be52 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-common.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-common.js
@@ -16,7 +16,7 @@
*/
// Entry point for common functions for code generation.
-$generatorCommon = {};
+const $generatorCommon = {};
// Add leading zero.
$generatorCommon.addLeadingZero = function (numberStr, minSize) {
@@ -524,3 +524,5 @@ $generatorCommon.dataForExampleConfigured = function(cluster) {
return _.find(cache.domains, {demo: true});
}));
};
+
+export default $generatorCommon;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/generator/generator-docker.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-docker.js b/modules/control-center-web/src/main/js/helpers/generator/generator-docker.js
index 7e9721c..50a9923 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-docker.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-docker.js
@@ -16,7 +16,7 @@
*/
// Docker file generation entry point.
-$generatorDocker = {};
+const $generatorDocker = {};
// Generate from
$generatorDocker.from = function(cluster, version) {
@@ -50,3 +50,5 @@ $generatorDocker.ignoreFile = function() {
return 'target\n' +
'Dockerfile';
};
+
+export default $generatorDocker;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/generator/generator-java.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-java.js b/modules/control-center-web/src/main/js/helpers/generator/generator-java.js
index bcf12ce..98f418a 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-java.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-java.js
@@ -16,7 +16,7 @@
*/
// Java generation entry point.
-$generatorJava = {};
+const $generatorJava = {};
/**
* Translate some value to valid java code.
@@ -3142,3 +3142,5 @@ $generatorJava.nodeStartup = function (cluster, pkg, cls, cfg, factoryCls, clien
return 'package ' + pkg + ';\n\n' + res.generateImports() + '\n\n' + res.generateStaticImports() + '\n\n' + res.asString();
};
+
+export default $generatorJava;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/generator/generator-optional.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-optional.js b/modules/control-center-web/src/main/js/helpers/generator/generator-optional.js
index ad0d938..0e23f59 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-optional.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-optional.js
@@ -16,8 +16,10 @@
*/
// Optional content generation entry point.
-$generatorOptional = {};
+const $generatorOptional = {};
$generatorOptional.optionalContent = function (zip, cluster) {
// No-op.
};
+
+export default $generatorOptional;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js b/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js
index f7bcf92..d653eb1 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-pom.js
@@ -16,7 +16,7 @@
*/
// pom.xml generation entry point.
-$generatorPom = {};
+const $generatorPom = {};
$generatorPom.escapeId = function (s) {
if (typeof(s) !== 'string')
@@ -250,3 +250,5 @@ $generatorPom.pom = function (cluster, igniteVersion, mvnRepositories, res) {
return res;
};
+
+export default $generatorPom;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/generator/generator-properties.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-properties.js b/modules/control-center-web/src/main/js/helpers/generator/generator-properties.js
index cf971da..cedc5a2 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-properties.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-properties.js
@@ -16,7 +16,7 @@
*/
// Properties generation entry point.
-$generatorProperties = {};
+const $generatorProperties = {};
$generatorProperties.jdbcUrlTemplate = function(dialect) {
switch (dialect) {
@@ -151,3 +151,5 @@ $generatorProperties.generateProperties = function (cluster, res) {
return res;
};
+
+export default $generatorProperties;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/generator/generator-readme.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-readme.js b/modules/control-center-web/src/main/js/helpers/generator/generator-readme.js
index a204bf9..c4e2f81 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-readme.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-readme.js
@@ -16,7 +16,7 @@
*/
// README.txt generation entry point.
-$generatorReadme = {};
+const $generatorReadme = {};
$generatorReadme.generatedBy = function (res) {
res.line('Content of this folder was generated by Apache Ignite Web Console');
@@ -81,3 +81,5 @@ $generatorReadme.readmeJdbc = function (res) {
return res;
};
+
+export default $generatorReadme;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js b/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js
index 64c5bd5..e78b116 100644
--- a/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js
+++ b/modules/control-center-web/src/main/js/helpers/generator/generator-xml.js
@@ -16,7 +16,7 @@
*/
// XML generation entry point.
-$generatorXml = {};
+const $generatorXml = {};
// Do XML escape.
$generatorXml.escape = function (s) {
@@ -1757,3 +1757,5 @@ $generatorXml.cluster = function (cluster, clientNearCfg) {
return '';
};
+
+export default $generatorXml;
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/ignite_modules/index.js
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/ignite_modules/index.js b/modules/control-center-web/src/main/js/ignite_modules/index.js
new file mode 100644
index 0000000..1f0babb
--- /dev/null
+++ b/modules/control-center-web/src/main/js/ignite_modules/index.js
@@ -0,0 +1,10 @@
+import angular from 'angular';
+
+/* ignite:modules */
+/* endignite */
+
+angular
+.module('ignite-console.modules', [
+ /* ignite-console:modules */
+ /* endignite */
+]);
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/package.json
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/package.json b/modules/control-center-web/src/main/js/package.json
index a160801..691b933 100644
--- a/modules/control-center-web/src/main/js/package.json
+++ b/modules/control-center-web/src/main/js/package.json
@@ -22,31 +22,15 @@
},
"dependencies": {
"async": "1.5.2",
- "babel-eslint": "^6.0.0-beta.6",
"body-parser": "^1.15.0",
"bootstrap-sass": "^3.3.6",
"connect-modrewrite": "^0.9.0",
"connect-mongo": "^1.1.0",
"cookie-parser": "~1.4.0",
"debug": "~2.2.0",
- "ejs": "^2.3.4",
"express": "~4.13.3",
- "express-force-ssl": "^0.3.0",
"express-session": "^1.12.0",
"fire-up": "^0.4.4",
- "font-awesome": "^4.4.0",
- "gulp": "^3.9.0",
- "gulp-cached": "^1.1.0",
- "gulp-concat": "^2.6.0",
- "gulp-connect": "^3.2.0",
- "gulp-environments": "^0.1.1",
- "gulp-eslint": "^2.0.0",
- "gulp-inject": "^4.0.0",
- "gulp-jade": "^1.1.0",
- "gulp-rimraf": "^0.2.0",
- "gulp-sass": "^2.1.0",
- "gulp-sequence": "^0.4.1",
- "gulp-util": "^3.0.7",
"jade": "~1.11.0",
"jszip": "^2.5.0",
"lodash": "^4.0.0",
@@ -63,15 +47,36 @@
"ws": "^0.8.0"
},
"devDependencies": {
+ "babel-core": "^6.7.2",
+ "babel-eslint": "^6.0.0-beta.6",
+ "babel-preset-es2015": "^6.6.0",
+ "babel-register": "^6.7.2",
+ "gulp": "^3.9.0",
+ "gulp-cached": "^1.1.0",
+ "gulp-connect": "^3.2.0",
+ "gulp-environments": "^0.1.1",
+ "gulp-eslint": "^2.0.0",
+ "gulp-html-replace": "^1.5.5",
+ "gulp-ignore": "^2.0.1",
+ "gulp-inject": "^4.0.0",
+ "gulp-jade": "^1.1.0",
+ "gulp-rimraf": "^0.2.0",
+ "gulp-sass": "^2.1.0",
+ "gulp-sequence": "^0.4.1",
+ "gulp-util": "^3.0.7",
"jspm": "^0.16.31",
- "mocha": "^2.4.5",
- "morgan": "^1.6.1",
- "should": "^8.2.2",
+ "mocha": "~2.4.5",
+ "morgan": "~1.6.1",
+ "should": "~8.2.2",
"supertest": "^1.1.0"
},
"jspm": {
+ "directories": {
+ "packages": "build/jspm_packages"
+ },
+ "configFile": "build/system.config.js",
"dependencies": {
- "ace": "github:ajaxorg/ace-builds@^1.2.2",
+ "ace": "github:ajaxorg/ace-builds@1.2.3",
"angular": "github:angular/bower-angular@^1.5.0",
"angular-animate": "github:angular/bower-angular-animate@^1.5.0",
"angular-drag-and-drop-lists": "github:marceljuenemann/angular-drag-and-drop-lists@^1.3.0",
@@ -91,7 +96,7 @@
"bootstrap-carousel": "github:twbs/bootstrap@^3.3.6",
"css": "github:systemjs/plugin-css@^0.1.20",
"file-saver": "github:eligrey/FileSaver.js@master",
- "font-awesome": "npm:font-awesome@^4.4.0",
+ "font-awesome": "npm:font-awesome@4.5.0",
"jade": "github:johnsoftek/plugin-jade@^0.6.0",
"jquery": "github:components/jquery@^2.1.4",
"json": "github:systemjs/plugin-json@^0.1.0",
@@ -165,7 +170,8 @@
"dist/angular-nvd3": {
"deps": [
"d3",
- "nvd3"
+ "nvd3",
+ "nvd3/build/nv.d3.css!"
]
}
}
@@ -173,7 +179,7 @@
"github:components/jquery@2.1.4": {
"format": "global"
},
- "github:ajaxorg/ace-builds@1.2.2": {
+ "github:ajaxorg/ace-builds@1.2.3": {
"format": "global",
"main": "theme-chrome",
"shim": {
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/public/stylesheets/_font-awesome-custom.scss
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/public/stylesheets/_font-awesome-custom.scss b/modules/control-center-web/src/main/js/public/stylesheets/_font-awesome-custom.scss
index 8c041de..6ce9550 100644
--- a/modules/control-center-web/src/main/js/public/stylesheets/_font-awesome-custom.scss
+++ b/modules/control-center-web/src/main/js/public/stylesheets/_font-awesome-custom.scss
@@ -15,17 +15,17 @@
* limitations under the License.
*/
-@import "../../node_modules/font-awesome/scss/variables";
-$fa-font-path: "/fonts";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/variables";
+$fa-font-path: "/jspm_packages/npm/font-awesome@4.5.0/fonts";
-@import "../../node_modules/font-awesome/scss/mixins";
-@import "../../node_modules/font-awesome/scss/path";
-@import "../../node_modules/font-awesome/scss/core";
-@import "../../node_modules/font-awesome/scss/larger";
-@import "../../node_modules/font-awesome/scss/fixed-width";
-@import "../../node_modules/font-awesome/scss/list";
-@import "../../node_modules/font-awesome/scss/bordered-pulled";
-@import "../../node_modules/font-awesome/scss/animated";
-@import "../../node_modules/font-awesome/scss/rotated-flipped";
-@import "../../node_modules/font-awesome/scss/stacked";
-@import "../../node_modules/font-awesome/scss/icons";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/mixins";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/path";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/core";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/larger";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/fixed-width";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/list";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/bordered-pulled";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/animated";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/rotated-flipped";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/stacked";
+@import "../../build/jspm_packages/npm/font-awesome@4.5.0/scss/icons";
http://git-wip-us.apache.org/repos/asf/ignite/blob/2b0ddb51/modules/control-center-web/src/main/js/views/index.jade
----------------------------------------------------------------------
diff --git a/modules/control-center-web/src/main/js/views/index.jade b/modules/control-center-web/src/main/js/views/index.jade
index c62fb1b..37c49ad 100644
--- a/modules/control-center-web/src/main/js/views/index.jade
+++ b/modules/control-center-web/src/main/js/views/index.jade
@@ -15,7 +15,7 @@
limitations under the License.
doctype html
-html(ng-app='ignite-web-console' id='app')
+html(ng-app='ignite-console' id='app' ng-strict-di)
head
base(href='/')
link(rel='shortcut icon' href='favicon.ico')
@@ -30,14 +30,18 @@ html(ng-app='ignite-web-console' id='app')
meta(name='keywords' content='{{$meta.keywords}}')
meta(ng-repeat='(key, value) in $meta.properties' name='{{::key}}' content='{{::value}}')
- link(rel='stylesheet', href='/app.min.css')
-
- script(src='/common-utils.js')
- script(src='/app.min.js')
-
- script(src='/common-module.js')
- script(src='/data-structures.js')
- script(src='/all.js')
+ // build:css
+ link(rel='stylesheet', href='/vendors.css')
+ link(rel='stylesheet', href='/app.css')
+ // endbuild
+
+ // build:js
+ script(src='jspm_packages/system.js')
+ script(src='system.config.js')
+ script(src='vendors.js')
+ script(src='app.js')
+ script System.import('app/index');
+ // endbuild
// ignite:plugins
// endignite