GithubHelp home page GithubHelp logo

syntax-tree / mdast-util-toc Goto Github PK

View Code? Open in Web Editor NEW
76.0 10.0 11.0 211 KB

utility to generate a table of contents from an mdast tree

Home Page: https://unifiedjs.com

License: MIT License

JavaScript 100.00%
syntax-tree unist mdast markdown table contents toc mdast-util

mdast-util-toc's Introduction

mdast-util-toc

Build Coverage Downloads Size Sponsors Backers Chat

mdast utility to generate a table of contents.

Contents

What is this?

This package is a utility that generates a table of contents from a document.

When should I use this?

This utility is useful to generate a section so users can more easily navigate through a document.

This package is wrapped in remark-toc for ease of use with remark, where it also injects the table of contents into the document.

Install

This package is ESM only. In Node.js (version 16+), install with npm:

npm install mdast-util-toc

In Deno with esm.sh:

import {toc} from 'https://esm.sh/mdast-util-toc@7'

In browsers with esm.sh:

<script type="module">
  import {toc} from 'https://esm.sh/mdast-util-toc@7?bundle'
</script>

Use

import {toc} from 'mdast-util-toc'

/** @type {import('mdast').Root} */
const tree = {
  type: 'root',
  children: [
    {type: 'heading', depth: 1, children: [{type: 'text', value: 'Alpha'}]},
    {type: 'heading', depth: 2, children: [{type: 'text', value: 'Bravo'}]},
    {type: 'heading', depth: 3, children: [{type: 'text', value: 'Charlie'}]},
    {type: 'heading', depth: 2, children: [{type: 'text', value: 'Delta'}]}
  ]
}

const table = toc(tree)

console.dir(table, {depth: 3})

Yields:

{
  index: undefined,
  endIndex: undefined,
  map: {
    type: 'list',
    ordered: false,
    spread: true,
    children: [ { type: 'listItem', spread: true, children: [Array] } ]
  }
}

API

This package exports the identifier toc. There is no default export.

toc(tree[, options])

Generate a table of contents from tree.

Looks for the first heading matching options.heading (case insensitive) and returns a table of contents (a list) for all following headings. If no heading is specified, creates a table of contents for all headings in tree. tree is not changed.

Links in the list to headings are based on GitHub’s style. Only top-level headings (those not in blockquotes or lists), are used. This default behavior can be changed by passing options.parents.

Parameters
  • tree (Node) — tree to search and generate from
  • options (Options, optional) — configuration
Returns

Results (Result).

Options

Configuration (TypeScript type).

Fields
  • heading (string, optional) — heading to look for, wrapped in new RegExp('^(' + value + ')$', 'i')
  • maxDepth (number, default: 6) — maximum heading depth to include in the table of contents. This is inclusive: when set to 3, level three headings are included (those with three hashes, ###)
  • skip (string, optional) — headings to skip, wrapped in new RegExp('^(' + value + ')$', 'i'). Any heading matching this expression will not be present in the table of contents
  • parents (Test, default: tree) — allow headings to be children of certain node types. Can by any unist-util-is compatible test
  • tight (boolean, default: false) — whether to compile list items tightly
  • ordered (boolean, default: false) — whether to compile list items as an ordered list, otherwise they are unordered
  • prefix (string, optional) — add a prefix to links to headings in the table of contents. Useful for example when later going from mdast to hast and sanitizing with hast-util-sanitize.

Result

Results (TypeScript type).

Fields
  • index (number or undefined) — index of the node right after the table of contents heading, -1 if no heading was found, undefined if no heading was given
  • endIndex (number or undefined) — index of the first node after heading that is not part of its section, -1 if no heading was found, undefined if no heading was given, same as index if there are no nodes between heading and the first heading in the table of contents
  • map (List or undefined) — list representing the generated table of contents, undefined if no table of contents could be created, either because no heading was found or because no following headings were found

Types

This package is fully typed with TypeScript. It exports the types Options and Result.

Compatibility

Projects maintained by the unified collective are compatible with maintained versions of Node.js.

When we cut a new major release, we drop support for unmaintained versions of Node. This means we try to keep the current release line, mdast-util-toc@^7, compatible with Node.js 16.

Security

Use of mdast-util-toc does not involve hast, user content, or change the tree, so there are no openings for cross-site scripting (XSS) attacks.

Injecting map into the syntax tree may open you up to XSS attacks as existing nodes are copied into the table of contents. The following example shows how an existing script is copied into the table of contents.

For the following Markdown:

# Alpha

## Bravo<script>alert(1)</script>

## Charlie

Yields in map:

-   [Alpha](#alpha)

    -   [Bravo<script>alert(1)</script>](#bravoscriptalert1script)
    -   [Charlie](#charlie)

Always use hast-util-santize when transforming to hast.

Related

Contribute

See contributing.md in syntax-tree/.github for ways to get started. See support.md for ways to get help.

This project has a code of conduct. By interacting with this repository, organization, or community you agree to abide by its terms.

License

MIT © Jonathan Haines

mdast-util-toc's People

Contributors

barrythepenguin avatar davidtheclark avatar gkatsev avatar greenkeeper[bot] avatar hypercubed avatar laysent avatar thomasjungblut avatar wooorm avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

mdast-util-toc's Issues

An in-range update of remark is breaking the build 🚨

The devDependency remark was updated from 10.0.0 to 10.0.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

remark is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

`footnote` and `footnoteReference` in headings cause links in links

Subject of the issue

We allow phrasing content in headings, and copy those over to the links in the toc:
6fbb123

You don’t want links in links, so we ignore those:

if (node.type === LINK || node.type === LINK_REFERENCE) {
return all(node.children)
}

But footnotes and footnote references (which previously came from remark but are now in remark-footnotes) also result in links. Thus creating a in as, which is nonconforming HTML.

Your environment

n/a

Steps to reproduce

# Heading[^1]

Expected behaviour

- [Heading](#heading)

Actual behaviour

- [Heading[^1]](#heading)

An in-range update of remark-github is breaking the build 🚨

The devDependency remark-github was updated from 7.0.4 to 7.0.5.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

remark-github is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Release Notes for 7.0.5
Commits

The new version differs by 5 commits.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

[Feature Request] Opting-out of phrasing content inclusion

Subject of the feature

I'm running into the same issue as described in #67. The last comment there suggested re-opening the issue if anyone else ran into the same problem.

Problem

I'm using rehype-slug and mdast-util-toc alongside each other. I'm using the former as an MDX plugin to add slugs to my HTML, and the latter to extract out a table of contents so I can render it in the sidebar of the page.

In 99% of cases, the slugs generated by the two libraries are the same and this setup works great. However, just like in the original issue, I have some headers that look like this:

### Dynamic fan-out <Experimental/>

### <Check /> Environment-specific hooks using modes

For these two headers, rehype-slug produces the following anchor links:

#dynamic-fan-out

#environment-specific-hooks-using-modes

However, mdast-util-toc produces:

#dynamic-fan-out-experimental

#check-environment-specific-hooks-using-modes

Interestingly, the titles produced by mdhast-util-toc don't include the text of the MDX components, only the slugs do. The titles look like:

Dynamic fan-out
Environment-specific hooks using modes

If you look at the underlying nodes for the header, they look like this. It looks like the title is ignoring the HTML node, but the slug isn't.

[
  {
    type: 'text',
    value: 'Dynamic fan-out ',
    position: { start: [Object], end: [Object] }
  },
  {
    type: 'html',
    value: '<Experimental/>',
    position: { start: [Object], end: [Object] }
  }
]

Expected behavior

What should happen? Please describe the desired behavior.

Ideally, there would be some way to have the text of the titles and the slugs match, ignoring the HTML nodes in both cases.

The desired slugs are:

#dynamic-fan-out

#environment-specific-hooks-using-modes

Alternatives

What are the alternative solutions? Please describe what else you have considered?

I might be approaching this the wrong way completely by using both rehype-slug and mdast-util-toc alongside each other. The problem is that I don't want my table of contents to be included in the main body of the HTML page itself, and rather render it in the sidebar of the page. That is why I need to extract the table of contents using this library.

I feel like there's a way to run rehype-slug first before running mdast-util-toc, but I had no luck with this. I tried:

const tree = remark().use(mdx).use(remarkSlug).parse(content);
const node = generateToc(tree, { maxDepth: 4 });

and even desperately attempted

const tree = remark().use(mdx).use(rehypeSlugparse(content);
const node = generateToc(tree, { maxDepth: 4 });

with no luck.

An in-range update of remark is breaking the build 🚨

Version 7.0.1 of remark just got published.

Branch Build failing 🚨
Dependency remark
Current Version 7.0.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As remark is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this 💪

Status Details - ❌ **continuous-integration/travis-ci/push** The Travis CI build failed [Details](https://travis-ci.org/BarryThePenguin/mdast-util-toc/builds/227123946?utm_source=github_status&utm_medium=notification)

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Add `prefix` support

Problem

I'm generating a toc using mdast-util-toc but, before this, I sanetize my content using rehype-sanitize and hast-util-sanitize/lib/github.

This GitHub preset do a set of things related to sanitizing the content; one of them is to prefix urls by default.

Based on this premise, If I sanitize my content and then I tried to generate the Table of Content, the links of the table are not properly linked since they are not prefixed.

Subject of the feature

Just adding the ability to prefix the urls to have the same link src than the content should be enough

Duplicate headings inside and outside the TOC tree break TOC links

Subject of the issue

If you provide a heading value, so the TOC tree is a subtree of the entire document; and a heading inside the TOC tree is a duplicate of one before the TOC tree; then the slug link for that TOC heading will be inaccurate.

This surfaced in cosmiconfig/cosmiconfig#225, where the document's H1, outside the TOC, is cosmiconfig, and a subheading within the TOC is cosmiconfig() (same slug).

I think I see the problem in the code and will submit a PR.

Your environment

I've tested this with the latest version.

Steps to reproduce

With this markdown ...

# Title

## Table of contents

## Title

... the TOC's link to the ## Title heading should be #title-1; but it's currently #title.

An in-range update of remark-validate-links is breaking the build 🚨

Version 7.1.0 of remark-validate-links was just published.

Branch Build failing 🚨
Dependency remark-validate-links
Current Version 7.0.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

remark-validate-links is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build could not complete due to an error (Details).

Release Notes 7.1.0
Commits

The new version differs by 16 commits.

There are 16 commits in total.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Publishing latest version

I tried publishing a version with the latest changes, but looks like I no longer have permissions to do that. I'm not fully across the latest governance changes, so happy to leave this up to whoever has publish permissions

All that's needed is someone running npm publish @ChristianMurphy @wooorm (I think!)

Thanks! 😊

An in-range update of remark-cli is breaking the build 🚨

The devDependency remark-cli was updated from 6.0.0 to 6.0.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

remark-cli is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Inconsistent slugs with unicode (emoji) characters

Initial checklist

Problem

In my project, I have unicode characters (emoji) in the headings. Let it be "🏃‍♂️ Heading".
When the TOC is generated, the output url slugs sometimes contain those emojis, although, according to the github-slugger docs this should not be the case.

I have noticed, that mdast-util-toc, as of time of me writing this issue, contains version 1.0.0 of github-slugger in its package.json, which was released way back on September 22nd 2015. Since then, the emoji standard has evolved quite drastically, and some new emojis are ignored in slugs creation. Thus, 🏃‍♂️ Heading's slug becomes #%EF%B8%8F-heading, while, e.g. 🏷 Another Heading strips the emoji correctly – #-another-heading.

Solution

While searching github-slugger issues, I have found this particular one, which suggests that their emoji detection algorithm was at least outdated (or even broken).
As seen in their latest update 1.4.0, they now include the generated regex from emoji-regex in their source code, which is kept up-to-date automatically.

The solution I propose is to keep github-slugger dependency up-to-date and bump its version to 1.4.0 in the package.json, which should solve the outdated emoji detection problem.

Maybe, it's also worth including some of the newer emojis in the tests to verify it's still working correctly. The only present emoji in the unicode test (❤️) was also broken in github-slugger at some point in time and later fixed in their 1.1.2 release.

Alternatives

Alternatively, it may be cool to include some config option to transform/map the url slug on the fly so that it can be modified before actually landing on the parsed AST. Kind of a mapSlug function ((slug: string) => string) or a regexp stripping like stripSlug: RegExp in the search.js function.

But I'd rather just bump the github-slugger version and verify the absence of regressions in tests, as another config option would be an overhead, IMO.

An in-range update of remark-comment-config is breaking the build 🚨

The devDependency remark-comment-config was updated from 5.0.2 to 5.0.3.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

remark-comment-config is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Release Notes for 5.0.3
Commits

The new version differs by 15 commits.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of remark-validate-links is breaking the build 🚨

The devDependency remark-validate-links was updated from 7.1.0 to 7.1.1.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

remark-validate-links is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Release Notes for 7.1.1
Commits

The new version differs by 6 commits.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

An in-range update of remark-cli is breaking the build 🚨

Version 3.0.1 of remark-cli just got published.

Branch Build failing 🚨
Dependency remark-cli
Current Version 3.0.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As remark-cli is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this 💪

Status Details - ❌ **continuous-integration/travis-ci/push** The Travis CI build failed [Details](https://travis-ci.org/BarryThePenguin/mdast-util-toc/builds/227124253?utm_source=github_status&utm_medium=notification)

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of browserify is breaking the build 🚨

Version 14.3.0 of browserify just got published.

Branch Build failing 🚨
Dependency browserify
Current Version 14.2.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As browserify is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this 💪


Status Details
  • continuous-integration/travis-ci/push The Travis CI build failed Details
Commits

The new version differs by 4 commits .

  • cd01926 14.3.0
  • 08caf04 changelog
  • ad5060d Merge pull request #1710 from substack/https-browserify-1
  • 7c7b4d4 update https-browserify to ^1.0.0

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Version 10 of node.js has been released

Version 10 of Node.js (code name Dubnium) has been released! 🎊

To see what happens to your code in Node.js 10, Greenkeeper has created a branch with the following changes:

  • Added the new Node.js version to your .travis.yml

If you’re interested in upgrading this repo to Node.js 10, you can open a PR with these changes. Please note that this issue is just intended as a friendly reminder and the PR as a possible starting point for getting your code running on Node.js 10.

More information on this issue

Greenkeeper has checked the engines key in any package.json file, the .nvmrc file, and the .travis.yml file, if present.

  • engines was only updated if it defined a single version, not a range.
  • .nvmrc was updated to Node.js 10
  • .travis.yml was only changed if there was a root-level node_js that didn’t already include Node.js 10, such as node or lts/*. In this case, the new version was appended to the list. We didn’t touch job or matrix configurations because these tend to be quite specific and complex, and it’s difficult to infer what the intentions were.

For many simpler .travis.yml configurations, this PR should suffice as-is, but depending on what you’re doing it may require additional work or may not be applicable at all. We’re also aware that you may have good reasons to not update to Node.js 10, which is why this was sent as an issue and not a pull request. Feel free to delete it without comment, I’m a humble robot and won’t feel rejected 🤖


FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

Move to syntax-tree org

@BarryThePenguin This is totally up to you, but by moving this repo to the syntax-tree it’s easier for more people to help: shared code responsibility and more people that can publish (once I have an npm org set up), meaning less of a bus factor!

But: it’s up to you, it’s also fine where it is!

html value being turned into string

Hello!
I'm running into issue with mdast-util-toc flattening html value into string:

import u from 'unist-builder'
import mdastToToc from 'mdast-util-toc'

const mdast = u('root', [
  u('heading', { depth: 1 }, [
    u('text', { value: 'Hello' }),
    u('html', { value: '<code>World<code>' })
  ])
])

const toc = mdastToToc(mdast).map
console.dir(toc, { depth: null })

yeild this result:

{ type: 'list',
  ...
    [ { type: 'link',
         title: null,
         url: '#hellocodeworldcode',
         children: [ { type: 'text', value: 'Hello<code>World<code>' } ] 
    }]
  ...
}

Ideally, I would like to receive something like this:

    [ { type: 'link',
         title: null,
         url: '#helloworld',
         children: [
            { type: 'text', value: 'Hello' },
            { type: 'html', value: '<code>World<code>' },
         ] 
    }]

I found this issue when working on gatsbyjs/gatsby#13608. After extracting a table of contents, it will be transformed into a hast tree via mdast-util-to-hast and finally, html via hast-util-to-html. There are plugins in the ecosystem that might modify markdown heading & inject html in them, thus leaving html artifact in final output:

<ul>
  <li>
    <a href="/demo/#generating-tocs-with-code-classlanguage-textgatsby-transformer-remarkcode\">
    Generating TOCs with &#x3C;code class="language-text">gatsby-transformer-remark&#x3C;/code>
    </a>
  </li>
</ul>

Would mdast-util-toc be open to support this behavior?

An in-range update of remark-usage is breaking the build 🚨

The devDependency remark-usage was updated from 6.1.2 to 6.1.3.

🚨 View failing branch.

This version is covered by your current version range and after updating it in your project the build failed.

remark-usage is a devDependency of this project. It might not break your production code or affect downstream projects, but probably breaks your build or test tools, which may prevent deploying or publishing.

Status Details
  • continuous-integration/travis-ci/push: The Travis CI build failed (Details).

Release Notes for 6.1.3
Commits

The new version differs by 3 commits.

See the full diff

FAQ and help

There is a collection of frequently asked questions. If those don’t help, you can always ask the humans behind Greenkeeper.


Your Greenkeeper Bot 🌴

[Feature Request] Opting-out of phrasing content inclusion

In #58 support was added to include phrasing content. Unfortunately, we sometimes might not always want this behavior.

My use case

I'm using gatsby-remark-table-of-contents on a personal blog which uses mdast-util-toc under the covers. I would sometimes like to include images (custom React components in my MDX) in the headings, but I would NOT want to extract these into the table of contents. Currently my MDX looks like:

### Never Pause Here <Chrome />

When you right-click the gutter and select "Never Pause Here," Chrome creates a conditional breakpoint that is `false` and never passes. This makes it so that the debugger will never pause on this line.

This creates a TOC entry that is just literally the string "Never Pause Here <Chrome />" when I would like it to be "Never Pause Here".

It would be lovely if including phrasing content was an option that I could opt-out of.

An in-range update of browserify is breaking the build 🚨

Version 14.4.0 of browserify just got published.

Branch Build failing 🚨
Dependency browserify
Current Version 14.3.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As browserify is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this 💪

Status Details
  • continuous-integration/travis-ci/push The Travis CI build passed Details
  • codecov/project No report found to compare against Details
  • codecov/patch Coverage not affected. Details

Commits

The new version differs by 11 commits.

  • 21af338 14.4.0
  • 4fc4b3c changelog: remove trailing whitespace
  • 94a5c03 changelog
  • f6feab7 Merge pull request #1714 from mcollina/patch-1
  • 89809c3 Merge pull request #1722 from blahah/patch-1
  • 80df2ec Document ignoreMissing option for browserify() (closes #1595)
  • 107d9bb Updated string_decoder to v1.0.0
  • 91ed9c8 Merge pull request #1713 from substack/feross-patch-1
  • d247a52 Use SVG Travis badge
  • d461420 Merge pull request #1712 from substack/feross/tests
  • de4147c test: fix tests on node 0.10 that require ArrayBuffer

See the full diff

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

An in-range update of browserify is breaking the build 🚨

Version 14.2.0 of browserify just got published.

Branch Build failing 🚨
Dependency browserify
Current Version 14.1.0
Type devDependency

This version is covered by your current version range and after updating it in your project the build failed.

As browserify is “only” a devDependency of this project it might not break production or downstream projects, but “only” your build or test tools – preventing new deploys or publishes.

I recommend you give this issue a high priority. I’m sure you can resolve this 💪


Status Details
  • continuous-integration/travis-ci/push The Travis CI build failed Details
Commits

The new version differs by 5 commits .

  • 18e1d65 14.2.0
  • 0e1a7a0 add cli support for --transform-key to support mode's like production/staging/etc..
  • a5aa660 Merge pull request #1701 from wogsland/doc-fix
  • ae281bc Fixed documentation formatting that was bugging me
  • fe8c57b async test for node 7

See the full diff.

Not sure how things should work exactly?

There is a collection of frequently asked questions and of course you may always ask my humans.


Your Greenkeeper Bot 🌴

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.