UNPKG

1.41 kBPlain TextView Raw
1.PHONY: lint test coverage test-ci browserify
2
3NPM_PACKAGE := $(shell node -e 'process.stdout.write(require("./package.json").name)')
4NPM_VERSION := $(shell node -e 'process.stdout.write(require("./package.json").version)')
5
6REMOTE_NAME ?= origin
7REMOTE_REPO ?= $(shell git config --get remote.${REMOTE_NAME}.url)
8GITHUB_PROJ := https://github.com/RedBug312/markdown-it-multimd-table
9
10MODULE_PATH := ./node_modules/.bin
11
12
13${MODULE_PATH}: package.json
14 npm install --save-dev
15 touch $@ # update timestamp
16
17
18lint: ${MODULE_PATH}
19 ${MODULE_PATH}/eslint .
20
21test: ${MODULE_PATH} lint
22 ${MODULE_PATH}/mocha -R spec
23
24coverage: ${MODULE_PATH} lint
25 ${MODULE_PATH}/istanbul cover ${MODULE_PATH}/_mocha
26
27test-ci: ${MODULE_PATH} lint
28 # For Github integration test. You should use `make coverage` on local.
29 ${MODULE_PATH}/istanbul cover ${MODULE_PATH}/_mocha --report lcovonly -- -R spec
30 cat ./coverage/lcov.info | ${MODULE_PATH}/coveralls
31 rm -rf ./coverage
32
33browserify: ${MODULE_PATH} lint test
34 # Browserify
35 ( printf "/*! ${NPM_PACKAGE} ${NPM_VERSION} ${GITHUB_PROJ} @license MIT */"; \
36 ${MODULE_PATH}/browserify . -s markdownitMultimdTable \
37 ) > dist/markdown-it-multimd-table.js
38 # Minify
39 ${MODULE_PATH}/terser dist/markdown-it-multimd-table.js -b beautify=false,ascii_only=true -c -m \
40 --preamble "/*! ${NPM_PACKAGE} ${NPM_VERSION} ${GITHUB_PROJ} @license MIT */" \
41 > dist/markdown-it-multimd-table.min.js