mirror of
https://github.com/Alfresco/alfresco-ng2-components.git
synced 2025-07-31 17:38:48 +00:00
react app
This commit is contained in:
27
react-app/node_modules/lodash/string/camelCase.js
generated
vendored
Normal file
27
react-app/node_modules/lodash/string/camelCase.js
generated
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
var createCompounder = require('../internal/createCompounder');
|
||||
|
||||
/**
|
||||
* Converts `string` to [camel case](https://en.wikipedia.org/wiki/CamelCase).
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to convert.
|
||||
* @returns {string} Returns the camel cased string.
|
||||
* @example
|
||||
*
|
||||
* _.camelCase('Foo Bar');
|
||||
* // => 'fooBar'
|
||||
*
|
||||
* _.camelCase('--foo-bar');
|
||||
* // => 'fooBar'
|
||||
*
|
||||
* _.camelCase('__foo_bar__');
|
||||
* // => 'fooBar'
|
||||
*/
|
||||
var camelCase = createCompounder(function(result, word, index) {
|
||||
word = word.toLowerCase();
|
||||
return result + (index ? (word.charAt(0).toUpperCase() + word.slice(1)) : word);
|
||||
});
|
||||
|
||||
module.exports = camelCase;
|
21
react-app/node_modules/lodash/string/capitalize.js
generated
vendored
Normal file
21
react-app/node_modules/lodash/string/capitalize.js
generated
vendored
Normal file
@@ -0,0 +1,21 @@
|
||||
var baseToString = require('../internal/baseToString');
|
||||
|
||||
/**
|
||||
* Capitalizes the first character of `string`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to capitalize.
|
||||
* @returns {string} Returns the capitalized string.
|
||||
* @example
|
||||
*
|
||||
* _.capitalize('fred');
|
||||
* // => 'Fred'
|
||||
*/
|
||||
function capitalize(string) {
|
||||
string = baseToString(string);
|
||||
return string && (string.charAt(0).toUpperCase() + string.slice(1));
|
||||
}
|
||||
|
||||
module.exports = capitalize;
|
29
react-app/node_modules/lodash/string/deburr.js
generated
vendored
Normal file
29
react-app/node_modules/lodash/string/deburr.js
generated
vendored
Normal file
@@ -0,0 +1,29 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
deburrLetter = require('../internal/deburrLetter');
|
||||
|
||||
/** Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks). */
|
||||
var reComboMark = /[\u0300-\u036f\ufe20-\ufe23]/g;
|
||||
|
||||
/** Used to match latin-1 supplementary letters (excluding mathematical operators). */
|
||||
var reLatin1 = /[\xc0-\xd6\xd8-\xde\xdf-\xf6\xf8-\xff]/g;
|
||||
|
||||
/**
|
||||
* Deburrs `string` by converting [latin-1 supplementary letters](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
|
||||
* to basic latin letters and removing [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to deburr.
|
||||
* @returns {string} Returns the deburred string.
|
||||
* @example
|
||||
*
|
||||
* _.deburr('déjà vu');
|
||||
* // => 'deja vu'
|
||||
*/
|
||||
function deburr(string) {
|
||||
string = baseToString(string);
|
||||
return string && string.replace(reLatin1, deburrLetter).replace(reComboMark, '');
|
||||
}
|
||||
|
||||
module.exports = deburr;
|
40
react-app/node_modules/lodash/string/endsWith.js
generated
vendored
Normal file
40
react-app/node_modules/lodash/string/endsWith.js
generated
vendored
Normal file
@@ -0,0 +1,40 @@
|
||||
var baseToString = require('../internal/baseToString');
|
||||
|
||||
/* Native method references for those with the same name as other `lodash` methods. */
|
||||
var nativeMin = Math.min;
|
||||
|
||||
/**
|
||||
* Checks if `string` ends with the given target string.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to search.
|
||||
* @param {string} [target] The string to search for.
|
||||
* @param {number} [position=string.length] The position to search from.
|
||||
* @returns {boolean} Returns `true` if `string` ends with `target`, else `false`.
|
||||
* @example
|
||||
*
|
||||
* _.endsWith('abc', 'c');
|
||||
* // => true
|
||||
*
|
||||
* _.endsWith('abc', 'b');
|
||||
* // => false
|
||||
*
|
||||
* _.endsWith('abc', 'b', 2);
|
||||
* // => true
|
||||
*/
|
||||
function endsWith(string, target, position) {
|
||||
string = baseToString(string);
|
||||
target = (target + '');
|
||||
|
||||
var length = string.length;
|
||||
position = position === undefined
|
||||
? length
|
||||
: nativeMin(position < 0 ? 0 : (+position || 0), length);
|
||||
|
||||
position -= target.length;
|
||||
return position >= 0 && string.indexOf(target, position) == position;
|
||||
}
|
||||
|
||||
module.exports = endsWith;
|
48
react-app/node_modules/lodash/string/escape.js
generated
vendored
Normal file
48
react-app/node_modules/lodash/string/escape.js
generated
vendored
Normal file
@@ -0,0 +1,48 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
escapeHtmlChar = require('../internal/escapeHtmlChar');
|
||||
|
||||
/** Used to match HTML entities and HTML characters. */
|
||||
var reUnescapedHtml = /[&<>"'`]/g,
|
||||
reHasUnescapedHtml = RegExp(reUnescapedHtml.source);
|
||||
|
||||
/**
|
||||
* Converts the characters "&", "<", ">", '"', "'", and "\`", in `string` to
|
||||
* their corresponding HTML entities.
|
||||
*
|
||||
* **Note:** No other characters are escaped. To escape additional characters
|
||||
* use a third-party library like [_he_](https://mths.be/he).
|
||||
*
|
||||
* Though the ">" character is escaped for symmetry, characters like
|
||||
* ">" and "/" don't need escaping in HTML and have no special meaning
|
||||
* unless they're part of a tag or unquoted attribute value.
|
||||
* See [Mathias Bynens's article](https://mathiasbynens.be/notes/ambiguous-ampersands)
|
||||
* (under "semi-related fun fact") for more details.
|
||||
*
|
||||
* Backticks are escaped because in Internet Explorer < 9, they can break out
|
||||
* of attribute values or HTML comments. See [#59](https://html5sec.org/#59),
|
||||
* [#102](https://html5sec.org/#102), [#108](https://html5sec.org/#108), and
|
||||
* [#133](https://html5sec.org/#133) of the [HTML5 Security Cheatsheet](https://html5sec.org/)
|
||||
* for more details.
|
||||
*
|
||||
* When working with HTML you should always [quote attribute values](http://wonko.com/post/html-escaping)
|
||||
* to reduce XSS vectors.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to escape.
|
||||
* @returns {string} Returns the escaped string.
|
||||
* @example
|
||||
*
|
||||
* _.escape('fred, barney, & pebbles');
|
||||
* // => 'fred, barney, & pebbles'
|
||||
*/
|
||||
function escape(string) {
|
||||
// Reset `lastIndex` because in IE < 9 `String#replace` does not.
|
||||
string = baseToString(string);
|
||||
return (string && reHasUnescapedHtml.test(string))
|
||||
? string.replace(reUnescapedHtml, escapeHtmlChar)
|
||||
: string;
|
||||
}
|
||||
|
||||
module.exports = escape;
|
32
react-app/node_modules/lodash/string/escapeRegExp.js
generated
vendored
Normal file
32
react-app/node_modules/lodash/string/escapeRegExp.js
generated
vendored
Normal file
@@ -0,0 +1,32 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
escapeRegExpChar = require('../internal/escapeRegExpChar');
|
||||
|
||||
/**
|
||||
* Used to match `RegExp` [syntax characters](http://ecma-international.org/ecma-262/6.0/#sec-patterns)
|
||||
* and those outlined by [`EscapeRegExpPattern`](http://ecma-international.org/ecma-262/6.0/#sec-escaperegexppattern).
|
||||
*/
|
||||
var reRegExpChars = /^[:!,]|[\\^$.*+?()[\]{}|\/]|(^[0-9a-fA-Fnrtuvx])|([\n\r\u2028\u2029])/g,
|
||||
reHasRegExpChars = RegExp(reRegExpChars.source);
|
||||
|
||||
/**
|
||||
* Escapes the `RegExp` special characters "\", "/", "^", "$", ".", "|", "?",
|
||||
* "*", "+", "(", ")", "[", "]", "{" and "}" in `string`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to escape.
|
||||
* @returns {string} Returns the escaped string.
|
||||
* @example
|
||||
*
|
||||
* _.escapeRegExp('[lodash](https://lodash.com/)');
|
||||
* // => '\[lodash\]\(https:\/\/lodash\.com\/\)'
|
||||
*/
|
||||
function escapeRegExp(string) {
|
||||
string = baseToString(string);
|
||||
return (string && reHasRegExpChars.test(string))
|
||||
? string.replace(reRegExpChars, escapeRegExpChar)
|
||||
: (string || '(?:)');
|
||||
}
|
||||
|
||||
module.exports = escapeRegExp;
|
26
react-app/node_modules/lodash/string/kebabCase.js
generated
vendored
Normal file
26
react-app/node_modules/lodash/string/kebabCase.js
generated
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
var createCompounder = require('../internal/createCompounder');
|
||||
|
||||
/**
|
||||
* Converts `string` to [kebab case](https://en.wikipedia.org/wiki/Letter_case#Special_case_styles).
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to convert.
|
||||
* @returns {string} Returns the kebab cased string.
|
||||
* @example
|
||||
*
|
||||
* _.kebabCase('Foo Bar');
|
||||
* // => 'foo-bar'
|
||||
*
|
||||
* _.kebabCase('fooBar');
|
||||
* // => 'foo-bar'
|
||||
*
|
||||
* _.kebabCase('__foo_bar__');
|
||||
* // => 'foo-bar'
|
||||
*/
|
||||
var kebabCase = createCompounder(function(result, word, index) {
|
||||
return result + (index ? '-' : '') + word.toLowerCase();
|
||||
});
|
||||
|
||||
module.exports = kebabCase;
|
47
react-app/node_modules/lodash/string/pad.js
generated
vendored
Normal file
47
react-app/node_modules/lodash/string/pad.js
generated
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
createPadding = require('../internal/createPadding');
|
||||
|
||||
/* Native method references for those with the same name as other `lodash` methods. */
|
||||
var nativeCeil = Math.ceil,
|
||||
nativeFloor = Math.floor,
|
||||
nativeIsFinite = global.isFinite;
|
||||
|
||||
/**
|
||||
* Pads `string` on the left and right sides if it's shorter than `length`.
|
||||
* Padding characters are truncated if they can't be evenly divided by `length`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to pad.
|
||||
* @param {number} [length=0] The padding length.
|
||||
* @param {string} [chars=' '] The string used as padding.
|
||||
* @returns {string} Returns the padded string.
|
||||
* @example
|
||||
*
|
||||
* _.pad('abc', 8);
|
||||
* // => ' abc '
|
||||
*
|
||||
* _.pad('abc', 8, '_-');
|
||||
* // => '_-abc_-_'
|
||||
*
|
||||
* _.pad('abc', 3);
|
||||
* // => 'abc'
|
||||
*/
|
||||
function pad(string, length, chars) {
|
||||
string = baseToString(string);
|
||||
length = +length;
|
||||
|
||||
var strLength = string.length;
|
||||
if (strLength >= length || !nativeIsFinite(length)) {
|
||||
return string;
|
||||
}
|
||||
var mid = (length - strLength) / 2,
|
||||
leftLength = nativeFloor(mid),
|
||||
rightLength = nativeCeil(mid);
|
||||
|
||||
chars = createPadding('', rightLength, chars);
|
||||
return chars.slice(0, leftLength) + string + chars;
|
||||
}
|
||||
|
||||
module.exports = pad;
|
27
react-app/node_modules/lodash/string/padLeft.js
generated
vendored
Normal file
27
react-app/node_modules/lodash/string/padLeft.js
generated
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
var createPadDir = require('../internal/createPadDir');
|
||||
|
||||
/**
|
||||
* Pads `string` on the left side if it's shorter than `length`. Padding
|
||||
* characters are truncated if they exceed `length`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to pad.
|
||||
* @param {number} [length=0] The padding length.
|
||||
* @param {string} [chars=' '] The string used as padding.
|
||||
* @returns {string} Returns the padded string.
|
||||
* @example
|
||||
*
|
||||
* _.padLeft('abc', 6);
|
||||
* // => ' abc'
|
||||
*
|
||||
* _.padLeft('abc', 6, '_-');
|
||||
* // => '_-_abc'
|
||||
*
|
||||
* _.padLeft('abc', 3);
|
||||
* // => 'abc'
|
||||
*/
|
||||
var padLeft = createPadDir();
|
||||
|
||||
module.exports = padLeft;
|
27
react-app/node_modules/lodash/string/padRight.js
generated
vendored
Normal file
27
react-app/node_modules/lodash/string/padRight.js
generated
vendored
Normal file
@@ -0,0 +1,27 @@
|
||||
var createPadDir = require('../internal/createPadDir');
|
||||
|
||||
/**
|
||||
* Pads `string` on the right side if it's shorter than `length`. Padding
|
||||
* characters are truncated if they exceed `length`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to pad.
|
||||
* @param {number} [length=0] The padding length.
|
||||
* @param {string} [chars=' '] The string used as padding.
|
||||
* @returns {string} Returns the padded string.
|
||||
* @example
|
||||
*
|
||||
* _.padRight('abc', 6);
|
||||
* // => 'abc '
|
||||
*
|
||||
* _.padRight('abc', 6, '_-');
|
||||
* // => 'abc_-_'
|
||||
*
|
||||
* _.padRight('abc', 3);
|
||||
* // => 'abc'
|
||||
*/
|
||||
var padRight = createPadDir(true);
|
||||
|
||||
module.exports = padRight;
|
46
react-app/node_modules/lodash/string/parseInt.js
generated
vendored
Normal file
46
react-app/node_modules/lodash/string/parseInt.js
generated
vendored
Normal file
@@ -0,0 +1,46 @@
|
||||
var isIterateeCall = require('../internal/isIterateeCall'),
|
||||
trim = require('./trim');
|
||||
|
||||
/** Used to detect hexadecimal string values. */
|
||||
var reHasHexPrefix = /^0[xX]/;
|
||||
|
||||
/* Native method references for those with the same name as other `lodash` methods. */
|
||||
var nativeParseInt = global.parseInt;
|
||||
|
||||
/**
|
||||
* Converts `string` to an integer of the specified radix. If `radix` is
|
||||
* `undefined` or `0`, a `radix` of `10` is used unless `value` is a hexadecimal,
|
||||
* in which case a `radix` of `16` is used.
|
||||
*
|
||||
* **Note:** This method aligns with the [ES5 implementation](https://es5.github.io/#E)
|
||||
* of `parseInt`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} string The string to convert.
|
||||
* @param {number} [radix] The radix to interpret `value` by.
|
||||
* @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
|
||||
* @returns {number} Returns the converted integer.
|
||||
* @example
|
||||
*
|
||||
* _.parseInt('08');
|
||||
* // => 8
|
||||
*
|
||||
* _.map(['6', '08', '10'], _.parseInt);
|
||||
* // => [6, 8, 10]
|
||||
*/
|
||||
function parseInt(string, radix, guard) {
|
||||
// Firefox < 21 and Opera < 15 follow ES3 for `parseInt`.
|
||||
// Chrome fails to trim leading <BOM> whitespace characters.
|
||||
// See https://code.google.com/p/v8/issues/detail?id=3109 for more details.
|
||||
if (guard ? isIterateeCall(string, radix, guard) : radix == null) {
|
||||
radix = 0;
|
||||
} else if (radix) {
|
||||
radix = +radix;
|
||||
}
|
||||
string = trim(string);
|
||||
return nativeParseInt(string, radix || (reHasHexPrefix.test(string) ? 16 : 10));
|
||||
}
|
||||
|
||||
module.exports = parseInt;
|
47
react-app/node_modules/lodash/string/repeat.js
generated
vendored
Normal file
47
react-app/node_modules/lodash/string/repeat.js
generated
vendored
Normal file
@@ -0,0 +1,47 @@
|
||||
var baseToString = require('../internal/baseToString');
|
||||
|
||||
/* Native method references for those with the same name as other `lodash` methods. */
|
||||
var nativeFloor = Math.floor,
|
||||
nativeIsFinite = global.isFinite;
|
||||
|
||||
/**
|
||||
* Repeats the given string `n` times.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to repeat.
|
||||
* @param {number} [n=0] The number of times to repeat the string.
|
||||
* @returns {string} Returns the repeated string.
|
||||
* @example
|
||||
*
|
||||
* _.repeat('*', 3);
|
||||
* // => '***'
|
||||
*
|
||||
* _.repeat('abc', 2);
|
||||
* // => 'abcabc'
|
||||
*
|
||||
* _.repeat('abc', 0);
|
||||
* // => ''
|
||||
*/
|
||||
function repeat(string, n) {
|
||||
var result = '';
|
||||
string = baseToString(string);
|
||||
n = +n;
|
||||
if (n < 1 || !string || !nativeIsFinite(n)) {
|
||||
return result;
|
||||
}
|
||||
// Leverage the exponentiation by squaring algorithm for a faster repeat.
|
||||
// See https://en.wikipedia.org/wiki/Exponentiation_by_squaring for more details.
|
||||
do {
|
||||
if (n % 2) {
|
||||
result += string;
|
||||
}
|
||||
n = nativeFloor(n / 2);
|
||||
string += string;
|
||||
} while (n);
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
module.exports = repeat;
|
26
react-app/node_modules/lodash/string/snakeCase.js
generated
vendored
Normal file
26
react-app/node_modules/lodash/string/snakeCase.js
generated
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
var createCompounder = require('../internal/createCompounder');
|
||||
|
||||
/**
|
||||
* Converts `string` to [snake case](https://en.wikipedia.org/wiki/Snake_case).
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to convert.
|
||||
* @returns {string} Returns the snake cased string.
|
||||
* @example
|
||||
*
|
||||
* _.snakeCase('Foo Bar');
|
||||
* // => 'foo_bar'
|
||||
*
|
||||
* _.snakeCase('fooBar');
|
||||
* // => 'foo_bar'
|
||||
*
|
||||
* _.snakeCase('--foo-bar');
|
||||
* // => 'foo_bar'
|
||||
*/
|
||||
var snakeCase = createCompounder(function(result, word, index) {
|
||||
return result + (index ? '_' : '') + word.toLowerCase();
|
||||
});
|
||||
|
||||
module.exports = snakeCase;
|
26
react-app/node_modules/lodash/string/startCase.js
generated
vendored
Normal file
26
react-app/node_modules/lodash/string/startCase.js
generated
vendored
Normal file
@@ -0,0 +1,26 @@
|
||||
var createCompounder = require('../internal/createCompounder');
|
||||
|
||||
/**
|
||||
* Converts `string` to [start case](https://en.wikipedia.org/wiki/Letter_case#Stylistic_or_specialised_usage).
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to convert.
|
||||
* @returns {string} Returns the start cased string.
|
||||
* @example
|
||||
*
|
||||
* _.startCase('--foo-bar');
|
||||
* // => 'Foo Bar'
|
||||
*
|
||||
* _.startCase('fooBar');
|
||||
* // => 'Foo Bar'
|
||||
*
|
||||
* _.startCase('__foo_bar__');
|
||||
* // => 'Foo Bar'
|
||||
*/
|
||||
var startCase = createCompounder(function(result, word, index) {
|
||||
return result + (index ? ' ' : '') + (word.charAt(0).toUpperCase() + word.slice(1));
|
||||
});
|
||||
|
||||
module.exports = startCase;
|
36
react-app/node_modules/lodash/string/startsWith.js
generated
vendored
Normal file
36
react-app/node_modules/lodash/string/startsWith.js
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
var baseToString = require('../internal/baseToString');
|
||||
|
||||
/* Native method references for those with the same name as other `lodash` methods. */
|
||||
var nativeMin = Math.min;
|
||||
|
||||
/**
|
||||
* Checks if `string` starts with the given target string.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to search.
|
||||
* @param {string} [target] The string to search for.
|
||||
* @param {number} [position=0] The position to search from.
|
||||
* @returns {boolean} Returns `true` if `string` starts with `target`, else `false`.
|
||||
* @example
|
||||
*
|
||||
* _.startsWith('abc', 'a');
|
||||
* // => true
|
||||
*
|
||||
* _.startsWith('abc', 'b');
|
||||
* // => false
|
||||
*
|
||||
* _.startsWith('abc', 'b', 1);
|
||||
* // => true
|
||||
*/
|
||||
function startsWith(string, target, position) {
|
||||
string = baseToString(string);
|
||||
position = position == null
|
||||
? 0
|
||||
: nativeMin(position < 0 ? 0 : (+position || 0), string.length);
|
||||
|
||||
return string.lastIndexOf(target, position) == position;
|
||||
}
|
||||
|
||||
module.exports = startsWith;
|
226
react-app/node_modules/lodash/string/template.js
generated
vendored
Normal file
226
react-app/node_modules/lodash/string/template.js
generated
vendored
Normal file
@@ -0,0 +1,226 @@
|
||||
var assignOwnDefaults = require('../internal/assignOwnDefaults'),
|
||||
assignWith = require('../internal/assignWith'),
|
||||
attempt = require('../utility/attempt'),
|
||||
baseAssign = require('../internal/baseAssign'),
|
||||
baseToString = require('../internal/baseToString'),
|
||||
baseValues = require('../internal/baseValues'),
|
||||
escapeStringChar = require('../internal/escapeStringChar'),
|
||||
isError = require('../lang/isError'),
|
||||
isIterateeCall = require('../internal/isIterateeCall'),
|
||||
keys = require('../object/keys'),
|
||||
reInterpolate = require('../internal/reInterpolate'),
|
||||
templateSettings = require('./templateSettings');
|
||||
|
||||
/** Used to match empty string literals in compiled template source. */
|
||||
var reEmptyStringLeading = /\b__p \+= '';/g,
|
||||
reEmptyStringMiddle = /\b(__p \+=) '' \+/g,
|
||||
reEmptyStringTrailing = /(__e\(.*?\)|\b__t\)) \+\n'';/g;
|
||||
|
||||
/** Used to match [ES template delimiters](http://ecma-international.org/ecma-262/6.0/#sec-template-literal-lexical-components). */
|
||||
var reEsTemplate = /\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g;
|
||||
|
||||
/** Used to ensure capturing order of template delimiters. */
|
||||
var reNoMatch = /($^)/;
|
||||
|
||||
/** Used to match unescaped characters in compiled string literals. */
|
||||
var reUnescapedString = /['\n\r\u2028\u2029\\]/g;
|
||||
|
||||
/**
|
||||
* Creates a compiled template function that can interpolate data properties
|
||||
* in "interpolate" delimiters, HTML-escape interpolated data properties in
|
||||
* "escape" delimiters, and execute JavaScript in "evaluate" delimiters. Data
|
||||
* properties may be accessed as free variables in the template. If a setting
|
||||
* object is provided it takes precedence over `_.templateSettings` values.
|
||||
*
|
||||
* **Note:** In the development build `_.template` utilizes
|
||||
* [sourceURLs](http://www.html5rocks.com/en/tutorials/developertools/sourcemaps/#toc-sourceurl)
|
||||
* for easier debugging.
|
||||
*
|
||||
* For more information on precompiling templates see
|
||||
* [lodash's custom builds documentation](https://lodash.com/custom-builds).
|
||||
*
|
||||
* For more information on Chrome extension sandboxes see
|
||||
* [Chrome's extensions documentation](https://developer.chrome.com/extensions/sandboxingEval).
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The template string.
|
||||
* @param {Object} [options] The options object.
|
||||
* @param {RegExp} [options.escape] The HTML "escape" delimiter.
|
||||
* @param {RegExp} [options.evaluate] The "evaluate" delimiter.
|
||||
* @param {Object} [options.imports] An object to import into the template as free variables.
|
||||
* @param {RegExp} [options.interpolate] The "interpolate" delimiter.
|
||||
* @param {string} [options.sourceURL] The sourceURL of the template's compiled source.
|
||||
* @param {string} [options.variable] The data object variable name.
|
||||
* @param- {Object} [otherOptions] Enables the legacy `options` param signature.
|
||||
* @returns {Function} Returns the compiled template function.
|
||||
* @example
|
||||
*
|
||||
* // using the "interpolate" delimiter to create a compiled template
|
||||
* var compiled = _.template('hello <%= user %>!');
|
||||
* compiled({ 'user': 'fred' });
|
||||
* // => 'hello fred!'
|
||||
*
|
||||
* // using the HTML "escape" delimiter to escape data property values
|
||||
* var compiled = _.template('<b><%- value %></b>');
|
||||
* compiled({ 'value': '<script>' });
|
||||
* // => '<b><script></b>'
|
||||
*
|
||||
* // using the "evaluate" delimiter to execute JavaScript and generate HTML
|
||||
* var compiled = _.template('<% _.forEach(users, function(user) { %><li><%- user %></li><% }); %>');
|
||||
* compiled({ 'users': ['fred', 'barney'] });
|
||||
* // => '<li>fred</li><li>barney</li>'
|
||||
*
|
||||
* // using the internal `print` function in "evaluate" delimiters
|
||||
* var compiled = _.template('<% print("hello " + user); %>!');
|
||||
* compiled({ 'user': 'barney' });
|
||||
* // => 'hello barney!'
|
||||
*
|
||||
* // using the ES delimiter as an alternative to the default "interpolate" delimiter
|
||||
* var compiled = _.template('hello ${ user }!');
|
||||
* compiled({ 'user': 'pebbles' });
|
||||
* // => 'hello pebbles!'
|
||||
*
|
||||
* // using custom template delimiters
|
||||
* _.templateSettings.interpolate = /{{([\s\S]+?)}}/g;
|
||||
* var compiled = _.template('hello {{ user }}!');
|
||||
* compiled({ 'user': 'mustache' });
|
||||
* // => 'hello mustache!'
|
||||
*
|
||||
* // using backslashes to treat delimiters as plain text
|
||||
* var compiled = _.template('<%= "\\<%- value %\\>" %>');
|
||||
* compiled({ 'value': 'ignored' });
|
||||
* // => '<%- value %>'
|
||||
*
|
||||
* // using the `imports` option to import `jQuery` as `jq`
|
||||
* var text = '<% jq.each(users, function(user) { %><li><%- user %></li><% }); %>';
|
||||
* var compiled = _.template(text, { 'imports': { 'jq': jQuery } });
|
||||
* compiled({ 'users': ['fred', 'barney'] });
|
||||
* // => '<li>fred</li><li>barney</li>'
|
||||
*
|
||||
* // using the `sourceURL` option to specify a custom sourceURL for the template
|
||||
* var compiled = _.template('hello <%= user %>!', { 'sourceURL': '/basic/greeting.jst' });
|
||||
* compiled(data);
|
||||
* // => find the source of "greeting.jst" under the Sources tab or Resources panel of the web inspector
|
||||
*
|
||||
* // using the `variable` option to ensure a with-statement isn't used in the compiled template
|
||||
* var compiled = _.template('hi <%= data.user %>!', { 'variable': 'data' });
|
||||
* compiled.source;
|
||||
* // => function(data) {
|
||||
* // var __t, __p = '';
|
||||
* // __p += 'hi ' + ((__t = ( data.user )) == null ? '' : __t) + '!';
|
||||
* // return __p;
|
||||
* // }
|
||||
*
|
||||
* // using the `source` property to inline compiled templates for meaningful
|
||||
* // line numbers in error messages and a stack trace
|
||||
* fs.writeFileSync(path.join(cwd, 'jst.js'), '\
|
||||
* var JST = {\
|
||||
* "main": ' + _.template(mainText).source + '\
|
||||
* };\
|
||||
* ');
|
||||
*/
|
||||
function template(string, options, otherOptions) {
|
||||
// Based on John Resig's `tmpl` implementation (http://ejohn.org/blog/javascript-micro-templating/)
|
||||
// and Laura Doktorova's doT.js (https://github.com/olado/doT).
|
||||
var settings = templateSettings.imports._.templateSettings || templateSettings;
|
||||
|
||||
if (otherOptions && isIterateeCall(string, options, otherOptions)) {
|
||||
options = otherOptions = undefined;
|
||||
}
|
||||
string = baseToString(string);
|
||||
options = assignWith(baseAssign({}, otherOptions || options), settings, assignOwnDefaults);
|
||||
|
||||
var imports = assignWith(baseAssign({}, options.imports), settings.imports, assignOwnDefaults),
|
||||
importsKeys = keys(imports),
|
||||
importsValues = baseValues(imports, importsKeys);
|
||||
|
||||
var isEscaping,
|
||||
isEvaluating,
|
||||
index = 0,
|
||||
interpolate = options.interpolate || reNoMatch,
|
||||
source = "__p += '";
|
||||
|
||||
// Compile the regexp to match each delimiter.
|
||||
var reDelimiters = RegExp(
|
||||
(options.escape || reNoMatch).source + '|' +
|
||||
interpolate.source + '|' +
|
||||
(interpolate === reInterpolate ? reEsTemplate : reNoMatch).source + '|' +
|
||||
(options.evaluate || reNoMatch).source + '|$'
|
||||
, 'g');
|
||||
|
||||
// Use a sourceURL for easier debugging.
|
||||
var sourceURL = 'sourceURL' in options ? '//# sourceURL=' + options.sourceURL + '\n' : '';
|
||||
|
||||
string.replace(reDelimiters, function(match, escapeValue, interpolateValue, esTemplateValue, evaluateValue, offset) {
|
||||
interpolateValue || (interpolateValue = esTemplateValue);
|
||||
|
||||
// Escape characters that can't be included in string literals.
|
||||
source += string.slice(index, offset).replace(reUnescapedString, escapeStringChar);
|
||||
|
||||
// Replace delimiters with snippets.
|
||||
if (escapeValue) {
|
||||
isEscaping = true;
|
||||
source += "' +\n__e(" + escapeValue + ") +\n'";
|
||||
}
|
||||
if (evaluateValue) {
|
||||
isEvaluating = true;
|
||||
source += "';\n" + evaluateValue + ";\n__p += '";
|
||||
}
|
||||
if (interpolateValue) {
|
||||
source += "' +\n((__t = (" + interpolateValue + ")) == null ? '' : __t) +\n'";
|
||||
}
|
||||
index = offset + match.length;
|
||||
|
||||
// The JS engine embedded in Adobe products requires returning the `match`
|
||||
// string in order to produce the correct `offset` value.
|
||||
return match;
|
||||
});
|
||||
|
||||
source += "';\n";
|
||||
|
||||
// If `variable` is not specified wrap a with-statement around the generated
|
||||
// code to add the data object to the top of the scope chain.
|
||||
var variable = options.variable;
|
||||
if (!variable) {
|
||||
source = 'with (obj) {\n' + source + '\n}\n';
|
||||
}
|
||||
// Cleanup code by stripping empty strings.
|
||||
source = (isEvaluating ? source.replace(reEmptyStringLeading, '') : source)
|
||||
.replace(reEmptyStringMiddle, '$1')
|
||||
.replace(reEmptyStringTrailing, '$1;');
|
||||
|
||||
// Frame code as the function body.
|
||||
source = 'function(' + (variable || 'obj') + ') {\n' +
|
||||
(variable
|
||||
? ''
|
||||
: 'obj || (obj = {});\n'
|
||||
) +
|
||||
"var __t, __p = ''" +
|
||||
(isEscaping
|
||||
? ', __e = _.escape'
|
||||
: ''
|
||||
) +
|
||||
(isEvaluating
|
||||
? ', __j = Array.prototype.join;\n' +
|
||||
"function print() { __p += __j.call(arguments, '') }\n"
|
||||
: ';\n'
|
||||
) +
|
||||
source +
|
||||
'return __p\n}';
|
||||
|
||||
var result = attempt(function() {
|
||||
return Function(importsKeys, sourceURL + 'return ' + source).apply(undefined, importsValues);
|
||||
});
|
||||
|
||||
// Provide the compiled function's source by its `toString` method or
|
||||
// the `source` property as a convenience for inlining compiled templates.
|
||||
result.source = source;
|
||||
if (isError(result)) {
|
||||
throw result;
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
module.exports = template;
|
67
react-app/node_modules/lodash/string/templateSettings.js
generated
vendored
Normal file
67
react-app/node_modules/lodash/string/templateSettings.js
generated
vendored
Normal file
@@ -0,0 +1,67 @@
|
||||
var escape = require('./escape'),
|
||||
reEscape = require('../internal/reEscape'),
|
||||
reEvaluate = require('../internal/reEvaluate'),
|
||||
reInterpolate = require('../internal/reInterpolate');
|
||||
|
||||
/**
|
||||
* By default, the template delimiters used by lodash are like those in
|
||||
* embedded Ruby (ERB). Change the following template settings to use
|
||||
* alternative delimiters.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @type Object
|
||||
*/
|
||||
var templateSettings = {
|
||||
|
||||
/**
|
||||
* Used to detect `data` property values to be HTML-escaped.
|
||||
*
|
||||
* @memberOf _.templateSettings
|
||||
* @type RegExp
|
||||
*/
|
||||
'escape': reEscape,
|
||||
|
||||
/**
|
||||
* Used to detect code to be evaluated.
|
||||
*
|
||||
* @memberOf _.templateSettings
|
||||
* @type RegExp
|
||||
*/
|
||||
'evaluate': reEvaluate,
|
||||
|
||||
/**
|
||||
* Used to detect `data` property values to inject.
|
||||
*
|
||||
* @memberOf _.templateSettings
|
||||
* @type RegExp
|
||||
*/
|
||||
'interpolate': reInterpolate,
|
||||
|
||||
/**
|
||||
* Used to reference the data object in the template text.
|
||||
*
|
||||
* @memberOf _.templateSettings
|
||||
* @type string
|
||||
*/
|
||||
'variable': '',
|
||||
|
||||
/**
|
||||
* Used to import variables into the compiled template.
|
||||
*
|
||||
* @memberOf _.templateSettings
|
||||
* @type Object
|
||||
*/
|
||||
'imports': {
|
||||
|
||||
/**
|
||||
* A reference to the `lodash` function.
|
||||
*
|
||||
* @memberOf _.templateSettings.imports
|
||||
* @type Function
|
||||
*/
|
||||
'_': { 'escape': escape }
|
||||
}
|
||||
};
|
||||
|
||||
module.exports = templateSettings;
|
42
react-app/node_modules/lodash/string/trim.js
generated
vendored
Normal file
42
react-app/node_modules/lodash/string/trim.js
generated
vendored
Normal file
@@ -0,0 +1,42 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
charsLeftIndex = require('../internal/charsLeftIndex'),
|
||||
charsRightIndex = require('../internal/charsRightIndex'),
|
||||
isIterateeCall = require('../internal/isIterateeCall'),
|
||||
trimmedLeftIndex = require('../internal/trimmedLeftIndex'),
|
||||
trimmedRightIndex = require('../internal/trimmedRightIndex');
|
||||
|
||||
/**
|
||||
* Removes leading and trailing whitespace or specified characters from `string`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to trim.
|
||||
* @param {string} [chars=whitespace] The characters to trim.
|
||||
* @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
|
||||
* @returns {string} Returns the trimmed string.
|
||||
* @example
|
||||
*
|
||||
* _.trim(' abc ');
|
||||
* // => 'abc'
|
||||
*
|
||||
* _.trim('-_-abc-_-', '_-');
|
||||
* // => 'abc'
|
||||
*
|
||||
* _.map([' foo ', ' bar '], _.trim);
|
||||
* // => ['foo', 'bar']
|
||||
*/
|
||||
function trim(string, chars, guard) {
|
||||
var value = string;
|
||||
string = baseToString(string);
|
||||
if (!string) {
|
||||
return string;
|
||||
}
|
||||
if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
|
||||
return string.slice(trimmedLeftIndex(string), trimmedRightIndex(string) + 1);
|
||||
}
|
||||
chars = (chars + '');
|
||||
return string.slice(charsLeftIndex(string, chars), charsRightIndex(string, chars) + 1);
|
||||
}
|
||||
|
||||
module.exports = trim;
|
36
react-app/node_modules/lodash/string/trimLeft.js
generated
vendored
Normal file
36
react-app/node_modules/lodash/string/trimLeft.js
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
charsLeftIndex = require('../internal/charsLeftIndex'),
|
||||
isIterateeCall = require('../internal/isIterateeCall'),
|
||||
trimmedLeftIndex = require('../internal/trimmedLeftIndex');
|
||||
|
||||
/**
|
||||
* Removes leading whitespace or specified characters from `string`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to trim.
|
||||
* @param {string} [chars=whitespace] The characters to trim.
|
||||
* @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
|
||||
* @returns {string} Returns the trimmed string.
|
||||
* @example
|
||||
*
|
||||
* _.trimLeft(' abc ');
|
||||
* // => 'abc '
|
||||
*
|
||||
* _.trimLeft('-_-abc-_-', '_-');
|
||||
* // => 'abc-_-'
|
||||
*/
|
||||
function trimLeft(string, chars, guard) {
|
||||
var value = string;
|
||||
string = baseToString(string);
|
||||
if (!string) {
|
||||
return string;
|
||||
}
|
||||
if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
|
||||
return string.slice(trimmedLeftIndex(string));
|
||||
}
|
||||
return string.slice(charsLeftIndex(string, (chars + '')));
|
||||
}
|
||||
|
||||
module.exports = trimLeft;
|
36
react-app/node_modules/lodash/string/trimRight.js
generated
vendored
Normal file
36
react-app/node_modules/lodash/string/trimRight.js
generated
vendored
Normal file
@@ -0,0 +1,36 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
charsRightIndex = require('../internal/charsRightIndex'),
|
||||
isIterateeCall = require('../internal/isIterateeCall'),
|
||||
trimmedRightIndex = require('../internal/trimmedRightIndex');
|
||||
|
||||
/**
|
||||
* Removes trailing whitespace or specified characters from `string`.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to trim.
|
||||
* @param {string} [chars=whitespace] The characters to trim.
|
||||
* @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
|
||||
* @returns {string} Returns the trimmed string.
|
||||
* @example
|
||||
*
|
||||
* _.trimRight(' abc ');
|
||||
* // => ' abc'
|
||||
*
|
||||
* _.trimRight('-_-abc-_-', '_-');
|
||||
* // => '-_-abc'
|
||||
*/
|
||||
function trimRight(string, chars, guard) {
|
||||
var value = string;
|
||||
string = baseToString(string);
|
||||
if (!string) {
|
||||
return string;
|
||||
}
|
||||
if (guard ? isIterateeCall(value, chars, guard) : chars == null) {
|
||||
return string.slice(0, trimmedRightIndex(string) + 1);
|
||||
}
|
||||
return string.slice(0, charsRightIndex(string, (chars + '')) + 1);
|
||||
}
|
||||
|
||||
module.exports = trimRight;
|
105
react-app/node_modules/lodash/string/trunc.js
generated
vendored
Normal file
105
react-app/node_modules/lodash/string/trunc.js
generated
vendored
Normal file
@@ -0,0 +1,105 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
isIterateeCall = require('../internal/isIterateeCall'),
|
||||
isObject = require('../lang/isObject'),
|
||||
isRegExp = require('../lang/isRegExp');
|
||||
|
||||
/** Used as default options for `_.trunc`. */
|
||||
var DEFAULT_TRUNC_LENGTH = 30,
|
||||
DEFAULT_TRUNC_OMISSION = '...';
|
||||
|
||||
/** Used to match `RegExp` flags from their coerced string values. */
|
||||
var reFlags = /\w*$/;
|
||||
|
||||
/**
|
||||
* Truncates `string` if it's longer than the given maximum string length.
|
||||
* The last characters of the truncated string are replaced with the omission
|
||||
* string which defaults to "...".
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to truncate.
|
||||
* @param {Object|number} [options] The options object or maximum string length.
|
||||
* @param {number} [options.length=30] The maximum string length.
|
||||
* @param {string} [options.omission='...'] The string to indicate text is omitted.
|
||||
* @param {RegExp|string} [options.separator] The separator pattern to truncate to.
|
||||
* @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
|
||||
* @returns {string} Returns the truncated string.
|
||||
* @example
|
||||
*
|
||||
* _.trunc('hi-diddly-ho there, neighborino');
|
||||
* // => 'hi-diddly-ho there, neighbo...'
|
||||
*
|
||||
* _.trunc('hi-diddly-ho there, neighborino', 24);
|
||||
* // => 'hi-diddly-ho there, n...'
|
||||
*
|
||||
* _.trunc('hi-diddly-ho there, neighborino', {
|
||||
* 'length': 24,
|
||||
* 'separator': ' '
|
||||
* });
|
||||
* // => 'hi-diddly-ho there,...'
|
||||
*
|
||||
* _.trunc('hi-diddly-ho there, neighborino', {
|
||||
* 'length': 24,
|
||||
* 'separator': /,? +/
|
||||
* });
|
||||
* // => 'hi-diddly-ho there...'
|
||||
*
|
||||
* _.trunc('hi-diddly-ho there, neighborino', {
|
||||
* 'omission': ' [...]'
|
||||
* });
|
||||
* // => 'hi-diddly-ho there, neig [...]'
|
||||
*/
|
||||
function trunc(string, options, guard) {
|
||||
if (guard && isIterateeCall(string, options, guard)) {
|
||||
options = undefined;
|
||||
}
|
||||
var length = DEFAULT_TRUNC_LENGTH,
|
||||
omission = DEFAULT_TRUNC_OMISSION;
|
||||
|
||||
if (options != null) {
|
||||
if (isObject(options)) {
|
||||
var separator = 'separator' in options ? options.separator : separator;
|
||||
length = 'length' in options ? (+options.length || 0) : length;
|
||||
omission = 'omission' in options ? baseToString(options.omission) : omission;
|
||||
} else {
|
||||
length = +options || 0;
|
||||
}
|
||||
}
|
||||
string = baseToString(string);
|
||||
if (length >= string.length) {
|
||||
return string;
|
||||
}
|
||||
var end = length - omission.length;
|
||||
if (end < 1) {
|
||||
return omission;
|
||||
}
|
||||
var result = string.slice(0, end);
|
||||
if (separator == null) {
|
||||
return result + omission;
|
||||
}
|
||||
if (isRegExp(separator)) {
|
||||
if (string.slice(end).search(separator)) {
|
||||
var match,
|
||||
newEnd,
|
||||
substring = string.slice(0, end);
|
||||
|
||||
if (!separator.global) {
|
||||
separator = RegExp(separator.source, (reFlags.exec(separator) || '') + 'g');
|
||||
}
|
||||
separator.lastIndex = 0;
|
||||
while ((match = separator.exec(substring))) {
|
||||
newEnd = match.index;
|
||||
}
|
||||
result = result.slice(0, newEnd == null ? end : newEnd);
|
||||
}
|
||||
} else if (string.indexOf(separator, end) != end) {
|
||||
var index = result.lastIndexOf(separator);
|
||||
if (index > -1) {
|
||||
result = result.slice(0, index);
|
||||
}
|
||||
}
|
||||
return result + omission;
|
||||
}
|
||||
|
||||
module.exports = trunc;
|
33
react-app/node_modules/lodash/string/unescape.js
generated
vendored
Normal file
33
react-app/node_modules/lodash/string/unescape.js
generated
vendored
Normal file
@@ -0,0 +1,33 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
unescapeHtmlChar = require('../internal/unescapeHtmlChar');
|
||||
|
||||
/** Used to match HTML entities and HTML characters. */
|
||||
var reEscapedHtml = /&(?:amp|lt|gt|quot|#39|#96);/g,
|
||||
reHasEscapedHtml = RegExp(reEscapedHtml.source);
|
||||
|
||||
/**
|
||||
* The inverse of `_.escape`; this method converts the HTML entities
|
||||
* `&`, `<`, `>`, `"`, `'`, and ``` in `string` to their
|
||||
* corresponding characters.
|
||||
*
|
||||
* **Note:** No other HTML entities are unescaped. To unescape additional HTML
|
||||
* entities use a third-party library like [_he_](https://mths.be/he).
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to unescape.
|
||||
* @returns {string} Returns the unescaped string.
|
||||
* @example
|
||||
*
|
||||
* _.unescape('fred, barney, & pebbles');
|
||||
* // => 'fred, barney, & pebbles'
|
||||
*/
|
||||
function unescape(string) {
|
||||
string = baseToString(string);
|
||||
return (string && reHasEscapedHtml.test(string))
|
||||
? string.replace(reEscapedHtml, unescapeHtmlChar)
|
||||
: string;
|
||||
}
|
||||
|
||||
module.exports = unescape;
|
38
react-app/node_modules/lodash/string/words.js
generated
vendored
Normal file
38
react-app/node_modules/lodash/string/words.js
generated
vendored
Normal file
@@ -0,0 +1,38 @@
|
||||
var baseToString = require('../internal/baseToString'),
|
||||
isIterateeCall = require('../internal/isIterateeCall');
|
||||
|
||||
/** Used to match words to create compound words. */
|
||||
var reWords = (function() {
|
||||
var upper = '[A-Z\\xc0-\\xd6\\xd8-\\xde]',
|
||||
lower = '[a-z\\xdf-\\xf6\\xf8-\\xff]+';
|
||||
|
||||
return RegExp(upper + '+(?=' + upper + lower + ')|' + upper + '?' + lower + '|' + upper + '+|[0-9]+', 'g');
|
||||
}());
|
||||
|
||||
/**
|
||||
* Splits `string` into an array of its words.
|
||||
*
|
||||
* @static
|
||||
* @memberOf _
|
||||
* @category String
|
||||
* @param {string} [string=''] The string to inspect.
|
||||
* @param {RegExp|string} [pattern] The pattern to match words.
|
||||
* @param- {Object} [guard] Enables use as a callback for functions like `_.map`.
|
||||
* @returns {Array} Returns the words of `string`.
|
||||
* @example
|
||||
*
|
||||
* _.words('fred, barney, & pebbles');
|
||||
* // => ['fred', 'barney', 'pebbles']
|
||||
*
|
||||
* _.words('fred, barney, & pebbles', /[^, ]+/g);
|
||||
* // => ['fred', 'barney', '&', 'pebbles']
|
||||
*/
|
||||
function words(string, pattern, guard) {
|
||||
if (guard && isIterateeCall(string, pattern, guard)) {
|
||||
pattern = undefined;
|
||||
}
|
||||
string = baseToString(string);
|
||||
return string.match(pattern || reWords) || [];
|
||||
}
|
||||
|
||||
module.exports = words;
|
Reference in New Issue
Block a user