Movable Ink: Data Sources Parser
This library contains a library for parsing Data Sources responses in a consistent way.
HTMLNormalizer
This class takes an HTML string and the URL of the HTML in its constructor. For example:
import { HTMLNormalizer } from 'data-sources-parser';
new HTMLNormalizer(`
<html>
<body>
<h1>Hello, world!</h1>
</body>
</html>
`, 'https://www.movableink.com');
normalizer.document
This provides the created document object.
import { HTMLNormalizer } from 'data-sources-parser';
const { document } = new HTMLNormalizer('<html>...</html>', 'https://www.movableink.com');
const header = document.querySelector('h1');
normalizer.baseURL
This provides the base URL of the page, taking into account any <base>
tag and the provided URL:
import { HTMLNormalizer } from 'data-sources-parser';
const { baseURL } = new HTMLNormalizer('<base href="/home/" />', 'https://www.movableink.com');
console.log(baseURL);
normalizers.absolutizePath
This takes a path (likely from an href
or src
) and converts it into its fully qualified URL, taking into account the URL and <base>
tags of the page.
import { HTMLNormalizer } from 'data-sources-parser';
const normalizer = new HTMLNormalizer('<base href="/home/" />', 'https://www.movableink.com');
const logoURL = normalizer.absolutizePath('images/logo.png');
console.log(logoURL);
Releases
To release a change, run the release command.
(This uses release-it for managing the releases).
yarn run release
By default, this will be a patch release. If you wish to release a different change:
yarn run release patch;
yarn run release minor;
yarn run release major;
yarn run release 2.8.3;