https://github.com/posthtml/posthtml-urls
PostHTML plugin for transforming URLs.
https://github.com/posthtml/posthtml-urls
posthtml posthtml-plugin url
Last synced: 10 months ago
JSON representation
PostHTML plugin for transforming URLs.
- Host: GitHub
- URL: https://github.com/posthtml/posthtml-urls
- Owner: posthtml
- License: mit
- Created: 2016-12-14T20:19:06.000Z (about 9 years ago)
- Default Branch: master
- Last Pushed: 2019-09-05T15:07:40.000Z (over 6 years ago)
- Last Synced: 2024-10-29T21:06:08.262Z (over 1 year ago)
- Topics: posthtml, posthtml-plugin, url
- Language: JavaScript
- Homepage:
- Size: 4.88 KB
- Stars: 6
- Watchers: 3
- Forks: 0
- Open Issues: 4
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# posthtml-urls [![NPM Version][npm-image]][npm-url] [![Build Status][travis-image]][travis-url] [![Coverage Status][coveralls-image]][coveralls-url]
> PostHTML plugin for transforming URLs.
## Installation
[Node.js](http://nodejs.org) `>= 6` is required. To install, type this at the command line:
```shell
npm install posthtml-urls
```
## Usage
```js
const posthtml = require('posthtml');
const urls = require('posthtml-urls');
const options = {
eachURL: (url, attr, element) => `http://domain.com/${url}`
};
posthtml()
.use( urls(options) )
.process('link')
.then(result => console.log(result.html));
//-> link
```
## Options
### `eachURL`
Type: `Function`
Default value: `undefined`
A callback function ran for each URL value found. You can return either a synchronous value or a `Promise`.
### `filter`
Type: `Object`
Default value: [`{…}`](https://github.com/posthtml/posthtml-urls/blob/master/lib/defaultOptions.js)
The elements and attributes for which to search. An attribute value can optionally be a function, for deeper filtering.
## FAQ
1. **How can I filter `` elements and `style` attributes?**
Use [posthtml-postcss](https://npmjs.com/posthtml-postcss) and [postcss-url](https://npmjs.com/postcss-url).
[npm-image]: https://img.shields.io/npm/v/posthtml-urls.svg
[npm-url]: https://npmjs.com/package/posthtml-urls
[travis-image]: https://img.shields.io/travis/posthtml/posthtml-urls.svg
[travis-url]: https://travis-ci.org/posthtml/posthtml-urls
[coveralls-image]: https://img.shields.io/coveralls/posthtml/posthtml-urls.svg
[coveralls-url]: https://coveralls.io/github/posthtml/posthtml-urls