markdown-loader
Advanced tools
Comparing version 0.1.7 to 2.0.0
21
index.js
"use strict"; | ||
var marked = require("marked"); | ||
var loaderUtils = require("loader-utils"); | ||
var assign = require("object-assign"); | ||
const marked = require("marked"); | ||
const loaderUtils = require("loader-utils"); | ||
// default option | ||
var options = { | ||
renderer: new marked.Renderer(), | ||
gfm: true, | ||
tables: true, | ||
breaks: false, | ||
pedantic: false, | ||
sanitize: true, | ||
smartLists: true, | ||
smartypants: false | ||
}; | ||
module.exports = function (markdown) { | ||
// merge params and default config | ||
var query = loaderUtils.parseQuery(this.query); | ||
var configKey = query.config || "markdownLoader"; | ||
var options = assign({}, options, query, this.options[configKey]); | ||
const options = loaderUtils.parseQuery(this.query); | ||
@@ -25,0 +10,0 @@ this.cacheable(); |
{ | ||
"name": "markdown-loader", | ||
"version": "0.1.7", | ||
"version": "2.0.0", | ||
"description": "markdown-loader for webpack", | ||
"main": "index.js", | ||
"scripts": { | ||
"test": "echo \"Error: no test specified\" && exit 1" | ||
"test": "ava test/*.test.js" | ||
}, | ||
@@ -26,6 +26,11 @@ "repository": { | ||
"dependencies": { | ||
"marked": "^0.3.2", | ||
"loader-utils": "^0.2.7", | ||
"object-assign": "^2.0.0" | ||
"loader-utils": "^0.2.16", | ||
"marked": "^0.3.6" | ||
}, | ||
"devDependencies": { | ||
"ava": "^0.18.0", | ||
"highlight.js": "^9.9.0", | ||
"html-loader": "^0.4.4", | ||
"webpack": "^2.2.1" | ||
} | ||
} |
@@ -6,26 +6,34 @@ markdown-loader | ||
[![](https://img.shields.io/npm/v/markdown-loader.svg)](https://www.npmjs.com/package/markdown-loader) | ||
[![](https://img.shields.io/npm/dm/markdown-loader.svg)](https://www.npmjs.com/package/markdown-loader) | ||
[![Dependency Status](https://david-dm.org/peerigon/markdown-loader.svg)](https://david-dm.org/peerigon/markdown-loader) | ||
[![Build Status](https://travis-ci.org/peerigon/markdown-loader.svg?branch=master)](https://travis-ci.org/peerigon/markdown-loader) | ||
## Setup | ||
## Installation | ||
[![npm status](https://nodei.co/npm/markdown-loader.svg?downloads=true&stars=true)](https://npmjs.org/package/markdown-loader) | ||
`npm install markdown-loader` | ||
[![dependencies](https://david-dm.org/peerigon/batch-replace.svg)](http://david-dm.org/peerigon/markdown-loader) | ||
[![devDependency Status](https://david-dm.org/peerigon/batch-replace/dev-status.svg)](https://david-dm.org/peerigon/markdown-loader#info=devDependencies) | ||
## Usage | ||
## Usage | ||
Since marked's output is HTML, it's best served in conjunction with the [html-loader](https://github.com/webpack/html-loader). | ||
```javascript | ||
var html = require("html!markdown!./README.md"); | ||
``` | ||
### Webpack 2 | ||
### Recommended Configuration | ||
Since marked's output is HTML, it's best served in conjunction with the [html-loader](https://github.com/webpack/html-loader). | ||
```javascript | ||
{ | ||
module: { | ||
loaders: { | ||
{ test: /\.md$/, loader: "html!markdown" }, | ||
] | ||
rules: [{ | ||
test: /\.md$/, | ||
use: [ | ||
{ | ||
loader: "html-loader" | ||
}, | ||
{ | ||
loader: "markdown-loader", | ||
options: { | ||
/* your options here */ | ||
} | ||
} | ||
] | ||
}] | ||
} | ||
@@ -35,38 +43,39 @@ } | ||
## Options | ||
### Options | ||
[marked](https://github.com/chjj/marked)-options are passed via query params: | ||
Simply pass your marked [options](https://github.com/chjj/marked#options-1) as shown above. | ||
In order to specify [custom renderers](https://github.com/peerigon/markdown-loader/issues/5), simply set the `options.renderer`-option on your webpack options. | ||
```javascript | ||
// webpack.config.js | ||
```javascript | ||
{ | ||
const marked = require("marked"); | ||
const renderer = new marked.Renderer(); | ||
return { | ||
module: { | ||
loaders: { | ||
{ test: /\.md$/, loader: "html!markdown?gfm=false" }, | ||
] | ||
rules: [{ | ||
test: /\.md$/, | ||
use: [ | ||
{ | ||
loader: "html-loader" | ||
}, | ||
{ | ||
loader: "markdown-loader", | ||
options: { | ||
pedantic: true, | ||
renderer | ||
} | ||
} | ||
] | ||
}] | ||
} | ||
} | ||
``` | ||
## License | ||
### Custom renderer | ||
MIT (http://www.opensource.org/licenses/mit-license.php) | ||
In order to specify [custom renderers](https://github.com/peerigon/markdown-loader/issues/5), simply set the `markdownLoader.renderer`-option on your webpack options. You can also change the options' key | ||
with a query parameter: `"markdown?config=markdownLoaderCustomConfig"`. | ||
## Sponsors | ||
```javascript | ||
// webpack.config.js | ||
var marked = require("marked"); | ||
var renderer = new marked.Renderer(); | ||
module.exports = { | ||
... | ||
markdownLoader: { | ||
renderer: renderer | ||
} | ||
}; | ||
``` | ||
## License | ||
MIT (http://www.opensource.org/licenses/mit-license.php) | ||
[<img src="https://assets.peerigon.com/peerigon/logo/peerigon-logo-flat-spinat.png" width="150" />](https://peerigon.com) |
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
Mixed license
License(Experimental) Package contains multiple licenses.
Found 1 instance in 1 package
No tests
QualityPackage does not have any tests. This is a strong signal of a poorly maintained or low quality package.
Found 1 instance in 1 package
No v1
QualityPackage is not semver >=1. This means it is not stable and does not support ^ ranges.
Found 1 instance in 1 package
15423
2
21
318
0
80
4
1
1
1
- Removedobject-assign@^2.0.0
- Removedobject-assign@2.1.1(transitive)
Updatedloader-utils@^0.2.16
Updatedmarked@^0.3.6