Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion .coveralls.yml

This file was deleted.

118 changes: 0 additions & 118 deletions .eslintrc

This file was deleted.

145 changes: 145 additions & 0 deletions .eslintrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,145 @@
env:
node: true
browser: false
es6: false

rules:
accessor-pairs: 2
array-bracket-spacing: [ 2, "always", { "singleValue": true, "objectsInArrays": true, "arraysInArrays": true } ]
block-scoped-var: 2
block-spacing: 2
brace-style: [ 2, '1tbs', { allowSingleLine: true } ]
# Postponed
#callback-return: 2
comma-dangle: 2
comma-spacing: 2
comma-style: 2
computed-property-spacing: [ 2, never ]
consistent-this: [ 1, self ]
consistent-return: 2
# ? change to multi
curly: [ 2, 'multi-line' ]
dot-notation: 2
eol-last: 2
eqeqeq: [ 2, always, { "null": "ignore" } ]
func-style: [ 2, declaration, { "allowArrowFunctions": true } ]
# Postponed
#global-require: 2
guard-for-in: 2
handle-callback-err: 2

indent: [ 2, 2, { VariableDeclarator: { var: 2, let: 2, const: 3 }, SwitchCase: 0, MemberExpression: "off" } ]

# key-spacing: [ 2, { "align": "value" } ]
keyword-spacing: 2
linebreak-style: 2
max-depth: [ 1, 6 ]
max-nested-callbacks: [ 1, 4 ]
# string can exceed 80 chars, but should not overflow github website :)
max-len: [ 2, 130, 1000 ]
new-cap: 2
new-parens: 2
# Postponed
#newline-after-var: 2
no-alert: 2
no-array-constructor: 2
no-bitwise: 2
no-caller: 2
#no-case-declarations: 2
no-catch-shadow: 2
no-cond-assign: 2
no-console: 1
no-constant-condition: 2
#no-control-regex: 2
no-debugger: 2
no-delete-var: 2
no-div-regex: 2
no-dupe-args: 2
no-dupe-keys: 2
no-duplicate-case: 2
no-else-return: 2
# Tend to drop
# no-empty: 1
no-empty-character-class: 2
no-empty-pattern: 2
no-eq-null: 1
no-eval: 2
no-ex-assign: 2
no-extend-native: 2
no-extra-bind: 2
no-extra-boolean-cast: 2
no-extra-semi: 2
no-fallthrough: 2
no-floating-decimal: 2
no-func-assign: 2
# Postponed
#no-implicit-coercion: [2, { "boolean": true, "number": true, "string": true } ]
no-implied-eval: 2
no-inner-declarations: 2
no-invalid-regexp: 2
no-irregular-whitespace: 2
no-iterator: 2
no-label-var: 2
no-labels: 2
no-lone-blocks: 2
no-lonely-if: 2
no-loop-func: 2
no-mixed-requires: 2
no-mixed-spaces-and-tabs: 2
no-multi-str: 2
# Postponed
#no-native-reassign: 2
no-negated-in-lhs: 2
# Postponed
#no-nested-ternary: 2
no-new: 2
no-new-func: 2
no-new-object: 2
no-new-require: 2
no-new-wrappers: 2
no-obj-calls: 2
no-octal: 2
no-octal-escape: 2
no-path-concat: 2
no-proto: 2
no-redeclare: 2
# Postponed
#no-regex-spaces: 2
no-return-assign: 2
no-script-url: 2
no-self-compare: 2
no-sequences: 2
no-shadow: 2
no-shadow-restricted-names: 2
no-sparse-arrays: 2
no-trailing-spaces: 2
no-undef: 2
no-undef-init: 2
no-undefined: 2
no-unexpected-multiline: 2
no-unreachable: 2
no-unused-expressions: 2
no-unused-vars: 2
no-use-before-define: 2
no-void: 2
no-with: 2
object-curly-spacing: [ 2, always, { "objectsInObjects": true, "arraysInObjects": true } ]
operator-assignment: 1
# Postponed
#operator-linebreak: [ 2, after ]
semi: 2
semi-spacing: 2
space-before-blocks: 2
space-before-function-paren: [ 2, { "anonymous": "always", "named": "never" } ]
space-in-parens: [ 2, never ]
space-infix-ops: 2
space-unary-ops: 2
# Postponed
#spaced-comment: [ 1, always, { exceptions: [ '/', '=' ] } ]
strict: [ 2, global ]
quotes: [ 2, single, avoid-escape ]
quote-props: [ 1, 'as-needed', { "keywords": true } ]
radix: 2
use-isnan: 2
valid-typeof: 2
yoda: [ 2, never, { "exceptRange": true } ]
30 changes: 30 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
*.sh text eol=lf
*.bat text eol=crlf
*.php text eol=lf
*.inc text eol=lf
*.ini text eol=lf
*.html text eol=lf
*.json text eol=lf
*.js text eol=lf
*.ts text eol=lf
*.jsdoc text eol=lf
*.css text eol=lf
*.less text eol=lf
*.sass text eol=lf
*.styl text eol=lf
*.ini text eol=lf
*.txt text eol=lf
*.xml text eol=lf
*.yml text eol=lf
*.yaml text eol=lf
*.md text eol=lf
*.markdown text eol=lf
*.json5 text eol=lf
Makefile text eol=lf

*.pdf binary
*.psd binary
*.png binary
*.jpg binary
*.pptx binary
*.xlsx binary
5 changes: 3 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
node_modules/*
npm-debug.log
node_modules/
coverage/
*.log
10 changes: 7 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
language: node_js
node_js:
- '0.10'
script:
- make test-ci
- 4
- 5
- 6
- 7
- 8
- node
script: make
deploy:
provider: npm
email: tatsy.mail@gmail.com
Expand Down
70 changes: 57 additions & 13 deletions Makefile
Original file line number Diff line number Diff line change
@@ -1,20 +1,64 @@
converage:
rm -rf coverage
istanbul cover node_modules/.bin/_mocha
PATH := ./node_modules/.bin:${PATH}

lint:
eslint --reset .
NPM_PACKAGE := $(shell node -e 'process.stdout.write(require("./package.json").name.replace(/^.*?\//, ""))')
NPM_VERSION := $(shell node -e 'process.stdout.write(require("./package.json").version)')

TMP_PATH := /tmp/${NPM_PACKAGE}-$(shell date +%s)

REMOTE_NAME ?= origin
REMOTE_REPO ?= $(shell git config --get remote.${REMOTE_NAME}.url)

CURR_HEAD := $(firstword $(shell git show-ref --hash HEAD | cut -b -6) master)
GITHUB_PROJ := https://github.com//GerHobbelt/${NPM_PACKAGE}

publish:
webpack ./
uglifyjs dist/markdown-it-responsive.js > dist/markdown-it-responsive.min.js
bower register markdown-it-responsive https://github.com/tatsy/markdown-it-responsive.git

build: lint browserify test coverage todo

lint:
eslint .

test: lint
mocha

test-ci: lint
istanbul cover ./node_modules/mocha/bin/_mocha --report lcovonly -- -R spec && cat ./coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js && rm -rf ./coverage
coverage:
-rm -rf coverage
istanbul cover node_modules/mocha/bin/_mocha

report-coverage: coverage

browserify:
-rm -rf ./dist
mkdir dist
# Browserify
( printf "/*! ${NPM_PACKAGE} ${NPM_VERSION} ${GITHUB_PROJ} @license MIT */" ; \
browserify ./ -s markdownitResponsive \
) > dist/${NPM_PACKAGE}.js

minify: browserify
# Minify
uglifyjs dist/${NPM_PACKAGE}.js -b beautify=false,ascii_only=true -c -m \
--preamble "/*! ${NPM_PACKAGE} ${NPM_VERSION} ${GITHUB_PROJ} @license MIT */" \
> dist/${NPM_PACKAGE}.min.js

todo:
@echo ""
@echo "TODO list"
@echo "---------"
@echo ""
grep 'TODO' -n -r ./lib 2>/dev/null || test true

clean:
-rm -rf ./coverage/
-rm -rf ./dist/

superclean: clean
-rm -rf ./node_modules/
-rm -f ./package-lock.json

prep: superclean
-ncu -a --packageFile=package.json
-npm install


.PHONY: lint coverage
.SILENT: lint
.PHONY: clean lint test todo coverage report-coverage build browserify minify superclean prep
.SILENT: help lint test todo
Loading