remark-conventional-commit-changelog-timeline
TypeScript icon, indicating that this package has built-in type declarations

3.1.10 • Public • Published

remark-conventional-commit-changelog-timeline

Remark plugin to process Conventional Commits changelogs to be displayed in a timeline.

page on codsen.com page on npm page on github Downloads per month changelog MIT Licence

Install

This package is not pure ESM, you can require it.

npm i remark-conventional-commit-changelog-timeline

Quick Take

import { strict as assert } from "assert";
import { unified } from "unified";
import remarkParse from "remark-parse";
import remarkRehype from "remark-rehype";
import remarkGfm from "remark-gfm";
import rehypeFormat from "rehype-format";
import rehypeStringify from "rehype-stringify";

import c from "remark-conventional-commit-changelog-timeline";

function render(str, opts) {
  let res = unified()
    .data("settings", { fragment: true })
    .use(remarkParse)
    .use(remarkGfm)
    .use(remarkRehype)
    .use(c, opts)
    .use(rehypeFormat)
    .use(rehypeStringify)
    .processSync(str);

  return res.value;
}

let input = `
# Change Log

All notable changes to this project will be documented in this file.
See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.

# 3.1.0 (2022-08-12)

### Features

- abc
- xyz
`;

let expected = `
<h2>3.1.0</h2>
<div class="release-date">Aug 12, <span>2022</span></div>
<h3><span class="emoji">✨</span> Features</h3>
<ul>
  <li>abc</li>
  <li>xyz</li>
</ul>
`;

assert.equal(
  render(input, {
    // defaults:
    dateDivLocale: "en-US",
    // eslint-disable-next-line no-unused-vars
    dateDivMarkup: ({ date, year, month, day }) =>
      `${month} ${day}, <span>${year}</span>`,
  }),
  expected,
);

Documentation

Please visit codsen.com for a full description of the API.

Contributing

To report bugs or request features or assistance, raise an issue on GitHub.

Licence

MIT License.

Copyright © 2010-2024 Roy Revelt and other contributors.

ok codsen star

Package Sidebar

Install

npm i remark-conventional-commit-changelog-timeline

Weekly Downloads

2

Version

3.1.10

License

MIT

Unpacked Size

418 kB

Total Files

7

Last publish

Collaborators

  • royston