Initial commit: 11ty website with Fire/Frost branding
This commit is contained in:
265
node_modules/nunjucks/src/tests.js
generated
vendored
Normal file
265
node_modules/nunjucks/src/tests.js
generated
vendored
Normal file
@@ -0,0 +1,265 @@
|
||||
'use strict';
|
||||
|
||||
var SafeString = require('./runtime').SafeString;
|
||||
|
||||
/**
|
||||
* Returns `true` if the object is a function, otherwise `false`.
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function callable(value) {
|
||||
return typeof value === 'function';
|
||||
}
|
||||
exports.callable = callable;
|
||||
|
||||
/**
|
||||
* Returns `true` if the object is strictly not `undefined`.
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function defined(value) {
|
||||
return value !== undefined;
|
||||
}
|
||||
exports.defined = defined;
|
||||
|
||||
/**
|
||||
* Returns `true` if the operand (one) is divisble by the test's argument
|
||||
* (two).
|
||||
* @param { number } one
|
||||
* @param { number } two
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function divisibleby(one, two) {
|
||||
return one % two === 0;
|
||||
}
|
||||
exports.divisibleby = divisibleby;
|
||||
|
||||
/**
|
||||
* Returns true if the string has been escaped (i.e., is a SafeString).
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function escaped(value) {
|
||||
return value instanceof SafeString;
|
||||
}
|
||||
exports.escaped = escaped;
|
||||
|
||||
/**
|
||||
* Returns `true` if the arguments are strictly equal.
|
||||
* @param { any } one
|
||||
* @param { any } two
|
||||
*/
|
||||
function equalto(one, two) {
|
||||
return one === two;
|
||||
}
|
||||
exports.equalto = equalto;
|
||||
|
||||
// Aliases
|
||||
exports.eq = exports.equalto;
|
||||
exports.sameas = exports.equalto;
|
||||
|
||||
/**
|
||||
* Returns `true` if the value is evenly divisible by 2.
|
||||
* @param { number } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function even(value) {
|
||||
return value % 2 === 0;
|
||||
}
|
||||
exports.even = even;
|
||||
|
||||
/**
|
||||
* Returns `true` if the value is falsy - if I recall correctly, '', 0, false,
|
||||
* undefined, NaN or null. I don't know if we should stick to the default JS
|
||||
* behavior or attempt to replicate what Python believes should be falsy (i.e.,
|
||||
* empty arrays, empty dicts, not 0...).
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function falsy(value) {
|
||||
return !value;
|
||||
}
|
||||
exports.falsy = falsy;
|
||||
|
||||
/**
|
||||
* Returns `true` if the operand (one) is greater or equal to the test's
|
||||
* argument (two).
|
||||
* @param { number } one
|
||||
* @param { number } two
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function ge(one, two) {
|
||||
return one >= two;
|
||||
}
|
||||
exports.ge = ge;
|
||||
|
||||
/**
|
||||
* Returns `true` if the operand (one) is greater than the test's argument
|
||||
* (two).
|
||||
* @param { number } one
|
||||
* @param { number } two
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function greaterthan(one, two) {
|
||||
return one > two;
|
||||
}
|
||||
exports.greaterthan = greaterthan;
|
||||
|
||||
// alias
|
||||
exports.gt = exports.greaterthan;
|
||||
|
||||
/**
|
||||
* Returns `true` if the operand (one) is less than or equal to the test's
|
||||
* argument (two).
|
||||
* @param { number } one
|
||||
* @param { number } two
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function le(one, two) {
|
||||
return one <= two;
|
||||
}
|
||||
exports.le = le;
|
||||
|
||||
/**
|
||||
* Returns `true` if the operand (one) is less than the test's passed argument
|
||||
* (two).
|
||||
* @param { number } one
|
||||
* @param { number } two
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function lessthan(one, two) {
|
||||
return one < two;
|
||||
}
|
||||
exports.lessthan = lessthan;
|
||||
|
||||
// alias
|
||||
exports.lt = exports.lessthan;
|
||||
|
||||
/**
|
||||
* Returns `true` if the string is lowercased.
|
||||
* @param { string } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function lower(value) {
|
||||
return value.toLowerCase() === value;
|
||||
}
|
||||
exports.lower = lower;
|
||||
|
||||
/**
|
||||
* Returns `true` if the operand (one) is less than or equal to the test's
|
||||
* argument (two).
|
||||
* @param { number } one
|
||||
* @param { number } two
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function ne(one, two) {
|
||||
return one !== two;
|
||||
}
|
||||
exports.ne = ne;
|
||||
|
||||
/**
|
||||
* Returns true if the value is strictly equal to `null`.
|
||||
* @param { any }
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function nullTest(value) {
|
||||
return value === null;
|
||||
}
|
||||
exports.null = nullTest;
|
||||
|
||||
/**
|
||||
* Returns true if value is a number.
|
||||
* @param { any }
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function number(value) {
|
||||
return typeof value === 'number';
|
||||
}
|
||||
exports.number = number;
|
||||
|
||||
/**
|
||||
* Returns `true` if the value is *not* evenly divisible by 2.
|
||||
* @param { number } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function odd(value) {
|
||||
return value % 2 === 1;
|
||||
}
|
||||
exports.odd = odd;
|
||||
|
||||
/**
|
||||
* Returns `true` if the value is a string, `false` if not.
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function string(value) {
|
||||
return typeof value === 'string';
|
||||
}
|
||||
exports.string = string;
|
||||
|
||||
/**
|
||||
* Returns `true` if the value is not in the list of things considered falsy:
|
||||
* '', null, undefined, 0, NaN and false.
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function truthy(value) {
|
||||
return !!value;
|
||||
}
|
||||
exports.truthy = truthy;
|
||||
|
||||
/**
|
||||
* Returns `true` if the value is undefined.
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function undefinedTest(value) {
|
||||
return value === undefined;
|
||||
}
|
||||
exports.undefined = undefinedTest;
|
||||
|
||||
/**
|
||||
* Returns `true` if the string is uppercased.
|
||||
* @param { string } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function upper(value) {
|
||||
return value.toUpperCase() === value;
|
||||
}
|
||||
exports.upper = upper;
|
||||
|
||||
/**
|
||||
* If ES6 features are available, returns `true` if the value implements the
|
||||
* `Symbol.iterator` method. If not, it's a string or Array.
|
||||
*
|
||||
* Could potentially cause issues if a browser exists that has Set and Map but
|
||||
* not Symbol.
|
||||
*
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function iterable(value) {
|
||||
if (typeof Symbol !== 'undefined') {
|
||||
return !!value[Symbol.iterator];
|
||||
} else {
|
||||
return Array.isArray(value) || typeof value === 'string';
|
||||
}
|
||||
}
|
||||
exports.iterable = iterable;
|
||||
|
||||
/**
|
||||
* If ES6 features are available, returns `true` if the value is an object hash
|
||||
* or an ES6 Map. Otherwise just return if it's an object hash.
|
||||
* @param { any } value
|
||||
* @returns { boolean }
|
||||
*/
|
||||
function mapping(value) {
|
||||
// only maps and object hashes
|
||||
var bool = value !== null && value !== undefined && typeof value === 'object' && !Array.isArray(value);
|
||||
if (Set) {
|
||||
return bool && !(value instanceof Set);
|
||||
} else {
|
||||
return bool;
|
||||
}
|
||||
}
|
||||
exports.mapping = mapping;
|
||||
Reference in New Issue
Block a user