Sha256: c203cb20f6e677392d3acc466607001ac592d2dc4875da583cc38a7f29b4e125

Contents?: true

Size: 658 Bytes

Versions: 44

Compression:

Stored size: 658 Bytes

Contents

'use strict';

var path = require('path');

function containsPath(fp, segment) {
  if (typeof fp !== 'string' || typeof segment !== 'string') {
    throw new TypeError('contains-path expects file paths to be a string.');
  }

  var prefix = '(^|\\/)';
  if (segment.indexOf('./') === 0 || segment.charAt(0) === '/') {
    prefix = '^';
  }

  var re = new RegExp(prefix + normalize(segment).join('\\/') + '($|\\/)');
  fp = normalize(fp).join('/');
  return re.test(fp);
}

/**
 * Normalize slashes
 */

function normalize(str) {
  str = path.normalize(str);
  return str.split(/[\\\/]+/);
}

/**
 * Expose `containsPath`
 */

module.exports = containsPath;

Version data entries

44 entries across 44 versions & 2 rubygems

Version Path
govuk_publishing_components-18.0.0 node_modules/contains-path/index.js
govuk_publishing_components-17.21.0 node_modules/contains-path/index.js
govuk_publishing_components-17.20.0 node_modules/contains-path/index.js
govuk_publishing_components-17.19.1 node_modules/contains-path/index.js
govuk_publishing_components-17.19.0 node_modules/contains-path/index.js
govuk_publishing_components-17.18.0 node_modules/contains-path/index.js
govuk_publishing_components-17.17.0 node_modules/contains-path/index.js
govuk_publishing_components-17.16.0 node_modules/contains-path/index.js
govuk_publishing_components-17.15.0 node_modules/contains-path/index.js
govuk_publishing_components-17.14.0 node_modules/contains-path/index.js
govuk_publishing_components-17.13.0 node_modules/contains-path/index.js
govuk_publishing_components-17.12.2 node_modules/contains-path/index.js
govuk_publishing_components-17.12.1 node_modules/contains-path/index.js
govuk_publishing_components-17.12.0 node_modules/contains-path/index.js
govuk_publishing_components-17.11.0 node_modules/contains-path/index.js
govuk_publishing_components-17.10.0 node_modules/contains-path/index.js
govuk_publishing_components-17.9.0 node_modules/contains-path/index.js
govuk_publishing_components-17.8.0 node_modules/contains-path/index.js
govuk_publishing_components-17.7.0 node_modules/contains-path/index.js
govuk_publishing_components-17.6.1 node_modules/contains-path/index.js