Skip to content

Commit

Permalink
add UMD support and add linting utility for JavaScript ESLint
Browse files Browse the repository at this point in the history
  • Loading branch information
whiterm committed Oct 7, 2015
1 parent d9e6639 commit df1e551
Show file tree
Hide file tree
Showing 20 changed files with 258 additions and 13,124 deletions.
23 changes: 23 additions & 0 deletions .eslintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
{
"rules": {
"indent": [
2,
"tab"
],
"strict": 0,
"no-console": 0,
"quotes": [
2,
"double"
],
"semi": [
2,
"always"
]
},
"env": {
"browser": true,
"node":true
},
"extends": "eslint:recommended"
}
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,6 @@
localtesting/*
node_modules/
*.iml
*.ipr
*.iws
dist/
7 changes: 0 additions & 7 deletions dist/simplemde.min.css

This file was deleted.

13 changes: 0 additions & 13 deletions dist/simplemde.min.js

This file was deleted.

105 changes: 38 additions & 67 deletions gulpfile.js
Original file line number Diff line number Diff line change
@@ -1,11 +1,16 @@
"use strict";
var gulp = require("gulp"),
minifycss = require("gulp-minify-css"),
uglify = require("gulp-uglify"),
concat = require("gulp-concat"),
header = require("gulp-header"),
pkg = require("./package.json"),
prettify = require("gulp-jsbeautifier"),
download = require("gulp-download");
debug = require("gulp-debug"),
eslint = require("gulp-eslint"),
prettify = require("gulp-jsbeautifier");
var browserify = require("browserify");
var source = require("vinyl-source-stream");


var banner = ["/**",
" * <%= pkg.name %> v<%= pkg.version %>",
Expand All @@ -15,85 +20,51 @@ var banner = ["/**",
" */",
""].join("\n");

gulp.task("downloads-codemirror", function(callback) {
var download_urls = [
"https://raw.githubusercontent.com/codemirror/CodeMirror/master/lib/codemirror.js",
"https://raw.githubusercontent.com/codemirror/CodeMirror/master/addon/edit/continuelist.js",
"https://raw.githubusercontent.com/codemirror/CodeMirror/master/addon/display/fullscreen.js",
"https://raw.githubusercontent.com/codemirror/CodeMirror/master/addon/mode/overlay.js",
"https://raw.githubusercontent.com/codemirror/CodeMirror/master/mode/gfm/gfm.js",
"https://raw.githubusercontent.com/codemirror/CodeMirror/master/mode/markdown/markdown.js",
"https://raw.githubusercontent.com/codemirror/CodeMirror/master/mode/xml/xml.js"];

download(download_urls)
.pipe(gulp.dest("src/js/codemirror/"));

// Wait to make sure they've been downloaded
setTimeout(function() {
callback();
}, 5000);
gulp.task("lint", function() {
gulp.src("./src/js/**/*.js")
.pipe(debug())
.pipe(eslint())
.pipe(eslint.format());
});

gulp.task("downloads-js", function(callback) {
var download_urls = [
"https://raw.githubusercontent.com/chjj/marked/master/lib/marked.js",
"https://raw.githubusercontent.com/NextStepWebs/codemirror-spell-checker/master/src/js/spell-checker.js",
"https://raw.githubusercontent.com/NextStepWebs/codemirror-spell-checker/master/src/js/typo.js"];

download(download_urls)
.pipe(gulp.dest("src/js/"));

// Wait to make sure they've been downloaded
setTimeout(function() {
callback();
}, 5000);
});
function taskBrowserify(opts) {
return browserify("./src/js/simplemde.js", opts)
.bundle();

}

gulp.task("downloads-css", function(callback) {
var download_urls = [
"https://raw.githubusercontent.com/codemirror/CodeMirror/master/lib/codemirror.css",
"https://raw.githubusercontent.com/NextStepWebs/codemirror-spell-checker/master/src/css/spell-checker.css"];

download(download_urls)
.pipe(gulp.dest("src/css/"));

// Wait to make sure they've been downloaded
setTimeout(function() {
callback();
}, 5000);
gulp.task("browserify:dev", [], function() {
return taskBrowserify({debug:true, standalone:"SimpleMDE"})
.pipe(source("simplemde.debug.js"))
.pipe(gulp.dest("./dist/"));
});

gulp.task("scripts", ["downloads-codemirror", "downloads-js", "downloads-css"], function() {
var js_files = [
"./src/js/codemirror/codemirror.js",
"./src/js/codemirror/continuelist.js",
"./src/js/codemirror/tablist.js",
"./src/js/codemirror/fullscreen.js",
"./src/js/codemirror/markdown.js",
"./src/js/codemirror/overlay.js",
"./src/js/codemirror/gfm.js",
"./src/js/codemirror/xml.js",
"./src/js/typo.js",
"./src/js/spell-checker.js",
"./src/js/marked.js",
"./src/js/simplemde.js"];
gulp.task("browserify:prod", [], function() {
return taskBrowserify({standalone:"SimpleMDE"})
.pipe(source("simplemde.js"))
.pipe(gulp.dest("./dist/"));
});

gulp.task("scripts", ["browserify:dev", "browserify:prod", "lint"], function() {
var js_files = ["./dist/simplemde.js"];
return gulp.src(js_files)
.pipe(header(banner, {pkg: pkg}))
.pipe(concat("simplemde.min.js"))
.pipe(gulp.dest("dist"))
.pipe(uglify())
.pipe(header(banner, {pkg: pkg}))
.pipe(gulp.dest("dist"));
.pipe(gulp.dest("./dist/"));
});

gulp.task("styles", ["downloads-codemirror", "downloads-js", "downloads-css"], function() {
return gulp.src("./src/css/*.css")
gulp.task("styles", function() {
var css_files = [
"./src/css/*.css",
"./node_modules/codemirror/lib/codemirror.css",
"./node_modules/codemirror-spell-checker/src/css/spell-checker.css"
];
return gulp.src(css_files)
.pipe(concat("simplemde.min.css"))
.pipe(gulp.dest("dist"))
.pipe(minifycss())
.pipe(header(banner, {pkg: pkg}))
.pipe(gulp.dest("dist"));
.pipe(gulp.dest("./dist/"));
});

gulp.task("prettify-js", function() {
Expand All @@ -108,4 +79,4 @@ gulp.task("prettify-css", function() {
.pipe(gulp.dest("./src/css"));
});

gulp.task("default", ["downloads-codemirror", "downloads-js", "downloads-css", "scripts", "styles", "prettify-js", "prettify-css"]);
gulp.task("default", ["scripts", "styles"]);
20 changes: 15 additions & 5 deletions package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "simplemde",
"version": "1.7.5",
"version": "1.7.6",
"description": "A simple, beautiful, and embeddable JavaScript markdown editor. Features autosaving and spell checking.",
"keywords": [
"embeddable",
Expand All @@ -10,7 +10,7 @@
"wysiwyg"
],
"homepage": "https://github.com/NextStepWebs/simplemde-markdown-editor",
"main": "gulpfile.js",
"main": "./src/js/simplemde.js",
"license": "MIT",
"company": "Next Step Webs, Inc.",
"author": {
Expand All @@ -20,14 +20,24 @@
"bugs": {
"url": "https://github.com/NextStepWebs/simplemde-markdown-editor/issues"
},
"dependencies": {
"codemirror": "^5.7.0",
"codemirror-spell-checker": "NextStepWebs/codemirror-spell-checker",
"marked": "chjj/marked"
},
"devDependencies": {
"browserify": "^11.2.0",
"debug": "^2.2.0",
"eslint": "^1.6.0",
"gulp": "*",
"gulp-minify-css": "*",
"gulp-uglify": "*",
"gulp-concat": "*",
"gulp-debug": "^2.1.1",
"gulp-eslint": "^1.0.0",
"gulp-header": "*",
"gulp-jsbeautifier": "*",
"gulp-download": "*"
"gulp-minify-css": "*",
"gulp-uglify": "*",
"vinyl-source-stream": "^1.1.0"
},
"repository": {
"type": "git",
Expand Down
Loading

0 comments on commit df1e551

Please sign in to comment.