summaryrefslogtreecommitdiff
path: root/examples/with-markdown-plugins/add-classes.mjs
blob: 39acabd526702bf7e7df6a384daadd3e6d91cc2c (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
import { selectAll } from 'hast-util-select';

export default (additions) => {
	const adders = Object.entries(additions).map(adder);
	return (node) => adders.forEach((a) => a(node));
};

const adder = ([selector, className]) => {
	const writer = write(className);
	return (node) => selectAll(selector, node).forEach(writer);
};

const write =
	(className) =>
	({ properties }) => {
		if (!properties.className) properties.className = className;
		else properties.className += ` ${className}`;
	};
vatar/af2ab225b7c0eec44a8d0eba6b5c869a?s=13&d=retro' width='13' height='13' alt='Gravatar' /> github-actions[bot] 23-65/+43 2021-05-13Support for import suggestions in the languageserver (#204)Gravatar Matthew Phillips 6-12/+32 2021-05-13Fix Svelte build output (#201)Gravatar Nate Moore 4-8/+14 2021-05-12[wip] Fix CI (#202)Gravatar Drew Powers 28-219/+191 2021-05-11VS Code extension (#197)Gravatar Matthew Phillips 7-20/+182 2021-05-11Fix workflows! (#198)Gravatar Nate Moore 3-2/+4 2021-05-11Add Astro.request.canonicalURL and Astro.site to global (#199)Gravatar Drew Powers 25-98/+234 2021-05-11Fix portfolio example (#196)Gravatar Drew Powers 2-3/+5 2021-05-10fix: build stuck on unhandled promise reject (#191)Gravatar Kevin (Kun) "Kassimo" Qian 2-2/+13 2021-05-10Allow default import component to be renamed based on import statement defaul...Gravatar Kevin (Kun) "Kassimo" Qian 3-8/+30 2021-05-08Add more docs on styling (#186)Gravatar Drew Powers 1-3/+321 2021-05-08Fix running the extension (#181)Gravatar Matthew Phillips 5-11/+37