Sha256: 4d74617e489ca105d03e6443defde63ed6f0737875daa099fbe0280a22653838

Contents?: true

Size: 682 Bytes

Versions: 23

Compression:

Stored size: 682 Bytes

Contents

'use strict'

var count = require('ccount')

module.exports = enclose

var leftParenthesis = '('
var rightParenthesis = ')'
var lessThan = '<'
var greaterThan = '>'

var expression = /\s/

// Wrap `url` in angle brackets when needed, or when
// forced.
// In links, images, and definitions, the URL part needs
// to be enclosed when it:
//
// - has a length of `0`
// - contains white-space
// - has more or less opening than closing parentheses
function enclose(uri, always) {
  if (
    always ||
    uri.length === 0 ||
    expression.test(uri) ||
    count(uri, leftParenthesis) !== count(uri, rightParenthesis)
  ) {
    return lessThan + uri + greaterThan
  }

  return uri
}

Version data entries

23 entries across 23 versions & 1 rubygems

Version Path
trusty-cms-5.0.7 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-5.0.6 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-5.0.5 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-5.0.4 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-5.0.3 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-5.0.2 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-5.0.1 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.3.5 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-5.0.0 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.3.4 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.3.3 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.3.2 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.3.1 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.3 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.2.3 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.2.2 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.2.1 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.2 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.1.9 node_modules/remark-stringify/lib/util/enclose-uri.js
trusty-cms-4.1.8 node_modules/remark-stringify/lib/util/enclose-uri.js