/JavaScriptFileOrganizer

Organize js files in project as per Convention (readme.md soon)

Primary LanguageJavaScript

Creating global link to this package https://docs.npmjs.com/cli/link

Example usage in gulp:

var gulp = require('gulp');
var js_organizer = require('js-scripts-organizer').init(__dirname); //this is package from this repo
var del = require('del');
var path = require('path');

gulp.task('clean:wwwroot-development-javascript', function () {
    return del([
        './wwwroot/development/**/*'
    ]);
});

gulp.task('watch:all', function (done) {
    gulp.watch('Scripts/**/*.js')
        .on('change', function (path, stats) {
            console.log('File ' + path + ' was changed');
        })
        .on('unlink', function (path) {
            console.log('File ' + path + ' was removed');
        });
});

gulp.task('ensure_view_has_js', function (done) {
    js_organizer.ensure_every_view_has_javascript("./development", "scriptObjectForHtml.html");
    done();
});

gulp.task('build_to_development', function (done) {
    js_organizer.copy_to_wwwroot_wrap_in_containers("./container.js");
    done();
});

gulp.task('prepare-js', gulp.series('clean:wwwroot-development-javascript', 'ensure_view_has_js', 'build_to_development'));

Tasks:

  • ensure every View has Script
  • wrap Scripts in containers
  • link to Scripts in every connected view
  • generate variables pointing to html objects
  • generate services to allow communication between components