micromark-factory-destination

micromark factory to parse destinations (found in resources, definitions)

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
micromark-factory-destination
1.0.0a year agoa year agoMinified + gzip package size for micromark-factory-destination in KB

Readme

micromark-factory-destination
!Buildbuild-badgebuild !Coveragecoverage-badgecoverage !Downloadsdownloads-badgedownloads !Sizebundle-size-badgebundle-size !Sponsorssponsors-badgeopencollective !Backersbackers-badgeopencollective !Chatchat-badgechat
micromark factory to parse destinations (found in resources, definitions).

Contents

*   [`factoryDestination(…)`](#factorydestination)

Install

npm install micromark-factory-destination
## Use

```js
import {factoryDestination} from 'micromark-factory-destination'
import {codes} from 'micromark-util-symbol/codes'
import {types} from 'micromark-util-symbol/types'

// A micromark tokenizer that uses the factory:
/** @type {Tokenizer} */
function tokenizeResource(effects, ok, nok) {
  return start

  // …

  /** @type {State} */
  function open(code) {
    if (code === codes.rightParenthesis) {
      return end(code)
    }

    return factoryDestination(
      effects,
      destinationAfter,
      nok,
      types.resourceDestination,
      types.resourceDestinationLiteral,
      types.resourceDestinationLiteralMarker,
      types.resourceDestinationRaw,
      types.resourceDestinationString,
      constants.linkResourceDestinationBalanceMax
    )(code)
  }

  // …
}

API

This module exports the following identifiers: factoryDestination. There is no default export.

factoryDestination(…)

Parameters
  • effects (Effects) — Context
  • ok (State) — State switched to when successful
  • nok (State) — State switched to when not successful
  • type (string) — Token type for whole (<a> or b)
  • literalType (string) — Token type when enclosed (<a>)
  • literalMarkerType (string) — Token type for enclosing (< and >)
  • rawType (string) — Token type when not enclosed (b)
  • stringType (string) — Token type for the URI (a or b)
  • max (number, default: Infinity) — Max depth of nested parens
Returns
State.
Examples
<a>
<a\>b>
<a b>
<a)>
a
a\)b
a(b)c
a(b)

Security

See security.mdsecuritymd in micromark/.githubhealth for how to submit a security report.

Contribute

See contributing.mdcontributing in micromark/.githubhealth for ways to get started. See support.mdsupport for ways to get help.
This project has a code of conductcoc. By interacting with this repository, organisation, or community you agree to abide by its terms.

License

MITlicense © Titus Wormerauthor