simpl-schema
Advanced tools
Comparing version 1.5.6 to 1.5.7
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -25,6 +25,10 @@ var _clone = _interopRequireDefault(require("clone")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
@@ -54,3 +58,4 @@ | ||
*/ | ||
function clean(ss, doc, options = {}) { | ||
function clean(ss, doc) { | ||
var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
// By default, doc will be filtered and autoconverted | ||
@@ -60,9 +65,9 @@ options = _objectSpread({ | ||
isUpsert: false | ||
}, ss._cleanOptions, options); // Clone so we do not mutate | ||
}, ss._cleanOptions, {}, options); // Clone so we do not mutate | ||
const cleanDoc = options.mutate ? doc : (0, _clone.default)(doc); | ||
const mongoObject = options.mongoObject || new _mongoObject.default(cleanDoc, ss.blackboxKeys()); // Clean loop | ||
var cleanDoc = options.mutate ? doc : (0, _clone["default"])(doc); | ||
var mongoObject = options.mongoObject || new _mongoObject["default"](cleanDoc, ss.blackboxKeys()); // Clean loop | ||
if (options.filter || options.autoConvert || options.removeEmptyStrings || options.trimStrings) { | ||
const removedPositions = []; // For removing now-empty objects after | ||
var removedPositions = []; // For removing now-empty objects after | ||
@@ -73,7 +78,7 @@ mongoObject.forEachNode(function eachNode() { | ||
if (this.operator === '$unset') return; | ||
const gKey = this.genericKey; | ||
var gKey = this.genericKey; | ||
if (!gKey) return; | ||
let val = this.value; | ||
var val = this.value; | ||
if (val === undefined) return; | ||
let p; // Filter out props if necessary | ||
var p; // Filter out props if necessary | ||
@@ -91,3 +96,3 @@ if (options.filter && !ss.allowsKey(gKey) || options.removeNullsFromArrays && this.isArrayItem && val === null) { | ||
if (_SimpleSchema.SimpleSchema.debug) { | ||
console.info(`SimpleSchema.clean: filtered out value that would have affected key "${gKey}", which is not allowed by the schema`); | ||
console.info("SimpleSchema.clean: filtered out value that would have affected key \"".concat(gKey, "\", which is not allowed by the schema")); | ||
} | ||
@@ -98,11 +103,11 @@ | ||
const outerDef = ss.schema(gKey); | ||
const defs = outerDef && outerDef.type.definitions; | ||
const def = defs && defs[0]; // Autoconvert values if requested and if possible | ||
var outerDef = ss.schema(gKey); | ||
var defs = outerDef && outerDef.type.definitions; | ||
var def = defs && defs[0]; // Autoconvert values if requested and if possible | ||
if (options.autoConvert && def) { | ||
const isValidType = defs.some(definition => { | ||
const errors = _typeValidator.default.call({ | ||
var isValidType = defs.some(function (definition) { | ||
var errors = _typeValidator["default"].call({ | ||
valueShouldBeChecked: true, | ||
definition, | ||
definition: definition, | ||
value: val | ||
@@ -115,6 +120,6 @@ }); | ||
if (!isValidType) { | ||
const newVal = (0, _convertToProperType.default)(val, def.type); | ||
var newVal = (0, _convertToProperType["default"])(val, def.type); | ||
if (newVal !== undefined && newVal !== val) { | ||
_SimpleSchema.SimpleSchema.debug && console.info(`SimpleSchema.clean: autoconverted value ${val} from ${typeof val} to ${typeof newVal} for ${gKey}`); | ||
_SimpleSchema.SimpleSchema.debug && console.info("SimpleSchema.clean: autoconverted value ".concat(val, " from ").concat(_typeof(val), " to ").concat(_typeof(newVal), " for ").concat(gKey)); | ||
val = newVal; | ||
@@ -153,9 +158,9 @@ this.updateValue(newVal); | ||
removedPositions.forEach(removedPosition => { | ||
const lastBrace = removedPosition.lastIndexOf('['); | ||
removedPositions.forEach(function (removedPosition) { | ||
var lastBrace = removedPosition.lastIndexOf('['); | ||
if (lastBrace !== -1) { | ||
const removedPositionParent = removedPosition.slice(0, lastBrace); | ||
const value = mongoObject.getValueForPosition(removedPositionParent); | ||
if ((0, _lodash.default)(value)) mongoObject.removeValueForPosition(removedPositionParent); | ||
var removedPositionParent = removedPosition.slice(0, lastBrace); | ||
var value = mongoObject.getValueForPosition(removedPositionParent); | ||
if ((0, _lodash["default"])(value)) mongoObject.removeValueForPosition(removedPositionParent); | ||
} | ||
@@ -167,8 +172,8 @@ }); | ||
options.getAutoValues && (0, _setAutoValues.default)(ss.autoValueFunctions(), mongoObject, options.isModifier, options.isUpsert, options.extendAutoValueContext); // Ensure we don't have any operators set to an empty object | ||
options.getAutoValues && (0, _setAutoValues["default"])(ss.autoValueFunctions(), mongoObject, options.isModifier, options.isUpsert, options.extendAutoValueContext); // Ensure we don't have any operators set to an empty object | ||
// since MongoDB 2.6+ will throw errors. | ||
if (options.isModifier) { | ||
Object.keys(cleanDoc || {}).forEach(op => { | ||
if ((0, _lodash.default)(cleanDoc[op])) delete cleanDoc[op]; | ||
Object.keys(cleanDoc || {}).forEach(function (op) { | ||
if ((0, _lodash["default"])(cleanDoc[op])) delete cleanDoc[op]; | ||
}); | ||
@@ -181,4 +186,4 @@ } | ||
var _default = clean; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -9,6 +9,6 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
/* eslint-disable func-names, prefer-arrow-callback */ | ||
const ss = new _SimpleSchema.SimpleSchema({ | ||
var ss = new _SimpleSchema.SimpleSchema({ | ||
string: { | ||
@@ -49,3 +49,3 @@ type: String, | ||
}, | ||
boolean: { | ||
"boolean": { | ||
type: Boolean, | ||
@@ -103,11 +103,8 @@ optional: true | ||
optional: true, | ||
min() { | ||
min: function min() { | ||
return 10; | ||
}, | ||
max() { | ||
max: function max() { | ||
return 20; | ||
} | ||
}, | ||
@@ -167,11 +164,8 @@ minMaxNumberExclusive: { | ||
optional: true, | ||
min() { | ||
min: function min() { | ||
return new Date(Date.UTC(2013, 0, 1)); | ||
}, | ||
max() { | ||
max: function max() { | ||
return new Date(Date.UTC(2013, 11, 31)); | ||
} | ||
}, | ||
@@ -189,3 +183,3 @@ email: { | ||
customObject: { | ||
type: _Address.default, | ||
type: _Address["default"], | ||
optional: true, | ||
@@ -209,6 +203,6 @@ blackbox: true | ||
ss.clean(given, { | ||
isModifier, | ||
isModifier: isModifier, | ||
mutate: true | ||
}); | ||
(0, _expect.default)(given).toEqual(expected); | ||
(0, _expect["default"])(given).toEqual(expected); | ||
}; | ||
@@ -241,3 +235,3 @@ } | ||
}, {}, false)); | ||
const myObj = new _Address.default('New York', 'NY'); | ||
var myObj = new _Address["default"]('New York', 'NY'); | ||
it('when you clean a good custom object it is still good', getTest({ | ||
@@ -248,3 +242,3 @@ customObject: myObj | ||
}, false)); | ||
const myObj2 = { | ||
var myObj2 = { | ||
foo: 'bar', | ||
@@ -258,3 +252,3 @@ 'foobar.foobar': 10000 | ||
}, false)); | ||
const myObj3 = { | ||
var myObj3 = { | ||
string: 't', | ||
@@ -266,3 +260,3 @@ length: 5 | ||
}, false)); | ||
const myObj4 = { | ||
var myObj4 = { | ||
string: 't', | ||
@@ -570,3 +564,3 @@ length: null | ||
objectArray: { | ||
boolean: true | ||
"boolean": true | ||
} | ||
@@ -577,3 +571,3 @@ } | ||
objectArray: { | ||
boolean: true | ||
"boolean": true | ||
} | ||
@@ -827,3 +821,3 @@ } | ||
function doTest(isModifier, given, expected) { | ||
const cleanObj = ss.clean(given, { | ||
var cleanObj = ss.clean(given, { | ||
mutate: true, | ||
@@ -835,5 +829,5 @@ filter: false, | ||
getAutoValues: false, | ||
isModifier | ||
isModifier: isModifier | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual(expected); | ||
(0, _expect["default"])(cleanObj).toEqual(expected); | ||
} // DOC | ||
@@ -962,3 +956,3 @@ | ||
const cleanObj = ss.clean({ | ||
var cleanObj = ss.clean({ | ||
noTrimString: ' This is a string ' | ||
@@ -973,3 +967,3 @@ }, { | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual({ | ||
(0, _expect["default"])(cleanObj).toEqual({ | ||
noTrimString: ' This is a string ' | ||
@@ -980,3 +974,3 @@ }); | ||
it('does not $unset when the prop is within an object that is already being $set', function () { | ||
const optionalInObject = new _SimpleSchema.SimpleSchema({ | ||
var optionalInObject = new _SimpleSchema.SimpleSchema({ | ||
requiredObj: { | ||
@@ -993,3 +987,3 @@ type: Object | ||
}); | ||
const myObj = { | ||
var myObj = { | ||
$set: { | ||
@@ -1006,3 +1000,3 @@ requiredObj: { | ||
}); | ||
(0, _expect.default)(myObj).toEqual({ | ||
(0, _expect["default"])(myObj).toEqual({ | ||
$set: { | ||
@@ -1016,3 +1010,3 @@ requiredObj: { | ||
it('type convert to array', function () { | ||
const myObj1 = { | ||
var myObj1 = { | ||
allowedStringsArray: 'tuna' | ||
@@ -1023,6 +1017,6 @@ }; | ||
}); | ||
(0, _expect.default)(myObj1).toEqual({ | ||
(0, _expect["default"])(myObj1).toEqual({ | ||
allowedStringsArray: ['tuna'] | ||
}); | ||
const myObj2 = { | ||
var myObj2 = { | ||
$set: { | ||
@@ -1036,3 +1030,3 @@ allowedStringsArray: 'tuna' | ||
}); | ||
(0, _expect.default)(myObj2).toEqual({ | ||
(0, _expect["default"])(myObj2).toEqual({ | ||
$set: { | ||
@@ -1044,3 +1038,3 @@ allowedStringsArray: ['tuna'] | ||
it('multi-dimensional arrays', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
geometry: { | ||
@@ -1063,3 +1057,3 @@ type: Object, | ||
}); | ||
const doc = { | ||
var doc = { | ||
geometry: { | ||
@@ -1069,11 +1063,11 @@ coordinates: [[[30, 50]]] | ||
}; | ||
const expected = JSON.stringify(doc); | ||
(0, _expect.default)(JSON.stringify(schema.clean(doc))).toEqual(expected); | ||
var expected = JSON.stringify(doc); | ||
(0, _expect["default"])(JSON.stringify(schema.clean(doc))).toEqual(expected); | ||
}); | ||
it('removeNullsFromArrays removes nulls from arrays', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
names: Array, | ||
'names.$': String | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
names: [null, 'foo', null] | ||
@@ -1083,3 +1077,3 @@ }, { | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
names: ['foo'] | ||
@@ -1089,3 +1083,3 @@ }); | ||
it('removeNullsFromArrays does not remove non-null objects from arrays', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: Array, | ||
@@ -1095,3 +1089,3 @@ 'a.$': Object, | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
$set: { | ||
@@ -1106,3 +1100,3 @@ a: [{ | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
$set: { | ||
@@ -1116,3 +1110,3 @@ a: [{ | ||
it('remove object', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
names: { | ||
@@ -1125,3 +1119,3 @@ type: Array | ||
}); | ||
const doc = { | ||
var doc = { | ||
names: [{ | ||
@@ -1134,3 +1128,3 @@ hello: 'world' | ||
}); | ||
(0, _expect.default)(doc).toEqual({ | ||
(0, _expect["default"])(doc).toEqual({ | ||
names: [] | ||
@@ -1141,13 +1135,13 @@ }); | ||
it('should clean sub schemas', function () { | ||
const doubleNestedSchema = new _SimpleSchema.SimpleSchema({ | ||
var doubleNestedSchema = new _SimpleSchema.SimpleSchema({ | ||
integer: _SimpleSchema.SimpleSchema.Integer | ||
}); | ||
const nestedSchema = new _SimpleSchema.SimpleSchema({ | ||
var nestedSchema = new _SimpleSchema.SimpleSchema({ | ||
doubleNested: doubleNestedSchema | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
nested: Array, | ||
'nested.$': nestedSchema | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
nested: [{ | ||
@@ -1159,3 +1153,3 @@ doubleNested: { | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
nested: [{ | ||
@@ -1169,3 +1163,3 @@ doubleNested: { | ||
describe('with SimpleSchema.oneOf(String, Number, Date)', function () { | ||
const oneOfSchema = new _SimpleSchema.SimpleSchema({ | ||
var oneOfSchema = new _SimpleSchema.SimpleSchema({ | ||
field: { | ||
@@ -1181,6 +1175,6 @@ type: _SimpleSchema.SimpleSchema.oneOf(String, Number, Date) | ||
function doTest(given, expected) { | ||
const cleanObj = oneOfSchema.clean(given, { | ||
var cleanObj = oneOfSchema.clean(given, { | ||
mutate: true | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual(expected); | ||
(0, _expect["default"])(cleanObj).toEqual(expected); | ||
} | ||
@@ -1210,3 +1204,3 @@ | ||
it('should convert a Date if no Date in oneOf', function () { | ||
const schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
var schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
field: { | ||
@@ -1216,5 +1210,5 @@ type: _SimpleSchema.SimpleSchema.oneOf(String, Number) | ||
}); | ||
const date = new Date(12345); | ||
const dateStrng = date.toString(); | ||
const cleanObj = schemaNoDate.clean({ | ||
var date = new Date(12345); | ||
var dateStrng = date.toString(); | ||
var cleanObj = schemaNoDate.clean({ | ||
field: date | ||
@@ -1224,3 +1218,3 @@ }, { | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual({ | ||
(0, _expect["default"])(cleanObj).toEqual({ | ||
field: dateStrng | ||
@@ -1230,3 +1224,3 @@ }); | ||
it('should convert a String if no String in oneOf', function () { | ||
const schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
var schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
field: { | ||
@@ -1236,3 +1230,3 @@ type: _SimpleSchema.SimpleSchema.oneOf(Number, Date) | ||
}); | ||
const cleanObj = schemaNoDate.clean({ | ||
var cleanObj = schemaNoDate.clean({ | ||
field: '12345' | ||
@@ -1242,3 +1236,3 @@ }, { | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual({ | ||
(0, _expect["default"])(cleanObj).toEqual({ | ||
field: 12345 | ||
@@ -1248,3 +1242,3 @@ }); | ||
it('should convert a Number if no Number in oneOf', function () { | ||
const schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
var schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
field: { | ||
@@ -1254,3 +1248,3 @@ type: _SimpleSchema.SimpleSchema.oneOf(String, Date) | ||
}); | ||
const cleanObj = schemaNoDate.clean({ | ||
var cleanObj = schemaNoDate.clean({ | ||
field: 12345 | ||
@@ -1260,3 +1254,3 @@ }, { | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual({ | ||
(0, _expect["default"])(cleanObj).toEqual({ | ||
field: '12345' | ||
@@ -1357,3 +1351,3 @@ }); | ||
it('should convert a Date if no Date in oneOf', function () { | ||
const schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
var schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
field: { | ||
@@ -1363,5 +1357,5 @@ type: _SimpleSchema.SimpleSchema.oneOf(String, Number) | ||
}); | ||
const date = new Date(12345); | ||
const dateString = date.toString(); | ||
const cleanObj = schemaNoDate.clean({ | ||
var date = new Date(12345); | ||
var dateString = date.toString(); | ||
var cleanObj = schemaNoDate.clean({ | ||
$set: { | ||
@@ -1373,3 +1367,3 @@ field: date | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual({ | ||
(0, _expect["default"])(cleanObj).toEqual({ | ||
$set: { | ||
@@ -1381,3 +1375,3 @@ field: dateString | ||
it('should convert a String if no String in oneOf', function () { | ||
const schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
var schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
field: { | ||
@@ -1387,3 +1381,3 @@ type: _SimpleSchema.SimpleSchema.oneOf(Number, Date) | ||
}); | ||
const cleanObj = schemaNoDate.clean({ | ||
var cleanObj = schemaNoDate.clean({ | ||
$set: { | ||
@@ -1395,3 +1389,3 @@ field: '12345' | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual({ | ||
(0, _expect["default"])(cleanObj).toEqual({ | ||
$set: { | ||
@@ -1403,3 +1397,3 @@ field: 12345 | ||
it('should convert a Number if no Number in oneOf', function () { | ||
const schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
var schemaNoDate = new _SimpleSchema.SimpleSchema({ | ||
field: { | ||
@@ -1409,3 +1403,3 @@ type: _SimpleSchema.SimpleSchema.oneOf(String, Date) | ||
}); | ||
const cleanObj = schemaNoDate.clean({ | ||
var cleanObj = schemaNoDate.clean({ | ||
$set: { | ||
@@ -1417,3 +1411,3 @@ field: 12345 | ||
}); | ||
(0, _expect.default)(cleanObj).toEqual({ | ||
(0, _expect["default"])(cleanObj).toEqual({ | ||
$set: { | ||
@@ -1420,0 +1414,0 @@ field: '12345' |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -14,3 +14,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('empty', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -23,11 +23,10 @@ type: String, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.key).toBe('bar'); | ||
(0, _expect.default)(this.closestSubschemaFieldName).toBe(null); | ||
(0, _expect.default)(this.isSet).toBe(false); | ||
(0, _expect.default)(this.value).toBe(undefined); | ||
(0, _expect.default)(this.operator).toBe(null); | ||
const foo = this.field('foo'); | ||
(0, _expect.default)(foo).toEqual({ | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.key).toBe('bar'); | ||
(0, _expect["default"])(this.closestSubschemaFieldName).toBe(null); | ||
(0, _expect["default"])(this.isSet).toBe(false); | ||
(0, _expect["default"])(this.value).toBe(undefined); | ||
(0, _expect["default"])(this.operator).toBe(null); | ||
var foo = this.field('foo'); | ||
(0, _expect["default"])(foo).toEqual({ | ||
isSet: false, | ||
@@ -37,4 +36,4 @@ operator: null, | ||
}); | ||
const fooSibling = this.siblingField('foo'); | ||
(0, _expect.default)(fooSibling).toEqual({ | ||
var fooSibling = this.siblingField('foo'); | ||
(0, _expect["default"])(fooSibling).toEqual({ | ||
isSet: false, | ||
@@ -44,4 +43,4 @@ operator: null, | ||
}); | ||
const fooParent = this.parentField(); | ||
(0, _expect.default)(fooParent).toEqual({ | ||
var fooParent = this.parentField(); | ||
(0, _expect["default"])(fooParent).toEqual({ | ||
isSet: false, | ||
@@ -52,3 +51,2 @@ operator: null, | ||
} | ||
} | ||
@@ -59,3 +57,3 @@ }); | ||
it('normal other key', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -68,9 +66,8 @@ type: String, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.isSet).toBe(false); | ||
(0, _expect.default)(this.value).toBe(undefined); | ||
(0, _expect.default)(this.operator).toBe(null); | ||
const foo = this.field('foo'); | ||
(0, _expect.default)(foo).toEqual({ | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.isSet).toBe(false); | ||
(0, _expect["default"])(this.value).toBe(undefined); | ||
(0, _expect["default"])(this.operator).toBe(null); | ||
var foo = this.field('foo'); | ||
(0, _expect["default"])(foo).toEqual({ | ||
isSet: true, | ||
@@ -80,4 +77,4 @@ operator: null, | ||
}); | ||
const fooSibling = this.siblingField('foo'); | ||
(0, _expect.default)(fooSibling).toEqual({ | ||
var fooSibling = this.siblingField('foo'); | ||
(0, _expect["default"])(fooSibling).toEqual({ | ||
isSet: true, | ||
@@ -87,4 +84,4 @@ operator: null, | ||
}); | ||
const fooParent = this.parentField(); | ||
(0, _expect.default)(fooParent).toEqual({ | ||
var fooParent = this.parentField(); | ||
(0, _expect["default"])(fooParent).toEqual({ | ||
isSet: false, | ||
@@ -95,3 +92,2 @@ operator: null, | ||
} | ||
} | ||
@@ -104,3 +100,3 @@ }); | ||
it('normal self and other key', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -113,9 +109,8 @@ type: String, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.isSet).toBe(true); | ||
(0, _expect.default)(this.value).toBe(true); | ||
(0, _expect.default)(this.operator).toBe(null); | ||
const foo = this.field('foo'); | ||
(0, _expect.default)(foo).toEqual({ | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.isSet).toBe(true); | ||
(0, _expect["default"])(this.value).toBe(true); | ||
(0, _expect["default"])(this.operator).toBe(null); | ||
var foo = this.field('foo'); | ||
(0, _expect["default"])(foo).toEqual({ | ||
isSet: true, | ||
@@ -125,4 +120,4 @@ operator: null, | ||
}); | ||
const fooSibling = this.siblingField('foo'); | ||
(0, _expect.default)(fooSibling).toEqual({ | ||
var fooSibling = this.siblingField('foo'); | ||
(0, _expect["default"])(fooSibling).toEqual({ | ||
isSet: true, | ||
@@ -132,4 +127,4 @@ operator: null, | ||
}); | ||
const fooParent = this.parentField(); | ||
(0, _expect.default)(fooParent).toEqual({ | ||
var fooParent = this.parentField(); | ||
(0, _expect["default"])(fooParent).toEqual({ | ||
isSet: false, | ||
@@ -140,3 +135,2 @@ operator: null, | ||
} | ||
} | ||
@@ -150,3 +144,3 @@ }); | ||
it('parentField', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -159,5 +153,4 @@ type: Object, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.parentField()).toEqual({ | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.parentField()).toEqual({ | ||
isSet: true, | ||
@@ -168,3 +161,2 @@ operator: null, | ||
} | ||
} | ||
@@ -177,15 +169,13 @@ }); | ||
it('closestSubschemaFieldName set', function () { | ||
const schema1 = new _SimpleSchema.SimpleSchema({ | ||
var schema1 = new _SimpleSchema.SimpleSchema({ | ||
dug: { | ||
type: Boolean, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.key).toBe('dig.dug'); | ||
(0, _expect.default)(this.closestSubschemaFieldName).toBe('dig'); | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.key).toBe('dig.dug'); | ||
(0, _expect["default"])(this.closestSubschemaFieldName).toBe('dig'); | ||
} | ||
} | ||
}); | ||
const schema2 = new _SimpleSchema.SimpleSchema({ | ||
var schema2 = new _SimpleSchema.SimpleSchema({ | ||
dig: { | ||
@@ -201,3 +191,3 @@ type: schema1, | ||
it('normal self and no other key with unset', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -210,9 +200,8 @@ type: String, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.isSet).toBe(true); | ||
(0, _expect.default)(this.value).toBe(false); | ||
(0, _expect.default)(this.operator).toBe(null); | ||
const foo = this.field('foo'); | ||
(0, _expect.default)(foo).toEqual({ | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.isSet).toBe(true); | ||
(0, _expect["default"])(this.value).toBe(false); | ||
(0, _expect["default"])(this.operator).toBe(null); | ||
var foo = this.field('foo'); | ||
(0, _expect["default"])(foo).toEqual({ | ||
isSet: false, | ||
@@ -222,4 +211,4 @@ operator: null, | ||
}); | ||
const fooSibling = this.siblingField('foo'); | ||
(0, _expect.default)(fooSibling).toEqual({ | ||
var fooSibling = this.siblingField('foo'); | ||
(0, _expect["default"])(fooSibling).toEqual({ | ||
isSet: false, | ||
@@ -229,4 +218,4 @@ operator: null, | ||
}); | ||
const fooParent = this.parentField(); | ||
(0, _expect.default)(fooParent).toEqual({ | ||
var fooParent = this.parentField(); | ||
(0, _expect["default"])(fooParent).toEqual({ | ||
isSet: false, | ||
@@ -238,12 +227,11 @@ operator: null, | ||
} | ||
} | ||
}); | ||
const doc = { | ||
var doc = { | ||
bar: false | ||
}; | ||
(0, _expect.default)(schema.clean(doc)).toEqual({}); | ||
(0, _expect["default"])(schema.clean(doc)).toEqual({}); | ||
}); | ||
it('$set self and no other key', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -256,9 +244,8 @@ type: String, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.isSet).toBe(true); | ||
(0, _expect.default)(this.value).toBe(false); | ||
(0, _expect.default)(this.operator).toBe('$set'); | ||
const foo = this.field('foo'); | ||
(0, _expect.default)(foo).toEqual({ | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.isSet).toBe(true); | ||
(0, _expect["default"])(this.value).toBe(false); | ||
(0, _expect["default"])(this.operator).toBe('$set'); | ||
var foo = this.field('foo'); | ||
(0, _expect["default"])(foo).toEqual({ | ||
isSet: false, | ||
@@ -268,4 +255,4 @@ operator: null, | ||
}); | ||
const fooSibling = this.siblingField('foo'); | ||
(0, _expect.default)(fooSibling).toEqual({ | ||
var fooSibling = this.siblingField('foo'); | ||
(0, _expect["default"])(fooSibling).toEqual({ | ||
isSet: false, | ||
@@ -275,4 +262,4 @@ operator: null, | ||
}); | ||
const fooParent = this.parentField(); | ||
(0, _expect.default)(fooParent).toEqual({ | ||
var fooParent = this.parentField(); | ||
(0, _expect["default"])(fooParent).toEqual({ | ||
isSet: false, | ||
@@ -283,6 +270,5 @@ operator: null, | ||
} | ||
} | ||
}); | ||
const doc = { | ||
var doc = { | ||
$set: { | ||
@@ -293,3 +279,3 @@ bar: false | ||
schema.clean(doc); | ||
(0, _expect.default)(doc).toEqual({ | ||
(0, _expect["default"])(doc).toEqual({ | ||
$set: { | ||
@@ -301,3 +287,3 @@ bar: false | ||
it('$set self and another key and change self', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -310,9 +296,8 @@ type: String, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.isSet).toBe(true); | ||
(0, _expect.default)(this.value).toBe(false); | ||
(0, _expect.default)(this.operator).toBe('$set'); | ||
const foo = this.field('foo'); | ||
(0, _expect.default)(foo).toEqual({ | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.isSet).toBe(true); | ||
(0, _expect["default"])(this.value).toBe(false); | ||
(0, _expect["default"])(this.operator).toBe('$set'); | ||
var foo = this.field('foo'); | ||
(0, _expect["default"])(foo).toEqual({ | ||
isSet: true, | ||
@@ -322,4 +307,4 @@ operator: '$set', | ||
}); | ||
const fooSibling = this.siblingField('foo'); | ||
(0, _expect.default)(fooSibling).toEqual({ | ||
var fooSibling = this.siblingField('foo'); | ||
(0, _expect["default"])(fooSibling).toEqual({ | ||
isSet: true, | ||
@@ -329,4 +314,4 @@ operator: '$set', | ||
}); | ||
const fooParent = this.parentField(); | ||
(0, _expect.default)(fooParent).toEqual({ | ||
var fooParent = this.parentField(); | ||
(0, _expect["default"])(fooParent).toEqual({ | ||
isSet: false, | ||
@@ -338,6 +323,5 @@ operator: null, | ||
} | ||
} | ||
}); | ||
const doc = { | ||
var doc = { | ||
$set: { | ||
@@ -348,3 +332,3 @@ foo: 'clown', | ||
}; | ||
(0, _expect.default)(schema.clean(doc)).toEqual({ | ||
(0, _expect["default"])(schema.clean(doc)).toEqual({ | ||
$set: { | ||
@@ -357,3 +341,3 @@ foo: 'clown', | ||
it('adds $set when missing', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -366,9 +350,8 @@ type: String, | ||
optional: true, | ||
autoValue() { | ||
(0, _expect.default)(this.isSet).toBe(false); | ||
(0, _expect.default)(this.value).toBe(undefined); | ||
(0, _expect.default)(this.operator).toBe('$set'); | ||
const foo = this.field('foo'); | ||
(0, _expect.default)(foo).toEqual({ | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.isSet).toBe(false); | ||
(0, _expect["default"])(this.value).toBe(undefined); | ||
(0, _expect["default"])(this.operator).toBe('$set'); | ||
var foo = this.field('foo'); | ||
(0, _expect["default"])(foo).toEqual({ | ||
isSet: false, | ||
@@ -378,4 +361,4 @@ operator: null, | ||
}); | ||
const fooSibling = this.siblingField('foo'); | ||
(0, _expect.default)(fooSibling).toEqual({ | ||
var fooSibling = this.siblingField('foo'); | ||
(0, _expect["default"])(fooSibling).toEqual({ | ||
isSet: false, | ||
@@ -385,4 +368,4 @@ operator: null, | ||
}); | ||
const fooParent = this.parentField(); | ||
(0, _expect.default)(fooParent).toEqual({ | ||
var fooParent = this.parentField(); | ||
(0, _expect["default"])(fooParent).toEqual({ | ||
isSet: false, | ||
@@ -396,6 +379,5 @@ operator: null, | ||
} | ||
} | ||
}); | ||
(0, _expect.default)(schema.clean({}, { | ||
(0, _expect["default"])(schema.clean({}, { | ||
isModifier: true | ||
@@ -410,3 +392,3 @@ })).toEqual({ | ||
it('content autoValues', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
content: { | ||
@@ -419,6 +401,5 @@ type: String, | ||
optional: true, | ||
autoValue: function autoValue() { | ||
var content = this.field('content'); | ||
autoValue() { | ||
const content = this.field('content'); | ||
if (content.isSet) { | ||
@@ -440,3 +421,2 @@ if (!this.operator) { | ||
} | ||
}, | ||
@@ -452,6 +432,6 @@ 'updatesHistory.$': { | ||
let result = schema.clean({ | ||
var result = schema.clean({ | ||
content: 'foo' | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
content: 'foo', | ||
@@ -469,3 +449,3 @@ updatesHistory: [{ | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -483,3 +463,3 @@ content: 'foo' | ||
it('array of objects autoValues', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
avArrayOfObjects: { | ||
@@ -497,10 +477,8 @@ type: Array, | ||
type: String, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
return 'bar'; | ||
} | ||
} | ||
}); | ||
let result = schema.clean({ | ||
var result = schema.clean({ | ||
$push: { | ||
@@ -512,3 +490,3 @@ avArrayOfObjects: { | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$push: { | ||
@@ -530,3 +508,3 @@ avArrayOfObjects: { | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -544,8 +522,7 @@ avArrayOfObjects: [{ | ||
it('$each in autoValue pseudo modifier', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
psuedoEach: { | ||
type: Array, | ||
optional: true, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (this.isSet && this.operator === '$set') { | ||
@@ -559,3 +536,2 @@ return { | ||
} | ||
}, | ||
@@ -566,3 +542,3 @@ 'psuedoEach.$': { | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
$set: { | ||
@@ -572,3 +548,3 @@ psuedoEach: ['foo', 'bar'] | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$push: { | ||
@@ -582,3 +558,3 @@ psuedoEach: { | ||
it('simple autoValues', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: { | ||
@@ -589,12 +565,9 @@ type: String | ||
type: _SimpleSchema.SimpleSchema.Integer, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.isSet) return 5; | ||
} | ||
}, | ||
updateCount: { | ||
type: _SimpleSchema.SimpleSchema.Integer, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.operator) return 0; | ||
@@ -605,3 +578,2 @@ return { | ||
} | ||
}, | ||
@@ -611,16 +583,14 @@ firstWord: { | ||
optional: true, | ||
autoValue() { | ||
const content = this.field('content'); | ||
autoValue: function autoValue() { | ||
var content = this.field('content'); | ||
if (content.isSet) return content.value.split(' ')[0]; | ||
this.unset(); | ||
} | ||
} | ||
}); | ||
let result = schema.clean({ | ||
var result = schema.clean({ | ||
name: 'Test', | ||
firstWord: 'Illegal to manually set value' | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
name: 'Test', | ||
@@ -634,3 +604,3 @@ someDefault: 5, | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
name: 'Test', | ||
@@ -646,3 +616,3 @@ someDefault: 20, | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -658,16 +628,14 @@ name: 'Test', | ||
it('objects in arrays', function () { | ||
const subSchema = new _SimpleSchema.SimpleSchema({ | ||
var subSchema = new _SimpleSchema.SimpleSchema({ | ||
value: { | ||
type: String, | ||
autoValue() { | ||
(0, _expect.default)(this.isSet).toBe(true); | ||
(0, _expect.default)(this.operator).toEqual('$set'); | ||
(0, _expect.default)(this.value).toEqual('should be overridden by autovalue'); | ||
autoValue: function autoValue() { | ||
(0, _expect["default"])(this.isSet).toBe(true); | ||
(0, _expect["default"])(this.operator).toEqual('$set'); | ||
(0, _expect["default"])(this.value).toEqual('should be overridden by autovalue'); | ||
return 'autovalue'; | ||
} | ||
} | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
children: { | ||
@@ -680,3 +648,3 @@ type: Array | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
$set: { | ||
@@ -688,15 +656,13 @@ 'children.$.value': 'should be overridden by autovalue' | ||
}); | ||
(0, _expect.default)(result.$set['children.$.value']).toBe('autovalue'); | ||
(0, _expect["default"])(result.$set['children.$.value']).toBe('autovalue'); | ||
}); | ||
it('operator correct for $pull', function () { | ||
let called = false; | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var called = false; | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
type: Array, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
called = true; | ||
(0, _expect.default)(this.operator).toEqual('$pull'); | ||
(0, _expect["default"])(this.operator).toEqual('$pull'); | ||
} | ||
}, | ||
@@ -712,7 +678,7 @@ 'foo.$': { | ||
}); | ||
(0, _expect.default)(called).toBe(true); | ||
(0, _expect["default"])(called).toBe(true); | ||
}); | ||
it('issue 340', function () { | ||
let called = 0; | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var called = 0; | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
field1: { | ||
@@ -723,10 +689,8 @@ type: _SimpleSchema.SimpleSchema.Integer | ||
type: String, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
called++; | ||
(0, _expect.default)(this.field('field1').value).toBe(1); | ||
(0, _expect.default)(this.siblingField('field1').value).toBe(1); | ||
(0, _expect["default"])(this.field('field1').value).toBe(1); | ||
(0, _expect["default"])(this.siblingField('field1').value).toBe(1); | ||
return 'foo'; | ||
} | ||
} | ||
@@ -742,6 +706,6 @@ }); | ||
}); | ||
(0, _expect.default)(called).toBe(2); | ||
(0, _expect["default"])(called).toBe(2); | ||
}); | ||
it('clean options should be merged when extending', function () { | ||
const schema1 = new _SimpleSchema.SimpleSchema({ | ||
var schema1 = new _SimpleSchema.SimpleSchema({ | ||
a: String | ||
@@ -754,5 +718,5 @@ }, { | ||
}); | ||
const schema2 = new _SimpleSchema.SimpleSchema({}); | ||
var schema2 = new _SimpleSchema.SimpleSchema({}); | ||
schema2.extend(schema1); | ||
(0, _expect.default)(schema2.clean({ | ||
(0, _expect["default"])(schema2.clean({ | ||
a: 1 | ||
@@ -764,3 +728,3 @@ })).toEqual({ | ||
it('array items', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
tags: { | ||
@@ -772,19 +736,17 @@ type: Array, | ||
type: String, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (this.isSet) return this.value.toLowerCase(); | ||
} | ||
} | ||
}); | ||
const obj = { | ||
var obj = { | ||
tags: [] | ||
}; | ||
(0, _expect.default)(schema.clean(obj)).toEqual({ | ||
(0, _expect["default"])(schema.clean(obj)).toEqual({ | ||
tags: [] | ||
}); | ||
const obj2 = { | ||
var obj2 = { | ||
tags: ['FOO', 'BAR'] | ||
}; | ||
(0, _expect.default)(schema.clean(obj2)).toEqual({ | ||
(0, _expect["default"])(schema.clean(obj2)).toEqual({ | ||
tags: ['foo', 'bar'] | ||
@@ -794,3 +756,3 @@ }); | ||
it('updates existing objects when deeply nested (plain)', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
nested: Array, | ||
@@ -801,4 +763,3 @@ 'nested.$': Object, | ||
type: _SimpleSchema.SimpleSchema.Integer, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.value) { | ||
@@ -808,6 +769,5 @@ return 5; | ||
} | ||
} | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
nested: [{ | ||
@@ -821,3 +781,3 @@ doubleNested: {} | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
nested: [{ | ||
@@ -835,3 +795,3 @@ doubleNested: { | ||
it('updates existing objects when deeply nested (modifier)', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
nested: Array, | ||
@@ -842,4 +802,3 @@ 'nested.$': Object, | ||
type: _SimpleSchema.SimpleSchema.Integer, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.value) { | ||
@@ -849,6 +808,5 @@ return 5; | ||
} | ||
} | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
$push: { | ||
@@ -860,3 +818,3 @@ nested: { | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
$push: { | ||
@@ -872,3 +830,3 @@ nested: { | ||
it('updates deeply nested with empty $set', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
nested: Array, | ||
@@ -878,4 +836,3 @@ 'nested.$': Object, | ||
type: Object, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.value) { | ||
@@ -885,8 +842,6 @@ return {}; | ||
} | ||
}, | ||
'nested.$.doubleNested.integer': { | ||
type: _SimpleSchema.SimpleSchema.Integer, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.value) { | ||
@@ -896,6 +851,5 @@ return 5; | ||
} | ||
} | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
$set: { | ||
@@ -905,3 +859,3 @@ nested: [{}] | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
$set: { | ||
@@ -917,3 +871,3 @@ nested: [{ | ||
it('updates deeply nested with $set having dotted array key', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
nested: Array, | ||
@@ -924,4 +878,3 @@ 'nested.$': Object, | ||
type: _SimpleSchema.SimpleSchema.Integer, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.value) { | ||
@@ -931,6 +884,5 @@ return 5; | ||
} | ||
} | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
$set: { | ||
@@ -940,3 +892,3 @@ 'nested.0.doubleNested': {} | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
$set: { | ||
@@ -950,7 +902,6 @@ 'nested.0.doubleNested': { | ||
it('should add auto values to sub schemas for plain objects', function () { | ||
const doubleNestedSchema = new _SimpleSchema.SimpleSchema({ | ||
var doubleNestedSchema = new _SimpleSchema.SimpleSchema({ | ||
integer: { | ||
type: _SimpleSchema.SimpleSchema.Integer, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.value) { | ||
@@ -960,13 +911,12 @@ return 5; | ||
} | ||
} | ||
}); | ||
const nestedSchema = new _SimpleSchema.SimpleSchema({ | ||
var nestedSchema = new _SimpleSchema.SimpleSchema({ | ||
doubleNested: doubleNestedSchema | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
nested: Array, | ||
'nested.$': nestedSchema | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
nested: [{ | ||
@@ -980,3 +930,3 @@ doubleNested: {} | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
nested: [{ | ||
@@ -994,7 +944,6 @@ doubleNested: { | ||
it('should add auto values to sub schemas for modifiers objects', function () { | ||
const doubleNestedSchema = new _SimpleSchema.SimpleSchema({ | ||
var doubleNestedSchema = new _SimpleSchema.SimpleSchema({ | ||
integer: { | ||
type: _SimpleSchema.SimpleSchema.Integer, | ||
autoValue() { | ||
autoValue: function autoValue() { | ||
if (!this.value) { | ||
@@ -1004,13 +953,12 @@ return 5; | ||
} | ||
} | ||
}); | ||
const nestedSchema = new _SimpleSchema.SimpleSchema({ | ||
var nestedSchema = new _SimpleSchema.SimpleSchema({ | ||
doubleNested: doubleNestedSchema | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
nested: Array, | ||
'nested.$': nestedSchema | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
$push: { | ||
@@ -1022,3 +970,3 @@ nested: { | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
$push: { | ||
@@ -1034,3 +982,3 @@ nested: { | ||
it('after cleaning with one extended, autoValues do not bleed over', function () { | ||
const schema1 = new _SimpleSchema.SimpleSchema({ | ||
var schema1 = new _SimpleSchema.SimpleSchema({ | ||
n: Number, | ||
@@ -1042,3 +990,3 @@ obj: { | ||
}); | ||
const schema2 = schema1.clone().extend({ | ||
var schema2 = schema1.clone().extend({ | ||
'obj.b': { | ||
@@ -1056,6 +1004,6 @@ type: _SimpleSchema.SimpleSchema.Integer, | ||
(0, _expect.default)(schema1.clean({})).toEqual({ | ||
(0, _expect["default"])(schema1.clean({})).toEqual({ | ||
obj: {} | ||
}); | ||
(0, _expect.default)(schema2.clean({})).toEqual({ | ||
(0, _expect["default"])(schema2.clean({})).toEqual({ | ||
obj: { | ||
@@ -1065,6 +1013,6 @@ b: 1 | ||
}); | ||
(0, _expect.default)(schema1.clean({})).toEqual({ | ||
(0, _expect["default"])(schema1.clean({})).toEqual({ | ||
obj: {} | ||
}); | ||
(0, _expect.default)(schema2.clean({})).toEqual({ | ||
(0, _expect["default"])(schema2.clean({})).toEqual({ | ||
obj: { | ||
@@ -1071,0 +1019,0 @@ b: 1 |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -15,10 +15,20 @@ var _clone = _interopRequireDefault(require("clone")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
function getFieldInfo(mongoObject, key) { | ||
const keyInfo = mongoObject.getInfoForKey(key) || {}; | ||
var keyInfo = mongoObject.getInfoForKey(key) || {}; | ||
return { | ||
@@ -31,4 +41,8 @@ isSet: keyInfo.value !== undefined, | ||
class AutoValueRunner { | ||
constructor(options) { | ||
var AutoValueRunner = | ||
/*#__PURE__*/ | ||
function () { | ||
function AutoValueRunner(options) { | ||
_classCallCheck(this, AutoValueRunner); | ||
this.options = options; | ||
@@ -38,100 +52,98 @@ this.doneKeys = []; | ||
runForPosition({ | ||
key: affectedKey, | ||
operator, | ||
position, | ||
value | ||
}) { | ||
const { | ||
closestSubschemaFieldName, | ||
extendedAutoValueContext, | ||
func, | ||
isModifier, | ||
isUpsert, | ||
mongoObject | ||
} = this.options; // If already called for this key, skip it | ||
_createClass(AutoValueRunner, [{ | ||
key: "runForPosition", | ||
value: function runForPosition(_ref) { | ||
var affectedKey = _ref.key, | ||
operator = _ref.operator, | ||
position = _ref.position, | ||
value = _ref.value; | ||
var _this$options = this.options, | ||
closestSubschemaFieldName = _this$options.closestSubschemaFieldName, | ||
extendedAutoValueContext = _this$options.extendedAutoValueContext, | ||
func = _this$options.func, | ||
isModifier = _this$options.isModifier, | ||
isUpsert = _this$options.isUpsert, | ||
mongoObject = _this$options.mongoObject; // If already called for this key, skip it | ||
if ((0, _lodash.default)(this.doneKeys, affectedKey)) return; | ||
const fieldParentName = (0, _utility.getParentOfKey)(affectedKey, true); | ||
const parentFieldInfo = getFieldInfo(mongoObject, fieldParentName.slice(0, -1)); | ||
let doUnset = false; | ||
if ((0, _lodash["default"])(this.doneKeys, affectedKey)) return; | ||
var fieldParentName = (0, _utility.getParentOfKey)(affectedKey, true); | ||
var parentFieldInfo = getFieldInfo(mongoObject, fieldParentName.slice(0, -1)); | ||
var doUnset = false; | ||
if (Array.isArray(parentFieldInfo.value)) { | ||
if (isNaN(affectedKey.split('.').slice(-1).pop())) { | ||
// parent is an array, but the key to be set is not an integer (see issue #80) | ||
return; | ||
if (Array.isArray(parentFieldInfo.value)) { | ||
if (isNaN(affectedKey.split('.').slice(-1).pop())) { | ||
// parent is an array, but the key to be set is not an integer (see issue #80) | ||
return; | ||
} | ||
} | ||
} | ||
const autoValue = func.call(_objectSpread({ | ||
closestSubschemaFieldName: closestSubschemaFieldName.length ? closestSubschemaFieldName : null, | ||
var autoValue = func.call(_objectSpread({ | ||
closestSubschemaFieldName: closestSubschemaFieldName.length ? closestSubschemaFieldName : null, | ||
field: function field(fName) { | ||
return getFieldInfo(mongoObject, closestSubschemaFieldName + fName); | ||
}, | ||
isModifier: isModifier, | ||
isUpsert: isUpsert, | ||
isSet: value !== undefined, | ||
key: affectedKey, | ||
operator: operator, | ||
parentField: function parentField() { | ||
return parentFieldInfo; | ||
}, | ||
siblingField: function siblingField(fName) { | ||
return getFieldInfo(mongoObject, fieldParentName + fName); | ||
}, | ||
unset: function unset() { | ||
doUnset = true; | ||
}, | ||
value: value | ||
}, extendedAutoValueContext || {}), mongoObject.getObject()); // Update tracking of which keys we've run autovalue for | ||
field(fName) { | ||
return getFieldInfo(mongoObject, closestSubschemaFieldName + fName); | ||
}, | ||
this.doneKeys.push(affectedKey); | ||
if (doUnset && position) mongoObject.removeValueForPosition(position); | ||
if (autoValue === undefined) return; // If the user's auto value is of the pseudo-modifier format, parse it | ||
// into operator and value. | ||
isModifier, | ||
isUpsert, | ||
isSet: value !== undefined, | ||
key: affectedKey, | ||
operator, | ||
if (isModifier) { | ||
var op; | ||
var newValue; | ||
parentField() { | ||
return parentFieldInfo; | ||
}, | ||
if (autoValue && _typeof(autoValue) === 'object') { | ||
var avOperator = Object.keys(autoValue).find(function (avProp) { | ||
return avProp.substring(0, 1) === '$'; | ||
}); | ||
siblingField(fName) { | ||
return getFieldInfo(mongoObject, fieldParentName + fName); | ||
}, | ||
if (avOperator) { | ||
op = avOperator; | ||
newValue = autoValue[avOperator]; | ||
} | ||
} // Add $set for updates and upserts if necessary. Keep this | ||
// above the "if (op)" block below since we might change op | ||
// in this line. | ||
unset() { | ||
doUnset = true; | ||
}, | ||
value | ||
}, extendedAutoValueContext || {}), mongoObject.getObject()); // Update tracking of which keys we've run autovalue for | ||
if (!op && position.slice(0, 1) !== '$') { | ||
op = '$set'; | ||
newValue = autoValue; | ||
} | ||
this.doneKeys.push(affectedKey); | ||
if (doUnset && position) mongoObject.removeValueForPosition(position); | ||
if (autoValue === undefined) return; // If the user's auto value is of the pseudo-modifier format, parse it | ||
// into operator and value. | ||
if (isModifier) { | ||
let op; | ||
let newValue; | ||
if (autoValue && typeof autoValue === 'object') { | ||
const avOperator = Object.keys(autoValue).find(avProp => avProp.substring(0, 1) === '$'); | ||
if (avOperator) { | ||
op = avOperator; | ||
newValue = autoValue[avOperator]; | ||
if (op) { | ||
// Update/change value | ||
mongoObject.removeValueForPosition(position); | ||
mongoObject.setValueForPosition("".concat(op, "[").concat(affectedKey, "]"), (0, _clone["default"])(newValue)); | ||
return; | ||
} | ||
} // Add $set for updates and upserts if necessary. Keep this | ||
// above the "if (op)" block below since we might change op | ||
// in this line. | ||
} // Update/change value. Cloning is necessary in case it's an object, because | ||
// if we later set some keys within it, they'd be set on the original object, too. | ||
if (!op && position.slice(0, 1) !== '$') { | ||
op = '$set'; | ||
newValue = autoValue; | ||
} | ||
mongoObject.setValueForPosition(position, (0, _clone["default"])(autoValue)); | ||
} | ||
}]); | ||
if (op) { | ||
// Update/change value | ||
mongoObject.removeValueForPosition(position); | ||
mongoObject.setValueForPosition(`${op}[${affectedKey}]`, (0, _clone.default)(newValue)); | ||
return; | ||
} | ||
} // Update/change value. Cloning is necessary in case it's an object, because | ||
// if we later set some keys within it, they'd be set on the original object, too. | ||
return AutoValueRunner; | ||
}(); | ||
mongoObject.setValueForPosition(position, (0, _clone.default)(autoValue)); | ||
} | ||
} | ||
exports.default = AutoValueRunner; | ||
exports["default"] = AutoValueRunner; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,6 +6,8 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
var _SimpleSchema = require("../SimpleSchema"); | ||
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
/** | ||
@@ -20,3 +22,3 @@ * Converts value to proper type | ||
// Can't and shouldn't convert arrays or objects or null | ||
if (Array.isArray(value) || value && (typeof value === 'function' || typeof value === 'object') && !(value instanceof Date) || value === null) return value; // Convert to String type | ||
if (Array.isArray(value) || value && (typeof value === 'function' || _typeof(value) === 'object') && !(value instanceof Date) || value === null) return value; // Convert to String type | ||
@@ -32,3 +34,3 @@ if (type === String) { | ||
// Try to convert numeric strings to numbers | ||
const numberVal = Number(value); | ||
var numberVal = Number(value); | ||
if (!isNaN(numberVal)) return numberVal; | ||
@@ -47,3 +49,3 @@ } // Leave it; will fail validation | ||
if (typeof value === 'string') { | ||
const parsedDate = Date.parse(value); | ||
var parsedDate = Date.parse(value); | ||
if (isNaN(parsedDate) === false) return new Date(parsedDate); | ||
@@ -73,4 +75,4 @@ } | ||
var _default = convertToProperType; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,25 +13,25 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('convert string `false` to boolean value false', function () { | ||
(0, _expect.default)((0, _convertToProperType.default)('false', Boolean)).toBe(false); | ||
(0, _expect["default"])((0, _convertToProperType["default"])('false', Boolean)).toBe(false); | ||
}); | ||
it('convert string `FALSE` to boolean value false', function () { | ||
(0, _expect.default)((0, _convertToProperType.default)('FALSE', Boolean)).toBe(false); | ||
(0, _expect["default"])((0, _convertToProperType["default"])('FALSE', Boolean)).toBe(false); | ||
}); | ||
it('convert string `true` to boolean value true', function () { | ||
(0, _expect.default)((0, _convertToProperType.default)('true', Boolean)).toBe(true); | ||
(0, _expect["default"])((0, _convertToProperType["default"])('true', Boolean)).toBe(true); | ||
}); | ||
it('convert string `TRUE` to boolean value true', function () { | ||
(0, _expect.default)((0, _convertToProperType.default)('TRUE', Boolean)).toBe(true); | ||
(0, _expect["default"])((0, _convertToProperType["default"])('TRUE', Boolean)).toBe(true); | ||
}); | ||
it('convert number 1 to boolean value true', function () { | ||
(0, _expect.default)((0, _convertToProperType.default)(1, Boolean)).toBe(true); | ||
(0, _expect["default"])((0, _convertToProperType["default"])(1, Boolean)).toBe(true); | ||
}); | ||
it('convert number 0 to boolean value false', function () { | ||
(0, _expect.default)((0, _convertToProperType.default)(0, Boolean)).toBe(false); | ||
(0, _expect["default"])((0, _convertToProperType["default"])(0, Boolean)).toBe(false); | ||
}); | ||
it('don\'t convert NaN to boolean value', function () { | ||
(0, _expect.default)((0, _convertToProperType.default)(Number('text'), Boolean)).toEqual(NaN); | ||
(0, _expect["default"])((0, _convertToProperType["default"])(Number('text'), Boolean)).toEqual(NaN); | ||
}); | ||
it('does not try to convert null', function () { | ||
(0, _expect.default)((0, _convertToProperType.default)(null, Array)).toBe(null); | ||
(0, _expect["default"])((0, _convertToProperType["default"])(null, Array)).toBe(null); | ||
}); | ||
}); |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -14,3 +14,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('adds default value for missing top-level simple prop', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: { | ||
@@ -22,4 +22,4 @@ type: String, | ||
}); | ||
const result = schema.clean({}); | ||
(0, _expect.default)(result).toEqual({ | ||
var result = schema.clean({}); | ||
(0, _expect["default"])(result).toEqual({ | ||
name: 'Test' | ||
@@ -29,3 +29,3 @@ }); | ||
it('does not add default value for already set top-level simple prop', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: { | ||
@@ -37,6 +37,6 @@ type: String, | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
name: 'Other' | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
name: 'Other' | ||
@@ -46,3 +46,3 @@ }); | ||
it('adds default value for missing top-level array prop', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
names: { | ||
@@ -55,4 +55,4 @@ type: Array, | ||
}); | ||
const result = schema.clean({}); | ||
(0, _expect.default)(result).toEqual({ | ||
var result = schema.clean({}); | ||
(0, _expect["default"])(result).toEqual({ | ||
names: [] | ||
@@ -62,3 +62,3 @@ }); | ||
it('does not add default value for top-level array prop that is already set', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
names: { | ||
@@ -71,6 +71,6 @@ type: Array, | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
names: ['foo', 'bar'] | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
names: ['foo', 'bar'] | ||
@@ -80,3 +80,3 @@ }); | ||
it('does not add defaultValue for prop in object, if object is not set', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
@@ -92,7 +92,7 @@ type: Object, | ||
}); | ||
const result = schema.clean({}); | ||
(0, _expect.default)(result).toEqual({}); | ||
var result = schema.clean({}); | ||
(0, _expect["default"])(result).toEqual({}); | ||
}); | ||
it('adds defaultValue for prop in object, if object is set in object being cleaned', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
@@ -108,6 +108,6 @@ type: Object, | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
a: {} | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
a: { | ||
@@ -119,3 +119,3 @@ b: 'Test' | ||
it('adds defaultValue for prop in objects within array, if object is set in object being cleaned', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
b: { | ||
@@ -134,6 +134,6 @@ type: Array, | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
b: [{}, {}] | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
b: [{ | ||
@@ -147,3 +147,3 @@ a: 'Test' | ||
it('does not add defaultValue for prop in objects within array, if the prop is already set in object being cleaned', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
b: { | ||
@@ -162,3 +162,3 @@ type: Array, | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
b: [{ | ||
@@ -168,3 +168,3 @@ a: 'Other' | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
b: [{ | ||
@@ -176,3 +176,3 @@ a: 'Other' | ||
it('adds defaultValue for prop in objects within array, if array and object are set by array defaultValue', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
b: { | ||
@@ -194,4 +194,4 @@ type: Array, | ||
}); | ||
const result = schema.clean({}); | ||
(0, _expect.default)(result).toEqual({ | ||
var result = schema.clean({}); | ||
(0, _expect["default"])(result).toEqual({ | ||
b: [{ | ||
@@ -205,3 +205,3 @@ a: 'Test' | ||
it('adds defaultValue for prop in object, if object is set by another defaultValue', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
@@ -218,4 +218,4 @@ type: Object, | ||
}); | ||
const result = schema.clean({}); | ||
(0, _expect.default)(result).toEqual({ | ||
var result = schema.clean({}); | ||
(0, _expect["default"])(result).toEqual({ | ||
a: { | ||
@@ -227,3 +227,3 @@ b: 'Test' | ||
it('does not add defaultValue for prop in object, if prop already has value in object being cleaned', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
@@ -239,3 +239,3 @@ type: Object, | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
a: { | ||
@@ -245,3 +245,3 @@ b: 'Other' | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
a: { | ||
@@ -255,3 +255,3 @@ b: 'Other' | ||
it('adds to $set object', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
obj: { | ||
@@ -270,3 +270,3 @@ type: Object | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
$set: { | ||
@@ -278,3 +278,3 @@ obj: { | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -289,3 +289,3 @@ obj: { | ||
it('adds to $set object with dotted set prop', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
obj: { | ||
@@ -309,3 +309,3 @@ type: Object | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
$set: { | ||
@@ -318,3 +318,3 @@ 'obj.a': {} | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -331,3 +331,3 @@ 'obj.a': { | ||
it('adds to $set object with dotted set prop and array', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
obj: { | ||
@@ -351,3 +351,3 @@ type: Object | ||
}); | ||
let result = schema.clean({ | ||
var result = schema.clean({ | ||
$set: { | ||
@@ -357,3 +357,3 @@ 'obj.a': {} | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -370,3 +370,3 @@ 'obj.a': {} | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -385,3 +385,3 @@ 'obj.a': { | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -399,3 +399,3 @@ 'obj.a': { | ||
it('adds a $setOnInsert if $setting a sibling prop', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
obj: { | ||
@@ -419,3 +419,3 @@ type: Object | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
$set: { | ||
@@ -429,3 +429,3 @@ 'obj.a': 100, | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -441,3 +441,3 @@ 'obj.a': 100, | ||
it('adds a $setOnInsert if $setting a sibling child prop', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
obj: { | ||
@@ -471,3 +471,3 @@ type: Object | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
$set: { | ||
@@ -480,3 +480,3 @@ 'obj.a.one': 100 | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -493,3 +493,3 @@ 'obj.a.one': 100 | ||
it('adds $setOnInsert for top-level prop', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -507,3 +507,3 @@ type: String, | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
$addToSet: { | ||
@@ -516,3 +516,3 @@ names: 'new value' | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$addToSet: { | ||
@@ -527,3 +527,3 @@ names: 'new value' | ||
it('adds default values to object being $pushed into array', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
things: Array, | ||
@@ -540,3 +540,3 @@ 'things.$': Object, | ||
}); | ||
const result = schema.clean({ | ||
var result = schema.clean({ | ||
$push: { | ||
@@ -546,3 +546,3 @@ things: {} | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$push: { | ||
@@ -558,3 +558,3 @@ things: { | ||
it('nested defaultValue for prop in obj in array', function () { | ||
const listItemSchema = new _SimpleSchema.SimpleSchema({ | ||
var listItemSchema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -566,3 +566,3 @@ type: String, | ||
}); | ||
const detailsSchema = new _SimpleSchema.SimpleSchema({ | ||
var detailsSchema = new _SimpleSchema.SimpleSchema({ | ||
list: { | ||
@@ -574,3 +574,3 @@ type: Array, | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: String, | ||
@@ -582,7 +582,7 @@ details: { | ||
}); | ||
const cleanedObject = schema.clean({ | ||
var cleanedObject = schema.clean({ | ||
name: 'NAME', | ||
details: {} | ||
}); | ||
(0, _expect.default)(cleanedObject).toEqual({ | ||
(0, _expect["default"])(cleanedObject).toEqual({ | ||
name: 'NAME', | ||
@@ -593,3 +593,3 @@ details: {} | ||
it('issue 426', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: { | ||
@@ -609,6 +609,6 @@ type: String | ||
}); | ||
const doc = { | ||
var doc = { | ||
name: 'Test' | ||
}; | ||
(0, _expect.default)(schema.clean(doc)).toEqual({ | ||
(0, _expect["default"])(schema.clean(doc)).toEqual({ | ||
name: 'Test', | ||
@@ -618,4 +618,4 @@ images: [] | ||
}); | ||
it('complex with .$. modifier', () => { | ||
const fooSchema = new _SimpleSchema.SimpleSchema({ | ||
it('complex with .$. modifier', function () { | ||
var fooSchema = new _SimpleSchema.SimpleSchema({ | ||
bar: { | ||
@@ -627,3 +627,3 @@ type: String, | ||
}); | ||
const itemSchema = new _SimpleSchema.SimpleSchema({ | ||
var itemSchema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -634,3 +634,3 @@ type: fooSchema, | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
items: { | ||
@@ -644,3 +644,3 @@ type: Array, | ||
}); | ||
let result = schema.clean({ | ||
var result = schema.clean({ | ||
$set: { | ||
@@ -652,3 +652,3 @@ 'items.$.foo': { | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$set: { | ||
@@ -669,3 +669,3 @@ 'items.$.foo': { | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
$addToSet: { | ||
@@ -681,3 +681,3 @@ items: { | ||
it('$setOnInsert are correctly added with path notation', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
settings: { | ||
@@ -719,3 +719,3 @@ type: Object, | ||
}); | ||
(0, _expect.default)(schema.clean({ | ||
(0, _expect["default"])(schema.clean({ | ||
$set: { | ||
@@ -750,3 +750,3 @@ 'settings.obj.bool': true | ||
// set on insert | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
settings: { | ||
@@ -787,3 +787,3 @@ type: Object, | ||
}); | ||
(0, _expect.default)(schema.clean({ | ||
(0, _expect["default"])(schema.clean({ | ||
$set: { | ||
@@ -812,3 +812,3 @@ 'settings.obj.bool': true | ||
it('default value for sibling field added by $addToSet', function () { | ||
const AddressItem = new _SimpleSchema.SimpleSchema({ | ||
var AddressItem = new _SimpleSchema.SimpleSchema({ | ||
fullName: String, | ||
@@ -818,3 +818,3 @@ address1: String, | ||
}); | ||
const Profile = new _SimpleSchema.SimpleSchema({ | ||
var Profile = new _SimpleSchema.SimpleSchema({ | ||
addressBook: { | ||
@@ -832,3 +832,3 @@ type: Array, | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
profile: { | ||
@@ -839,3 +839,3 @@ type: Profile, | ||
}); | ||
const accountsUpdateQuery = { | ||
var accountsUpdateQuery = { | ||
$addToSet: { | ||
@@ -849,7 +849,7 @@ 'profile.addressBook': { | ||
}; | ||
const cleanedModifier = schema.clean(accountsUpdateQuery, { | ||
var cleanedModifier = schema.clean(accountsUpdateQuery, { | ||
isModifier: true, | ||
isUpsert: true | ||
}); | ||
(0, _expect.default)(cleanedModifier).toEqual({ | ||
(0, _expect["default"])(cleanedModifier).toEqual({ | ||
$addToSet: { | ||
@@ -868,3 +868,3 @@ 'profile.addressBook': { | ||
it('does not add $setOnInsert to modifiers normally', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: String, | ||
@@ -876,3 +876,3 @@ isOwner: { | ||
}); | ||
(0, _expect.default)(schema.clean({ | ||
(0, _expect["default"])(schema.clean({ | ||
$set: { | ||
@@ -890,3 +890,3 @@ name: 'Phil' | ||
it('adds $setOnInsert to modifiers when isUpsert it true', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: String, | ||
@@ -898,3 +898,3 @@ isOwner: { | ||
}); | ||
(0, _expect.default)(schema.clean({ | ||
(0, _expect["default"])(schema.clean({ | ||
$set: { | ||
@@ -901,0 +901,0 @@ name: 'Phil' |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = getPositionsForAutoValue; | ||
exports["default"] = getPositionsForAutoValue; | ||
@@ -13,3 +13,3 @@ var _mongoObject = _interopRequireDefault(require("mongo-object")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -41,9 +41,8 @@ /** | ||
*/ | ||
function getPositionsForAutoValue({ | ||
fieldName, | ||
isModifier, | ||
mongoObject | ||
}) { | ||
function getPositionsForAutoValue(_ref) { | ||
var fieldName = _ref.fieldName, | ||
isModifier = _ref.isModifier, | ||
mongoObject = _ref.mongoObject; | ||
// Positions for this field | ||
const positions = mongoObject.getPositionsInfoForGenericKey(fieldName); // If the field is an object and will be created by MongoDB, | ||
var positions = mongoObject.getPositionsInfoForGenericKey(fieldName); // If the field is an object and will be created by MongoDB, | ||
// we don't need (and can't have) a value for it | ||
@@ -62,3 +61,3 @@ | ||
operator: isModifier ? '$set' : null, | ||
position: isModifier ? `$set[${fieldName}]` : fieldName | ||
position: isModifier ? "$set[".concat(fieldName, "]") : fieldName | ||
}); | ||
@@ -68,14 +67,16 @@ return positions; | ||
const parentPath = (0, _utility.getParentOfKey)(fieldName); | ||
const lastPart = (0, _utility.getLastPartOfKey)(fieldName, parentPath); | ||
const lastPartWithBraces = lastPart.replace(/\./g, ']['); | ||
const parentPositions = mongoObject.getPositionsInfoForGenericKey(parentPath); | ||
var parentPath = (0, _utility.getParentOfKey)(fieldName); | ||
var lastPart = (0, _utility.getLastPartOfKey)(fieldName, parentPath); | ||
var lastPartWithBraces = lastPart.replace(/\./g, ']['); | ||
var parentPositions = mongoObject.getPositionsInfoForGenericKey(parentPath); | ||
if (parentPositions.length) { | ||
parentPositions.forEach(info => { | ||
const childPosition = `${info.position}[${lastPartWithBraces}]`; | ||
parentPositions.forEach(function (info) { | ||
var childPosition = "".concat(info.position, "[").concat(lastPartWithBraces, "]"); | ||
if (!positions.find(i => i.position === childPosition)) { | ||
if (!positions.find(function (i) { | ||
return i.position === childPosition; | ||
})) { | ||
positions.push({ | ||
key: `${info.key}.${lastPart}`, | ||
key: "".concat(info.key, ".").concat(lastPart), | ||
value: undefined, | ||
@@ -89,14 +90,12 @@ operator: info.operator, | ||
// positions that will create parentPath | ||
mongoObject.getPositionsThatCreateGenericKey(parentPath).forEach(info => { | ||
const { | ||
operator, | ||
position | ||
} = info; | ||
let wouldBePosition; | ||
mongoObject.getPositionsThatCreateGenericKey(parentPath).forEach(function (info) { | ||
var operator = info.operator, | ||
position = info.position; | ||
var wouldBePosition; | ||
if (operator) { | ||
const next = position.slice(position.indexOf('[') + 1, position.indexOf(']')); | ||
const nextPieces = next.split('.'); | ||
const newPieces = []; | ||
let newKey; | ||
var next = position.slice(position.indexOf('[') + 1, position.indexOf(']')); | ||
var nextPieces = next.split('.'); | ||
var newPieces = []; | ||
var newKey; | ||
@@ -108,13 +107,15 @@ while (nextPieces.length && newKey !== parentPath) { | ||
newKey = `${newKey}.${fieldName.slice(newKey.length + 1)}`; | ||
wouldBePosition = `$set[${newKey}]`; | ||
newKey = "".concat(newKey, ".").concat(fieldName.slice(newKey.length + 1)); | ||
wouldBePosition = "$set[".concat(newKey, "]"); | ||
} else { | ||
const lastPart2 = (0, _utility.getLastPartOfKey)(fieldName, parentPath); | ||
const lastPartWithBraces2 = lastPart2.replace(/\./g, ']['); | ||
wouldBePosition = `${position.slice(0, position.lastIndexOf('['))}[${lastPartWithBraces2}]`; | ||
var lastPart2 = (0, _utility.getLastPartOfKey)(fieldName, parentPath); | ||
var lastPartWithBraces2 = lastPart2.replace(/\./g, ']['); | ||
wouldBePosition = "".concat(position.slice(0, position.lastIndexOf('[')), "[").concat(lastPartWithBraces2, "]"); | ||
} | ||
if (!positions.find(i => i.position === wouldBePosition)) { | ||
if (!positions.find(function (i) { | ||
return i.position === wouldBePosition; | ||
})) { | ||
positions.push({ | ||
key: _mongoObject.default._positionToKey(wouldBePosition), | ||
key: _mongoObject["default"]._positionToKey(wouldBePosition), | ||
value: undefined, | ||
@@ -121,0 +122,0 @@ operator: operator ? '$set' : null, |
@@ -7,3 +7,3 @@ "use strict"; | ||
exports.sortAutoValueFunctions = sortAutoValueFunctions; | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -14,3 +14,3 @@ var _getPositionsForAutoValue = _interopRequireDefault(require("./getPositionsForAutoValue")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -26,5 +26,4 @@ /** | ||
function sortAutoValueFunctions(autoValueFunctions) { | ||
const defaultFieldOrder = autoValueFunctions.reduce((acc, { | ||
fieldName | ||
}, index) => { | ||
var defaultFieldOrder = autoValueFunctions.reduce(function (acc, _ref, index) { | ||
var fieldName = _ref.fieldName; | ||
acc[fieldName] = index; | ||
@@ -36,4 +35,4 @@ return acc; | ||
return autoValueFunctions.sort((a, b) => { | ||
const depthDiff = a.fieldName.split('.').length - b.fieldName.split('.').length; | ||
return autoValueFunctions.sort(function (a, b) { | ||
var depthDiff = a.fieldName.split('.').length - b.fieldName.split('.').length; | ||
return depthDiff === 0 ? defaultFieldOrder[a.fieldName] - defaultFieldOrder[b.fieldName] : depthDiff; | ||
@@ -57,20 +56,19 @@ }); | ||
function setAutoValues(autoValueFunctions, mongoObject, isModifier, isUpsert, extendedAutoValueContext) { | ||
const sortedAutoValueFunctions = sortAutoValueFunctions(autoValueFunctions); | ||
sortedAutoValueFunctions.forEach(({ | ||
func, | ||
fieldName, | ||
closestSubschemaFieldName | ||
}) => { | ||
const avRunner = new _AutoValueRunner.default({ | ||
closestSubschemaFieldName, | ||
extendedAutoValueContext, | ||
func, | ||
isModifier, | ||
isUpsert, | ||
mongoObject | ||
var sortedAutoValueFunctions = sortAutoValueFunctions(autoValueFunctions); | ||
sortedAutoValueFunctions.forEach(function (_ref2) { | ||
var func = _ref2.func, | ||
fieldName = _ref2.fieldName, | ||
closestSubschemaFieldName = _ref2.closestSubschemaFieldName; | ||
var avRunner = new _AutoValueRunner["default"]({ | ||
closestSubschemaFieldName: closestSubschemaFieldName, | ||
extendedAutoValueContext: extendedAutoValueContext, | ||
func: func, | ||
isModifier: isModifier, | ||
isUpsert: isUpsert, | ||
mongoObject: mongoObject | ||
}); | ||
const positions = (0, _getPositionsForAutoValue.default)({ | ||
fieldName, | ||
isModifier, | ||
mongoObject | ||
var positions = (0, _getPositionsForAutoValue["default"])({ | ||
fieldName: fieldName, | ||
isModifier: isModifier, | ||
mongoObject: mongoObject | ||
}); // Run the autoValue function once for each place in the object that | ||
@@ -84,2 +82,2 @@ // has a value or that potentially should. | ||
var _default = setAutoValues; | ||
exports.default = _default; | ||
exports["default"] = _default; |
@@ -9,24 +9,18 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
describe('setAutoValues', () => { | ||
it('sorts correctly', () => { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
describe('setAutoValues', function () { | ||
it('sorts correctly', function () { | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
field1: { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
field2: { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
field3: { | ||
type: Number, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
@@ -36,17 +30,11 @@ nested: Object, | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
'nested.field2': { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
'nested.field3': { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
@@ -59,42 +47,35 @@ 'nested.field4': { | ||
type: Number, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
field5: { | ||
type: Number, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
field6: { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
field7: { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
} | ||
}); | ||
const autoValueFunctions = schema.autoValueFunctions(); | ||
const sorted = (0, _setAutoValues.sortAutoValueFunctions)(autoValueFunctions); | ||
const FIELD_COUNT = 7; | ||
const NESTED_FIELD_COUNT = 4; // expecting: field1, field2, ..., field7, nested.field1, ... nested.field4 | ||
var autoValueFunctions = schema.autoValueFunctions(); | ||
var sorted = (0, _setAutoValues.sortAutoValueFunctions)(autoValueFunctions); | ||
var FIELD_COUNT = 7; | ||
var NESTED_FIELD_COUNT = 4; // expecting: field1, field2, ..., field7, nested.field1, ... nested.field4 | ||
const fieldOrder = sorted.map(({ | ||
fieldName | ||
}) => fieldName); | ||
var fieldOrder = sorted.map(function (_ref) { | ||
var fieldName = _ref.fieldName; | ||
return fieldName; | ||
}); | ||
for (let i = 0; i < FIELD_COUNT; ++i) { | ||
(0, _expect.default)(fieldOrder[i]).toBe(`field${i + 1}`); | ||
for (var i = 0; i < FIELD_COUNT; ++i) { | ||
(0, _expect["default"])(fieldOrder[i]).toBe("field".concat(i + 1)); | ||
} | ||
for (let i = FIELD_COUNT; i < FIELD_COUNT + NESTED_FIELD_COUNT; ++i) { | ||
(0, _expect.default)(fieldOrder[i]).toBe(`nested.field${i - FIELD_COUNT + 1}`); | ||
for (var _i = FIELD_COUNT; _i < FIELD_COUNT + NESTED_FIELD_COUNT; ++_i) { | ||
(0, _expect["default"])(fieldOrder[_i]).toBe("nested.field".concat(_i - FIELD_COUNT + 1)); | ||
} | ||
}); | ||
}); |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -13,39 +13,39 @@ var _regExp = _interopRequireDefault(require("./regExp")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
const regExpMessages = [{ | ||
exp: _regExp.default.Email, | ||
var regExpMessages = [{ | ||
exp: _regExp["default"].Email, | ||
msg: 'must be a valid email address' | ||
}, { | ||
exp: _regExp.default.EmailWithTLD, | ||
exp: _regExp["default"].EmailWithTLD, | ||
msg: 'must be a valid email address' | ||
}, { | ||
exp: _regExp.default.Domain, | ||
exp: _regExp["default"].Domain, | ||
msg: 'must be a valid domain' | ||
}, { | ||
exp: _regExp.default.WeakDomain, | ||
exp: _regExp["default"].WeakDomain, | ||
msg: 'must be a valid domain' | ||
}, { | ||
exp: _regExp.default.IP, | ||
exp: _regExp["default"].IP, | ||
msg: 'must be a valid IPv4 or IPv6 address' | ||
}, { | ||
exp: _regExp.default.IPv4, | ||
exp: _regExp["default"].IPv4, | ||
msg: 'must be a valid IPv4 address' | ||
}, { | ||
exp: _regExp.default.IPv6, | ||
exp: _regExp["default"].IPv6, | ||
msg: 'must be a valid IPv6 address' | ||
}, { | ||
exp: _regExp.default.Url, | ||
exp: _regExp["default"].Url, | ||
msg: 'must be a valid URL' | ||
}, { | ||
exp: _regExp.default.Id, | ||
exp: _regExp["default"].Id, | ||
msg: 'must be a valid alphanumeric ID' | ||
}, { | ||
exp: _regExp.default.ZipCode, | ||
exp: _regExp["default"].ZipCode, | ||
msg: 'must be a valid ZIP code' | ||
}, { | ||
exp: _regExp.default.Phone, | ||
exp: _regExp["default"].Phone, | ||
msg: 'must be a valid phone number' | ||
}]; | ||
const defaultMessages = { | ||
var defaultMessages = { | ||
initialLanguage: 'en', | ||
@@ -69,18 +69,17 @@ messages: { | ||
expectedType: '{{{label}}} must be of type {{dataType}}', | ||
regEx({ | ||
label, | ||
regExp | ||
}) { | ||
regEx: function regEx(_ref) { | ||
var label = _ref.label, | ||
regExp = _ref.regExp; | ||
// See if there's one where exp matches this expression | ||
let msgObj; | ||
var msgObj; | ||
if (regExp) { | ||
msgObj = (0, _lodash.default)(regExpMessages, o => o.exp && o.exp.toString() === regExp); | ||
msgObj = (0, _lodash["default"])(regExpMessages, function (o) { | ||
return o.exp && o.exp.toString() === regExp; | ||
}); | ||
} | ||
const regExpMessage = msgObj ? msgObj.msg : 'failed regular expression validation'; | ||
return `${label} ${regExpMessage}`; | ||
var regExpMessage = msgObj ? msgObj.msg : 'failed regular expression validation'; | ||
return "".concat(label, " ").concat(regExpMessage); | ||
}, | ||
keyNotInSchema: '{{name}} is not allowed by the schema' | ||
@@ -91,4 +90,4 @@ } | ||
var _default = defaultMessages; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -29,6 +29,10 @@ var _mongoObject = _interopRequireDefault(require("mongo-object")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } | ||
function _typeof(obj) { "@babel/helpers - typeof"; if (typeof Symbol === "function" && typeof Symbol.iterator === "symbol") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }; } return _typeof(obj); } | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
@@ -41,15 +45,15 @@ | ||
function doValidation({ | ||
extendedCustomContext, | ||
ignoreTypes, | ||
isModifier, | ||
isUpsert, | ||
keysToValidate, | ||
mongoObject, | ||
obj, | ||
schema, | ||
validationContext | ||
}) { | ||
function doValidation(_ref) { | ||
var extendedCustomContext = _ref.extendedCustomContext, | ||
ignoreTypes = _ref.ignoreTypes, | ||
isModifier = _ref.isModifier, | ||
isUpsert = _ref.isUpsert, | ||
keysToValidate = _ref.keysToValidate, | ||
mongoObject = _ref.mongoObject, | ||
obj = _ref.obj, | ||
schema = _ref.schema, | ||
validationContext = _ref.validationContext; | ||
// First do some basic checks of the object, and throw errors if necessary | ||
if (!(0, _lodash2.default)(obj)) { | ||
if (!(0, _lodash2["default"])(obj)) { | ||
throw new Error('The first argument of validate() must be an object'); | ||
@@ -62,3 +66,3 @@ } | ||
let validationErrors = []; // Validation function called for each affected key | ||
var validationErrors = []; // Validation function called for each affected key | ||
@@ -89,9 +93,9 @@ function validate(val, affectedKey, affectedKeyGeneric, def, op, isInArrayItemObject, isInSubObject) { | ||
const fieldParentNameWithEndDot = (0, _utility.getParentOfKey)(affectedKey, true); | ||
const fieldParentName = fieldParentNameWithEndDot.slice(0, -1); | ||
var fieldParentNameWithEndDot = (0, _utility.getParentOfKey)(affectedKey, true); | ||
var fieldParentName = fieldParentNameWithEndDot.slice(0, -1); | ||
function getFieldInfo(key) { | ||
// Create mongoObject if necessary, cache for speed | ||
if (!mongoObject) mongoObject = new _mongoObject.default(obj, schema.blackboxKeys()); | ||
const keyInfo = mongoObject.getInfoForKey(key) || {}; | ||
if (!mongoObject) mongoObject = new _mongoObject["default"](obj, schema.blackboxKeys()); | ||
var keyInfo = mongoObject.getInfoForKey(key) || {}; | ||
return { | ||
@@ -104,31 +108,28 @@ isSet: keyInfo.value !== undefined, | ||
const fieldValidationErrors = []; | ||
var fieldValidationErrors = []; | ||
const validatorContext = _objectSpread({ | ||
addValidationErrors(errors) { | ||
errors.forEach(error => fieldValidationErrors.push(error)); | ||
var validatorContext = _objectSpread({ | ||
addValidationErrors: function addValidationErrors(errors) { | ||
errors.forEach(function (error) { | ||
return fieldValidationErrors.push(error); | ||
}); | ||
}, | ||
field(fName) { | ||
field: function field(fName) { | ||
return getFieldInfo(fName); | ||
}, | ||
genericKey: affectedKeyGeneric, | ||
isInArrayItemObject, | ||
isInSubObject, | ||
isModifier, | ||
isInArrayItemObject: isInArrayItemObject, | ||
isInSubObject: isInSubObject, | ||
isModifier: isModifier, | ||
isSet: val !== undefined, | ||
key: affectedKey, | ||
obj, | ||
obj: obj, | ||
operator: op, | ||
parentField() { | ||
parentField: function parentField() { | ||
return getFieldInfo(fieldParentName); | ||
}, | ||
siblingField(fName) { | ||
siblingField: function siblingField(fName) { | ||
return getFieldInfo(fieldParentNameWithEndDot + fName); | ||
}, | ||
validationContext, | ||
validationContext: validationContext, | ||
value: val, | ||
@@ -140,11 +141,11 @@ // Value checks are not necessary for null or undefined values, | ||
const builtInValidators = [_requiredValidator.default, _typeValidator.default, _allowedValuesValidator.default]; | ||
const validators = builtInValidators.concat(schema._validators).concat(_SimpleSchema.SimpleSchema._validators); // Loop through each of the definitions in the SimpleSchemaGroup. | ||
var builtInValidators = [_requiredValidator["default"], _typeValidator["default"], _allowedValuesValidator["default"]]; | ||
var validators = builtInValidators.concat(schema._validators).concat(_SimpleSchema.SimpleSchema._validators); // Loop through each of the definitions in the SimpleSchemaGroup. | ||
// If any return true, we're valid. | ||
const fieldIsValid = def.type.some(typeDef => { | ||
const finalValidatorContext = _objectSpread({}, validatorContext, { | ||
var fieldIsValid = def.type.some(function (typeDef) { | ||
var finalValidatorContext = _objectSpread({}, validatorContext, { | ||
// Take outer definition props like "optional" and "label" | ||
// and add them to inner props like "type" and "min" | ||
definition: _objectSpread({}, (0, _lodash.default)(def, 'type'), typeDef) | ||
definition: _objectSpread({}, (0, _lodash["default"])(def, 'type'), {}, typeDef) | ||
}); // Add custom field validators to the list after the built-in | ||
@@ -154,3 +155,3 @@ // validators but before the schema and global validators. | ||
const fieldValidators = validators.slice(0); | ||
var fieldValidators = validators.slice(0); | ||
@@ -163,4 +164,4 @@ if (typeof typeDef.custom === 'function') { | ||
return fieldValidators.every(validator => { | ||
const result = validator.call(finalValidatorContext); // If the validator returns a string, assume it is the | ||
return fieldValidators.every(function (validator) { | ||
var result = validator.call(finalValidatorContext); // If the validator returns a string, assume it is the | ||
// error type. | ||
@@ -179,3 +180,3 @@ | ||
if (typeof result === 'object' && result !== null) { | ||
if (_typeof(result) === 'object' && result !== null) { | ||
fieldValidationErrors.push(_objectSpread({ | ||
@@ -202,11 +203,12 @@ name: affectedKey, | ||
function checkObj({ | ||
val, | ||
affectedKey, | ||
operator, | ||
isInArrayItemObject = false, | ||
isInSubObject = false | ||
}) { | ||
let affectedKeyGeneric; | ||
let def; | ||
function checkObj(_ref2) { | ||
var val = _ref2.val, | ||
affectedKey = _ref2.affectedKey, | ||
operator = _ref2.operator, | ||
_ref2$isInArrayItemOb = _ref2.isInArrayItemObject, | ||
isInArrayItemObject = _ref2$isInArrayItemOb === void 0 ? false : _ref2$isInArrayItemOb, | ||
_ref2$isInSubObject = _ref2.isInSubObject, | ||
isInSubObject = _ref2$isInSubObject === void 0 ? false : _ref2$isInSubObject; | ||
var affectedKeyGeneric; | ||
var def; | ||
@@ -218,4 +220,6 @@ if (affectedKey) { | ||
affectedKeyGeneric = _mongoObject.default.makeKeyGeneric(affectedKey); | ||
const shouldValidateKey = !keysToValidate || keysToValidate.some(keyToValidate => keyToValidate === affectedKey || keyToValidate === affectedKeyGeneric || affectedKey.startsWith(`${keyToValidate}.`) || affectedKeyGeneric.startsWith(`${keyToValidate}.`)); // Perform validation for this key | ||
affectedKeyGeneric = _mongoObject["default"].makeKeyGeneric(affectedKey); | ||
var shouldValidateKey = !keysToValidate || keysToValidate.some(function (keyToValidate) { | ||
return keyToValidate === affectedKey || keyToValidate === affectedKeyGeneric || affectedKey.startsWith("".concat(keyToValidate, ".")) || affectedKeyGeneric.startsWith("".concat(keyToValidate, ".")); | ||
}); // Perform validation for this key | ||
@@ -231,3 +235,3 @@ def = schema.getDefinition(affectedKey); | ||
const childKeys = schema.objectKeys(affectedKeyGeneric); // Temporarily convert missing objects to empty objects | ||
var childKeys = schema.objectKeys(affectedKeyGeneric); // Temporarily convert missing objects to empty objects | ||
// so that the looping code will be called and required | ||
@@ -242,7 +246,7 @@ // descendent keys can be validated. | ||
if (Array.isArray(val)) { | ||
val.forEach((v, i) => { | ||
val.forEach(function (v, i) { | ||
checkObj({ | ||
val: v, | ||
affectedKey: `${affectedKey}.${i}`, | ||
operator | ||
affectedKey: "".concat(affectedKey, ".").concat(i), | ||
operator: operator | ||
}); | ||
@@ -253,7 +257,7 @@ }); | ||
// Get list of present keys | ||
const presentKeys = Object.keys(val); // Check all present keys plus all keys defined by the schema. | ||
var presentKeys = Object.keys(val); // Check all present keys plus all keys defined by the schema. | ||
// This allows us to detect extra keys not allowed by the schema plus | ||
// any missing required keys, and to run any custom functions for other keys. | ||
const keysToCheck = (0, _lodash3.default)(presentKeys, childKeys); // If this object is within an array, make sure we check for | ||
var keysToCheck = (0, _lodash3["default"])(presentKeys, childKeys); // If this object is within an array, make sure we check for | ||
// required as if it's not a modifier | ||
@@ -263,8 +267,8 @@ | ||
keysToCheck.forEach(key => { | ||
keysToCheck.forEach(function (key) { | ||
checkObj({ | ||
val: val[key], | ||
affectedKey: (0, _utility.appendAffectedKey)(affectedKey, key), | ||
operator, | ||
isInArrayItemObject, | ||
operator: operator, | ||
isInArrayItemObject: isInArrayItemObject, | ||
isInSubObject: true | ||
@@ -278,7 +282,7 @@ }); | ||
// Loop through operators | ||
Object.keys(mod).forEach(op => { | ||
const opObj = mod[op]; // If non-operators are mixed in, throw error | ||
Object.keys(mod).forEach(function (op) { | ||
var opObj = mod[op]; // If non-operators are mixed in, throw error | ||
if (op.slice(0, 1) !== '$') { | ||
throw new Error(`Expected '${op}' to be a modifier operator like '$set'`); | ||
throw new Error("Expected '".concat(op, "' to be a modifier operator like '$set'")); | ||
} | ||
@@ -290,5 +294,5 @@ | ||
if (isUpsert && (op === '$set' || op === '$setOnInsert')) { | ||
const presentKeys = Object.keys(opObj); | ||
schema.objectKeys().forEach(schemaKey => { | ||
if (!(0, _lodash4.default)(presentKeys, schemaKey)) { | ||
var presentKeys = Object.keys(opObj); | ||
schema.objectKeys().forEach(function (schemaKey) { | ||
if (!(0, _lodash4["default"])(presentKeys, schemaKey)) { | ||
checkObj({ | ||
@@ -305,10 +309,10 @@ val: undefined, | ||
Object.keys(opObj).forEach(k => { | ||
let v = opObj[k]; | ||
Object.keys(opObj).forEach(function (k) { | ||
var v = opObj[k]; | ||
if (op === '$push' || op === '$addToSet') { | ||
if (typeof v === 'object' && '$each' in v) { | ||
if (_typeof(v) === 'object' && '$each' in v) { | ||
v = v.$each; | ||
} else { | ||
k = `${k}.0`; | ||
k = "".concat(k, ".0"); | ||
} | ||
@@ -337,15 +341,15 @@ } | ||
const docValidators = schema._docValidators.concat(_SimpleSchema.SimpleSchema._docValidators); | ||
var docValidators = schema._docValidators.concat(_SimpleSchema.SimpleSchema._docValidators); | ||
docValidators.forEach(func => { | ||
const errors = func(obj); | ||
docValidators.forEach(function (func) { | ||
var errors = func(obj); | ||
if (!Array.isArray(errors)) throw new Error('Custom doc validator must return an array of error objects'); | ||
if (errors.length) validationErrors = validationErrors.concat(errors); | ||
}); | ||
const addedFieldNames = []; | ||
validationErrors = validationErrors.filter(errObj => { | ||
var addedFieldNames = []; | ||
validationErrors = validationErrors.filter(function (errObj) { | ||
// Remove error types the user doesn't care about | ||
if ((0, _lodash4.default)(ignoreTypes, errObj.type)) return false; // Make sure there is only one error per fieldName | ||
if ((0, _lodash4["default"])(ignoreTypes, errObj.type)) return false; // Make sure there is only one error per fieldName | ||
if ((0, _lodash4.default)(addedFieldNames, errObj.name)) return false; | ||
if ((0, _lodash4["default"])(addedFieldNames, errObj.name)) return false; | ||
addedFieldNames.push(errObj.name); | ||
@@ -358,4 +362,4 @@ return true; | ||
var _default = doValidation; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,10 +6,12 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
var _mongoObject = _interopRequireDefault(require("mongo-object")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
@@ -21,7 +23,7 @@ | ||
function expandShorthand(schema) { | ||
const schemaClone = {}; | ||
Object.keys(schema).forEach(key => { | ||
const definition = schema[key]; // CASE 1: Not shorthand. Just clone | ||
var schemaClone = {}; | ||
Object.keys(schema).forEach(function (key) { | ||
var definition = schema[key]; // CASE 1: Not shorthand. Just clone | ||
if (_mongoObject.default.isBasicObject(definition)) { | ||
if (_mongoObject["default"].isBasicObject(definition)) { | ||
schemaClone[key] = _objectSpread({}, definition); | ||
@@ -34,6 +36,6 @@ return; | ||
if (Array.isArray(definition[0])) { | ||
throw new Error(`Array shorthand may only be used to one level of depth (${key})`); | ||
throw new Error("Array shorthand may only be used to one level of depth (".concat(key, ")")); | ||
} | ||
const type = definition[0]; | ||
var type = definition[0]; | ||
schemaClone[key] = { | ||
@@ -43,6 +45,6 @@ type: Array | ||
const itemKey = `${key}.$`; | ||
var itemKey = "".concat(key, ".$"); | ||
if (schema[itemKey]) { | ||
throw new Error(`Array shorthand used for ${key} field but ${key}.$ key is already in the schema`); | ||
throw new Error("Array shorthand used for ".concat(key, " field but ").concat(key, ".$ key is already in the schema")); | ||
} | ||
@@ -57,3 +59,3 @@ | ||
schemaClone[itemKey] = { | ||
type | ||
type: type | ||
}; | ||
@@ -83,4 +85,4 @@ } | ||
var _default = expandShorthand; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,3 +13,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('test 1', function () { | ||
const result = (0, _expandShorthand.default)({ | ||
var result = (0, _expandShorthand["default"])({ | ||
name: String, | ||
@@ -19,3 +19,3 @@ count: Number, | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
name: { | ||
@@ -34,7 +34,7 @@ type: String | ||
it('test 2', function () { | ||
const result = (0, _expandShorthand.default)({ | ||
var result = (0, _expandShorthand["default"])({ | ||
name: [String], | ||
count: [Number] | ||
}); | ||
(0, _expect.default)(result).toEqual({ | ||
(0, _expect["default"])(result).toEqual({ | ||
name: { | ||
@@ -41,0 +41,0 @@ type: Array |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -39,4 +39,4 @@ /* | ||
function extname(text) { | ||
const index = text.lastIndexOf('.'); | ||
const ext = text.substring(index, text.length); | ||
var index = text.lastIndexOf('.'); | ||
var ext = text.substring(index, text.length); | ||
return index === -1 ? '' : ext; | ||
@@ -57,4 +57,4 @@ } | ||
var _default = humanize; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,19 +13,19 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('works', function () { | ||
(0, _expect.default)((0, _humanize.default)('super_snake_case')).toBe('Super snake case'); | ||
(0, _expect.default)((0, _humanize.default)('capitalizedCamelCase')).toBe('Capitalized camel case'); | ||
(0, _expect.default)((0, _humanize.default)('hyphen-case')).toBe('Hyphen case'); | ||
(0, _expect.default)((0, _humanize.default)('no-extensions-here.md')).toBe('No extensions here'); | ||
(0, _expect.default)((0, _humanize.default)('lower cased phrase')).toBe('Lower cased phrase'); | ||
(0, _expect.default)((0, _humanize.default)(' so many spaces ')).toBe('So many spaces'); | ||
(0, _expect.default)((0, _humanize.default)(123)).toBe('123'); | ||
(0, _expect.default)((0, _humanize.default)('')).toBe(''); | ||
(0, _expect.default)((0, _humanize.default)(null)).toBe(''); | ||
(0, _expect.default)((0, _humanize.default)(undefined)).toBe(''); | ||
(0, _expect.default)((0, _humanize.default)('externalSource')).toBe('External source'); | ||
(0, _expect.default)((0, _humanize.default)('externalSourceId')).toBe('External source ID'); | ||
(0, _expect.default)((0, _humanize.default)('externalSource_id')).toBe('External source ID'); | ||
(0, _expect.default)((0, _humanize.default)('_id')).toBe('ID'); // Make sure it does not mess with "id" in the middle of a word | ||
(0, _expect["default"])((0, _humanize["default"])('super_snake_case')).toBe('Super snake case'); | ||
(0, _expect["default"])((0, _humanize["default"])('capitalizedCamelCase')).toBe('Capitalized camel case'); | ||
(0, _expect["default"])((0, _humanize["default"])('hyphen-case')).toBe('Hyphen case'); | ||
(0, _expect["default"])((0, _humanize["default"])('no-extensions-here.md')).toBe('No extensions here'); | ||
(0, _expect["default"])((0, _humanize["default"])('lower cased phrase')).toBe('Lower cased phrase'); | ||
(0, _expect["default"])((0, _humanize["default"])(' so many spaces ')).toBe('So many spaces'); | ||
(0, _expect["default"])((0, _humanize["default"])(123)).toBe('123'); | ||
(0, _expect["default"])((0, _humanize["default"])('')).toBe(''); | ||
(0, _expect["default"])((0, _humanize["default"])(null)).toBe(''); | ||
(0, _expect["default"])((0, _humanize["default"])(undefined)).toBe(''); | ||
(0, _expect["default"])((0, _humanize["default"])('externalSource')).toBe('External source'); | ||
(0, _expect["default"])((0, _humanize["default"])('externalSourceId')).toBe('External source ID'); | ||
(0, _expect["default"])((0, _humanize["default"])('externalSource_id')).toBe('External source ID'); | ||
(0, _expect["default"])((0, _humanize["default"])('_id')).toBe('ID'); // Make sure it does not mess with "id" in the middle of a word | ||
(0, _expect.default)((0, _humanize.default)('overridden')).toBe('Overridden'); | ||
(0, _expect["default"])((0, _humanize["default"])('overridden')).toBe('Overridden'); | ||
}); | ||
}); |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -15,4 +15,4 @@ var _SimpleSchema = require("./SimpleSchema"); | ||
var _default = _SimpleSchema.SimpleSchema; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
// this domain regex matches all domains that have at least one . | ||
@@ -12,10 +12,10 @@ // sadly IPv4 Adresses will be caught too but technically those are valid domains | ||
// a modification enforces that the tld consists only of characters | ||
const rxDomain = '(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z](?:[a-z-]*[a-z])?'; // this domain regex matches everythign that could be a domain in intranet | ||
var rxDomain = '(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?\\.)+[a-z](?:[a-z-]*[a-z])?'; // this domain regex matches everythign that could be a domain in intranet | ||
// that means "localhost" is a valid domain | ||
const rxNameDomain = '(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\\.|$))+'; // strict IPv4 expression which allows 0-255 per oktett | ||
var rxNameDomain = '(?:[a-z0-9](?:[a-z0-9-]*[a-z0-9])?(?:\\.|$))+'; // strict IPv4 expression which allows 0-255 per oktett | ||
const rxIPv4 = '(?:(?:[0-1]?\\d{1,2}|2[0-4]\\d|25[0-5])(?:\\.|$)){4}'; // strict IPv6 expression which allows (and validates) all shortcuts | ||
var rxIPv4 = '(?:(?:[0-1]?\\d{1,2}|2[0-4]\\d|25[0-5])(?:\\.|$)){4}'; // strict IPv6 expression which allows (and validates) all shortcuts | ||
const rxIPv6 = '(?:(?:[\\dA-Fa-f]{1,4}(?::|$)){8}' // full adress | ||
var rxIPv6 = '(?:(?:[\\dA-Fa-f]{1,4}(?::|$)){8}' // full adress | ||
+ '|(?=(?:[^:\\s]|:[^:\\s])*::(?:[^:\\s]|:[^:\\s])*$)' // or min/max one '::' | ||
@@ -25,4 +25,4 @@ + '[\\dA-Fa-f]{0,4}(?:::?(?:[\\dA-Fa-f]{1,4}|$)){1,6})'; // and short adress | ||
const rxWeakDomain = `(?:${[rxNameDomain, rxIPv4, rxIPv6].join('|')})`; | ||
const regEx = { | ||
var rxWeakDomain = "(?:".concat([rxNameDomain, rxIPv4, rxIPv6].join('|'), ")"); | ||
var regEx = { | ||
// We use the RegExp suggested by W3C in http://www.w3.org/TR/html5/forms.html#valid-e-mail-address | ||
@@ -34,7 +34,7 @@ // This is probably the same logic used by most browsers when type=email, which is our goal. It is | ||
EmailWithTLD: /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/, | ||
Domain: new RegExp(`^${rxDomain}$`), | ||
WeakDomain: new RegExp(`^${rxWeakDomain}$`), | ||
IP: new RegExp(`^(?:${rxIPv4}|${rxIPv6})$`), | ||
IPv4: new RegExp(`^${rxIPv4}$`), | ||
IPv6: new RegExp(`^${rxIPv6}$`), | ||
Domain: new RegExp("^".concat(rxDomain, "$")), | ||
WeakDomain: new RegExp("^".concat(rxWeakDomain, "$")), | ||
IP: new RegExp("^(?:".concat(rxIPv4, "|").concat(rxIPv6, ")$")), | ||
IPv4: new RegExp("^".concat(rxIPv4, "$")), | ||
IPv6: new RegExp("^".concat(rxIPv6, "$")), | ||
// URL RegEx from https://gist.github.com/dperini/729294 | ||
@@ -58,4 +58,4 @@ // http://mathiasbynens.be/demo/url-regex | ||
var _default = regEx; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -15,3 +15,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -22,13 +22,13 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('valid string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedStrings: 'tuna' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedStringsArray: ['tuna', 'fish', 'salad'] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedStringsSet: ['tuna', 'fish', 'salad'] | ||
}).toEqual(0); // Array of objects | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
friends: [{ | ||
@@ -42,15 +42,15 @@ name: 'Bob', | ||
it('invalid string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedStrings: 'tunas' | ||
}).toEqual(1); // Array | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedStringsArray: ['tuna', 'fish', 'sandwich'] | ||
}).toEqual(1); // Set Or Array | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedStringsSet: ['tuna', 'fish', 'sandwich'] | ||
}).toEqual(1); // Array of objects | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
friends: [{ | ||
@@ -64,13 +64,13 @@ name: 'Bob', | ||
it('valid number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedNumbers: 1 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedNumbersArray: [1, 2, 3] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedNumbersSet: [1, 2, 3] | ||
}).toEqual(0); // Array of objects | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
friends: [{ | ||
@@ -87,15 +87,15 @@ name: 'Bob', | ||
it('invalid number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedNumbers: 4 | ||
}).toEqual(1); // Array | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedNumbersArray: [1, 2, 3, 4] | ||
}).toEqual(1); // Set or Array | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
allowedNumbersSet: [1, 2, 3, 4] | ||
}).toEqual(1); // Array of objects | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
friends: [{ | ||
@@ -114,3 +114,3 @@ name: 'Bob', | ||
it('valid string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -124,3 +124,3 @@ allowedStrings: 'tuna' | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -134,3 +134,3 @@ allowedStringsArray: ['tuna', 'fish', 'salad'] | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -144,3 +144,3 @@ allowedStringsSet: ['tuna', 'fish', 'salad'] | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$setOnInsert: { | ||
@@ -159,3 +159,3 @@ friends: [{ | ||
it('invalid string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -169,3 +169,3 @@ allowedStrings: 'tunas' | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -179,3 +179,3 @@ allowedStringsArray: ['tuna', 'fish', 'sandwich'] | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -189,3 +189,3 @@ allowedStringsSet: ['tuna', 'fish', 'sandwich'] | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$setOnInsert: { | ||
@@ -204,3 +204,3 @@ friends: [{ | ||
it('valid number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -214,3 +214,3 @@ allowedNumbers: 1 | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -224,3 +224,3 @@ allowedNumbersArray: [1, 2, 3] | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -234,3 +234,3 @@ allowedNumbersSet: [1, 2, 3] | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$setOnInsert: { | ||
@@ -252,3 +252,3 @@ friends: [{ | ||
it('invalid number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -262,3 +262,3 @@ allowedNumbers: 4 | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -272,3 +272,3 @@ allowedNumbersArray: [1, 2, 3, 4] | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -282,3 +282,3 @@ allowedNumbersSet: [1, 2, 3, 4] | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$setOnInsert: { | ||
@@ -302,3 +302,3 @@ friends: [{ | ||
it('valid string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -311,3 +311,3 @@ allowedStrings: 'tuna' | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -320,3 +320,3 @@ allowedStringsArray: ['tuna', 'fish', 'salad'] | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -329,3 +329,3 @@ allowedStringsSet: ['tuna', 'fish', 'salad'] | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -337,3 +337,3 @@ 'friends.$.name': 'Bob' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -347,3 +347,3 @@ 'friends.1.name': 'Bob' | ||
it('invalid string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -356,3 +356,3 @@ allowedStrings: 'tunas' | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -365,3 +365,3 @@ allowedStringsArray: ['tuna', 'fish', 'sandwich'] | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -374,3 +374,3 @@ allowedStringsSet: ['tuna', 'fish', 'sandwich'] | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -382,3 +382,3 @@ 'friends.$.name': 'Bobby' | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -392,3 +392,3 @@ 'friends.1.name': 'Bobby' | ||
it('valid number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -400,3 +400,3 @@ allowedNumbers: 1 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -408,3 +408,3 @@ allowedNumbersArray: [1, 2, 3] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -418,3 +418,3 @@ allowedNumbersSet: [1, 2, 3] | ||
it('invalid number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -426,3 +426,3 @@ allowedNumbers: 4 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -434,3 +434,3 @@ allowedNumbersArray: [1, 2, 3, 4] | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -446,28 +446,28 @@ allowedNumbersSet: [1, 2, 3, 4] | ||
it('works', function () { | ||
const allowedValues = ['a', 'b']; | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var allowedValues = ['a', 'b']; | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Array, | ||
'foo.$': { | ||
type: String, | ||
allowedValues | ||
allowedValues: allowedValues | ||
} | ||
}); | ||
(0, _expect.default)(schema.getAllowedValuesForKey('foo')).toEqual(allowedValues); | ||
(0, _expect["default"])(schema.getAllowedValuesForKey('foo')).toEqual(allowedValues); | ||
}); | ||
it('works with set, convert to array', function () { | ||
const allowedValues = new Set(['a', 'b']); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var allowedValues = new Set(['a', 'b']); | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Array, | ||
'foo.$': { | ||
type: String, | ||
allowedValues | ||
allowedValues: allowedValues | ||
} | ||
}); | ||
const fetchedAllowedValues = schema.getAllowedValuesForKey('foo'); | ||
(0, _expect.default)(fetchedAllowedValues).toInclude('a'); | ||
(0, _expect.default)(fetchedAllowedValues).toInclude('b'); | ||
(0, _expect.default)(fetchedAllowedValues.length).toEqual(2); | ||
var fetchedAllowedValues = schema.getAllowedValuesForKey('foo'); | ||
(0, _expect["default"])(fetchedAllowedValues).toInclude('a'); | ||
(0, _expect["default"])(fetchedAllowedValues).toInclude('b'); | ||
(0, _expect["default"])(fetchedAllowedValues.length).toEqual(2); | ||
}); | ||
it('returns null when allowedValues key is empty', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Array, | ||
@@ -478,5 +478,5 @@ 'foo.$': { | ||
}); | ||
(0, _expect.default)(schema.getAllowedValuesForKey('foo')).toEqual(null); | ||
(0, _expect["default"])(schema.getAllowedValuesForKey('foo')).toEqual(null); | ||
}); | ||
}); | ||
}); |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,37 +13,29 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('simple', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
} | ||
}); | ||
const autoValueFunctions = schema.autoValueFunctions(); | ||
(0, _expect.default)(autoValueFunctions.length).toBe(1); | ||
(0, _expect.default)(!!autoValueFunctions[0].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[0].fieldName).toBe('a'); | ||
(0, _expect.default)(autoValueFunctions[0].closestSubschemaFieldName).toBe(''); | ||
var autoValueFunctions = schema.autoValueFunctions(); | ||
(0, _expect["default"])(autoValueFunctions.length).toBe(1); | ||
(0, _expect["default"])(!!autoValueFunctions[0].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[0].fieldName).toBe('a'); | ||
(0, _expect["default"])(autoValueFunctions[0].closestSubschemaFieldName).toBe(''); | ||
}); | ||
it('one level of subschema', function () { | ||
const subschema = new _SimpleSchema.SimpleSchema({ | ||
var subschema = new _SimpleSchema.SimpleSchema({ | ||
z: { | ||
type: Object, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
} | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
type: Object, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
'a.b': { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
@@ -54,27 +46,23 @@ c: { | ||
}); | ||
const autoValueFunctions = schema.autoValueFunctions(); | ||
(0, _expect.default)(autoValueFunctions.length).toBe(3); | ||
(0, _expect.default)(!!autoValueFunctions[0].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[0].fieldName).toBe('a'); | ||
(0, _expect.default)(autoValueFunctions[0].closestSubschemaFieldName).toBe(''); | ||
(0, _expect.default)(!!autoValueFunctions[1].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[1].fieldName).toBe('a.b'); | ||
(0, _expect.default)(autoValueFunctions[1].closestSubschemaFieldName).toBe(''); | ||
(0, _expect.default)(!!autoValueFunctions[2].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[2].fieldName).toBe('c.z'); | ||
(0, _expect.default)(autoValueFunctions[2].closestSubschemaFieldName).toBe('c'); | ||
var autoValueFunctions = schema.autoValueFunctions(); | ||
(0, _expect["default"])(autoValueFunctions.length).toBe(3); | ||
(0, _expect["default"])(!!autoValueFunctions[0].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[0].fieldName).toBe('a'); | ||
(0, _expect["default"])(autoValueFunctions[0].closestSubschemaFieldName).toBe(''); | ||
(0, _expect["default"])(!!autoValueFunctions[1].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[1].fieldName).toBe('a.b'); | ||
(0, _expect["default"])(autoValueFunctions[1].closestSubschemaFieldName).toBe(''); | ||
(0, _expect["default"])(!!autoValueFunctions[2].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[2].fieldName).toBe('c.z'); | ||
(0, _expect["default"])(autoValueFunctions[2].closestSubschemaFieldName).toBe('c'); | ||
}); | ||
it('two levels of subschemas', function () { | ||
const subschema1 = new _SimpleSchema.SimpleSchema({ | ||
var subschema1 = new _SimpleSchema.SimpleSchema({ | ||
x: { | ||
type: Object, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
'x.m': { | ||
type: Array, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
@@ -85,8 +73,6 @@ 'x.m.$': { | ||
}); | ||
const subschema2 = new _SimpleSchema.SimpleSchema({ | ||
var subschema2 = new _SimpleSchema.SimpleSchema({ | ||
z: { | ||
type: Object, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
@@ -97,14 +83,10 @@ 'z.y': { | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
type: Object, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
'a.b': { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
@@ -115,35 +97,31 @@ c: { | ||
}); | ||
const autoValueFunctions = schema.autoValueFunctions(); | ||
(0, _expect.default)(autoValueFunctions.length).toBe(5); | ||
(0, _expect.default)(!!autoValueFunctions[0].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[0].fieldName).toBe('a'); | ||
(0, _expect.default)(autoValueFunctions[0].closestSubschemaFieldName).toBe(''); | ||
(0, _expect.default)(!!autoValueFunctions[1].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[1].fieldName).toBe('a.b'); | ||
(0, _expect.default)(autoValueFunctions[1].closestSubschemaFieldName).toBe(''); | ||
(0, _expect.default)(!!autoValueFunctions[2].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[2].fieldName).toBe('c.z'); | ||
(0, _expect.default)(autoValueFunctions[2].closestSubschemaFieldName).toBe('c'); | ||
(0, _expect.default)(!!autoValueFunctions[3].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[3].fieldName).toBe('c.z.y.x'); | ||
(0, _expect.default)(autoValueFunctions[3].closestSubschemaFieldName).toBe('c.z.y'); | ||
(0, _expect.default)(!!autoValueFunctions[4].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[4].fieldName).toBe('c.z.y.x.m'); | ||
(0, _expect.default)(autoValueFunctions[4].closestSubschemaFieldName).toBe('c.z.y'); | ||
var autoValueFunctions = schema.autoValueFunctions(); | ||
(0, _expect["default"])(autoValueFunctions.length).toBe(5); | ||
(0, _expect["default"])(!!autoValueFunctions[0].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[0].fieldName).toBe('a'); | ||
(0, _expect["default"])(autoValueFunctions[0].closestSubschemaFieldName).toBe(''); | ||
(0, _expect["default"])(!!autoValueFunctions[1].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[1].fieldName).toBe('a.b'); | ||
(0, _expect["default"])(autoValueFunctions[1].closestSubschemaFieldName).toBe(''); | ||
(0, _expect["default"])(!!autoValueFunctions[2].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[2].fieldName).toBe('c.z'); | ||
(0, _expect["default"])(autoValueFunctions[2].closestSubschemaFieldName).toBe('c'); | ||
(0, _expect["default"])(!!autoValueFunctions[3].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[3].fieldName).toBe('c.z.y.x'); | ||
(0, _expect["default"])(autoValueFunctions[3].closestSubschemaFieldName).toBe('c.z.y'); | ||
(0, _expect["default"])(!!autoValueFunctions[4].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[4].fieldName).toBe('c.z.y.x.m'); | ||
(0, _expect["default"])(autoValueFunctions[4].closestSubschemaFieldName).toBe('c.z.y'); | ||
}); | ||
it('array of objects', function () { | ||
const subschema = new _SimpleSchema.SimpleSchema({ | ||
var subschema = new _SimpleSchema.SimpleSchema({ | ||
z: { | ||
type: String, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
} | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
type: Object, | ||
autoValue() {} | ||
autoValue: function autoValue() {} | ||
}, | ||
@@ -157,11 +135,11 @@ 'a.b': { | ||
}); | ||
const autoValueFunctions = schema.autoValueFunctions(); | ||
(0, _expect.default)(autoValueFunctions.length).toBe(2); | ||
(0, _expect.default)(!!autoValueFunctions[0].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[0].fieldName).toBe('a'); | ||
(0, _expect.default)(autoValueFunctions[0].closestSubschemaFieldName).toBe(''); | ||
(0, _expect.default)(!!autoValueFunctions[1].func).toBe(true); | ||
(0, _expect.default)(autoValueFunctions[1].fieldName).toBe('a.b.$.z'); | ||
(0, _expect.default)(autoValueFunctions[1].closestSubschemaFieldName).toBe('a.b.$'); | ||
var autoValueFunctions = schema.autoValueFunctions(); | ||
(0, _expect["default"])(autoValueFunctions.length).toBe(2); | ||
(0, _expect["default"])(!!autoValueFunctions[0].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[0].fieldName).toBe('a'); | ||
(0, _expect["default"])(autoValueFunctions[0].closestSubschemaFieldName).toBe(''); | ||
(0, _expect["default"])(!!autoValueFunctions[1].func).toBe(true); | ||
(0, _expect["default"])(autoValueFunctions[1].fieldName).toBe('a.b.$.z'); | ||
(0, _expect["default"])(autoValueFunctions[1].closestSubschemaFieldName).toBe('a.b.$'); | ||
}); | ||
}); |
@@ -7,6 +7,6 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
/* eslint-disable func-names, prefer-arrow-callback */ | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
blackBoxObject: { | ||
@@ -20,3 +20,3 @@ type: Object, | ||
it('allows an empty object', function () { | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
blackBoxObject: {} | ||
@@ -26,3 +26,3 @@ }).toEqual(0); | ||
it('allows any properties', function () { | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
blackBoxObject: { | ||
@@ -34,3 +34,3 @@ foo: 'bar' | ||
it('allows any properties on $set object', function () { | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
$set: { | ||
@@ -46,3 +46,3 @@ blackBoxObject: { | ||
it('allows to $set any subobject', function () { | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
$set: { | ||
@@ -54,3 +54,3 @@ 'blackBoxObject.foo': 'bar' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
$set: { | ||
@@ -64,3 +64,3 @@ 'blackBoxObject.1': 'bar' | ||
it('allows to $push into any subobject', function () { | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
$push: { | ||
@@ -67,0 +67,0 @@ 'blackBoxObject.foo': 'bar' |
@@ -11,6 +11,6 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
/* eslint-disable func-names, prefer-arrow-callback */ | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
password: { | ||
@@ -21,4 +21,3 @@ type: String | ||
type: String, | ||
custom() { | ||
custom: function custom() { | ||
if (this.value !== this.field('password').value) { | ||
@@ -28,33 +27,24 @@ return 'passwordMismatch'; | ||
} | ||
} | ||
}); | ||
const requiredCustomSchema = new _SimpleSchema.SimpleSchema({ | ||
var requiredCustomSchema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
type: Array, | ||
custom() {// Just adding custom to trigger extra validation | ||
custom: function custom() {// Just adding custom to trigger extra validation | ||
} | ||
}, | ||
'a.$': { | ||
type: Object, | ||
custom() {// Just adding custom to trigger extra validation | ||
custom: function custom() {// Just adding custom to trigger extra validation | ||
} | ||
}, | ||
b: { | ||
type: Array, | ||
custom() {// Just adding custom to trigger extra validation | ||
custom: function custom() {// Just adding custom to trigger extra validation | ||
} | ||
}, | ||
'b.$': { | ||
type: Object, | ||
custom() {// Just adding custom to trigger extra validation | ||
custom: function custom() {// Just adding custom to trigger extra validation | ||
} | ||
} | ||
@@ -65,3 +55,3 @@ }); | ||
it('valid', function () { | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
password: 'password', | ||
@@ -72,3 +62,3 @@ confirmPassword: 'password' | ||
it('invalid', function () { | ||
(0, _expectErrorOfTypeLength.default)('passwordMismatch', schema, { | ||
(0, _expectErrorOfTypeLength["default"])('passwordMismatch', schema, { | ||
password: 'password', | ||
@@ -81,3 +71,3 @@ confirmPassword: 'password1' | ||
it('valid', function () { | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
$setOnInsert: { | ||
@@ -93,3 +83,3 @@ password: 'password', | ||
it('invalid', function () { | ||
(0, _expectErrorOfTypeLength.default)('passwordMismatch', schema, { | ||
(0, _expectErrorOfTypeLength["default"])('passwordMismatch', schema, { | ||
$setOnInsert: { | ||
@@ -107,3 +97,3 @@ password: 'password', | ||
it('valid', function () { | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
$set: { | ||
@@ -118,3 +108,3 @@ password: 'password', | ||
it('invalid', function () { | ||
(0, _expectErrorOfTypeLength.default)('passwordMismatch', schema, { | ||
(0, _expectErrorOfTypeLength["default"])('passwordMismatch', schema, { | ||
$set: { | ||
@@ -132,29 +122,29 @@ password: 'password', | ||
it('custom validator has this.validationContext set', function () { | ||
let ok = false; | ||
const customSchema = new _SimpleSchema.SimpleSchema({ | ||
var ok = false; | ||
var customSchema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
type: String, | ||
optional: true, | ||
custom() { | ||
custom: function custom() { | ||
if (this.validationContext instanceof _SimpleSchema.ValidationContext) ok = true; | ||
} | ||
} | ||
}); | ||
customSchema.namedContext().validate({}); | ||
(0, _expect.default)(ok).toBe(true); | ||
(0, _expect["default"])(ok).toBe(true); | ||
}); | ||
it('custom validation runs even when the optional field is undefined', function () { | ||
const customSchema = new _SimpleSchema.SimpleSchema({ | ||
var customSchema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
type: String, | ||
optional: true, | ||
custom: () => 'custom' | ||
custom: function custom() { | ||
return 'custom'; | ||
} | ||
} | ||
}); | ||
const context = customSchema.namedContext(); | ||
var context = customSchema.namedContext(); | ||
context.validate({}); | ||
(0, _expect.default)(context.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(context.validationErrors()[0]).toEqual({ | ||
(0, _expect["default"])(context.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(context.validationErrors()[0]).toEqual({ | ||
name: 'foo', | ||
@@ -166,10 +156,12 @@ type: 'custom', | ||
it('custom validation runs when string is unset', function () { | ||
const customSchema = new _SimpleSchema.SimpleSchema({ | ||
var customSchema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
type: String, | ||
optional: true, | ||
custom: () => 'custom' | ||
custom: function custom() { | ||
return 'custom'; | ||
} | ||
} | ||
}); | ||
const context = customSchema.namedContext(); | ||
var context = customSchema.namedContext(); | ||
context.validate({ | ||
@@ -182,4 +174,4 @@ $unset: { | ||
}); | ||
(0, _expect.default)(context.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(context.validationErrors()[0]).toEqual({ | ||
(0, _expect["default"])(context.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(context.validationErrors()[0]).toEqual({ | ||
name: 'foo', | ||
@@ -191,4 +183,4 @@ type: 'custom', | ||
it('we do not get required errors for a required field that has a `custom` function when we are $setting', function () { | ||
const context = requiredCustomSchema.namedContext(); | ||
(0, _expect.default)(context.validate({ | ||
var context = requiredCustomSchema.namedContext(); | ||
(0, _expect["default"])(context.validate({ | ||
$set: { | ||
@@ -200,3 +192,3 @@ a: [{}] | ||
})).toEqual(true); | ||
(0, _expect.default)(context.validate({ | ||
(0, _expect["default"])(context.validate({ | ||
$set: { | ||
@@ -210,4 +202,4 @@ 'a.0': {} | ||
it('we do not get required errors for a required field that has a `custom` function when we are $pushing', function () { | ||
const context = requiredCustomSchema.namedContext(); | ||
(0, _expect.default)(context.validate({ | ||
var context = requiredCustomSchema.namedContext(); | ||
(0, _expect["default"])(context.validate({ | ||
$push: { | ||
@@ -214,0 +206,0 @@ a: {} |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,4 +13,4 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('throws an error when the schema definition includes an unrecognized key', function () { | ||
(0, _expect.default)(() => { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
(0, _expect["default"])(function () { | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
// eslint-disable-line no-unused-vars | ||
@@ -29,4 +29,4 @@ name: { | ||
(0, _expect.default)(() => { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
(0, _expect["default"])(function () { | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
// eslint-disable-line no-unused-vars | ||
@@ -33,0 +33,0 @@ name: { |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -14,3 +14,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('top level object', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Object, | ||
@@ -29,4 +29,4 @@ 'foo.aaa': { | ||
}); | ||
const newSchema = schema.getObjectSchema('foo'); | ||
(0, _expect.default)(newSchema.mergedSchema()).toEqual({ | ||
var newSchema = schema.getObjectSchema('foo'); | ||
(0, _expect["default"])(newSchema.mergedSchema()).toEqual({ | ||
aaa: { | ||
@@ -50,3 +50,3 @@ type: _SimpleSchema.SimpleSchema.oneOf(String), | ||
it('second level object', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Object, | ||
@@ -65,4 +65,4 @@ 'foo.aaa': { | ||
}); | ||
const newSchema = schema.getObjectSchema('foo.bbb'); | ||
(0, _expect.default)(newSchema.mergedSchema()).toEqual({ | ||
var newSchema = schema.getObjectSchema('foo.bbb'); | ||
(0, _expect["default"])(newSchema.mergedSchema()).toEqual({ | ||
zzz: { | ||
@@ -76,3 +76,3 @@ type: _SimpleSchema.SimpleSchema.oneOf(Number), | ||
it('object in array', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Object, | ||
@@ -94,4 +94,4 @@ 'foo.aaa': { | ||
}); | ||
const newSchema = schema.getObjectSchema('foo.aaa.$'); | ||
(0, _expect.default)(newSchema.mergedSchema()).toEqual({ | ||
var newSchema = schema.getObjectSchema('foo.aaa.$'); | ||
(0, _expect["default"])(newSchema.mergedSchema()).toEqual({ | ||
zzz: { | ||
@@ -110,3 +110,3 @@ type: _SimpleSchema.SimpleSchema.oneOf(String), | ||
it('subschema', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: new _SimpleSchema.SimpleSchema({ | ||
@@ -126,4 +126,4 @@ aaa: { | ||
}); | ||
const newSchema = schema.getObjectSchema('foo'); | ||
(0, _expect.default)(newSchema.mergedSchema()).toEqual({ | ||
var newSchema = schema.getObjectSchema('foo'); | ||
(0, _expect["default"])(newSchema.mergedSchema()).toEqual({ | ||
aaa: { | ||
@@ -130,0 +130,0 @@ type: _SimpleSchema.SimpleSchema.oneOf(String), |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -14,96 +14,96 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('string', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: String | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('string'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('string'); | ||
}); | ||
it('number', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Number | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('number'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('number'); | ||
}); | ||
it('int', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: _SimpleSchema.SimpleSchema.Integer | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('number'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('number'); | ||
}); | ||
it('boolean', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Boolean | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('boolean'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('boolean'); | ||
}); | ||
it('date', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Date | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('date'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('date'); | ||
}); | ||
it('object', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: Object | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('object'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('object'); | ||
}); | ||
it('stringArray', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: [String] | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('stringArray'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('stringArray'); | ||
}); | ||
it('numberArray', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: [Number] | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('numberArray'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('numberArray'); | ||
}); | ||
it('int array', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: [_SimpleSchema.SimpleSchema.Integer] | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('numberArray'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('numberArray'); | ||
}); | ||
it('booleanArray', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: [Boolean] | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('booleanArray'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('booleanArray'); | ||
}); | ||
it('dateArray', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: [Date] | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('dateArray'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('dateArray'); | ||
}); | ||
it('objectArray', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: [Object] | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('objectArray'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('objectArray'); | ||
}); | ||
it('objectArray (subschema)', function () { | ||
const subschema = new _SimpleSchema.SimpleSchema({ | ||
var subschema = new _SimpleSchema.SimpleSchema({ | ||
bar: String | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: [subschema] | ||
}); | ||
const type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect.default)(type).toBe('objectArray'); | ||
var type = schema.getQuickTypeForKey('foo'); | ||
(0, _expect["default"])(type).toBe('objectArray'); | ||
}); | ||
}); | ||
}); |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,3 +13,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('inflection', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
minMaxNumber: { | ||
@@ -25,7 +25,7 @@ type: _SimpleSchema.SimpleSchema.Integer | ||
}); | ||
(0, _expect.default)(schema.label('minMaxNumber')).toEqual('Min max number'); | ||
(0, _expect.default)(schema.label('obj.someString')).toEqual('Some string'); | ||
(0, _expect["default"])(schema.label('minMaxNumber')).toEqual('Min max number'); | ||
(0, _expect["default"])(schema.label('obj.someString')).toEqual('Some string'); | ||
}); | ||
it('dynamic', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
minMaxNumber: { | ||
@@ -41,10 +41,10 @@ type: _SimpleSchema.SimpleSchema.Integer | ||
}); | ||
(0, _expect.default)(schema.label('obj.someString')).toEqual('Some string'); | ||
(0, _expect["default"])(schema.label('obj.someString')).toEqual('Some string'); | ||
schema.labels({ | ||
'obj.someString': 'A different label' | ||
}); | ||
(0, _expect.default)(schema.label('obj.someString')).toEqual('A different label'); | ||
(0, _expect["default"])(schema.label('obj.someString')).toEqual('A different label'); | ||
}); | ||
it('callback', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
minMaxNumber: { | ||
@@ -60,10 +60,12 @@ type: _SimpleSchema.SimpleSchema.Integer | ||
}); | ||
(0, _expect.default)(schema.label('obj.someString')).toEqual('Some string'); | ||
(0, _expect["default"])(schema.label('obj.someString')).toEqual('Some string'); | ||
schema.labels({ | ||
'obj.someString': () => 'A callback label' | ||
'obj.someString': function objSomeString() { | ||
return 'A callback label'; | ||
} | ||
}); | ||
(0, _expect.default)(schema.label('obj.someString')).toEqual('A callback label'); | ||
(0, _expect["default"])(schema.label('obj.someString')).toEqual('A callback label'); | ||
}); | ||
it('should allow apostrophes ("\'") in labels', () => { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
it('should allow apostrophes ("\'") in labels', function () { | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -74,4 +76,4 @@ type: String, | ||
}); | ||
(0, _expect.default)(schema.label('foo')).toEqual('Manager/supervisor\'s name'); | ||
(0, _expect["default"])(schema.label('foo')).toEqual('Manager/supervisor\'s name'); | ||
}); | ||
}); |
@@ -13,3 +13,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -20,15 +20,15 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxString: 'nottoolongnottoolong' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxString: 'toolongtoolongtoolong' | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxStringArray: ['nottoolongnottoolong', 'nottoolongnottoolong'] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxStringArray: ['toolongtoolongtoolong', 'toolongtoolongtoolong'] | ||
}).toEqual(2); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxStringArray: ['nottoolongnottoolong', 'nottoolongnottoolong', 'nottoolongnottoolong'] | ||
@@ -38,12 +38,12 @@ }).toEqual(1); | ||
it('number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumber: 20 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumber: 21 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumberCalculated: 20 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumberCalculated: 21 | ||
@@ -53,12 +53,12 @@ }).toEqual(1); | ||
it('date', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxDate: new Date(Date.UTC(2013, 11, 31)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxDate: new Date(Date.UTC(2014, 0, 1)) | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxDateCalculated: new Date(Date.UTC(2013, 11, 31)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxDateCalculated: new Date(Date.UTC(2014, 0, 1)) | ||
@@ -70,3 +70,3 @@ }).toEqual(1); | ||
it('string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -79,3 +79,3 @@ minMaxString: 'nottoolongnottoolong' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -88,3 +88,3 @@ minMaxString: 'toolongtoolongtoolong' | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -97,3 +97,3 @@ minMaxStringArray: ['nottoolongnottoolong', 'nottoolongnottoolong'] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -106,3 +106,3 @@ minMaxStringArray: ['toolongtoolongtoolong', 'toolongtoolongtoolong'] | ||
}).toEqual(2); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -117,3 +117,3 @@ minMaxStringArray: ['nottoolongnottoolong', 'nottoolongnottoolong', 'nottoolongnottoolong'] | ||
it('number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -126,3 +126,3 @@ minMaxNumber: 20 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -135,3 +135,3 @@ minMaxNumber: 21 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -144,3 +144,3 @@ minMaxNumberCalculated: 20 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -155,3 +155,3 @@ minMaxNumberCalculated: 21 | ||
it('date', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -164,3 +164,3 @@ minMaxDate: new Date(Date.UTC(2013, 11, 31)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -173,3 +173,3 @@ minMaxDate: new Date(Date.UTC(2014, 0, 1)) | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -182,3 +182,3 @@ minMaxDateCalculated: new Date(Date.UTC(2013, 11, 31)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -195,3 +195,3 @@ minMaxDateCalculated: new Date(Date.UTC(2014, 0, 1)) | ||
it('string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -203,3 +203,3 @@ minMaxString: 'nottoolongnottoolong' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -211,3 +211,3 @@ minMaxString: 'toolongtoolongtoolong' | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -219,3 +219,3 @@ minMaxStringArray: ['nottoolongnottoolong', 'nottoolongnottoolong'] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -227,3 +227,3 @@ minMaxStringArray: ['toolongtoolongtoolong', 'toolongtoolongtoolong'] | ||
}).toEqual(2); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -237,3 +237,3 @@ minMaxStringArray: ['nottoolongnottoolong', 'nottoolongnottoolong', 'nottoolongnottoolong'] | ||
it('number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -245,3 +245,3 @@ minMaxNumber: 20 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -253,3 +253,3 @@ minMaxNumber: 21 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -261,3 +261,3 @@ minMaxNumberCalculated: 20 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -269,3 +269,3 @@ minMaxNumberCalculated: 21 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -278,3 +278,3 @@ maxZero: 1 | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$inc: { | ||
@@ -288,3 +288,3 @@ maxZero: 5 | ||
it('date', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -296,3 +296,3 @@ minMaxDate: new Date(Date.UTC(2013, 11, 31)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -304,3 +304,3 @@ minMaxDate: new Date(Date.UTC(2014, 0, 1)) | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -312,3 +312,3 @@ minMaxDateCalculated: new Date(Date.UTC(2013, 11, 31)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -324,3 +324,3 @@ minMaxDateCalculated: new Date(Date.UTC(2014, 0, 1)) | ||
it('valid', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema["default"], { | ||
$push: { | ||
@@ -337,3 +337,3 @@ friends: { | ||
it('invalid', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema["default"], { | ||
$push: { | ||
@@ -352,3 +352,3 @@ friends: { | ||
it('valid', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema["default"], { | ||
$push: { | ||
@@ -370,3 +370,3 @@ friends: { | ||
it('invalid', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema["default"], { | ||
$push: { | ||
@@ -390,3 +390,3 @@ friends: { | ||
it('valid', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema["default"], { | ||
$addToSet: { | ||
@@ -403,3 +403,3 @@ friends: { | ||
it('invalid', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema["default"], { | ||
$addToSet: { | ||
@@ -418,3 +418,3 @@ friends: { | ||
it('valid', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema["default"], { | ||
$addToSet: { | ||
@@ -436,3 +436,3 @@ friends: { | ||
it('invalid', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.MAX_STRING, _friendsSchema["default"], { | ||
$addToSet: { | ||
@@ -439,0 +439,0 @@ friends: { |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -14,11 +14,11 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('required', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: String | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo is required'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo is required'); | ||
}); | ||
it('minString', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -29,10 +29,10 @@ type: String, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 'a' | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo must be at least 2 characters'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo must be at least 2 characters'); | ||
}); | ||
it('maxString', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -43,10 +43,10 @@ type: String, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 'abc' | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo cannot exceed 2 characters'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo cannot exceed 2 characters'); | ||
}); | ||
it('minNumber', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -57,10 +57,10 @@ type: Number, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 1.5 | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo must be at least 2'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo must be at least 2'); | ||
}); | ||
it('maxNumber', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -71,10 +71,10 @@ type: Number, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 2.5 | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo cannot exceed 2'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo cannot exceed 2'); | ||
}); | ||
it('minNumberExclusive', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -86,10 +86,10 @@ type: Number, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 2 | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo must be greater than 2'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo must be greater than 2'); | ||
}); | ||
it('maxNumberExclusive', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -101,10 +101,10 @@ type: Number, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 2 | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo must be less than 2'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo must be less than 2'); | ||
}); | ||
it('minDate', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -115,10 +115,10 @@ type: Date, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: new Date(Date.UTC(2015, 10, 15, 0, 0, 0, 0)) | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo must be on or after 2015-12-15'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo must be on or after 2015-12-15'); | ||
}); | ||
it('maxDate', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -129,10 +129,10 @@ type: Date, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: new Date(Date.UTC(2016, 1, 15, 0, 0, 0, 0)) | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo cannot be after 2015-12-15'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo cannot be after 2015-12-15'); | ||
}); | ||
it('badDate', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -142,10 +142,10 @@ type: Date | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: new Date('invalid') | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo is not a valid date'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo is not a valid date'); | ||
}); | ||
it('minCount', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -157,10 +157,10 @@ type: Array, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: [1] | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('You must specify at least 2 values'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('You must specify at least 2 values'); | ||
}); | ||
it('maxCount', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -172,20 +172,20 @@ type: Array, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: [1, 2, 3] | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('You cannot specify more than 2 values'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('You cannot specify more than 2 values'); | ||
}); | ||
it('noDecimal', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: _SimpleSchema.SimpleSchema.Integer | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 1.5 | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo must be an integer'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo must be an integer'); | ||
}); | ||
it('notAllowed', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -196,20 +196,20 @@ type: String, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 'd' | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('d is not an allowed value'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('d is not an allowed value'); | ||
}); | ||
it('expectedType', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: String | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 1 | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo must be of type String'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo must be of type String'); | ||
}); | ||
it('regEx built in', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -220,10 +220,10 @@ type: String, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 'abc' | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo must be a valid email address'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo must be a valid email address'); | ||
}); | ||
it('regEx other', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -234,21 +234,21 @@ type: String, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 'abc' | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Foo failed regular expression validation'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Foo failed regular expression validation'); | ||
}); | ||
describe('keyNotInSchema', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: String | ||
}); | ||
it('normal', function () { | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
bar: 1 | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('bar')).toBe('bar is not allowed by the schema'); | ||
(0, _expect["default"])(context.keyErrorMessage('bar')).toBe('bar is not allowed by the schema'); | ||
}); | ||
it('$set', function () { | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
@@ -261,6 +261,6 @@ $set: { | ||
}); | ||
(0, _expect.default)(context.keyErrorMessage('bar')).toBe('bar is not allowed by the schema'); | ||
(0, _expect["default"])(context.keyErrorMessage('bar')).toBe('bar is not allowed by the schema'); | ||
}); | ||
it('$unset does not complain', function () { | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
@@ -273,7 +273,7 @@ $unset: { | ||
}); | ||
(0, _expect.default)(context.isValid()).toBe(true); | ||
(0, _expect["default"])(context.isValid()).toBe(true); | ||
}); | ||
}); | ||
it('should allow labels with apostrophes ("\'") in messages', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -284,9 +284,9 @@ type: String, | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Manager/supervisor\'s name is required'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Manager/supervisor\'s name is required'); | ||
}); | ||
}); | ||
describe('multipleSchema', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: String | ||
@@ -301,3 +301,3 @@ }); | ||
}); | ||
const schema2 = new _SimpleSchema.SimpleSchema({ | ||
var schema2 = new _SimpleSchema.SimpleSchema({ | ||
foo: String, | ||
@@ -314,7 +314,7 @@ bar: Number | ||
it('should keep message boxes separate between objects', function () { | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({}); | ||
(0, _expect.default)(context.keyErrorMessage('foo')).toBe('Your foo is required mate'); | ||
(0, _expect["default"])(context.keyErrorMessage('foo')).toBe('Your foo is required mate'); | ||
}); | ||
}); | ||
}); |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -14,18 +14,18 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxString: 'longenough' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxString: 'short' | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxString: '' | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxStringArray: ['longenough', 'longenough'] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxStringArray: ['longenough', 'short'] | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxStringArray: ['short', 'short'] | ||
@@ -35,27 +35,27 @@ }).toEqual(2); | ||
it('number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumberExclusive: 20 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumberExclusive: 10 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumberInclusive: 20 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumberInclusive: 10 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumber: 10 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumber: 9 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumberCalculated: 10 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxNumberCalculated: 9 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minZero: -1 | ||
@@ -65,12 +65,12 @@ }).toEqual(1); | ||
it('date', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxDate: new Date(Date.UTC(2013, 0, 1)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxDate: new Date(Date.UTC(2012, 11, 31)) | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxDateCalculated: new Date(Date.UTC(2013, 0, 1)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
minMaxDateCalculated: new Date(Date.UTC(2012, 11, 31)) | ||
@@ -82,3 +82,3 @@ }).toEqual(1); | ||
it('string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -91,3 +91,3 @@ minMaxString: 'longenough' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -100,3 +100,3 @@ minMaxString: 'short' | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -109,3 +109,3 @@ minMaxStringArray: ['longenough', 'longenough'] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -118,3 +118,3 @@ minMaxStringArray: ['longenough', 'short'] | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -129,3 +129,3 @@ minMaxStringArray: ['short', 'short'] | ||
it('number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -138,3 +138,3 @@ minMaxNumber: 10 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -147,3 +147,3 @@ minMaxNumber: 9 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -156,3 +156,3 @@ minMaxNumberCalculated: 10 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -165,3 +165,3 @@ minMaxNumberCalculated: 9 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -176,3 +176,3 @@ minZero: -1 | ||
it('date', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -185,3 +185,3 @@ minMaxDate: new Date(Date.UTC(2013, 0, 1)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -194,3 +194,3 @@ minMaxDate: new Date(Date.UTC(2012, 11, 31)) | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -203,3 +203,3 @@ minMaxDateCalculated: new Date(Date.UTC(2013, 0, 1)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -216,3 +216,3 @@ minMaxDateCalculated: new Date(Date.UTC(2012, 11, 31)) | ||
it('string', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -224,3 +224,3 @@ minMaxString: 'longenough' | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -232,3 +232,3 @@ minMaxString: 'short' | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -240,3 +240,3 @@ minMaxStringArray: ['longenough', 'longenough'] | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -248,3 +248,3 @@ minMaxStringArray: ['longenough', 'short'] | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -258,3 +258,3 @@ minMaxStringArray: ['short', 'short'] | ||
it('number', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -266,3 +266,3 @@ minMaxNumber: 10 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -274,3 +274,3 @@ minMaxNumber: 9 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -282,3 +282,3 @@ minMaxNumberCalculated: 10 | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -290,3 +290,3 @@ minMaxNumberCalculated: 9 | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -299,3 +299,3 @@ minZero: -1 | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$inc: { | ||
@@ -309,3 +309,3 @@ minZero: -5 | ||
it('date', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -317,3 +317,3 @@ minMaxDate: new Date(Date.UTC(2013, 0, 1)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -325,3 +325,3 @@ minMaxDate: new Date(Date.UTC(2012, 11, 31)) | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -333,3 +333,3 @@ minMaxDateCalculated: new Date(Date.UTC(2013, 0, 1)) | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$set: { | ||
@@ -336,0 +336,0 @@ minMaxDateCalculated: new Date(Date.UTC(2012, 11, 31)) |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,7 +13,7 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('ensures array count is at least the minimum', function () { | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
friends: [], | ||
enemies: [] | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -25,3 +25,3 @@ friends: [] | ||
}).toEqual(1); | ||
(0, _expectErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectErrorLength["default"])(_friendsSchema["default"], { | ||
$setOnInsert: { | ||
@@ -28,0 +28,0 @@ friends: [], |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,3 +13,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('omit', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -31,11 +31,11 @@ type: Object | ||
}); | ||
let newSchema = schema.omit('foo'); | ||
(0, _expect.default)(Object.keys(newSchema.schema())).toEqual(['fooArray', 'fooArray.$', 'fooArray.$.bar']); | ||
var newSchema = schema.omit('foo'); | ||
(0, _expect["default"])(Object.keys(newSchema.schema())).toEqual(['fooArray', 'fooArray.$', 'fooArray.$.bar']); | ||
newSchema = schema.omit('fooArray'); | ||
(0, _expect.default)(Object.keys(newSchema.schema())).toEqual(['foo', 'foo.bar']); | ||
(0, _expect["default"])(Object.keys(newSchema.schema())).toEqual(['foo', 'foo.bar']); | ||
newSchema = schema.omit('foo', 'fooArray'); | ||
(0, _expect.default)(Object.keys(newSchema.schema())).toEqual([]); | ||
(0, _expect["default"])(Object.keys(newSchema.schema())).toEqual([]); | ||
newSchema = schema.omit('blah'); | ||
(0, _expect.default)(Object.keys(newSchema.schema())).toEqual(['foo', 'foo.bar', 'fooArray', 'fooArray.$', 'fooArray.$.bar']); | ||
(0, _expect["default"])(Object.keys(newSchema.schema())).toEqual(['foo', 'foo.bar', 'fooArray', 'fooArray.$', 'fooArray.$.bar']); | ||
}); | ||
}); |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -14,51 +14,51 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('allows either type', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: _SimpleSchema.SimpleSchema.oneOf(String, Number, Date) | ||
}); | ||
const test1 = { | ||
var test1 = { | ||
foo: 1 | ||
}; | ||
(0, _expect.default)(function test1func() { | ||
(0, _expect["default"])(function test1func() { | ||
schema.validate(test1); | ||
}).toNotThrow(); | ||
(0, _expect.default)(test1.foo).toBeA('number'); | ||
const test2 = { | ||
(0, _expect["default"])(test1.foo).toBeA('number'); | ||
var test2 = { | ||
foo: 'bar' | ||
}; | ||
(0, _expect.default)(function test2func() { | ||
(0, _expect["default"])(function test2func() { | ||
schema.validate(test2); | ||
}).toNotThrow(); | ||
(0, _expect.default)(test2.foo).toBeA('string'); | ||
const test3 = { | ||
(0, _expect["default"])(test2.foo).toBeA('string'); | ||
var test3 = { | ||
foo: new Date() | ||
}; | ||
(0, _expect.default)(function test2func() { | ||
(0, _expect["default"])(function test2func() { | ||
schema.validate(test3); | ||
}).toNotThrow(); | ||
(0, _expect.default)(test3.foo instanceof Date).toBe(true); | ||
const test4 = { | ||
(0, _expect["default"])(test3.foo instanceof Date).toBe(true); | ||
var test4 = { | ||
foo: false | ||
}; | ||
(0, _expect.default)(function test3func() { | ||
(0, _expect["default"])(function test3func() { | ||
schema.validate(test4); | ||
}).toThrow(); | ||
(0, _expect.default)(test4.foo).toBeA('boolean'); | ||
(0, _expect["default"])(test4.foo).toBeA('boolean'); | ||
}); | ||
it.skip('allows either type including schemas', function () { | ||
const schemaOne = new _SimpleSchema.SimpleSchema({ | ||
var schemaOne = new _SimpleSchema.SimpleSchema({ | ||
itemRef: String, | ||
partNo: String | ||
}); | ||
const schemaTwo = new _SimpleSchema.SimpleSchema({ | ||
var schemaTwo = new _SimpleSchema.SimpleSchema({ | ||
anotherIdentifier: String, | ||
partNo: String | ||
}); | ||
const combinedSchema = new _SimpleSchema.SimpleSchema({ | ||
var combinedSchema = new _SimpleSchema.SimpleSchema({ | ||
item: _SimpleSchema.SimpleSchema.oneOf(String, schemaOne, schemaTwo) | ||
}); | ||
let isValid = combinedSchema.namedContext().validate({ | ||
var isValid = combinedSchema.namedContext().validate({ | ||
item: 'foo' | ||
}); | ||
console.log(combinedSchema.namedContext().validationErrors()); | ||
(0, _expect.default)(isValid).toBe(true); | ||
(0, _expect["default"])(isValid).toBe(true); | ||
isValid = combinedSchema.namedContext().validate({ | ||
@@ -71,3 +71,3 @@ item: { | ||
console.log(combinedSchema.namedContext().validationErrors()); | ||
(0, _expect.default)(isValid).toBe(true); | ||
(0, _expect["default"])(isValid).toBe(true); | ||
isValid = combinedSchema.namedContext().validate({ | ||
@@ -80,6 +80,6 @@ item: { | ||
console.log(combinedSchema.namedContext().validationErrors()); | ||
(0, _expect.default)(isValid).toBe(true); | ||
(0, _expect["default"])(isValid).toBe(true); | ||
}); | ||
it('is valid as long as one min value is met', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: _SimpleSchema.SimpleSchema.oneOf({ | ||
@@ -93,3 +93,3 @@ type: _SimpleSchema.SimpleSchema.Integer, | ||
}); | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
schema.validate({ | ||
@@ -101,3 +101,3 @@ foo: 7 | ||
it('is invalid if neither min value is met', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: _SimpleSchema.SimpleSchema.oneOf({ | ||
@@ -111,3 +111,3 @@ type: _SimpleSchema.SimpleSchema.Integer, | ||
}); | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
schema.validate({ | ||
@@ -114,0 +114,0 @@ foo: 3 |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,3 +13,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('pick', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -31,13 +31,13 @@ type: Object | ||
}); | ||
let newSchema = schema.pick('foo'); | ||
(0, _expect.default)(Object.keys(newSchema.schema())).toEqual(['foo', 'foo.bar']); | ||
var newSchema = schema.pick('foo'); | ||
(0, _expect["default"])(Object.keys(newSchema.schema())).toEqual(['foo', 'foo.bar']); | ||
newSchema = schema.pick('fooArray'); | ||
(0, _expect.default)(Object.keys(newSchema.schema())).toEqual(['fooArray', 'fooArray.$', 'fooArray.$.bar']); | ||
(0, _expect["default"])(Object.keys(newSchema.schema())).toEqual(['fooArray', 'fooArray.$', 'fooArray.$.bar']); | ||
newSchema = schema.pick('foo', 'fooArray'); | ||
(0, _expect.default)(Object.keys(newSchema.schema())).toEqual(['foo', 'foo.bar', 'fooArray', 'fooArray.$', 'fooArray.$.bar']); | ||
(0, _expect["default"])(Object.keys(newSchema.schema())).toEqual(['foo', 'foo.bar', 'fooArray', 'fooArray.$', 'fooArray.$.bar']); | ||
newSchema = schema.pick('blah'); | ||
(0, _expect.default)(Object.keys(newSchema.schema())).toEqual([]); | ||
(0, _expect["default"])(Object.keys(newSchema.schema())).toEqual([]); | ||
}); | ||
it('error when you do not pick the parent', () => { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
it('error when you do not pick the parent', function () { | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
level1: { | ||
@@ -50,3 +50,3 @@ type: Object | ||
}); | ||
(0, _expect.default)(() => { | ||
(0, _expect["default"])(function () { | ||
schema.pick('level1.level2'); | ||
@@ -53,0 +53,0 @@ }).toThrow('"level1.level2" is in the schema but "level1" is not'); |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -14,3 +14,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
// Make sure no regEx errors for optional | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -22,7 +22,7 @@ type: String, | ||
}); | ||
(0, _expect.default)(schema.newContext().validate({})).toEqual(true); | ||
(0, _expect.default)(schema.newContext().validate({ | ||
(0, _expect["default"])(schema.newContext().validate({})).toEqual(true); | ||
(0, _expect["default"])(schema.newContext().validate({ | ||
foo: null | ||
})).toEqual(true); | ||
(0, _expect.default)(schema.newContext().validate({ | ||
(0, _expect["default"])(schema.newContext().validate({ | ||
foo: '' | ||
@@ -32,3 +32,3 @@ })).toEqual(false); | ||
it('Built-In RegEx and Messages', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
email: { | ||
@@ -80,51 +80,51 @@ type: String, | ||
}); | ||
const c1 = schema.newContext(); | ||
var c1 = schema.newContext(); | ||
c1.validate({ | ||
email: 'foo' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('email')).toEqual('Email must be a valid email address'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('email')).toEqual('Email must be a valid email address'); | ||
c1.validate({ | ||
emailWithTLD: 'foo' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('emailWithTLD')).toEqual('Email with tld must be a valid email address'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('emailWithTLD')).toEqual('Email with tld must be a valid email address'); | ||
c1.validate({ | ||
domain: 'foo' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('domain')).toEqual('Domain must be a valid domain'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('domain')).toEqual('Domain must be a valid domain'); | ||
c1.validate({ | ||
weakDomain: '///jioh779&%' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('weakDomain')).toEqual('Weak domain must be a valid domain'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('weakDomain')).toEqual('Weak domain must be a valid domain'); | ||
c1.validate({ | ||
ip: 'foo' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('ip')).toEqual('Ip must be a valid IPv4 or IPv6 address'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('ip')).toEqual('Ip must be a valid IPv4 or IPv6 address'); | ||
c1.validate({ | ||
ip4: 'foo' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('ip4')).toEqual('Ip4 must be a valid IPv4 address'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('ip4')).toEqual('Ip4 must be a valid IPv4 address'); | ||
c1.validate({ | ||
ip6: 'foo' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('ip6')).toEqual('Ip6 must be a valid IPv6 address'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('ip6')).toEqual('Ip6 must be a valid IPv6 address'); | ||
c1.validate({ | ||
url: 'foo' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('url')).toEqual('Url must be a valid URL'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('url')).toEqual('Url must be a valid URL'); | ||
c1.validate({ | ||
id: '%#$%' | ||
}); | ||
(0, _expect.default)(c1.validationErrors().length).toEqual(1); | ||
(0, _expect.default)(c1.keyErrorMessage('id')).toEqual('ID must be a valid alphanumeric ID'); | ||
(0, _expect["default"])(c1.validationErrors().length).toEqual(1); | ||
(0, _expect["default"])(c1.keyErrorMessage('id')).toEqual('ID must be a valid alphanumeric ID'); | ||
}); | ||
it('Optional regEx in subobject', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -140,8 +140,8 @@ type: Object, | ||
}); | ||
const context = schema.namedContext(); | ||
(0, _expect.default)(context.validate({})).toEqual(true); | ||
(0, _expect.default)(context.validate({ | ||
var context = schema.namedContext(); | ||
(0, _expect["default"])(context.validate({})).toEqual(true); | ||
(0, _expect["default"])(context.validate({ | ||
foo: {} | ||
})).toEqual(true); | ||
(0, _expect.default)(context.validate({ | ||
(0, _expect["default"])(context.validate({ | ||
foo: { | ||
@@ -151,3 +151,3 @@ url: null | ||
})).toEqual(true); | ||
(0, _expect.default)(context.validate({ | ||
(0, _expect["default"])(context.validate({ | ||
$set: { | ||
@@ -159,3 +159,3 @@ foo: {} | ||
})).toEqual(true); | ||
(0, _expect.default)(context.validate({ | ||
(0, _expect["default"])(context.validate({ | ||
$set: { | ||
@@ -167,3 +167,3 @@ 'foo.url': null | ||
})).toEqual(true); | ||
(0, _expect.default)(context.validate({ | ||
(0, _expect["default"])(context.validate({ | ||
$unset: { | ||
@@ -177,10 +177,10 @@ 'foo.url': '' | ||
it('SimpleSchema.RegEx.Email', function () { | ||
const expr = _SimpleSchema.SimpleSchema.RegEx.Email; | ||
var expr = _SimpleSchema.SimpleSchema.RegEx.Email; | ||
function isTrue(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(true); | ||
(0, _expect["default"])(expr.test(s)).toBe(true); | ||
} | ||
function isFalse(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(false); | ||
(0, _expect["default"])(expr.test(s)).toBe(false); | ||
} | ||
@@ -199,10 +199,10 @@ | ||
it('SimpleSchema.RegEx.EmailWithTLD', function () { | ||
const expr = _SimpleSchema.SimpleSchema.RegEx.EmailWithTLD; | ||
var expr = _SimpleSchema.SimpleSchema.RegEx.EmailWithTLD; | ||
function isTrue(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(true); | ||
(0, _expect["default"])(expr.test(s)).toBe(true); | ||
} | ||
function isFalse(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(false); | ||
(0, _expect["default"])(expr.test(s)).toBe(false); | ||
} | ||
@@ -221,10 +221,10 @@ | ||
it('SimpleSchema.RegEx.Domain', function () { | ||
const expr = _SimpleSchema.SimpleSchema.RegEx.Domain; | ||
var expr = _SimpleSchema.SimpleSchema.RegEx.Domain; | ||
function isTrue(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(true); | ||
(0, _expect["default"])(expr.test(s)).toBe(true); | ||
} | ||
function isFalse(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(false); | ||
(0, _expect["default"])(expr.test(s)).toBe(false); | ||
} | ||
@@ -238,6 +238,6 @@ | ||
it('SimpleSchema.RegEx.WeakDomain', function () { | ||
const expr = _SimpleSchema.SimpleSchema.RegEx.WeakDomain; | ||
var expr = _SimpleSchema.SimpleSchema.RegEx.WeakDomain; | ||
function isTrue(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(true); | ||
(0, _expect["default"])(expr.test(s)).toBe(true); | ||
} | ||
@@ -251,10 +251,10 @@ | ||
it('SimpleSchema.RegEx.IP', function () { | ||
const expr = _SimpleSchema.SimpleSchema.RegEx.IP; | ||
var expr = _SimpleSchema.SimpleSchema.RegEx.IP; | ||
function isTrue(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(true); | ||
(0, _expect["default"])(expr.test(s)).toBe(true); | ||
} | ||
function isFalse(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(false); | ||
(0, _expect["default"])(expr.test(s)).toBe(false); | ||
} | ||
@@ -273,10 +273,10 @@ | ||
it('SimpleSchema.RegEx.IPv4', function () { | ||
const expr = _SimpleSchema.SimpleSchema.RegEx.IPv4; | ||
var expr = _SimpleSchema.SimpleSchema.RegEx.IPv4; | ||
function isTrue(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(true); | ||
(0, _expect["default"])(expr.test(s)).toBe(true); | ||
} | ||
function isFalse(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(false); | ||
(0, _expect["default"])(expr.test(s)).toBe(false); | ||
} | ||
@@ -295,10 +295,10 @@ | ||
it('SimpleSchema.RegEx.IPv6', function () { | ||
const expr = _SimpleSchema.SimpleSchema.RegEx.IPv6; | ||
var expr = _SimpleSchema.SimpleSchema.RegEx.IPv6; | ||
function isTrue(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(true); | ||
(0, _expect["default"])(expr.test(s)).toBe(true); | ||
} | ||
function isFalse(s) { | ||
(0, _expect.default)(expr.test(s)).toBe(false); | ||
(0, _expect["default"])(expr.test(s)).toBe(false); | ||
} | ||
@@ -305,0 +305,0 @@ |
@@ -17,3 +17,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -24,3 +24,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('valid', function () { | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
requiredString: 'test', | ||
@@ -39,3 +39,3 @@ requiredBoolean: true, | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
requiredString: 'test', | ||
@@ -53,4 +53,4 @@ requiredBoolean: true, | ||
it('invalid', function () { | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, {}).toBe(8); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], {}).toBe(8); | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
requiredString: null, | ||
@@ -67,3 +67,3 @@ requiredBoolean: null, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
requiredString: null, | ||
@@ -79,3 +79,3 @@ requiredBoolean: null, | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
requiredString: null, | ||
@@ -91,3 +91,3 @@ requiredBoolean: null, | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
requiredString: null, | ||
@@ -101,3 +101,3 @@ requiredBoolean: null, | ||
}).toBe(8); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
requiredString: undefined, | ||
@@ -114,3 +114,3 @@ requiredBoolean: undefined, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
requiredString: '', | ||
@@ -127,3 +127,3 @@ requiredBoolean: null, | ||
}).toBe(7); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
requiredString: ' ', | ||
@@ -141,3 +141,3 @@ requiredBoolean: null, | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
friends: [{ | ||
@@ -151,3 +151,3 @@ name: 'Bob' | ||
it('requiredByDefault false', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: String | ||
@@ -157,6 +157,6 @@ }, { | ||
}); | ||
(0, _expectRequiredErrorLength.default)(schema, {}).toBe(0); | ||
(0, _expectRequiredErrorLength["default"])(schema, {}).toBe(0); | ||
}); | ||
it('required option', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -169,7 +169,7 @@ type: String, | ||
}); | ||
(0, _expectRequiredErrorLength.default)(schema, {}).toBe(1); | ||
(0, _expectRequiredErrorLength["default"])(schema, {}).toBe(1); | ||
}); | ||
describe('modifier with $set', function () { | ||
it('valid upsert', function () { | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -193,3 +193,3 @@ requiredString: 'test', | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -211,3 +211,3 @@ requiredString: 'test', | ||
}); | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: { | ||
@@ -223,3 +223,3 @@ type: String | ||
}); | ||
(0, _expectValid.default)(schema, { | ||
(0, _expectValid["default"])(schema, { | ||
$set: { | ||
@@ -233,3 +233,3 @@ name: 'name' | ||
it('invalid upsert', function () { | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: {} | ||
@@ -241,3 +241,3 @@ }, { | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -253,3 +253,3 @@ requiredEmail: null, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -269,3 +269,3 @@ requiredString: null, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -285,3 +285,3 @@ requiredString: undefined, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -301,3 +301,3 @@ requiredString: '', | ||
}).toBe(7); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -320,3 +320,3 @@ requiredString: ' ', | ||
// Would not cause DB changes, so should not be an error | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$set: {} | ||
@@ -326,3 +326,3 @@ }, { | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -341,3 +341,3 @@ requiredString: 'test', | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -359,3 +359,3 @@ requiredString: 'test', | ||
(0, _expectValid.default)(_friendsSchema.default, { | ||
(0, _expectValid["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -369,3 +369,3 @@ enemies: [{ | ||
}); | ||
(0, _expectValid.default)(_friendsSchema.default, { | ||
(0, _expectValid["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -377,3 +377,3 @@ 'friends.1.name': 'Bob' | ||
}); | ||
(0, _expectValid.default)(_friendsSchema.default, { | ||
(0, _expectValid["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -388,3 +388,3 @@ friends: [{ | ||
}); | ||
(0, _expectValid.default)(_friendsSchema.default, { | ||
(0, _expectValid["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -402,3 +402,3 @@ enemies: [{ | ||
// MongoDB will set the props to `undefined` | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -417,3 +417,3 @@ requiredString: undefined, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -432,3 +432,3 @@ requiredString: null, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -447,3 +447,3 @@ requiredString: '', | ||
}).toBe(7); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -463,3 +463,3 @@ requiredString: ' ', | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -472,3 +472,3 @@ enemies: [{}] | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -481,3 +481,3 @@ 'friends.1.name': null | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -491,3 +491,3 @@ friends: [{ | ||
}).toBe(1); | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -502,3 +502,3 @@ enemies: [{ | ||
}).toBe(2); | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -513,3 +513,3 @@ enemies: [{ | ||
}).toBe(4); | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$set: { | ||
@@ -530,3 +530,3 @@ enemies: [{ | ||
it('valid upsert', function () { | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$setOnInsert: { | ||
@@ -550,3 +550,3 @@ requiredString: 'test', | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$setOnInsert: { | ||
@@ -570,3 +570,3 @@ requiredString: 'test', | ||
it('invalid upsert', function () { | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$setOnInsert: {} | ||
@@ -577,3 +577,3 @@ }, { | ||
}).toBe(8); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$setOnInsert: { | ||
@@ -593,3 +593,3 @@ requiredString: null, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$setOnInsert: { | ||
@@ -609,3 +609,3 @@ requiredString: undefined, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$setOnInsert: { | ||
@@ -625,3 +625,3 @@ requiredString: '', | ||
}).toBe(7); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$setOnInsert: { | ||
@@ -642,3 +642,3 @@ requiredString: ' ', | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$setOnInsert: { | ||
@@ -660,3 +660,3 @@ friends: [{ | ||
// Make sure they're merged for validation purposes. | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -680,3 +680,3 @@ requiredString: 'test', | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -702,3 +702,3 @@ requiredString: 'test', | ||
it('invalid upsert', function () { | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$setOnInsert: {}, | ||
@@ -710,3 +710,3 @@ $set: {} | ||
}).toBe(8); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -728,3 +728,3 @@ requiredString: null, | ||
}).toBe(9); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -746,3 +746,3 @@ requiredString: undefined, | ||
}).toBe(8); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -764,3 +764,3 @@ requiredString: '', | ||
}).toBe(5); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$set: { | ||
@@ -787,3 +787,3 @@ requiredString: ' ', | ||
// Would not cause DB changes, so should not be an error | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$unset: {} | ||
@@ -795,3 +795,3 @@ }, { | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$unset: { | ||
@@ -803,3 +803,3 @@ anOptionalOne: 1 | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$unset: { | ||
@@ -811,3 +811,3 @@ anOptionalOne: null | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$unset: { | ||
@@ -819,3 +819,3 @@ anOptionalOne: '' | ||
}); | ||
(0, _expectValid.default)(_requiredSchema.default, { | ||
(0, _expectValid["default"])(_requiredSchema["default"], { | ||
$unset: { | ||
@@ -828,3 +828,3 @@ optionalObject: '' | ||
(0, _expectValid.default)(_friendsSchema.default, { | ||
(0, _expectValid["default"])(_friendsSchema["default"], { | ||
$unset: { | ||
@@ -836,3 +836,3 @@ 'friends.1.a.b': '' | ||
}); | ||
(0, _expectValid.default)(_friendsSchema.default, { | ||
(0, _expectValid["default"])(_friendsSchema["default"], { | ||
$unset: { | ||
@@ -848,3 +848,3 @@ 'friends.1.a.b': 1, | ||
it('invalid', function () { | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$unset: { | ||
@@ -861,3 +861,3 @@ requiredString: 1, | ||
}).toBe(6); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$unset: { | ||
@@ -869,3 +869,3 @@ 'optionalObject.requiredString': 1 | ||
}).toBe(1); | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$unset: { | ||
@@ -878,3 +878,3 @@ 'requiredObject.requiredNumber': 1 | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$unset: { | ||
@@ -886,3 +886,3 @@ 'friends.1.name': 1 | ||
}).toBe(1); | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$unset: { | ||
@@ -900,3 +900,3 @@ 'friends.1.name': 1, | ||
it('rename from optional key to another key in schema', function () { | ||
(0, _expectValid.default)(_testSchema.default, { | ||
(0, _expectValid["default"])(_testSchema["default"], { | ||
$rename: { | ||
@@ -910,3 +910,3 @@ string: 'minMaxString' | ||
it('rename from optional key to a key not in schema', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$rename: { | ||
@@ -920,3 +920,3 @@ string: 'newString' | ||
it('rename from required key', function () { | ||
(0, _expectRequiredErrorLength.default)(_requiredSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_requiredSchema["default"], { | ||
$rename: { | ||
@@ -932,3 +932,3 @@ requiredString: 'requiredUrl' | ||
it('valid', function () { | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$push: { | ||
@@ -945,3 +945,3 @@ friends: { | ||
it('invalid', function () { | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$push: { | ||
@@ -959,3 +959,3 @@ friends: { | ||
it('valid', function () { | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$addToSet: { | ||
@@ -972,3 +972,3 @@ friends: { | ||
it('invalid', function () { | ||
(0, _expectRequiredErrorLength.default)(_friendsSchema.default, { | ||
(0, _expectRequiredErrorLength["default"])(_friendsSchema["default"], { | ||
$addToSet: { | ||
@@ -975,0 +975,0 @@ friends: { |
@@ -17,3 +17,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -23,3 +23,3 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('typed array', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
ta: { | ||
@@ -29,3 +29,3 @@ type: Uint8Array | ||
}); | ||
(0, _expectErrorLength.default)(schema, { | ||
(0, _expectErrorLength["default"])(schema, { | ||
ta: new Uint8Array(100000000) | ||
@@ -35,3 +35,3 @@ }).toEqual(0); | ||
it('array of objects', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _friendsSchema["default"], { | ||
$set: { | ||
@@ -49,3 +49,3 @@ enemies: [{ | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _friendsSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _friendsSchema["default"], { | ||
$set: { | ||
@@ -66,5 +66,5 @@ enemies: [{ | ||
it('valid', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
address: { | ||
type: _Address.default | ||
type: _Address["default"] | ||
}, | ||
@@ -78,12 +78,12 @@ createdAt: { | ||
}); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
createdAt: new Date(), | ||
file: new Uint8Array([104, 101, 108, 108, 111]), | ||
address: new _Address.default('San Francisco', 'CA') | ||
address: new _Address["default"]('San Francisco', 'CA') | ||
}).toEqual(0); | ||
}); | ||
it('invalid', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
address: { | ||
type: _Address.default | ||
type: _Address["default"] | ||
}, | ||
@@ -97,3 +97,3 @@ createdAt: { | ||
}); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
createdAt: {}, | ||
@@ -106,3 +106,3 @@ file: {}, | ||
it('weird type', function () { | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
new _SimpleSchema.SimpleSchema({ | ||
@@ -118,12 +118,12 @@ // eslint-disable-line no-new | ||
it('normal', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
string: 'test' | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
string: true | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
string: 1 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
string: { | ||
@@ -133,6 +133,6 @@ test: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
string: ['test'] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
string: new Date() | ||
@@ -142,3 +142,3 @@ }).toEqual(1); | ||
it('modifier with $setOnInsert', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -151,3 +151,3 @@ string: 'test' | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -160,3 +160,3 @@ string: true | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -169,3 +169,3 @@ string: 1 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -180,3 +180,3 @@ string: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -189,3 +189,3 @@ string: ['test'] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -200,3 +200,3 @@ string: new Date() | ||
it('modifier with $set', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -208,3 +208,3 @@ string: 'test' | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -216,3 +216,3 @@ string: true | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -224,3 +224,3 @@ string: 1 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -234,3 +234,3 @@ string: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -242,3 +242,3 @@ string: ['test'] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -252,3 +252,3 @@ string: new Date() | ||
it('modifier with $push', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -260,3 +260,3 @@ allowedStringsArray: 'test' | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -268,3 +268,3 @@ allowedStringsArray: true | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -276,3 +276,3 @@ allowedStringsArray: 1 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -286,3 +286,3 @@ allowedStringsArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -294,3 +294,3 @@ allowedStringsArray: ['test'] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -304,3 +304,3 @@ allowedStringsArray: new Date() | ||
it('modifier with $addToSet', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -312,3 +312,3 @@ allowedStringsArray: 'test' | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -320,3 +320,3 @@ allowedStringsArray: true | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -328,3 +328,3 @@ allowedStringsArray: 1 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -338,3 +338,3 @@ allowedStringsArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -346,3 +346,3 @@ allowedStringsArray: ['test'] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -356,3 +356,3 @@ allowedStringsArray: new Date() | ||
it('modifier with $push + $each', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -366,3 +366,3 @@ allowedStringsArray: { | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -376,3 +376,3 @@ allowedStringsArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -386,3 +386,3 @@ allowedStringsArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -400,3 +400,3 @@ allowedStringsArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -410,3 +410,3 @@ allowedStringsArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -424,30 +424,30 @@ allowedStringsArray: { | ||
it('normal', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
boolean: true | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
"boolean": true | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
boolean: false | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
"boolean": false | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
boolean: 'true' | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
"boolean": 'true' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
boolean: 0 | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
"boolean": 0 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
boolean: { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
"boolean": { | ||
test: true | ||
} | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
boolean: [false] | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
"boolean": [false] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
boolean: new Date() | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
"boolean": new Date() | ||
}).toEqual(1); | ||
}); | ||
it('modifier with $setOnInsert', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
boolean: true | ||
"boolean": true | ||
} | ||
@@ -458,5 +458,5 @@ }, { | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
boolean: false | ||
"boolean": false | ||
} | ||
@@ -467,5 +467,5 @@ }, { | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
boolean: 'true' | ||
"boolean": 'true' | ||
} | ||
@@ -476,5 +476,5 @@ }, { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
boolean: 0 | ||
"boolean": 0 | ||
} | ||
@@ -485,5 +485,5 @@ }, { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
boolean: { | ||
"boolean": { | ||
test: true | ||
@@ -496,5 +496,5 @@ } | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
boolean: [false] | ||
"boolean": [false] | ||
} | ||
@@ -505,5 +505,5 @@ }, { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
boolean: new Date() | ||
"boolean": new Date() | ||
} | ||
@@ -516,5 +516,5 @@ }, { | ||
it('modifier with $set', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
boolean: true | ||
"boolean": true | ||
} | ||
@@ -524,5 +524,5 @@ }, { | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
boolean: false | ||
"boolean": false | ||
} | ||
@@ -532,5 +532,5 @@ }, { | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
boolean: 'true' | ||
"boolean": 'true' | ||
} | ||
@@ -540,5 +540,5 @@ }, { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
boolean: 0 | ||
"boolean": 0 | ||
} | ||
@@ -548,5 +548,5 @@ }, { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
boolean: { | ||
"boolean": { | ||
test: true | ||
@@ -558,5 +558,5 @@ } | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
boolean: [false] | ||
"boolean": [false] | ||
} | ||
@@ -566,5 +566,5 @@ }, { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
boolean: new Date() | ||
"boolean": new Date() | ||
} | ||
@@ -576,3 +576,3 @@ }, { | ||
it('modifier with $push', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -584,3 +584,3 @@ booleanArray: true | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -592,3 +592,3 @@ booleanArray: false | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -600,3 +600,3 @@ booleanArray: 'true' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -608,3 +608,3 @@ booleanArray: 0 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -618,3 +618,3 @@ booleanArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -626,3 +626,3 @@ booleanArray: [false] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -636,3 +636,3 @@ booleanArray: new Date() | ||
it('modifier with $addToSet', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -644,3 +644,3 @@ booleanArray: true | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -652,3 +652,3 @@ booleanArray: false | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -660,3 +660,3 @@ booleanArray: 'true' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -668,3 +668,3 @@ booleanArray: 0 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -678,3 +678,3 @@ booleanArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -686,3 +686,3 @@ booleanArray: [false] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -696,3 +696,3 @@ booleanArray: new Date() | ||
it('modifier with $push + $each', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -706,3 +706,3 @@ booleanArray: { | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -716,3 +716,3 @@ booleanArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -726,3 +726,3 @@ booleanArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -740,3 +740,3 @@ booleanArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -750,3 +750,3 @@ booleanArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -764,15 +764,15 @@ booleanArray: { | ||
it('normal', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
number: 1 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
number: 0 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
number: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
number: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
number: { | ||
@@ -782,10 +782,10 @@ test: 1 | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
number: [1] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
number: new Date() | ||
}).toEqual(1); // NaN does not count | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
number: NaN | ||
@@ -795,3 +795,3 @@ }).toEqual(1); | ||
it('modifier with $setOnInsert', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -804,3 +804,3 @@ number: 1 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -813,3 +813,3 @@ number: 0 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -822,3 +822,3 @@ number: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -831,3 +831,3 @@ number: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -842,3 +842,3 @@ number: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -851,3 +851,3 @@ number: [1] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -861,3 +861,3 @@ number: new Date() | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -872,3 +872,3 @@ number: NaN | ||
it('modifier with $set', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -880,3 +880,3 @@ number: 1 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -888,3 +888,3 @@ number: 0 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -896,3 +896,3 @@ number: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -904,3 +904,3 @@ number: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -914,3 +914,3 @@ number: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -922,3 +922,3 @@ number: [1] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -931,3 +931,3 @@ number: new Date() | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -941,3 +941,3 @@ number: NaN | ||
it('modifier with $push', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -949,3 +949,3 @@ allowedNumbersArray: 1 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -957,3 +957,3 @@ allowedNumbersArray: 0 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -965,3 +965,3 @@ allowedNumbersArray: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -973,3 +973,3 @@ allowedNumbersArray: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -983,3 +983,3 @@ allowedNumbersArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -991,3 +991,3 @@ allowedNumbersArray: [1] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1000,3 +1000,3 @@ allowedNumbersArray: new Date() | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1010,3 +1010,3 @@ allowedNumbersArray: NaN | ||
it('modifier with $addToSet', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1018,3 +1018,3 @@ allowedNumbersArray: 1 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1026,3 +1026,3 @@ allowedNumbersArray: 0 | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1034,3 +1034,3 @@ allowedNumbersArray: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1042,3 +1042,3 @@ allowedNumbersArray: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1052,3 +1052,3 @@ allowedNumbersArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1060,3 +1060,3 @@ allowedNumbersArray: [1] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1069,3 +1069,3 @@ allowedNumbersArray: new Date() | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1079,3 +1079,3 @@ allowedNumbersArray: NaN | ||
it('modifier with $push + $each', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1089,3 +1089,3 @@ allowedNumbersArray: { | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1099,3 +1099,3 @@ allowedNumbersArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1109,3 +1109,3 @@ allowedNumbersArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1123,3 +1123,3 @@ allowedNumbersArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1133,3 +1133,3 @@ allowedNumbersArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1144,3 +1144,3 @@ allowedNumbersArray: { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1158,12 +1158,12 @@ allowedNumbersArray: { | ||
it('normal', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
date: new Date() | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
date: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
date: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
date: { | ||
@@ -1173,6 +1173,6 @@ test: new Date() | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
date: [new Date()] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
date: 1 | ||
@@ -1182,3 +1182,3 @@ }).toEqual(1); | ||
it('modifier with $setOnInsert', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1191,3 +1191,3 @@ date: new Date() | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1200,3 +1200,3 @@ date: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1209,3 +1209,3 @@ date: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1220,3 +1220,3 @@ date: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1229,3 +1229,3 @@ date: [new Date()] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1240,3 +1240,3 @@ date: 1 | ||
it('modifier with $set', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1248,3 +1248,3 @@ date: new Date() | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1256,3 +1256,3 @@ date: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1264,3 +1264,3 @@ date: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1274,3 +1274,3 @@ date: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1282,3 +1282,3 @@ date: [new Date()] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1292,3 +1292,3 @@ date: 1 | ||
it('modifier with $push', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1300,3 +1300,3 @@ dateArray: new Date() | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1308,3 +1308,3 @@ dateArray: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1316,3 +1316,3 @@ dateArray: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1326,3 +1326,3 @@ dateArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1334,3 +1334,3 @@ dateArray: [new Date()] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1344,3 +1344,3 @@ dateArray: 1 | ||
it('modifier with $addToSet', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1352,3 +1352,3 @@ dateArray: new Date() | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1360,3 +1360,3 @@ dateArray: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1368,3 +1368,3 @@ dateArray: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1378,3 +1378,3 @@ dateArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1386,3 +1386,3 @@ dateArray: [new Date()] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$addToSet: { | ||
@@ -1396,3 +1396,3 @@ dateArray: 1 | ||
it('modifier with $push + $each', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1406,3 +1406,3 @@ dateArray: { | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1416,3 +1416,3 @@ dateArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1426,3 +1426,3 @@ dateArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1440,3 +1440,3 @@ dateArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1450,3 +1450,3 @@ dateArray: { | ||
}).toEqual(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$push: { | ||
@@ -1464,18 +1464,18 @@ dateArray: { | ||
it('normal', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
booleanArray: [] | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
booleanArray: [true] | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
booleanArray: [false] | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
booleanArray: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
booleanArray: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
booleanArray: { | ||
@@ -1485,6 +1485,6 @@ test: [] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
booleanArray: ['test'] | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
booleanArray: 1 | ||
@@ -1494,3 +1494,3 @@ }).toEqual(1); | ||
it('modifier with $setOnInsert', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1503,3 +1503,3 @@ booleanArray: [true, false] | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1512,3 +1512,3 @@ booleanArray: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1521,3 +1521,3 @@ booleanArray: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1532,3 +1532,3 @@ booleanArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1541,3 +1541,3 @@ booleanArray: new Date() | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$setOnInsert: { | ||
@@ -1552,3 +1552,3 @@ booleanArray: 1 | ||
it('modifier with $set', function () { | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1560,3 +1560,3 @@ booleanArray: [true, false] | ||
}).toEqual(0); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1568,3 +1568,3 @@ booleanArray: 'test' | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1576,3 +1576,3 @@ booleanArray: false | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1586,3 +1586,3 @@ booleanArray: { | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1594,3 +1594,3 @@ booleanArray: new Date() | ||
}).toEqual(1); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema.default, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, _testSchema["default"], { | ||
$set: { | ||
@@ -1604,3 +1604,3 @@ booleanArray: 1 | ||
it('ignores slice', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$push: { | ||
@@ -1629,3 +1629,3 @@ booleanArray: { | ||
it('ignores pull', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$pull: { | ||
@@ -1642,3 +1642,3 @@ booleanArray: 'foo', | ||
it('ignores pull + $each', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$pull: { | ||
@@ -1663,3 +1663,3 @@ booleanArray: { | ||
it('ignores pullAll', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$pullAll: { | ||
@@ -1676,3 +1676,3 @@ booleanArray: ['foo', 'bar'], | ||
it('ignores pop', function () { | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$pop: { | ||
@@ -1687,3 +1687,3 @@ booleanArray: 1, | ||
}).toEqual(0); | ||
(0, _expectErrorLength.default)(_testSchema.default, { | ||
(0, _expectErrorLength["default"])(_testSchema["default"], { | ||
$pop: { | ||
@@ -1690,0 +1690,0 @@ booleanArray: -1, |
@@ -8,4 +8,4 @@ "use strict"; | ||
enumerable: true, | ||
get: function () { | ||
return _ValidationContext.default; | ||
get: function get() { | ||
return _ValidationContext["default"]; | ||
} | ||
@@ -19,3 +19,3 @@ }); | ||
var _extend = _interopRequireDefault(require("extend")); | ||
var _extend2 = _interopRequireDefault(require("extend")); | ||
@@ -44,3 +44,3 @@ var _lodash2 = _interopRequireDefault(require("lodash.includes")); | ||
var _clean = _interopRequireDefault(require("./clean")); | ||
var _clean2 = _interopRequireDefault(require("./clean")); | ||
@@ -53,23 +53,54 @@ var _expandShorthand = _interopRequireDefault(require("./expandShorthand")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; } | ||
function isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } | ||
function _construct(Parent, args, Class) { if (isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); } | ||
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } | ||
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } | ||
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } | ||
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } | ||
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } | ||
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; } | ||
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; } | ||
// Exported for tests | ||
const schemaDefinitionOptions = ['type', 'label', 'optional', 'required', 'autoValue', 'defaultValue']; | ||
var schemaDefinitionOptions = ['type', 'label', 'optional', 'required', 'autoValue', 'defaultValue']; | ||
exports.schemaDefinitionOptions = schemaDefinitionOptions; | ||
const oneOfProps = ['type', 'min', 'max', 'minCount', 'maxCount', 'allowedValues', 'exclusiveMin', 'exclusiveMax', 'regEx', 'custom', 'blackbox', 'trim']; | ||
const propsThatCanBeFunction = ['label', 'optional', 'min', 'max', 'minCount', 'maxCount', 'allowedValues', 'exclusiveMin', 'exclusiveMax', 'regEx']; | ||
var oneOfProps = ['type', 'min', 'max', 'minCount', 'maxCount', 'allowedValues', 'exclusiveMin', 'exclusiveMax', 'regEx', 'custom', 'blackbox', 'trim']; | ||
var propsThatCanBeFunction = ['label', 'optional', 'min', 'max', 'minCount', 'maxCount', 'allowedValues', 'exclusiveMin', 'exclusiveMax', 'regEx']; | ||
class SimpleSchema { | ||
constructor(schema = {}, { | ||
check, | ||
clean: cleanOptions, | ||
defaultLabel, | ||
humanizeAutoLabels = true, | ||
requiredByDefault = true, | ||
tracker | ||
} = {}) { | ||
var SimpleSchema = | ||
/*#__PURE__*/ | ||
function () { | ||
function SimpleSchema() { | ||
var schema = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; | ||
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, | ||
check = _ref.check, | ||
cleanOptions = _ref.clean, | ||
defaultLabel = _ref.defaultLabel, | ||
_ref$humanizeAutoLabe = _ref.humanizeAutoLabels, | ||
humanizeAutoLabels = _ref$humanizeAutoLabe === void 0 ? true : _ref$humanizeAutoLabe, | ||
_ref$requiredByDefaul = _ref.requiredByDefault, | ||
requiredByDefault = _ref$requiredByDefaul === void 0 ? true : _ref$requiredByDefaul, | ||
tracker = _ref.tracker; | ||
_classCallCheck(this, SimpleSchema); | ||
_defineProperty(this, "pick", getPickOrOmit('pick')); | ||
@@ -81,7 +112,7 @@ | ||
this._constructorOptions = { | ||
check, | ||
defaultLabel, | ||
humanizeAutoLabels, | ||
requiredByDefault, | ||
tracker | ||
check: check, | ||
defaultLabel: defaultLabel, | ||
humanizeAutoLabels: humanizeAutoLabels, | ||
requiredByDefault: requiredByDefault, | ||
tracker: tracker | ||
}; // Custom validators for this instance | ||
@@ -108,730 +139,816 @@ | ||
this.messageBox = new _messageBox.default((0, _clone.default)(_defaultMessages.default)); | ||
this.messageBox = new _messageBox["default"]((0, _clone["default"])(_defaultMessages["default"])); | ||
this.version = SimpleSchema.version; | ||
} | ||
forEachAncestorSimpleSchema(key, func) { | ||
const genericKey = _mongoObject.default.makeKeyGeneric(key); | ||
_createClass(SimpleSchema, [{ | ||
key: "forEachAncestorSimpleSchema", | ||
value: function forEachAncestorSimpleSchema(key, func) { | ||
var _this = this; | ||
(0, _utility.forEachKeyAncestor)(genericKey, ancestor => { | ||
const def = this._schema[ancestor]; | ||
if (!def) return; | ||
def.type.definitions.forEach(typeDef => { | ||
if (SimpleSchema.isSimpleSchema(typeDef.type)) { | ||
func(typeDef.type, ancestor, genericKey.slice(ancestor.length + 1)); | ||
} | ||
var genericKey = _mongoObject["default"].makeKeyGeneric(key); | ||
(0, _utility.forEachKeyAncestor)(genericKey, function (ancestor) { | ||
var def = _this._schema[ancestor]; | ||
if (!def) return; | ||
def.type.definitions.forEach(function (typeDef) { | ||
if (SimpleSchema.isSimpleSchema(typeDef.type)) { | ||
func(typeDef.type, ancestor, genericKey.slice(ancestor.length + 1)); | ||
} | ||
}); | ||
}); | ||
}); | ||
} | ||
/** | ||
* Returns whether the obj is a SimpleSchema object. | ||
* @param {Object} [obj] An object to test | ||
* @returns {Boolean} True if the given object appears to be a SimpleSchema instance | ||
*/ | ||
} | ||
/** | ||
* Returns whether the obj is a SimpleSchema object. | ||
* @param {Object} [obj] An object to test | ||
* @returns {Boolean} True if the given object appears to be a SimpleSchema instance | ||
*/ | ||
}, { | ||
key: "reactiveLabelDependency", | ||
static isSimpleSchema(obj) { | ||
return obj && (obj instanceof SimpleSchema || obj._schema); | ||
} | ||
/** | ||
* For Meteor apps, add a reactive dependency on the label | ||
* for a key. | ||
*/ | ||
/** | ||
* For Meteor apps, add a reactive dependency on the label | ||
* for a key. | ||
*/ | ||
value: function reactiveLabelDependency(key) { | ||
var tracker = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : this._constructorOptions.tracker; | ||
if (!key || !tracker) return; | ||
var genericKey = _mongoObject["default"].makeKeyGeneric(key); // If in this schema | ||
reactiveLabelDependency(key, tracker = this._constructorOptions.tracker) { | ||
if (!key || !tracker) return; | ||
const genericKey = _mongoObject.default.makeKeyGeneric(key); // If in this schema | ||
if (this._schema[genericKey]) { | ||
if (!this._depsLabels[genericKey]) { | ||
this._depsLabels[genericKey] = new tracker.Dependency(); | ||
} | ||
this._depsLabels[genericKey].depend(); | ||
if (this._schema[genericKey]) { | ||
if (!this._depsLabels[genericKey]) { | ||
this._depsLabels[genericKey] = new tracker.Dependency(); | ||
} | ||
return; | ||
} // If in subschema | ||
this._depsLabels[genericKey].depend(); | ||
return; | ||
} // If in subschema | ||
this.forEachAncestorSimpleSchema(key, function (simpleSchema, ancestor, subSchemaKey) { | ||
// Pass tracker down so that we get reactivity even if the subschema | ||
// didn't have tracker option set | ||
simpleSchema.reactiveLabelDependency(subSchemaKey, tracker); | ||
}); | ||
} | ||
/** | ||
* @param {String} [key] One specific or generic key for which to get the schema. | ||
* @returns {Object} The entire schema object or just the definition for one key. | ||
* | ||
* Note that this returns the raw, unevaluated definition object. Use `getDefinition` | ||
* if you want the evaluated definition, where any properties that are functions | ||
* have been run to produce a result. | ||
*/ | ||
}, { | ||
key: "schema", | ||
value: function schema(key) { | ||
if (!key) return this._schema; | ||
this.forEachAncestorSimpleSchema(key, (simpleSchema, ancestor, subSchemaKey) => { | ||
// Pass tracker down so that we get reactivity even if the subschema | ||
// didn't have tracker option set | ||
simpleSchema.reactiveLabelDependency(subSchemaKey, tracker); | ||
}); | ||
} | ||
/** | ||
* @param {String} [key] One specific or generic key for which to get the schema. | ||
* @returns {Object} The entire schema object or just the definition for one key. | ||
* | ||
* Note that this returns the raw, unevaluated definition object. Use `getDefinition` | ||
* if you want the evaluated definition, where any properties that are functions | ||
* have been run to produce a result. | ||
*/ | ||
var genericKey = _mongoObject["default"].makeKeyGeneric(key); | ||
var keySchema = this._schema[genericKey]; // If not defined in this schema, see if it's defined in a subschema | ||
schema(key) { | ||
if (!key) return this._schema; | ||
if (!keySchema) { | ||
var found = false; | ||
this.forEachAncestorSimpleSchema(key, function (simpleSchema, ancestor, subSchemaKey) { | ||
if (!found) keySchema = simpleSchema.schema(subSchemaKey); | ||
if (keySchema) found = true; | ||
}); | ||
} | ||
const genericKey = _mongoObject.default.makeKeyGeneric(key); | ||
let keySchema = this._schema[genericKey]; // If not defined in this schema, see if it's defined in a subschema | ||
if (!keySchema) { | ||
let found = false; | ||
this.forEachAncestorSimpleSchema(key, (simpleSchema, ancestor, subSchemaKey) => { | ||
if (!found) keySchema = simpleSchema.schema(subSchemaKey); | ||
if (keySchema) found = true; | ||
}); | ||
return keySchema; | ||
} | ||
/** | ||
* @returns {Object} The entire schema object with subschemas merged. This is the | ||
* equivalent of what schema() returned in SimpleSchema < 2.0 | ||
* | ||
* Note that this returns the raw, unevaluated definition object. Use `getDefinition` | ||
* if you want the evaluated definition, where any properties that are functions | ||
* have been run to produce a result. | ||
*/ | ||
return keySchema; | ||
} | ||
/** | ||
* @returns {Object} The entire schema object with subschemas merged. This is the | ||
* equivalent of what schema() returned in SimpleSchema < 2.0 | ||
* | ||
* Note that this returns the raw, unevaluated definition object. Use `getDefinition` | ||
* if you want the evaluated definition, where any properties that are functions | ||
* have been run to produce a result. | ||
*/ | ||
}, { | ||
key: "mergedSchema", | ||
value: function mergedSchema() { | ||
var _this2 = this; | ||
var mergedSchema = {}; | ||
mergedSchema() { | ||
const mergedSchema = {}; | ||
this._schemaKeys.forEach(key => { | ||
const keySchema = this._schema[key]; | ||
mergedSchema[key] = keySchema; | ||
keySchema.type.definitions.forEach(typeDef => { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
const childSchema = typeDef.type.mergedSchema(); | ||
Object.keys(childSchema).forEach(subKey => { | ||
mergedSchema[`${key}.${subKey}`] = childSchema[subKey]; | ||
this._schemaKeys.forEach(function (key) { | ||
var keySchema = _this2._schema[key]; | ||
mergedSchema[key] = keySchema; | ||
keySchema.type.definitions.forEach(function (typeDef) { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
var childSchema = typeDef.type.mergedSchema(); | ||
Object.keys(childSchema).forEach(function (subKey) { | ||
mergedSchema["".concat(key, ".").concat(subKey)] = childSchema[subKey]; | ||
}); | ||
}); | ||
}); | ||
}); | ||
return mergedSchema; | ||
} | ||
/** | ||
* Returns the evaluated definition for one key in the schema | ||
* | ||
* @param {String} key Generic or specific schema key | ||
* @param {Array(String)} [propList] Array of schema properties you need; performance optimization | ||
* @param {Object} [functionContext] The context to use when evaluating schema options that are functions | ||
* @returns {Object} The schema definition for the requested key | ||
*/ | ||
return mergedSchema; | ||
} | ||
/** | ||
* Returns the evaluated definition for one key in the schema | ||
* | ||
* @param {String} key Generic or specific schema key | ||
* @param {Array(String)} [propList] Array of schema properties you need; performance optimization | ||
* @param {Object} [functionContext] The context to use when evaluating schema options that are functions | ||
* @returns {Object} The schema definition for the requested key | ||
*/ | ||
}, { | ||
key: "getDefinition", | ||
value: function getDefinition(key, propList) { | ||
var _this3 = this; | ||
getDefinition(key, propList, functionContext = {}) { | ||
const defs = this.schema(key); | ||
if (!defs) return; | ||
var functionContext = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {}; | ||
var defs = this.schema(key); | ||
if (!defs) return; | ||
const getPropIterator = (obj, newObj) => { | ||
return prop => { | ||
if (Array.isArray(propList) && !(0, _lodash2.default)(propList, prop)) return; | ||
const val = obj[prop]; // For any options that support specifying a function, evaluate the functions | ||
var getPropIterator = function getPropIterator(obj, newObj) { | ||
return function (prop) { | ||
if (Array.isArray(propList) && !(0, _lodash2["default"])(propList, prop)) return; | ||
var val = obj[prop]; // For any options that support specifying a function, evaluate the functions | ||
if (propsThatCanBeFunction.indexOf(prop) > -1 && typeof val === 'function') { | ||
newObj[prop] = val.call(_objectSpread({ | ||
key | ||
}, functionContext)); // Inflect label if undefined | ||
if (propsThatCanBeFunction.indexOf(prop) > -1 && typeof val === 'function') { | ||
newObj[prop] = val.call(_objectSpread({ | ||
key: key | ||
}, functionContext)); // Inflect label if undefined | ||
if (prop === 'label' && typeof newObj[prop] !== 'string') newObj[prop] = inflectedLabel(key, this._constructorOptions.humanizeAutoLabels); | ||
} else { | ||
newObj[prop] = val; | ||
} | ||
if (prop === 'label' && typeof newObj[prop] !== 'string') newObj[prop] = inflectedLabel(key, _this3._constructorOptions.humanizeAutoLabels); | ||
} else { | ||
newObj[prop] = val; | ||
} | ||
}; | ||
}; | ||
}; | ||
const result = {}; | ||
Object.keys(defs).forEach(getPropIterator(defs, result)); // Resolve all the types and convert to a normal array to make it easier | ||
// to use. | ||
var result = {}; | ||
Object.keys(defs).forEach(getPropIterator(defs, result)); // Resolve all the types and convert to a normal array to make it easier | ||
// to use. | ||
if (defs.type) { | ||
result.type = defs.type.definitions.map(typeDef => { | ||
const newTypeDef = {}; | ||
Object.keys(typeDef).forEach(getPropIterator(typeDef, newTypeDef)); | ||
return newTypeDef; | ||
}); | ||
if (defs.type) { | ||
result.type = defs.type.definitions.map(function (typeDef) { | ||
var newTypeDef = {}; | ||
Object.keys(typeDef).forEach(getPropIterator(typeDef, newTypeDef)); | ||
return newTypeDef; | ||
}); | ||
} | ||
return result; | ||
} | ||
/** | ||
* Returns a string identifying the best guess data type for a key. For keys | ||
* that allow multiple types, the first type is used. This can be useful for | ||
* building forms. | ||
* | ||
* @param {String} key Generic or specific schema key | ||
* @returns {String} A type string. One of: | ||
* string, number, boolean, date, object, stringArray, numberArray, booleanArray, | ||
* dateArray, objectArray | ||
*/ | ||
return result; | ||
} | ||
/** | ||
* Returns a string identifying the best guess data type for a key. For keys | ||
* that allow multiple types, the first type is used. This can be useful for | ||
* building forms. | ||
* | ||
* @param {String} key Generic or specific schema key | ||
* @returns {String} A type string. One of: | ||
* string, number, boolean, date, object, stringArray, numberArray, booleanArray, | ||
* dateArray, objectArray | ||
*/ | ||
}, { | ||
key: "getQuickTypeForKey", | ||
value: function getQuickTypeForKey(key) { | ||
var type; | ||
var fieldSchema = this.schema(key); | ||
if (!fieldSchema) return; | ||
var fieldType = fieldSchema.type.singleType; | ||
if (fieldType === String) { | ||
type = 'string'; | ||
} else if (fieldType === Number || fieldType === SimpleSchema.Integer) { | ||
type = 'number'; | ||
} else if (fieldType === Boolean) { | ||
type = 'boolean'; | ||
} else if (fieldType === Date) { | ||
type = 'date'; | ||
} else if (fieldType === Array) { | ||
var arrayItemFieldSchema = this.schema("".concat(key, ".$")); | ||
if (!arrayItemFieldSchema) return; | ||
var arrayItemFieldType = arrayItemFieldSchema.type.singleType; | ||
getQuickTypeForKey(key) { | ||
let type; | ||
const fieldSchema = this.schema(key); | ||
if (!fieldSchema) return; | ||
const fieldType = fieldSchema.type.singleType; | ||
if (arrayItemFieldType === String) { | ||
type = 'stringArray'; | ||
} else if (arrayItemFieldType === Number || arrayItemFieldType === SimpleSchema.Integer) { | ||
type = 'numberArray'; | ||
} else if (arrayItemFieldType === Boolean) { | ||
type = 'booleanArray'; | ||
} else if (arrayItemFieldType === Date) { | ||
type = 'dateArray'; | ||
} else if (arrayItemFieldType === Object || SimpleSchema.isSimpleSchema(arrayItemFieldType)) { | ||
type = 'objectArray'; | ||
} | ||
} else if (fieldType === Object) { | ||
type = 'object'; | ||
} | ||
if (fieldType === String) { | ||
type = 'string'; | ||
} else if (fieldType === Number || fieldType === SimpleSchema.Integer) { | ||
type = 'number'; | ||
} else if (fieldType === Boolean) { | ||
type = 'boolean'; | ||
} else if (fieldType === Date) { | ||
type = 'date'; | ||
} else if (fieldType === Array) { | ||
const arrayItemFieldSchema = this.schema(`${key}.$`); | ||
if (!arrayItemFieldSchema) return; | ||
const arrayItemFieldType = arrayItemFieldSchema.type.singleType; | ||
if (arrayItemFieldType === String) { | ||
type = 'stringArray'; | ||
} else if (arrayItemFieldType === Number || arrayItemFieldType === SimpleSchema.Integer) { | ||
type = 'numberArray'; | ||
} else if (arrayItemFieldType === Boolean) { | ||
type = 'booleanArray'; | ||
} else if (arrayItemFieldType === Date) { | ||
type = 'dateArray'; | ||
} else if (arrayItemFieldType === Object || SimpleSchema.isSimpleSchema(arrayItemFieldType)) { | ||
type = 'objectArray'; | ||
} | ||
} else if (fieldType === Object) { | ||
type = 'object'; | ||
return type; | ||
} | ||
/** | ||
* Given a key that is an Object, returns a new SimpleSchema instance scoped to that object. | ||
* | ||
* @param {String} key Generic or specific schema key | ||
*/ | ||
return type; | ||
} | ||
/** | ||
* Given a key that is an Object, returns a new SimpleSchema instance scoped to that object. | ||
* | ||
* @param {String} key Generic or specific schema key | ||
*/ | ||
}, { | ||
key: "getObjectSchema", | ||
value: function getObjectSchema(key) { | ||
var newSchemaDef = {}; | ||
var genericKey = _mongoObject["default"].makeKeyGeneric(key); | ||
getObjectSchema(key) { | ||
const newSchemaDef = {}; | ||
var searchString = "".concat(genericKey, "."); | ||
var mergedSchema = this.mergedSchema(); | ||
Object.keys(mergedSchema).forEach(function (k) { | ||
if (k.indexOf(searchString) === 0) { | ||
newSchemaDef[k.slice(searchString.length)] = mergedSchema[k]; | ||
} | ||
}); | ||
return this._copyWithSchema(newSchemaDef); | ||
} // Returns an array of all the autovalue functions, including those in subschemas all the | ||
// way down the schema tree | ||
const genericKey = _mongoObject.default.makeKeyGeneric(key); | ||
}, { | ||
key: "autoValueFunctions", | ||
value: function autoValueFunctions() { | ||
var _this4 = this; | ||
const searchString = `${genericKey}.`; | ||
const mergedSchema = this.mergedSchema(); | ||
Object.keys(mergedSchema).forEach(k => { | ||
if (k.indexOf(searchString) === 0) { | ||
newSchemaDef[k.slice(searchString.length)] = mergedSchema[k]; | ||
} | ||
}); | ||
return this._copyWithSchema(newSchemaDef); | ||
} // Returns an array of all the autovalue functions, including those in subschemas all the | ||
// way down the schema tree | ||
var result = [].concat(this._autoValues); | ||
autoValueFunctions() { | ||
let result = [].concat(this._autoValues); | ||
this._schemaKeys.forEach(key => { | ||
this._schema[key].type.definitions.forEach(typeDef => { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
result = result.concat(typeDef.type.autoValueFunctions().map(({ | ||
func, | ||
fieldName, | ||
closestSubschemaFieldName | ||
}) => { | ||
return { | ||
func, | ||
fieldName: `${key}.${fieldName}`, | ||
closestSubschemaFieldName: closestSubschemaFieldName.length ? `${key}.${closestSubschemaFieldName}` : key | ||
}; | ||
})); | ||
this._schemaKeys.forEach(function (key) { | ||
_this4._schema[key].type.definitions.forEach(function (typeDef) { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
result = result.concat(typeDef.type.autoValueFunctions().map(function (_ref2) { | ||
var func = _ref2.func, | ||
fieldName = _ref2.fieldName, | ||
closestSubschemaFieldName = _ref2.closestSubschemaFieldName; | ||
return { | ||
func: func, | ||
fieldName: "".concat(key, ".").concat(fieldName), | ||
closestSubschemaFieldName: closestSubschemaFieldName.length ? "".concat(key, ".").concat(closestSubschemaFieldName) : key | ||
}; | ||
})); | ||
}); | ||
}); | ||
}); | ||
return result; | ||
} // Returns an array of all the blackbox keys, including those in subschemas | ||
return result; | ||
} // Returns an array of all the blackbox keys, including those in subschemas | ||
}, { | ||
key: "blackboxKeys", | ||
value: function blackboxKeys() { | ||
var _this5 = this; | ||
blackboxKeys() { | ||
const blackboxKeys = this._blackboxKeys; | ||
var blackboxKeys = this._blackboxKeys; | ||
this._schemaKeys.forEach(key => { | ||
this._schema[key].type.definitions.forEach(typeDef => { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
this._schemaKeys.forEach(function (key) { | ||
_this5._schema[key].type.definitions.forEach(function (typeDef) { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
typeDef.type._blackboxKeys.forEach(blackboxKey => { | ||
blackboxKeys.push(`${key}.${blackboxKey}`); | ||
typeDef.type._blackboxKeys.forEach(function (blackboxKey) { | ||
blackboxKeys.push("".concat(key, ".").concat(blackboxKey)); | ||
}); | ||
}); | ||
}); | ||
}); | ||
return (0, _lodash6.default)(blackboxKeys); | ||
} // Check if the key is a nested dot-syntax key inside of a blackbox object | ||
return (0, _lodash6["default"])(blackboxKeys); | ||
} // Check if the key is a nested dot-syntax key inside of a blackbox object | ||
}, { | ||
key: "keyIsInBlackBox", | ||
value: function keyIsInBlackBox(key) { | ||
var _this6 = this; | ||
keyIsInBlackBox(key) { | ||
let isInBlackBox = false; | ||
(0, _utility.forEachKeyAncestor)(_mongoObject.default.makeKeyGeneric(key), (ancestor, remainder) => { | ||
if (this._blackboxKeys.indexOf(ancestor) > -1) { | ||
isInBlackBox = true; | ||
} else { | ||
const testKeySchema = this.schema(ancestor); | ||
var isInBlackBox = false; | ||
(0, _utility.forEachKeyAncestor)(_mongoObject["default"].makeKeyGeneric(key), function (ancestor, remainder) { | ||
if (_this6._blackboxKeys.indexOf(ancestor) > -1) { | ||
isInBlackBox = true; | ||
} else { | ||
var testKeySchema = _this6.schema(ancestor); | ||
if (testKeySchema) { | ||
testKeySchema.type.definitions.forEach(typeDef => { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
if (typeDef.type.keyIsInBlackBox(remainder)) isInBlackBox = true; | ||
}); | ||
if (testKeySchema) { | ||
testKeySchema.type.definitions.forEach(function (typeDef) { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
if (typeDef.type.keyIsInBlackBox(remainder)) isInBlackBox = true; | ||
}); | ||
} | ||
} | ||
} | ||
}); | ||
return isInBlackBox; | ||
} // Returns true if key is explicitly allowed by the schema or implied | ||
// by other explicitly allowed keys. | ||
// The key string should have $ in place of any numeric array positions. | ||
}); | ||
return isInBlackBox; | ||
} // Returns true if key is explicitly allowed by the schema or implied | ||
// by other explicitly allowed keys. | ||
// The key string should have $ in place of any numeric array positions. | ||
}, { | ||
key: "allowsKey", | ||
value: function allowsKey(key) { | ||
var _this7 = this; | ||
allowsKey(key) { | ||
// Loop through all keys in the schema | ||
return this._schemaKeys.some(loopKey => { | ||
// If the schema key is the test key, it's allowed. | ||
if (loopKey === key) return true; | ||
const fieldSchema = this.schema(loopKey); | ||
const compare1 = key.slice(0, loopKey.length + 2); | ||
const compare2 = compare1.slice(0, -1); // Blackbox and subschema checks are needed only if key starts with | ||
// loopKey + a dot | ||
// Loop through all keys in the schema | ||
return this._schemaKeys.some(function (loopKey) { | ||
// If the schema key is the test key, it's allowed. | ||
if (loopKey === key) return true; | ||
if (compare2 !== `${loopKey}.`) return false; // Black box handling | ||
var fieldSchema = _this7.schema(loopKey); | ||
if (this._blackboxKeys.indexOf(loopKey) > -1) { | ||
// If the test key is the black box key + ".$", then the test | ||
// key is NOT allowed because black box keys are by definition | ||
// only for objects, and not for arrays. | ||
return compare1 !== `${loopKey}.$`; | ||
} // Subschemas | ||
var compare1 = key.slice(0, loopKey.length + 2); | ||
var compare2 = compare1.slice(0, -1); // Blackbox and subschema checks are needed only if key starts with | ||
// loopKey + a dot | ||
if (compare2 !== "".concat(loopKey, ".")) return false; // Black box handling | ||
let allowed = false; | ||
const subKey = key.slice(loopKey.length + 1); | ||
fieldSchema.type.definitions.forEach(typeDef => { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
if (typeDef.type.allowsKey(subKey)) allowed = true; | ||
}); | ||
return allowed; | ||
}); | ||
} | ||
/** | ||
* Returns all the child keys for the object identified by the generic prefix, | ||
* or all the top level keys if no prefix is supplied. | ||
* | ||
* @param {String} [keyPrefix] The Object-type generic key for which to get child keys. Omit for | ||
* top-level Object-type keys | ||
* @returns {[[Type]]} [[Description]] | ||
*/ | ||
if (_this7._blackboxKeys.indexOf(loopKey) > -1) { | ||
// If the test key is the black box key + ".$", then the test | ||
// key is NOT allowed because black box keys are by definition | ||
// only for objects, and not for arrays. | ||
return compare1 !== "".concat(loopKey, ".$"); | ||
} // Subschemas | ||
objectKeys(keyPrefix) { | ||
if (!keyPrefix) return this._firstLevelSchemaKeys; | ||
return this._objectKeys[`${keyPrefix}.`] || []; | ||
} | ||
/** | ||
* Copies this schema into a new instance with the same validators, messages, | ||
* and options, but with different keys as defined in `schema` argument | ||
* | ||
* @param {Object} schema | ||
* @returns The new SimpleSchema instance (chainable) | ||
*/ | ||
var allowed = false; | ||
var subKey = key.slice(loopKey.length + 1); | ||
fieldSchema.type.definitions.forEach(function (typeDef) { | ||
if (!SimpleSchema.isSimpleSchema(typeDef.type)) return; | ||
if (typeDef.type.allowsKey(subKey)) allowed = true; | ||
}); | ||
return allowed; | ||
}); | ||
} | ||
/** | ||
* Returns all the child keys for the object identified by the generic prefix, | ||
* or all the top level keys if no prefix is supplied. | ||
* | ||
* @param {String} [keyPrefix] The Object-type generic key for which to get child keys. Omit for | ||
* top-level Object-type keys | ||
* @returns {[[Type]]} [[Description]] | ||
*/ | ||
}, { | ||
key: "objectKeys", | ||
value: function objectKeys(keyPrefix) { | ||
if (!keyPrefix) return this._firstLevelSchemaKeys; | ||
return this._objectKeys["".concat(keyPrefix, ".")] || []; | ||
} | ||
/** | ||
* Copies this schema into a new instance with the same validators, messages, | ||
* and options, but with different keys as defined in `schema` argument | ||
* | ||
* @param {Object} schema | ||
* @returns The new SimpleSchema instance (chainable) | ||
*/ | ||
_copyWithSchema(schema) { | ||
const cl = new SimpleSchema(schema, (0, _clone.default)(this._constructorOptions, false, 1)); | ||
cl._cleanOptions = this._cleanOptions; | ||
cl.messageBox = this.messageBox.clone(); | ||
return cl; | ||
} | ||
/** | ||
* Clones this schema into a new instance with the same schema keys, validators, | ||
* and options. | ||
* | ||
* @returns The new SimpleSchema instance (chainable) | ||
*/ | ||
}, { | ||
key: "_copyWithSchema", | ||
value: function _copyWithSchema(schema) { | ||
var cl = new SimpleSchema(schema, (0, _clone["default"])(this._constructorOptions, false, 1)); | ||
cl._cleanOptions = this._cleanOptions; | ||
cl.messageBox = this.messageBox.clone(); | ||
return cl; | ||
} | ||
/** | ||
* Clones this schema into a new instance with the same schema keys, validators, | ||
* and options. | ||
* | ||
* @returns The new SimpleSchema instance (chainable) | ||
*/ | ||
}, { | ||
key: "clone", | ||
value: function clone() { | ||
return this._copyWithSchema(this._schema); | ||
} | ||
/** | ||
* Extends (mutates) this schema with another schema, key by key. | ||
* | ||
* @param {SimpleSchema|Object} schema | ||
* @returns The SimpleSchema instance (chainable) | ||
*/ | ||
clone() { | ||
return this._copyWithSchema(this._schema); | ||
} | ||
/** | ||
* Extends (mutates) this schema with another schema, key by key. | ||
* | ||
* @param {SimpleSchema|Object} schema | ||
* @returns The SimpleSchema instance (chainable) | ||
*/ | ||
}, { | ||
key: "extend", | ||
value: function extend() { | ||
var _this8 = this; | ||
var schema = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; | ||
if (Array.isArray(schema)) throw new Error('You may not pass an array of schemas to the SimpleSchema constructor or to extend()'); | ||
var schemaObj; | ||
extend(schema = {}) { | ||
if (Array.isArray(schema)) throw new Error('You may not pass an array of schemas to the SimpleSchema constructor or to extend()'); | ||
let schemaObj; | ||
if (SimpleSchema.isSimpleSchema(schema)) { | ||
schemaObj = schema._schema; | ||
this._validators = this._validators.concat(schema._validators); | ||
this._docValidators = this._docValidators.concat(schema._docValidators); | ||
this._cleanOptions = (0, _extend2["default"])(false, this._cleanOptions, schema._cleanOptions); | ||
this._constructorOptions = (0, _extend2["default"])(false, this._constructorOptions, schema._constructorOptions); | ||
} else { | ||
schemaObj = (0, _expandShorthand["default"])(schema); | ||
} // Update all of the information cached on the instance | ||
if (SimpleSchema.isSimpleSchema(schema)) { | ||
schemaObj = schema._schema; | ||
this._validators = this._validators.concat(schema._validators); | ||
this._docValidators = this._docValidators.concat(schema._docValidators); | ||
this._cleanOptions = (0, _extend.default)(false, this._cleanOptions, schema._cleanOptions); | ||
this._constructorOptions = (0, _extend.default)(false, this._constructorOptions, schema._constructorOptions); | ||
} else { | ||
schemaObj = (0, _expandShorthand.default)(schema); | ||
} // Update all of the information cached on the instance | ||
Object.keys(schemaObj).forEach(function (fieldName) { | ||
var definition = standardizeDefinition(schemaObj[fieldName]); // Merge/extend with any existing definition | ||
Object.keys(schemaObj).forEach(fieldName => { | ||
const definition = standardizeDefinition(schemaObj[fieldName]); // Merge/extend with any existing definition | ||
if (_this8._schema[fieldName]) { | ||
if (!_this8._schema.hasOwnProperty(fieldName)) { | ||
// fieldName is actually a method from Object itself! | ||
throw new Error("".concat(fieldName, " key is actually the name of a method on Object, please rename it")); | ||
} | ||
if (this._schema[fieldName]) { | ||
if (!this._schema.hasOwnProperty(fieldName)) { | ||
// fieldName is actually a method from Object itself! | ||
throw new Error(`${fieldName} key is actually the name of a method on Object, please rename it`); | ||
_this8._schema[fieldName] = _objectSpread({}, _this8._schema[fieldName], {}, (0, _lodash4["default"])(definition, 'type')); | ||
if (definition.type) _this8._schema[fieldName].type.extend(definition.type); | ||
} else { | ||
_this8._schema[fieldName] = definition; | ||
} | ||
this._schema[fieldName] = _objectSpread({}, this._schema[fieldName], (0, _lodash4.default)(definition, 'type')); | ||
if (definition.type) this._schema[fieldName].type.extend(definition.type); | ||
} else { | ||
this._schema[fieldName] = definition; | ||
} | ||
checkAndScrubDefinition(fieldName, _this8._schema[fieldName], _this8._constructorOptions, schemaObj); | ||
}); | ||
checkSchemaOverlap(this._schema); // Set/Reset all of these | ||
checkAndScrubDefinition(fieldName, this._schema[fieldName], this._constructorOptions, schemaObj); | ||
}); | ||
checkSchemaOverlap(this._schema); // Set/Reset all of these | ||
this._schemaKeys = Object.keys(this._schema); | ||
this._autoValues = []; | ||
this._blackboxKeys = []; | ||
this._firstLevelSchemaKeys = []; | ||
this._objectKeys = {}; // Update all of the information cached on the instance | ||
this._schemaKeys = Object.keys(this._schema); | ||
this._autoValues = []; | ||
this._blackboxKeys = []; | ||
this._firstLevelSchemaKeys = []; | ||
this._objectKeys = {}; // Update all of the information cached on the instance | ||
this._schemaKeys.forEach(function (fieldName) { | ||
// Make sure parent has a definition in the schema. No implied objects! | ||
if (fieldName.indexOf('.') > -1) { | ||
var parentFieldName = fieldName.slice(0, fieldName.lastIndexOf('.')); | ||
if (!_this8._schema.hasOwnProperty(parentFieldName)) throw new Error("\"".concat(fieldName, "\" is in the schema but \"").concat(parentFieldName, "\" is not")); | ||
} | ||
this._schemaKeys.forEach(fieldName => { | ||
// Make sure parent has a definition in the schema. No implied objects! | ||
if (fieldName.indexOf('.') > -1) { | ||
const parentFieldName = fieldName.slice(0, fieldName.lastIndexOf('.')); | ||
if (!this._schema.hasOwnProperty(parentFieldName)) throw new Error(`"${fieldName}" is in the schema but "${parentFieldName}" is not`); | ||
} | ||
var definition = _this8._schema[fieldName]; // Keep list of all top level keys | ||
const definition = this._schema[fieldName]; // Keep list of all top level keys | ||
if (fieldName.indexOf('.') === -1) _this8._firstLevelSchemaKeys.push(fieldName); // Keep list of all blackbox keys for passing to MongoObject constructor | ||
// XXX For now if any oneOf type is blackbox, then the whole field is. | ||
if (fieldName.indexOf('.') === -1) this._firstLevelSchemaKeys.push(fieldName); // Keep list of all blackbox keys for passing to MongoObject constructor | ||
// XXX For now if any oneOf type is blackbox, then the whole field is. | ||
(0, _lodash["default"])(definition.type.definitions, function (oneOfDef) { | ||
if (oneOfDef.blackbox === true) { | ||
_this8._blackboxKeys.push(fieldName); | ||
(0, _lodash.default)(definition.type.definitions, oneOfDef => { | ||
if (oneOfDef.blackbox === true) { | ||
this._blackboxKeys.push(fieldName); | ||
return false; // exit loop | ||
} | ||
return false; // exit loop | ||
return true; | ||
}); // Keep list of autoValue functions | ||
if (typeof definition.autoValue === 'function') { | ||
_this8._autoValues.push({ | ||
closestSubschemaFieldName: '', | ||
fieldName: fieldName, | ||
func: definition.autoValue | ||
}); | ||
} | ||
}); // Store child keys keyed by parent. This needs to be done recursively to handle | ||
// subschemas. | ||
return true; | ||
}); // Keep list of autoValue functions | ||
if (typeof definition.autoValue === 'function') { | ||
this._autoValues.push({ | ||
closestSubschemaFieldName: '', | ||
fieldName, | ||
func: definition.autoValue | ||
}); | ||
} | ||
}); // Store child keys keyed by parent. This needs to be done recursively to handle | ||
// subschemas. | ||
var setObjectKeys = function setObjectKeys(curSchema, schemaParentKey) { | ||
Object.keys(curSchema).forEach(function (fieldName) { | ||
var definition = curSchema[fieldName]; | ||
fieldName = schemaParentKey ? "".concat(schemaParentKey, ".").concat(fieldName) : fieldName; | ||
if (fieldName.indexOf('.') > -1 && fieldName.slice(-2) !== '.$') { | ||
var parentKey = fieldName.slice(0, fieldName.lastIndexOf('.')); | ||
var parentKeyWithDot = "".concat(parentKey, "."); | ||
_this8._objectKeys[parentKeyWithDot] = _this8._objectKeys[parentKeyWithDot] || []; | ||
const setObjectKeys = (curSchema, schemaParentKey) => { | ||
Object.keys(curSchema).forEach(fieldName => { | ||
const definition = curSchema[fieldName]; | ||
fieldName = schemaParentKey ? `${schemaParentKey}.${fieldName}` : fieldName; | ||
_this8._objectKeys[parentKeyWithDot].push(fieldName.slice(fieldName.lastIndexOf('.') + 1)); | ||
} // If the current field is a nested SimpleSchema, | ||
// iterate over the child fields and cache their properties as well | ||
if (fieldName.indexOf('.') > -1 && fieldName.slice(-2) !== '.$') { | ||
const parentKey = fieldName.slice(0, fieldName.lastIndexOf('.')); | ||
const parentKeyWithDot = `${parentKey}.`; | ||
this._objectKeys[parentKeyWithDot] = this._objectKeys[parentKeyWithDot] || []; | ||
this._objectKeys[parentKeyWithDot].push(fieldName.slice(fieldName.lastIndexOf('.') + 1)); | ||
} // If the current field is a nested SimpleSchema, | ||
// iterate over the child fields and cache their properties as well | ||
definition.type.definitions.forEach(function (_ref3) { | ||
var type = _ref3.type; | ||
definition.type.definitions.forEach(({ | ||
type | ||
}) => { | ||
if (SimpleSchema.isSimpleSchema(type)) { | ||
setObjectKeys(type._schema, fieldName); | ||
} | ||
if (SimpleSchema.isSimpleSchema(type)) { | ||
setObjectKeys(type._schema, fieldName); | ||
} | ||
}); | ||
}); | ||
}); | ||
}; | ||
}; | ||
setObjectKeys(this._schema); | ||
return this; | ||
} | ||
setObjectKeys(this._schema); | ||
return this; | ||
} | ||
}, { | ||
key: "getAllowedValuesForKey", | ||
value: function getAllowedValuesForKey(key) { | ||
// For array fields, `allowedValues` is on the array item definition | ||
if (this.allowsKey("".concat(key, ".$"))) { | ||
key = "".concat(key, ".$"); | ||
} | ||
getAllowedValuesForKey(key) { | ||
// For array fields, `allowedValues` is on the array item definition | ||
if (this.allowsKey(`${key}.$`)) { | ||
key = `${key}.$`; | ||
var allowedValues = this.get(key, 'allowedValues'); | ||
return (0, _lodash3["default"])(allowedValues) ? null : _toConsumableArray(allowedValues); | ||
} | ||
}, { | ||
key: "newContext", | ||
value: function newContext() { | ||
return new _ValidationContext["default"](this); | ||
} | ||
}, { | ||
key: "namedContext", | ||
value: function namedContext(name) { | ||
if (typeof name !== 'string') name = 'default'; | ||
const allowedValues = this.get(key, 'allowedValues'); | ||
return (0, _lodash3.default)(allowedValues) ? null : [...allowedValues]; | ||
} | ||
if (!this._validationContexts[name]) { | ||
this._validationContexts[name] = new _ValidationContext["default"](this); | ||
} | ||
newContext() { | ||
return new _ValidationContext.default(this); | ||
} | ||
namedContext(name) { | ||
if (typeof name !== 'string') name = 'default'; | ||
if (!this._validationContexts[name]) { | ||
this._validationContexts[name] = new _ValidationContext.default(this); | ||
return this._validationContexts[name]; | ||
} | ||
}, { | ||
key: "addValidator", | ||
value: function addValidator(func) { | ||
this._validators.push(func); | ||
} | ||
}, { | ||
key: "addDocValidator", | ||
value: function addDocValidator(func) { | ||
this._docValidators.push(func); | ||
} | ||
/** | ||
* @param obj {Object|Object[]} Object or array of objects to validate. | ||
* @param [options] {Object} Same options object that ValidationContext#validate takes | ||
* | ||
* Throws an Error with name `ClientError` and `details` property containing the errors. | ||
*/ | ||
return this._validationContexts[name]; | ||
} | ||
}, { | ||
key: "validate", | ||
value: function validate(obj) { | ||
var _this9 = this; | ||
addValidator(func) { | ||
this._validators.push(func); | ||
} | ||
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}; | ||
// For Meteor apps, `check` option can be passed to silence audit-argument-checks | ||
var check = options.check || this._constructorOptions.check; | ||
addDocValidator(func) { | ||
this._docValidators.push(func); | ||
} | ||
/** | ||
* @param obj {Object|Object[]} Object or array of objects to validate. | ||
* @param [options] {Object} Same options object that ValidationContext#validate takes | ||
* | ||
* Throws an Error with name `ClientError` and `details` property containing the errors. | ||
*/ | ||
if (typeof check === 'function') { | ||
// Call check but ignore the error | ||
try { | ||
check(obj); | ||
} catch (e) { | ||
/* ignore error */ | ||
} | ||
} // obj can be an array, in which case we validate each object in it and | ||
// throw as soon as one has an error | ||
validate(obj, options = {}) { | ||
// For Meteor apps, `check` option can be passed to silence audit-argument-checks | ||
const check = options.check || this._constructorOptions.check; | ||
var objects = Array.isArray(obj) ? obj : [obj]; | ||
objects.forEach(function (oneObj) { | ||
var validationContext = _this9.newContext(); | ||
if (typeof check === 'function') { | ||
// Call check but ignore the error | ||
try { | ||
check(obj); | ||
} catch (e) { | ||
/* ignore error */ | ||
} | ||
} // obj can be an array, in which case we validate each object in it and | ||
// throw as soon as one has an error | ||
var isValid = validationContext.validate(oneObj, options); | ||
if (isValid) return; | ||
var errors = validationContext.validationErrors(); // In order for the message at the top of the stack trace to be useful, | ||
// we set it to the first validation error message. | ||
var message = _this9.messageForError(errors[0]); | ||
const objects = Array.isArray(obj) ? obj : [obj]; | ||
objects.forEach(oneObj => { | ||
const validationContext = this.newContext(); | ||
const isValid = validationContext.validate(oneObj, options); | ||
if (isValid) return; | ||
const errors = validationContext.validationErrors(); // In order for the message at the top of the stack trace to be useful, | ||
// we set it to the first validation error message. | ||
var error = new Error(message); | ||
error.name = error.errorType = 'ClientError'; | ||
error.error = 'validation-error'; // Add meaningful error messages for each validation error. | ||
// Useful for display messages when using 'mdg:validated-method'. | ||
const message = this.messageForError(errors[0]); | ||
const error = new Error(message); | ||
error.name = error.errorType = 'ClientError'; | ||
error.error = 'validation-error'; // Add meaningful error messages for each validation error. | ||
// Useful for display messages when using 'mdg:validated-method'. | ||
error.details = errors.map(function (errorDetail) { | ||
return _objectSpread({}, errorDetail, { | ||
message: _this9.messageForError(errorDetail) | ||
}); | ||
}); // The primary use for the validationErrorTransform is to convert the | ||
// vanilla Error into a Meteor.Error until DDP is able to pass | ||
// vanilla errors back to the client. | ||
error.details = errors.map(errorDetail => _objectSpread({}, errorDetail, { | ||
message: this.messageForError(errorDetail) | ||
})); // The primary use for the validationErrorTransform is to convert the | ||
// vanilla Error into a Meteor.Error until DDP is able to pass | ||
// vanilla errors back to the client. | ||
if (typeof SimpleSchema.validationErrorTransform === 'function') { | ||
throw SimpleSchema.validationErrorTransform(error); | ||
} else { | ||
throw error; | ||
} | ||
}); | ||
} | ||
/** | ||
* @param obj {Object} Object to validate. | ||
* @param [options] {Object} Same options object that ValidationContext#validate takes | ||
* | ||
* Returns a Promise that resolves with the errors | ||
*/ | ||
if (typeof SimpleSchema.validationErrorTransform === 'function') { | ||
throw SimpleSchema.validationErrorTransform(error); | ||
} else { | ||
throw error; | ||
} | ||
}); | ||
} | ||
/** | ||
* @param obj {Object} Object to validate. | ||
* @param [options] {Object} Same options object that ValidationContext#validate takes | ||
* | ||
* Returns a Promise that resolves with the errors | ||
*/ | ||
}, { | ||
key: "validateAndReturnErrorsPromise", | ||
value: function validateAndReturnErrorsPromise(obj, options) { | ||
var _this10 = this; | ||
var validationContext = this.newContext(); | ||
var isValid = validationContext.validate(obj, options); | ||
if (isValid) return Promise.resolve([]); // Add the `message` prop | ||
validateAndReturnErrorsPromise(obj, options) { | ||
const validationContext = this.newContext(); | ||
const isValid = validationContext.validate(obj, options); | ||
if (isValid) return Promise.resolve([]); // Add the `message` prop | ||
const errors = validationContext.validationErrors().map(errorDetail => { | ||
return _objectSpread({}, errorDetail, { | ||
message: this.messageForError(errorDetail) | ||
var errors = validationContext.validationErrors().map(function (errorDetail) { | ||
return _objectSpread({}, errorDetail, { | ||
message: _this10.messageForError(errorDetail) | ||
}); | ||
}); | ||
}); | ||
return Promise.resolve(errors); | ||
} | ||
return Promise.resolve(errors); | ||
} | ||
}, { | ||
key: "validator", | ||
value: function validator() { | ||
var _this11 = this; | ||
validator(options = {}) { | ||
return obj => { | ||
const optionsClone = _objectSpread({}, options); | ||
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; | ||
return function (obj) { | ||
var optionsClone = _objectSpread({}, options); | ||
if (options.clean === true) { | ||
// Do this here and pass into both functions for better performance | ||
optionsClone.mongoObject = new _mongoObject.default(obj, this.blackboxKeys()); | ||
this.clean(obj, optionsClone); | ||
} | ||
if (options.clean === true) { | ||
// Do this here and pass into both functions for better performance | ||
optionsClone.mongoObject = new _mongoObject["default"](obj, _this11.blackboxKeys()); | ||
if (options.returnErrorsPromise) { | ||
return this.validateAndReturnErrorsPromise(obj, optionsClone); | ||
} | ||
_this11.clean(obj, optionsClone); | ||
} | ||
return this.validate(obj, optionsClone); | ||
}; | ||
} | ||
if (options.returnErrorsPromise) { | ||
return _this11.validateAndReturnErrorsPromise(obj, optionsClone); | ||
} | ||
getFormValidator(options = {}) { | ||
return this.validator(_objectSpread({}, options, { | ||
returnErrorsPromise: true | ||
})); | ||
} | ||
return _this11.validate(obj, optionsClone); | ||
}; | ||
} | ||
}, { | ||
key: "getFormValidator", | ||
value: function getFormValidator() { | ||
var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {}; | ||
return this.validator(_objectSpread({}, options, { | ||
returnErrorsPromise: true | ||
})); | ||
} | ||
}, { | ||
key: "clean", | ||
value: function clean() { | ||
for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) { | ||
args[_key] = arguments[_key]; | ||
} | ||
clean(...args) { | ||
return (0, _clean.default)(this, ...args); | ||
} | ||
/** | ||
* Change schema labels on the fly, causing mySchema.label computation | ||
* to rerun. Useful when the user changes the language. | ||
* | ||
* @param {Object} labels A dictionary of all the new label values, by schema key. | ||
*/ | ||
return _clean2["default"].apply(void 0, [this].concat(args)); | ||
} | ||
/** | ||
* Change schema labels on the fly, causing mySchema.label computation | ||
* to rerun. Useful when the user changes the language. | ||
* | ||
* @param {Object} labels A dictionary of all the new label values, by schema key. | ||
*/ | ||
}, { | ||
key: "labels", | ||
value: function labels(_labels) { | ||
var _this12 = this; | ||
labels(labels) { | ||
Object.keys(labels).forEach(key => { | ||
const label = labels[key]; | ||
if (typeof label !== 'string' && typeof label !== 'function') return; | ||
if (!this._schema.hasOwnProperty(key)) return; | ||
this._schema[key].label = label; | ||
this._depsLabels[key] && this._depsLabels[key].changed(); | ||
}); | ||
} | ||
/** | ||
* Gets a field's label or all field labels reactively. | ||
* | ||
* @param {String} [key] The schema key, specific or generic. | ||
* Omit this argument to get a dictionary of all labels. | ||
* @returns {String} The label | ||
*/ | ||
label(key) { | ||
// Get all labels | ||
if (key === null || key === undefined) { | ||
const result = {}; | ||
this._schemaKeys.forEach(schemaKey => { | ||
result[schemaKey] = this.label(schemaKey); | ||
Object.keys(_labels).forEach(function (key) { | ||
var label = _labels[key]; | ||
if (typeof label !== 'string' && typeof label !== 'function') return; | ||
if (!_this12._schema.hasOwnProperty(key)) return; | ||
_this12._schema[key].label = label; | ||
_this12._depsLabels[key] && _this12._depsLabels[key].changed(); | ||
}); | ||
} | ||
/** | ||
* Gets a field's label or all field labels reactively. | ||
* | ||
* @param {String} [key] The schema key, specific or generic. | ||
* Omit this argument to get a dictionary of all labels. | ||
* @returns {String} The label | ||
*/ | ||
return result; | ||
} // Get label for one field | ||
}, { | ||
key: "label", | ||
value: function label(key) { | ||
var _this13 = this; | ||
// Get all labels | ||
if (key === null || key === undefined) { | ||
var result = {}; | ||
const label = this.get(key, 'label'); | ||
if (label) this.reactiveLabelDependency(key); | ||
return label || null; | ||
} | ||
/** | ||
* Gets a field's property | ||
* | ||
* @param {String} key The schema key, specific or generic. | ||
* @param {String} prop Name of the property to get for that schema key | ||
* @param {Object} [functionContext] The `this` context to use if prop is a function | ||
* @returns {any} The property value | ||
*/ | ||
this._schemaKeys.forEach(function (schemaKey) { | ||
result[schemaKey] = _this13.label(schemaKey); | ||
}); | ||
return result; | ||
} // Get label for one field | ||
get(key, prop, functionContext) { | ||
const def = this.getDefinition(key, ['type', prop], functionContext); | ||
if (!def) return undefined; | ||
if ((0, _lodash2.default)(schemaDefinitionOptions, prop)) { | ||
return def[prop]; | ||
var label = this.get(key, 'label'); | ||
if (label) this.reactiveLabelDependency(key); | ||
return label || null; | ||
} | ||
/** | ||
* Gets a field's property | ||
* | ||
* @param {String} key The schema key, specific or generic. | ||
* @param {String} prop Name of the property to get for that schema key | ||
* @param {Object} [functionContext] The `this` context to use if prop is a function | ||
* @returns {any} The property value | ||
*/ | ||
return (def.type.find(props => props[prop]) || {})[prop]; | ||
} // shorthand for getting defaultValue | ||
}, { | ||
key: "get", | ||
value: function get(key, prop, functionContext) { | ||
var def = this.getDefinition(key, ['type', prop], functionContext); | ||
if (!def) return undefined; | ||
defaultValue(key) { | ||
return this.get(key, 'defaultValue'); | ||
} // Returns a string message for the given error type and key. Passes through | ||
// to message-box pkg. | ||
messageForError(errorInfo) { | ||
const { | ||
name | ||
} = errorInfo; | ||
return this.messageBox.message(errorInfo, { | ||
context: { | ||
key: name, | ||
// backward compatibility | ||
// The call to this.label() establishes a reactive dependency, too | ||
label: this.label(name) | ||
if ((0, _lodash2["default"])(schemaDefinitionOptions, prop)) { | ||
return def[prop]; | ||
} | ||
}); | ||
} | ||
/** | ||
* @method SimpleSchema#pick | ||
* @param {[fields]} The list of fields to pick to instantiate the subschema | ||
* @returns {SimpleSchema} The subschema | ||
*/ | ||
return (def.type.find(function (props) { | ||
return props[prop]; | ||
}) || {})[prop]; | ||
} // shorthand for getting defaultValue | ||
// If you need to allow properties other than those listed above, call this from your app or package | ||
static extendOptions(options) { | ||
// For backwards compatibility we still take an object here, but we only care about the names | ||
if (!Array.isArray(options)) options = Object.keys(options); | ||
options.forEach(option => { | ||
schemaDefinitionOptions.push(option); | ||
}); | ||
} | ||
}, { | ||
key: "defaultValue", | ||
value: function defaultValue(key) { | ||
return this.get(key, 'defaultValue'); | ||
} // Returns a string message for the given error type and key. Passes through | ||
// to message-box pkg. | ||
static defineValidationErrorTransform(transform) { | ||
if (typeof transform !== 'function') { | ||
throw new Error('SimpleSchema.defineValidationErrorTransform must be passed a function that accepts an Error and returns an Error'); | ||
}, { | ||
key: "messageForError", | ||
value: function messageForError(errorInfo) { | ||
var name = errorInfo.name; | ||
return this.messageBox.message(errorInfo, { | ||
context: { | ||
key: name, | ||
// backward compatibility | ||
// The call to this.label() establishes a reactive dependency, too | ||
label: this.label(name) | ||
} | ||
}); | ||
} | ||
/** | ||
* @method SimpleSchema#pick | ||
* @param {[fields]} The list of fields to pick to instantiate the subschema | ||
* @returns {SimpleSchema} The subschema | ||
*/ | ||
SimpleSchema.validationErrorTransform = transform; | ||
} | ||
}], [{ | ||
key: "isSimpleSchema", | ||
value: function isSimpleSchema(obj) { | ||
return obj && (obj instanceof SimpleSchema || obj._schema); | ||
} | ||
}, { | ||
key: "extendOptions", | ||
// If you need to allow properties other than those listed above, call this from your app or package | ||
value: function extendOptions(options) { | ||
// For backwards compatibility we still take an object here, but we only care about the names | ||
if (!Array.isArray(options)) options = Object.keys(options); | ||
options.forEach(function (option) { | ||
schemaDefinitionOptions.push(option); | ||
}); | ||
} | ||
}, { | ||
key: "defineValidationErrorTransform", | ||
value: function defineValidationErrorTransform(transform) { | ||
if (typeof transform !== 'function') { | ||
throw new Error('SimpleSchema.defineValidationErrorTransform must be passed a function that accepts an Error and returns an Error'); | ||
} | ||
static validate(obj, schema, options) { | ||
// Allow passing just the schema object | ||
if (!SimpleSchema.isSimpleSchema(schema)) { | ||
schema = new SimpleSchema(schema); | ||
SimpleSchema.validationErrorTransform = transform; | ||
} | ||
}, { | ||
key: "validate", | ||
value: function validate(obj, schema, options) { | ||
// Allow passing just the schema object | ||
if (!SimpleSchema.isSimpleSchema(schema)) { | ||
schema = new SimpleSchema(schema); | ||
} | ||
return schema.validate(obj, options); | ||
} | ||
return schema.validate(obj, options); | ||
} | ||
}, { | ||
key: "oneOf", | ||
value: function oneOf() { | ||
for (var _len2 = arguments.length, definitions = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { | ||
definitions[_key2] = arguments[_key2]; | ||
} | ||
static oneOf(...definitions) { | ||
return new _SimpleSchemaGroup.default(...definitions); | ||
} | ||
return _construct(_SimpleSchemaGroup["default"], definitions); | ||
} | ||
}, { | ||
key: "addValidator", | ||
value: function addValidator(func) { | ||
SimpleSchema._validators.push(func); | ||
} | ||
}, { | ||
key: "addDocValidator", | ||
value: function addDocValidator(func) { | ||
SimpleSchema._docValidators.push(func); | ||
} | ||
}]); | ||
static addValidator(func) { | ||
SimpleSchema._validators.push(func); | ||
} | ||
static addDocValidator(func) { | ||
SimpleSchema._docValidators.push(func); | ||
} | ||
} | ||
return SimpleSchema; | ||
}(); | ||
/* | ||
@@ -848,3 +965,3 @@ * PRIVATE | ||
_defineProperty(SimpleSchema, "RegEx", _regExp.default); | ||
_defineProperty(SimpleSchema, "RegEx", _regExp["default"]); | ||
@@ -877,21 +994,21 @@ _defineProperty(SimpleSchema, "_validators", []); | ||
_defineProperty(SimpleSchema, "_makeGeneric", _mongoObject.default.makeKeyGeneric); | ||
_defineProperty(SimpleSchema, "_makeGeneric", _mongoObject["default"].makeKeyGeneric); | ||
_defineProperty(SimpleSchema, "ValidationContext", _ValidationContext.default); | ||
_defineProperty(SimpleSchema, "ValidationContext", _ValidationContext["default"]); | ||
_defineProperty(SimpleSchema, "setDefaultMessages", messages => { | ||
(0, _extend.default)(true, _defaultMessages.default, messages); | ||
_defineProperty(SimpleSchema, "setDefaultMessages", function (messages) { | ||
(0, _extend2["default"])(true, _defaultMessages["default"], messages); | ||
}); | ||
function checkSchemaOverlap(schema) { | ||
Object.keys(schema).forEach(key => { | ||
const val = schema[key]; | ||
if (!val.type) throw new Error(`${key} key is missing "type"`); | ||
val.type.definitions.forEach(def => { | ||
Object.keys(schema).forEach(function (key) { | ||
var val = schema[key]; | ||
if (!val.type) throw new Error("".concat(key, " key is missing \"type\"")); | ||
val.type.definitions.forEach(function (def) { | ||
if (!SimpleSchema.isSimpleSchema(def.type)) return; | ||
Object.keys(def.type._schema).forEach(subKey => { | ||
const newKey = `${key}.${subKey}`; | ||
Object.keys(def.type._schema).forEach(function (subKey) { | ||
var newKey = "".concat(key, ".").concat(subKey); | ||
if (schema.hasOwnProperty(newKey)) { | ||
throw new Error(`The type for "${key}" is set to a SimpleSchema instance that defines "${key}.${subKey}", but the parent SimpleSchema instance also tries to define "${key}.${subKey}"`); | ||
throw new Error("The type for \"".concat(key, "\" is set to a SimpleSchema instance that defines \"").concat(key, ".").concat(subKey, "\", but the parent SimpleSchema instance also tries to define \"").concat(key, ".").concat(subKey, "\"")); | ||
} | ||
@@ -910,4 +1027,4 @@ }); | ||
function inflectedLabel(fieldName, shouldHumanize) { | ||
const pieces = fieldName.split('.'); | ||
let label; | ||
var pieces = fieldName.split('.'); | ||
var label; | ||
@@ -918,3 +1035,3 @@ do { | ||
return shouldHumanize ? (0, _humanize.default)(label) : label; | ||
return shouldHumanize ? (0, _humanize["default"])(label) : label; | ||
} | ||
@@ -943,11 +1060,11 @@ | ||
function standardizeDefinition(def) { | ||
const standardizedDef = (0, _lodash4.default)(def, oneOfProps); // Internally, all definition types are stored as groups for simplicity of access. | ||
var standardizedDef = (0, _lodash4["default"])(def, oneOfProps); // Internally, all definition types are stored as groups for simplicity of access. | ||
// If we are extending, there may not actually be def.type, but it's okay because | ||
// it will be added later when the two SimpleSchemaGroups are merged. | ||
if (def.type && def.type instanceof _SimpleSchemaGroup.default) { | ||
if (def.type && def.type instanceof _SimpleSchemaGroup["default"]) { | ||
standardizedDef.type = def.type.clone(); | ||
} else { | ||
const groupProps = (0, _lodash5.default)(def, oneOfProps); | ||
standardizedDef.type = new _SimpleSchemaGroup.default(groupProps); | ||
var groupProps = (0, _lodash5["default"])(def, oneOfProps); | ||
standardizedDef.type = new _SimpleSchemaGroup["default"](groupProps); | ||
} | ||
@@ -960,22 +1077,21 @@ | ||
function checkAndScrubDefinition(fieldName, definition, options, fullSchemaObj) { | ||
if (!definition.type) throw new Error(`${fieldName} key is missing "type"`); // Validate the field definition | ||
if (!definition.type) throw new Error("".concat(fieldName, " key is missing \"type\"")); // Validate the field definition | ||
Object.keys(definition).forEach(key => { | ||
Object.keys(definition).forEach(function (key) { | ||
if (schemaDefinitionOptions.indexOf(key) === -1) { | ||
throw new Error(`Invalid definition for ${fieldName} field: "${key}" is not a supported property`); | ||
throw new Error("Invalid definition for ".concat(fieldName, " field: \"").concat(key, "\" is not a supported property")); | ||
} | ||
}); // Make sure the `type`s are OK | ||
let couldBeArray = false; | ||
definition.type.definitions.forEach(({ | ||
type | ||
}) => { | ||
if (!type) throw new Error(`Invalid definition for ${fieldName} field: "type" option is required`); | ||
var couldBeArray = false; | ||
definition.type.definitions.forEach(function (_ref4) { | ||
var type = _ref4.type; | ||
if (!type) throw new Error("Invalid definition for ".concat(fieldName, " field: \"type\" option is required")); | ||
if (Array.isArray(type)) { | ||
throw new Error(`Invalid definition for ${fieldName} field: "type" may not be an array. Change it to Array.`); | ||
throw new Error("Invalid definition for ".concat(fieldName, " field: \"type\" may not be an array. Change it to Array.")); | ||
} | ||
if (type.constructor === Object && (0, _lodash3.default)(type)) { | ||
throw new Error(`Invalid definition for ${fieldName} field: "type" may not be an object. Change it to Object`); | ||
if (type.constructor === Object && (0, _lodash3["default"])(type)) { | ||
throw new Error("Invalid definition for ".concat(fieldName, " field: \"type\" may not be an object. Change it to Object")); | ||
} | ||
@@ -986,7 +1102,7 @@ | ||
if (SimpleSchema.isSimpleSchema(type)) { | ||
Object.keys(type._schema).forEach(subKey => { | ||
const newKey = `${fieldName}.${subKey}`; | ||
Object.keys(type._schema).forEach(function (subKey) { | ||
var newKey = "".concat(fieldName, ".").concat(subKey); | ||
if (fullSchemaObj.hasOwnProperty(newKey)) { | ||
throw new Error(`The type for "${fieldName}" is set to a SimpleSchema instance that defines "${newKey}", but the parent SimpleSchema instance also tries to define "${newKey}"`); | ||
throw new Error("The type for \"".concat(fieldName, "\" is set to a SimpleSchema instance that defines \"").concat(newKey, "\", but the parent SimpleSchema instance also tries to define \"").concat(newKey, "\"")); | ||
} | ||
@@ -998,4 +1114,4 @@ }); | ||
if (couldBeArray && !fullSchemaObj.hasOwnProperty(`${fieldName}.$`)) { | ||
throw new Error(`"${fieldName}" is Array type but the schema does not include a "${fieldName}.$" definition for the array items"`); | ||
if (couldBeArray && !fullSchemaObj.hasOwnProperty("".concat(fieldName, ".$"))) { | ||
throw new Error("\"".concat(fieldName, "\" is Array type but the schema does not include a \"").concat(fieldName, ".$\" definition for the array items\"")); | ||
} // defaultValue -> autoValue | ||
@@ -1008,3 +1124,3 @@ // We support defaultValue shortcut by converting it immediately into an | ||
if ('autoValue' in definition && !definition.autoValue.isDefault) { | ||
console.warn(`SimpleSchema: Found both autoValue and defaultValue options for "${fieldName}". Ignoring defaultValue.`); | ||
console.warn("SimpleSchema: Found both autoValue and defaultValue options for \"".concat(fieldName, "\". Ignoring defaultValue.")); | ||
} else { | ||
@@ -1027,3 +1143,7 @@ if (fieldName.endsWith('.$')) { | ||
if (typeof definition.required === 'function') { | ||
definition.optional = function optional(...args) { | ||
definition.optional = function optional() { | ||
for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { | ||
args[_key3] = arguments[_key3]; | ||
} | ||
return !definition.required.apply(this, args); | ||
@@ -1054,13 +1174,21 @@ }; | ||
function getPickOrOmit(type) { | ||
return function pickOrOmit(...args) { | ||
return function pickOrOmit() { | ||
var _this14 = this; | ||
for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { | ||
args[_key4] = arguments[_key4]; | ||
} | ||
// If they are picking/omitting an object or array field, we need to also include everything under it | ||
const newSchema = {}; | ||
var newSchema = {}; | ||
this._schemaKeys.forEach(key => { | ||
this._schemaKeys.forEach(function (key) { | ||
// Pick/omit it if it IS in the array of keys they want OR if it | ||
// STARTS WITH something that is in the array plus a period | ||
const includeIt = args.some(wantedField => key === wantedField || key.indexOf(`${wantedField}.`) === 0); | ||
var includeIt = args.some(function (wantedField) { | ||
return key === wantedField || key.indexOf("".concat(wantedField, ".")) === 0; | ||
}); | ||
if (includeIt && type === 'pick' || !includeIt && type === 'omit') { | ||
newSchema[key] = this._schema[key]; | ||
newSchema[key] = _this14._schema[key]; | ||
} | ||
@@ -1067,0 +1195,0 @@ }); |
@@ -13,19 +13,32 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
/* eslint-disable func-names, prefer-arrow-callback */ | ||
class CustomObject { | ||
constructor(obj) { | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
var CustomObject = | ||
/*#__PURE__*/ | ||
function () { | ||
function CustomObject(obj) { | ||
_classCallCheck(this, CustomObject); | ||
Object.assign(this, obj); | ||
} | ||
bar() { | ||
return 20; | ||
} | ||
_createClass(CustomObject, [{ | ||
key: "bar", | ||
value: function bar() { | ||
return 20; | ||
} | ||
}]); | ||
} | ||
return CustomObject; | ||
}(); | ||
describe('SimpleSchema', function () { | ||
it('throws error if first argument is an array', function () { | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
return new _SimpleSchema.SimpleSchema([]); | ||
@@ -35,3 +48,3 @@ }).toThrow('You may not pass an array of schemas to the SimpleSchema constructor or to extend()'); | ||
it('throws error if a key is missing type', function () { | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
return new _SimpleSchema.SimpleSchema({ | ||
@@ -43,3 +56,3 @@ foo: {} | ||
it('throws an explicit error if you define fields that override object methods', function () { | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
return new _SimpleSchema.SimpleSchema({ | ||
@@ -53,3 +66,3 @@ valueOf: { | ||
it('throws a error if array item definition is missing', function () { | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
return new _SimpleSchema.SimpleSchema({ | ||
@@ -62,3 +75,3 @@ someArray: Array | ||
it('throws an error if a nested schema defines a field that its parent also defines', function () { | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
return new _SimpleSchema.SimpleSchema({ | ||
@@ -73,3 +86,3 @@ foo: new _SimpleSchema.SimpleSchema({ | ||
it('expects a field with SimpleSchema type to be an object', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: new _SimpleSchema.SimpleSchema({ | ||
@@ -79,7 +92,7 @@ bar: String | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
foo: 'string' | ||
}); | ||
(0, _expect.default)(context.validationErrors()).toEqual([{ | ||
(0, _expect["default"])(context.validationErrors()).toEqual([{ | ||
dataType: 'Object', | ||
@@ -92,3 +105,3 @@ name: 'foo', | ||
it('includes type validation errors from nested schemas', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: new _SimpleSchema.SimpleSchema({ | ||
@@ -98,3 +111,3 @@ bar: String | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
@@ -105,3 +118,3 @@ foo: { | ||
}); | ||
(0, _expect.default)(context.validationErrors()).toEqual([{ | ||
(0, _expect["default"])(context.validationErrors()).toEqual([{ | ||
dataType: 'String', | ||
@@ -114,3 +127,3 @@ name: 'foo.bar', | ||
it('includes allowed value validation errors from nested schemas', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: new _SimpleSchema.SimpleSchema({ | ||
@@ -123,3 +136,3 @@ bar: { | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
@@ -130,3 +143,3 @@ foo: { | ||
}); | ||
(0, _expect.default)(context.validationErrors()).toEqual([{ | ||
(0, _expect["default"])(context.validationErrors()).toEqual([{ | ||
name: 'foo.bar', | ||
@@ -138,3 +151,3 @@ type: _SimpleSchema.SimpleSchema.ErrorTypes.VALUE_NOT_ALLOWED, | ||
it('includes validation errors from nested schemas when validating modifiers', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: new _SimpleSchema.SimpleSchema({ | ||
@@ -144,3 +157,3 @@ bar: String | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
@@ -153,3 +166,3 @@ $set: { | ||
}); | ||
(0, _expect.default)(context.validationErrors()).toEqual([{ | ||
(0, _expect["default"])(context.validationErrors()).toEqual([{ | ||
dataType: 'String', | ||
@@ -162,3 +175,3 @@ name: 'foo.bar', | ||
it('validates nested requiredness', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
@@ -176,7 +189,7 @@ type: new _SimpleSchema.SimpleSchema({ | ||
}); | ||
let context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate({ | ||
a: {} | ||
}); | ||
(0, _expect.default)(context.validationErrors()).toEqual([{ | ||
(0, _expect["default"])(context.validationErrors()).toEqual([{ | ||
name: 'a.b', | ||
@@ -196,3 +209,3 @@ type: _SimpleSchema.SimpleSchema.ErrorTypes.REQUIRED, | ||
}); | ||
(0, _expect.default)(context.validationErrors()).toEqual([{ | ||
(0, _expect["default"])(context.validationErrors()).toEqual([{ | ||
name: 'a.b.c', | ||
@@ -204,5 +217,5 @@ type: _SimpleSchema.SimpleSchema.ErrorTypes.REQUIRED, | ||
it('issue #307 - throws an error if incorrect import results in empty object', function () { | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
// Assume that default import of a file with no default export returns an empty object | ||
const Place = {}; // eslint-disable-next-line no-new | ||
var Place = {}; // eslint-disable-next-line no-new | ||
@@ -223,3 +236,3 @@ new _SimpleSchema.SimpleSchema({ | ||
it('Safely sets defaultValues on subschemas nested in arrays', function () { | ||
const nestedSchema = new _SimpleSchema.SimpleSchema({ | ||
var nestedSchema = new _SimpleSchema.SimpleSchema({ | ||
nested: { | ||
@@ -242,4 +255,4 @@ type: Array | ||
}); | ||
const context = nestedSchema.newContext(); | ||
const cleaned = context.clean({ | ||
var context = nestedSchema.newContext(); | ||
var cleaned = context.clean({ | ||
$set: { | ||
@@ -255,3 +268,3 @@ nested: [{ | ||
}); | ||
(0, _expect.default)(cleaned).toEqual({ | ||
(0, _expect["default"])(cleaned).toEqual({ | ||
$set: { | ||
@@ -270,3 +283,3 @@ nested: [{ | ||
// With $set | ||
const userSchema = new _SimpleSchema.SimpleSchema({ | ||
var userSchema = new _SimpleSchema.SimpleSchema({ | ||
profile: { | ||
@@ -279,4 +292,4 @@ type: Object | ||
}); | ||
const context = userSchema.namedContext(); | ||
(0, _expect.default)(context.validate({ | ||
var context = userSchema.namedContext(); | ||
(0, _expect["default"])(context.validate({ | ||
$set: { | ||
@@ -289,3 +302,3 @@ profile: {} | ||
const userSchema2 = new _SimpleSchema.SimpleSchema({ | ||
var userSchema2 = new _SimpleSchema.SimpleSchema({ | ||
profile: { | ||
@@ -301,4 +314,4 @@ type: Array | ||
}); | ||
const context2 = userSchema2.namedContext(); | ||
(0, _expect.default)(context2.validate({ | ||
var context2 = userSchema2.namedContext(); | ||
(0, _expect["default"])(context2.validate({ | ||
$push: { | ||
@@ -312,3 +325,3 @@ profile: {} | ||
it('validate object with prototype', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -318,31 +331,31 @@ type: _SimpleSchema.SimpleSchema.Integer | ||
}); | ||
const testObj = new CustomObject({ | ||
var testObj = new CustomObject({ | ||
foo: 1 | ||
}); | ||
const context = schema.namedContext(); | ||
(0, _expect.default)(context.validate(testObj)).toBe(true); | ||
(0, _expect.default)(testObj instanceof CustomObject).toBe(true); | ||
var context = schema.namedContext(); | ||
(0, _expect["default"])(context.validate(testObj)).toBe(true); | ||
(0, _expect["default"])(testObj instanceof CustomObject).toBe(true); | ||
testObj.foo = 'not a number'; | ||
(0, _expect.default)(context.validate(testObj)).toBe(false); | ||
(0, _expect["default"])(context.validate(testObj)).toBe(false); | ||
}); | ||
it('validate object with prototype within normal object', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
customObject: Object, | ||
'customObject.foo': _SimpleSchema.SimpleSchema.Integer | ||
}); | ||
const customObject = new CustomObject({ | ||
var customObject = new CustomObject({ | ||
foo: 1 | ||
}); | ||
const testObj = { | ||
customObject | ||
var testObj = { | ||
customObject: customObject | ||
}; | ||
const context = schema.namedContext(); | ||
(0, _expect.default)(context.validate(testObj)).toBe(true); | ||
(0, _expect.default)(testObj.customObject instanceof CustomObject).toBe(true); | ||
var context = schema.namedContext(); | ||
(0, _expect["default"])(context.validate(testObj)).toBe(true); | ||
(0, _expect["default"])(testObj.customObject instanceof CustomObject).toBe(true); | ||
testObj.customObject.foo = 'not a number'; | ||
(0, _expect.default)(context.validate(testObj)).toBe(false); | ||
(0, _expect["default"])(context.validate(testObj)).toBe(false); | ||
}); | ||
it('allowsKey', function () { | ||
function run(key, allowed) { | ||
(0, _expect.default)(_testSchema.default.allowsKey(key)).toBe(allowed); | ||
(0, _expect["default"])(_testSchema["default"].allowsKey(key)).toBe(allowed); | ||
} | ||
@@ -380,3 +393,3 @@ | ||
it('allowsKey in subschema', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: new _SimpleSchema.SimpleSchema({ | ||
@@ -387,9 +400,9 @@ bar: Object, | ||
}); | ||
(0, _expect.default)(schema.allowsKey('foo.bar')).toBe(true); | ||
(0, _expect.default)(schema.allowsKey('foo.bar.baz')).toBe(true); | ||
(0, _expect.default)(schema.allowsKey('foo.bar.bum')).toBe(false); | ||
(0, _expect.default)(schema.allowsKey('foo.bar.baz.bum')).toBe(false); | ||
(0, _expect["default"])(schema.allowsKey('foo.bar')).toBe(true); | ||
(0, _expect["default"])(schema.allowsKey('foo.bar.baz')).toBe(true); | ||
(0, _expect["default"])(schema.allowsKey('foo.bar.bum')).toBe(false); | ||
(0, _expect["default"])(schema.allowsKey('foo.bar.baz.bum')).toBe(false); | ||
}); | ||
it('validating an object with a "length" property should not error', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
length: { | ||
@@ -400,3 +413,3 @@ type: Number, | ||
}); | ||
(0, _expect.default)(() => { | ||
(0, _expect["default"])(function () { | ||
schema.validate({ | ||
@@ -415,3 +428,3 @@ length: 10 | ||
it('extend with no type', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: { | ||
@@ -427,25 +440,21 @@ type: String, | ||
}); | ||
(0, _expect.default)(schema.get('name', 'max')).toBe(15); | ||
(0, _expect["default"])(schema.get('name', 'max')).toBe(15); | ||
}); | ||
it('this.key in label function context', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
items: Array, | ||
'items.$': { | ||
type: String, | ||
label() { | ||
const { | ||
key | ||
} = this; | ||
label: function label() { | ||
var key = this.key; | ||
if (!key) return 'Item'; | ||
return `Item ${key.slice(key.lastIndexOf('.') + 1)}`; | ||
return "Item ".concat(key.slice(key.lastIndexOf('.') + 1)); | ||
} | ||
} | ||
}); | ||
(0, _expect.default)(schema.label('items.0')).toBe('Item 0'); | ||
(0, _expect.default)(schema.label('items.1')).toBe('Item 1'); | ||
(0, _expect["default"])(schema.label('items.0')).toBe('Item 0'); | ||
(0, _expect["default"])(schema.label('items.1')).toBe('Item 1'); | ||
}); | ||
it('keyIsInBlackBox in subschema', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: new _SimpleSchema.SimpleSchema({ | ||
@@ -458,9 +467,9 @@ bar: { | ||
}); | ||
(0, _expect.default)(schema.keyIsInBlackBox('foo.bar')).toBe(false); | ||
(0, _expect.default)(schema.keyIsInBlackBox('foo.bar.baz')).toBe(true); | ||
(0, _expect.default)(schema.keyIsInBlackBox('foo.bar.baz.$.bum')).toBe(true); | ||
(0, _expect["default"])(schema.keyIsInBlackBox('foo.bar')).toBe(false); | ||
(0, _expect["default"])(schema.keyIsInBlackBox('foo.bar.baz')).toBe(true); | ||
(0, _expect["default"])(schema.keyIsInBlackBox('foo.bar.baz.$.bum')).toBe(true); | ||
}); | ||
describe('blackboxKeys from subschema', function () { | ||
it('are correct', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
apple: { | ||
@@ -477,6 +486,6 @@ type: Object, | ||
}); | ||
(0, _expect.default)(schema.blackboxKeys()).toEqual(['apple', 'pear.info']); | ||
(0, _expect["default"])(schema.blackboxKeys()).toEqual(['apple', 'pear.info']); | ||
}); | ||
it('are updated after extending', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
apple: { | ||
@@ -496,3 +505,3 @@ type: Object, | ||
}); | ||
(0, _expect.default)(schema.blackboxKeys()).toEqual(['apple']); | ||
(0, _expect["default"])(schema.blackboxKeys()).toEqual(['apple']); | ||
}); | ||
@@ -502,3 +511,3 @@ }); | ||
it('works for plain object', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
firstName: { | ||
@@ -520,3 +529,3 @@ type: String, | ||
}); | ||
(0, _expect.default)(schema.schema()).toEqual({ | ||
(0, _expect["default"])(schema.schema()).toEqual({ | ||
firstName: { | ||
@@ -535,3 +544,3 @@ type: _SimpleSchema.SimpleSchema.oneOf(String), | ||
it('works for another SimpleSchema instance and copies validators', function () { | ||
const schema1 = new _SimpleSchema.SimpleSchema({ | ||
var schema1 = new _SimpleSchema.SimpleSchema({ | ||
firstName: { | ||
@@ -548,3 +557,3 @@ type: String, | ||
}); | ||
const schema2 = new _SimpleSchema.SimpleSchema({ | ||
var schema2 = new _SimpleSchema.SimpleSchema({ | ||
age: { | ||
@@ -555,5 +564,5 @@ type: Number, | ||
}); | ||
schema2.addValidator(() => {}); | ||
schema2.addDocValidator(() => {}); | ||
(0, _expect.default)(schema1.schema()).toEqual({ | ||
schema2.addValidator(function () {}); | ||
schema2.addDocValidator(function () {}); | ||
(0, _expect["default"])(schema1.schema()).toEqual({ | ||
firstName: { | ||
@@ -570,6 +579,6 @@ type: _SimpleSchema.SimpleSchema.oneOf(String), | ||
}); | ||
(0, _expect.default)(schema1._validators.length).toBe(0); | ||
(0, _expect.default)(schema1._docValidators.length).toBe(0); | ||
(0, _expect["default"])(schema1._validators.length).toBe(0); | ||
(0, _expect["default"])(schema1._docValidators.length).toBe(0); | ||
schema1.extend(schema2); | ||
(0, _expect.default)(schema1.schema()).toEqual({ | ||
(0, _expect["default"])(schema1.schema()).toEqual({ | ||
firstName: { | ||
@@ -591,7 +600,7 @@ type: _SimpleSchema.SimpleSchema.oneOf(String), | ||
}); | ||
(0, _expect.default)(schema1._validators.length).toBe(1); | ||
(0, _expect.default)(schema1._docValidators.length).toBe(1); | ||
(0, _expect["default"])(schema1._validators.length).toBe(1); | ||
(0, _expect["default"])(schema1._docValidators.length).toBe(1); | ||
}); | ||
it('keeps both min and max', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
name: { | ||
@@ -608,17 +617,17 @@ type: String, | ||
}); | ||
(0, _expect.default)(schema._schema.name.type.definitions[0].min).toBe(5); | ||
(0, _expect.default)(schema._schema.name.type.definitions[0].max).toBe(15); | ||
(0, _expect["default"])(schema._schema.name.type.definitions[0].min).toBe(5); | ||
(0, _expect["default"])(schema._schema.name.type.definitions[0].max).toBe(15); | ||
}); | ||
it('does not mutate a schema that is passed to extend', function () { | ||
const itemSchema = new _SimpleSchema.SimpleSchema({ | ||
var itemSchema = new _SimpleSchema.SimpleSchema({ | ||
_id: String | ||
}); | ||
const mainSchema = new _SimpleSchema.SimpleSchema({ | ||
var mainSchema = new _SimpleSchema.SimpleSchema({ | ||
items: Array, | ||
'items.$': itemSchema | ||
}); | ||
const item2Schema = new _SimpleSchema.SimpleSchema({ | ||
var item2Schema = new _SimpleSchema.SimpleSchema({ | ||
blah: String | ||
}); | ||
const main2Schema = new _SimpleSchema.SimpleSchema({ | ||
var main2Schema = new _SimpleSchema.SimpleSchema({ | ||
items: Array, | ||
@@ -628,7 +637,7 @@ 'items.$': item2Schema | ||
new _SimpleSchema.SimpleSchema({}).extend(mainSchema).extend(main2Schema); | ||
(0, _expect.default)(mainSchema._schema['items.$'].type.definitions[0].type._schemaKeys).toEqual(['_id']); | ||
(0, _expect["default"])(mainSchema._schema['items.$'].type.definitions[0].type._schemaKeys).toEqual(['_id']); | ||
}); | ||
}); | ||
it('empty required array is valid', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
names: { | ||
@@ -641,3 +650,3 @@ type: Array | ||
}); | ||
(0, _expectValid.default)(schema, { | ||
(0, _expectValid["default"])(schema, { | ||
names: [] | ||
@@ -647,3 +656,3 @@ }); | ||
it('null in array is not valid', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
names: { | ||
@@ -656,3 +665,3 @@ type: Array | ||
}); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
names: [null] | ||
@@ -662,3 +671,3 @@ }); | ||
it('null is valid for optional', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
test: { | ||
@@ -669,3 +678,3 @@ type: String, | ||
}); | ||
(0, _expectValid.default)(schema, { | ||
(0, _expectValid["default"])(schema, { | ||
test: null | ||
@@ -675,3 +684,3 @@ }); | ||
it('issue 360', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
emails: { | ||
@@ -691,3 +700,3 @@ type: Array | ||
}); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
emails: [{ | ||
@@ -700,3 +709,3 @@ address: 12321, | ||
}).toBe(2); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE, schema, { | ||
emails: [{ | ||
@@ -711,3 +720,3 @@ address: 12321, | ||
it('ignore option', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
@@ -718,6 +727,6 @@ type: String, | ||
}); | ||
(0, _expectValid.default)(schema, { | ||
(0, _expectValid["default"])(schema, { | ||
foo: 'bar' | ||
}); | ||
(0, _expectValid.default)(schema, { | ||
(0, _expectValid["default"])(schema, { | ||
foo: 'bar' | ||
@@ -727,3 +736,3 @@ }, { | ||
}); | ||
(0, _expectValid.default)(schema, { | ||
(0, _expectValid["default"])(schema, { | ||
foo: 'bar' | ||
@@ -734,6 +743,6 @@ }, { | ||
}); | ||
(0, _expectErrorOfTypeLength.default)(_SimpleSchema.SimpleSchema.ErrorTypes.KEY_NOT_IN_SCHEMA, schema, { | ||
(0, _expectErrorOfTypeLength["default"])(_SimpleSchema.SimpleSchema.ErrorTypes.KEY_NOT_IN_SCHEMA, schema, { | ||
bar: 'foo' | ||
}); | ||
(0, _expectValid.default)(schema, { | ||
(0, _expectValid["default"])(schema, { | ||
bar: 'foo' | ||
@@ -743,3 +752,3 @@ }, { | ||
}); | ||
(0, _expectValid.default)(schema, { | ||
(0, _expectValid["default"])(schema, { | ||
bar: 'foo' | ||
@@ -752,4 +761,4 @@ }, { | ||
it('ClientError', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
int: _SimpleSchema.SimpleSchema.Integer, | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
"int": _SimpleSchema.SimpleSchema.Integer, | ||
string: String | ||
@@ -759,16 +768,16 @@ }); | ||
function verify(error) { | ||
(0, _expect.default)(error.name).toBe('ClientError'); | ||
(0, _expect.default)(error.errorType).toBe('ClientError'); | ||
(0, _expect.default)(error.error).toBe('validation-error'); | ||
(0, _expect.default)(error.details.length).toBe(2); | ||
(0, _expect.default)(error.details[0].name).toBe('int'); | ||
(0, _expect.default)(error.details[0].type).toBe(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE); | ||
(0, _expect.default)(error.details[0].message).toBe('Int must be of type Integer'); | ||
(0, _expect.default)(error.details[1].name).toBe('string'); | ||
(0, _expect.default)(error.details[1].type).toBe(_SimpleSchema.SimpleSchema.ErrorTypes.REQUIRED); | ||
(0, _expect.default)(error.details[1].message).toBe('String is required'); // In order for the message at the top of the stack trace to be useful, | ||
(0, _expect["default"])(error.name).toBe('ClientError'); | ||
(0, _expect["default"])(error.errorType).toBe('ClientError'); | ||
(0, _expect["default"])(error.error).toBe('validation-error'); | ||
(0, _expect["default"])(error.details.length).toBe(2); | ||
(0, _expect["default"])(error.details[0].name).toBe('int'); | ||
(0, _expect["default"])(error.details[0].type).toBe(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE); | ||
(0, _expect["default"])(error.details[0].message).toBe('Int must be of type Integer'); | ||
(0, _expect["default"])(error.details[1].name).toBe('string'); | ||
(0, _expect["default"])(error.details[1].type).toBe(_SimpleSchema.SimpleSchema.ErrorTypes.REQUIRED); | ||
(0, _expect["default"])(error.details[1].message).toBe('String is required'); // In order for the message at the top of the stack trace to be useful, | ||
// we set it to the first validation error message. | ||
(0, _expect.default)(error.reason, 'Int must be of type Integer'); | ||
(0, _expect.default)(error.message, 'Int must be of type Integer [validation-error]'); | ||
(0, _expect["default"])(error.reason, 'Int must be of type Integer'); | ||
(0, _expect["default"])(error.message, 'Int must be of type Integer [validation-error]'); | ||
} | ||
@@ -778,3 +787,3 @@ | ||
schema.validate({ | ||
int: '5' | ||
"int": '5' | ||
}); | ||
@@ -787,3 +796,3 @@ } catch (error) { | ||
_SimpleSchema.SimpleSchema.validate({ | ||
int: '5' | ||
"int": '5' | ||
}, schema); | ||
@@ -796,5 +805,5 @@ } catch (error) { | ||
_SimpleSchema.SimpleSchema.validate({ | ||
int: '5' | ||
"int": '5' | ||
}, { | ||
int: _SimpleSchema.SimpleSchema.Integer, | ||
"int": _SimpleSchema.SimpleSchema.Integer, | ||
string: String | ||
@@ -808,3 +817,3 @@ }); | ||
schema.validator()({ | ||
int: '5' | ||
"int": '5' | ||
}); | ||
@@ -815,7 +824,7 @@ } catch (error) { | ||
(0, _expect.default)(function () { | ||
(0, _expect["default"])(function () { | ||
schema.validator({ | ||
clean: true | ||
})({ | ||
int: '5', | ||
"int": '5', | ||
string: 'test' | ||
@@ -826,10 +835,10 @@ }); | ||
it('getFormValidator', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
int: _SimpleSchema.SimpleSchema.Integer, | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
"int": _SimpleSchema.SimpleSchema.Integer, | ||
string: String | ||
}); | ||
return Promise.all([schema.getFormValidator()({ | ||
int: '5' | ||
}).then(errors => { | ||
(0, _expect.default)(errors).toEqual([{ | ||
"int": '5' | ||
}).then(function (errors) { | ||
(0, _expect["default"])(errors).toEqual([{ | ||
dataType: 'Integer', | ||
@@ -849,11 +858,11 @@ message: 'Int must be of type Integer', | ||
})({ | ||
int: '5', | ||
"int": '5', | ||
string: 'test' | ||
}).then(errors => { | ||
(0, _expect.default)(errors).toEqual([]); | ||
}).then(function (errors) { | ||
(0, _expect["default"])(errors).toEqual([]); | ||
})]); | ||
}); | ||
it('validate takes an array', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
int: _SimpleSchema.SimpleSchema.Integer, | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
"int": _SimpleSchema.SimpleSchema.Integer, | ||
string: String | ||
@@ -863,14 +872,14 @@ }); | ||
function verify(error) { | ||
(0, _expect.default)(error.name).toBe('ClientError'); | ||
(0, _expect.default)(error.errorType).toBe('ClientError'); | ||
(0, _expect.default)(error.error).toBe('validation-error'); | ||
(0, _expect.default)(error.details.length).toBe(2); | ||
(0, _expect.default)(error.details[0].name).toBe('int'); | ||
(0, _expect.default)(error.details[0].type).toBe(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE); | ||
(0, _expect.default)(error.details[1].name).toBe('string'); | ||
(0, _expect.default)(error.details[1].type).toBe(_SimpleSchema.SimpleSchema.ErrorTypes.REQUIRED); // In order for the message at the top of the stack trace to be useful, | ||
(0, _expect["default"])(error.name).toBe('ClientError'); | ||
(0, _expect["default"])(error.errorType).toBe('ClientError'); | ||
(0, _expect["default"])(error.error).toBe('validation-error'); | ||
(0, _expect["default"])(error.details.length).toBe(2); | ||
(0, _expect["default"])(error.details[0].name).toBe('int'); | ||
(0, _expect["default"])(error.details[0].type).toBe(_SimpleSchema.SimpleSchema.ErrorTypes.EXPECTED_TYPE); | ||
(0, _expect["default"])(error.details[1].name).toBe('string'); | ||
(0, _expect["default"])(error.details[1].type).toBe(_SimpleSchema.SimpleSchema.ErrorTypes.REQUIRED); // In order for the message at the top of the stack trace to be useful, | ||
// we set it to the first validation error message. | ||
(0, _expect.default)(error.reason, 'Int must be of type Integer'); | ||
(0, _expect.default)(error.message, 'Int must be of type Integer [validation-error]'); | ||
(0, _expect["default"])(error.reason, 'Int must be of type Integer'); | ||
(0, _expect["default"])(error.message, 'Int must be of type Integer [validation-error]'); | ||
} | ||
@@ -880,6 +889,6 @@ | ||
schema.validate([{ | ||
int: 5, | ||
"int": 5, | ||
string: 'test' | ||
}, { | ||
int: '5' | ||
"int": '5' | ||
}]); | ||
@@ -892,6 +901,6 @@ } catch (error) { | ||
_SimpleSchema.SimpleSchema.validate([{ | ||
int: 5, | ||
"int": 5, | ||
string: 'test' | ||
}, { | ||
int: '5' | ||
"int": '5' | ||
}], schema); | ||
@@ -904,8 +913,8 @@ } catch (error) { | ||
_SimpleSchema.SimpleSchema.validate([{ | ||
int: 5, | ||
"int": 5, | ||
string: 'test' | ||
}, { | ||
int: '5' | ||
"int": '5' | ||
}], { | ||
int: _SimpleSchema.SimpleSchema.Integer, | ||
"int": _SimpleSchema.SimpleSchema.Integer, | ||
string: String | ||
@@ -919,6 +928,6 @@ }); | ||
schema.validator()([{ | ||
int: 5, | ||
"int": 5, | ||
string: 'test' | ||
}, { | ||
int: '5' | ||
"int": '5' | ||
}]); | ||
@@ -930,7 +939,7 @@ } catch (error) { | ||
it('validationErrorTransform', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
string: String | ||
}); | ||
_SimpleSchema.SimpleSchema.defineValidationErrorTransform(error => { | ||
_SimpleSchema.SimpleSchema.defineValidationErrorTransform(function (error) { | ||
error.message = 'validationErrorTransform'; | ||
@@ -943,3 +952,3 @@ return error; | ||
} catch (e) { | ||
(0, _expect.default)(e.message).toBe('validationErrorTransform'); | ||
(0, _expect["default"])(e.message).toBe('validationErrorTransform'); | ||
} // Don't mess up other tests | ||
@@ -951,6 +960,6 @@ | ||
it('SimpleSchema.addDocValidator', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
string: String | ||
}); | ||
const errorArray = [{ | ||
var errorArray = [{ | ||
name: 'firstName', | ||
@@ -960,14 +969,14 @@ type: 'TOO_SILLY', | ||
}]; | ||
const validatedObject = { | ||
var validatedObject = { | ||
string: 'String' | ||
}; | ||
_SimpleSchema.SimpleSchema.addDocValidator(obj => { | ||
(0, _expect.default)(obj).toEqual(validatedObject); | ||
_SimpleSchema.SimpleSchema.addDocValidator(function (obj) { | ||
(0, _expect["default"])(obj).toEqual(validatedObject); | ||
return errorArray; | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate(validatedObject); | ||
(0, _expect.default)(context.validationErrors()).toEqual(errorArray); // Don't mess up other tests | ||
(0, _expect["default"])(context.validationErrors()).toEqual(errorArray); // Don't mess up other tests | ||
@@ -977,6 +986,6 @@ _SimpleSchema.SimpleSchema._docValidators = []; | ||
it('addDocValidator', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
string: String | ||
}); | ||
const errorArray = [{ | ||
var errorArray = [{ | ||
name: 'firstName', | ||
@@ -986,15 +995,15 @@ type: 'TOO_SILLY', | ||
}]; | ||
const validatedObject = { | ||
var validatedObject = { | ||
string: 'String' | ||
}; | ||
schema.addDocValidator(obj => { | ||
(0, _expect.default)(obj).toEqual(validatedObject); | ||
schema.addDocValidator(function (obj) { | ||
(0, _expect["default"])(obj).toEqual(validatedObject); | ||
return errorArray; | ||
}); | ||
const context = schema.newContext(); | ||
var context = schema.newContext(); | ||
context.validate(validatedObject); | ||
(0, _expect.default)(context.validationErrors()).toEqual(errorArray); | ||
(0, _expect["default"])(context.validationErrors()).toEqual(errorArray); | ||
}); | ||
it('sets _objectKeys', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: Object, | ||
@@ -1007,3 +1016,3 @@ 'a.b': Object, | ||
}); | ||
(0, _expect.default)(schema._objectKeys).toEqual({ | ||
(0, _expect["default"])(schema._objectKeys).toEqual({ | ||
'a.': ['b'], | ||
@@ -1016,3 +1025,3 @@ 'a.b.': ['c'], | ||
it('gets subschema objectKeys', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
@@ -1030,7 +1039,7 @@ type: new _SimpleSchema.SimpleSchema({ | ||
}); | ||
(0, _expect.default)(schema.objectKeys('a')).toEqual(['b']); | ||
(0, _expect.default)(schema.objectKeys('a.b')).toEqual(['c']); | ||
(0, _expect["default"])(schema.objectKeys('a')).toEqual(['b']); | ||
(0, _expect["default"])(schema.objectKeys('a.b')).toEqual(['c']); | ||
}); | ||
it('gets schema property by key', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
@@ -1059,8 +1068,8 @@ type: new _SimpleSchema.SimpleSchema({ | ||
}); | ||
(0, _expect.default)(schema.get('a', 'defaultValue')).toBe(undefined); | ||
(0, _expect.default)(schema.get('a.b', 'defaultValue')).toBe('ab'); | ||
(0, _expect.default)(schema.get('a.d', 'maxCount')).toBe(3); | ||
(0, _expect["default"])(schema.get('a', 'defaultValue')).toBe(undefined); | ||
(0, _expect["default"])(schema.get('a.b', 'defaultValue')).toBe('ab'); | ||
(0, _expect["default"])(schema.get('a.d', 'maxCount')).toBe(3); | ||
}); | ||
it('exposes defaultValue for a key', function () { | ||
const schema = new _SimpleSchema.SimpleSchema({ | ||
var schema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
@@ -1080,13 +1089,13 @@ type: new _SimpleSchema.SimpleSchema({ | ||
}); | ||
(0, _expect.default)(schema.defaultValue('a')).toBe(undefined); | ||
(0, _expect.default)(schema.defaultValue('a.b')).toBe('ab'); | ||
(0, _expect.default)(schema.defaultValue('a.b.c')).toBe('abc'); | ||
(0, _expect["default"])(schema.defaultValue('a')).toBe(undefined); | ||
(0, _expect["default"])(schema.defaultValue('a.b')).toBe('ab'); | ||
(0, _expect["default"])(schema.defaultValue('a.b.c')).toBe('abc'); | ||
}); | ||
it('issue #232', function () { | ||
let foo; | ||
(0, _expect.default)(function () { | ||
const schema3 = new _SimpleSchema.SimpleSchema({ | ||
var foo; | ||
(0, _expect["default"])(function () { | ||
var schema3 = new _SimpleSchema.SimpleSchema({ | ||
foo: String | ||
}); | ||
const schema2 = new _SimpleSchema.SimpleSchema({ | ||
var schema2 = new _SimpleSchema.SimpleSchema({ | ||
field2: { | ||
@@ -1105,4 +1114,4 @@ type: Array, | ||
}).toNotThrow(); | ||
(0, _expect.default)(foo instanceof _SimpleSchema.SimpleSchema).toBe(true); | ||
(0, _expect["default"])(foo instanceof _SimpleSchema.SimpleSchema).toBe(true); | ||
}); | ||
}); |
@@ -6,15 +6,43 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
var _mongoObject = _interopRequireDefault(require("mongo-object")); | ||
var _extend = _interopRequireDefault(require("extend")); | ||
var _extend2 = _interopRequireDefault(require("extend")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
class SimpleSchemaGroup { | ||
constructor(...definitions) { | ||
this.definitions = definitions.map(definition => { | ||
if (_mongoObject.default.isBasicObject(definition)) return (0, _extend.default)(true, {}, definition); | ||
function isNativeReflectConstruct() { if (typeof Reflect === "undefined" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === "function") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } } | ||
function _construct(Parent, args, Class) { if (isNativeReflectConstruct()) { _construct = Reflect.construct; } else { _construct = function _construct(Parent, args, Class) { var a = [null]; a.push.apply(a, args); var Constructor = Function.bind.apply(Parent, a); var instance = new Constructor(); if (Class) _setPrototypeOf(instance, Class.prototype); return instance; }; } return _construct.apply(null, arguments); } | ||
function _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); } | ||
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _nonIterableSpread(); } | ||
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance"); } | ||
function _iterableToArray(iter) { if (Symbol.iterator in Object(iter) || Object.prototype.toString.call(iter) === "[object Arguments]") return Array.from(iter); } | ||
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = new Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } } | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
var SimpleSchemaGroup = | ||
/*#__PURE__*/ | ||
function () { | ||
function SimpleSchemaGroup() { | ||
_classCallCheck(this, SimpleSchemaGroup); | ||
for (var _len = arguments.length, definitions = new Array(_len), _key = 0; _key < _len; _key++) { | ||
definitions[_key] = arguments[_key]; | ||
} | ||
this.definitions = definitions.map(function (definition) { | ||
if (_mongoObject["default"].isBasicObject(definition)) return (0, _extend2["default"])(true, {}, definition); | ||
if (definition instanceof RegExp) { | ||
@@ -33,24 +61,30 @@ return { | ||
get singleType() { | ||
return this.definitions[0].type; | ||
} | ||
_createClass(SimpleSchemaGroup, [{ | ||
key: "clone", | ||
value: function clone() { | ||
return _construct(SimpleSchemaGroup, _toConsumableArray(this.definitions)); | ||
} | ||
}, { | ||
key: "extend", | ||
value: function extend(otherGroup) { | ||
// We extend based on index being the same. No better way I can think of at the moment. | ||
this.definitions = this.definitions.map(function (def, index) { | ||
var otherDef = otherGroup.definitions[index]; | ||
if (!otherDef) return def; | ||
return (0, _extend2["default"])(true, {}, def, otherDef); | ||
}); | ||
} | ||
}, { | ||
key: "singleType", | ||
get: function get() { | ||
return this.definitions[0].type; | ||
} | ||
}]); | ||
clone() { | ||
return new SimpleSchemaGroup(...this.definitions); | ||
} | ||
return SimpleSchemaGroup; | ||
}(); | ||
extend(otherGroup) { | ||
// We extend based on index being the same. No better way I can think of at the moment. | ||
this.definitions = this.definitions.map((def, index) => { | ||
const otherDef = otherGroup.definitions[index]; | ||
if (!otherDef) return def; | ||
return (0, _extend.default)(true, {}, def, otherDef); | ||
}); | ||
} | ||
} | ||
var _default = SimpleSchemaGroup; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,42 +6,60 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
class Address { | ||
constructor(city, state) { | ||
this.city = city; | ||
this.state = state; | ||
} | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
toString() { | ||
return `${this.city}, ${this.state}`; | ||
} | ||
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } | ||
clone() { | ||
return new Address(this.city, this.state); | ||
} | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
equals(other) { | ||
if (!(other instanceof Address)) { | ||
return false; | ||
} | ||
var Address = | ||
/*#__PURE__*/ | ||
function () { | ||
function Address(city, state) { | ||
_classCallCheck(this, Address); | ||
return JSON.stringify(this) === JSON.stringify(other); | ||
this.city = city; | ||
this.state = state; | ||
} | ||
typeName() { | ||
return 'Address'; | ||
} | ||
_createClass(Address, [{ | ||
key: "toString", | ||
value: function toString() { | ||
return "".concat(this.city, ", ").concat(this.state); | ||
} | ||
}, { | ||
key: "clone", | ||
value: function clone() { | ||
return new Address(this.city, this.state); | ||
} | ||
}, { | ||
key: "equals", | ||
value: function equals(other) { | ||
if (!(other instanceof Address)) { | ||
return false; | ||
} | ||
toJSONValue() { | ||
return { | ||
city: this.city, | ||
state: this.state | ||
}; | ||
} | ||
return JSON.stringify(this) === JSON.stringify(other); | ||
} | ||
}, { | ||
key: "typeName", | ||
value: function typeName() { | ||
return 'Address'; | ||
} | ||
}, { | ||
key: "toJSONValue", | ||
value: function toJSONValue() { | ||
return { | ||
city: this.city, | ||
state: this.state | ||
}; | ||
} | ||
}]); | ||
} | ||
return Address; | ||
}(); | ||
var _default = Address; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = expectErrorLength; | ||
exports["default"] = expectErrorLength; | ||
@@ -13,6 +13,6 @@ var _validate = _interopRequireDefault(require("./validate")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function expectErrorLength(...args) { | ||
return (0, _expect.default)((0, _validate.default)(...args).validationErrors().length); | ||
function expectErrorLength() { | ||
return (0, _expect["default"])(_validate["default"].apply(void 0, arguments).validationErrors().length); | ||
} | ||
@@ -19,0 +19,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = expectErrorOfTypeLength; | ||
exports["default"] = expectErrorOfTypeLength; | ||
@@ -13,11 +13,16 @@ var _validate = _interopRequireDefault(require("./validate")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function expectErrorOfTypeLength(type, ...args) { | ||
const errors = (0, _validate.default)(...args).validationErrors(); | ||
let errorCount = 0; | ||
errors.forEach(error => { | ||
function expectErrorOfTypeLength(type) { | ||
for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) { | ||
args[_key - 1] = arguments[_key]; | ||
} | ||
var errors = _validate["default"].apply(void 0, args).validationErrors(); | ||
var errorCount = 0; | ||
errors.forEach(function (error) { | ||
if (error.type === type) errorCount++; | ||
}); | ||
return (0, _expect.default)(errorCount); | ||
return (0, _expect["default"])(errorCount); | ||
} | ||
@@ -24,0 +29,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = expectRequiredErrorLength; | ||
exports["default"] = expectRequiredErrorLength; | ||
@@ -15,11 +15,12 @@ var _validate = _interopRequireDefault(require("./validate")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function expectRequiredErrorLength(...args) { | ||
const errors = (0, _validate.default)(...args).validationErrors(); | ||
let requiredErrorCount = 0; | ||
errors.forEach(error => { | ||
function expectRequiredErrorLength() { | ||
var errors = _validate["default"].apply(void 0, arguments).validationErrors(); | ||
var requiredErrorCount = 0; | ||
errors.forEach(function (error) { | ||
if (error.type === _SimpleSchema.SimpleSchema.ErrorTypes.REQUIRED) requiredErrorCount++; | ||
}); | ||
return (0, _expect.default)(requiredErrorCount); | ||
return (0, _expect["default"])(requiredErrorCount); | ||
} | ||
@@ -26,0 +27,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = expectValid; | ||
exports["default"] = expectValid; | ||
@@ -13,6 +13,6 @@ var _validate = _interopRequireDefault(require("./validate")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function expectValid(...args) { | ||
(0, _expect.default)((0, _validate.default)(...args).isValid()).toBe(true); | ||
function expectValid() { | ||
(0, _expect["default"])(_validate["default"].apply(void 0, arguments).isValid()).toBe(true); | ||
} | ||
@@ -19,0 +19,0 @@ |
@@ -6,7 +6,7 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
var _SimpleSchema = require("../SimpleSchema"); | ||
const friendsSchema = new _SimpleSchema.SimpleSchema({ | ||
var friendsSchema = new _SimpleSchema.SimpleSchema({ | ||
name: { | ||
@@ -63,4 +63,4 @@ type: String, | ||
var _default = friendsSchema; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,16 +6,18 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
var _SimpleSchema = require("../SimpleSchema"); | ||
const optionalCustomSchema = new _SimpleSchema.SimpleSchema({ | ||
var optionalCustomSchema = new _SimpleSchema.SimpleSchema({ | ||
foo: { | ||
type: String, | ||
optional: true, | ||
custom: () => 'custom' | ||
custom: function custom() { | ||
return 'custom'; | ||
} | ||
} | ||
}); | ||
var _default = optionalCustomSchema; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,39 +6,31 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
var _SimpleSchema = require("../SimpleSchema"); | ||
const requiredCustomSchema = new _SimpleSchema.SimpleSchema({ | ||
var requiredCustomSchema = new _SimpleSchema.SimpleSchema({ | ||
a: { | ||
type: Array, | ||
custom() {// Just adding custom to trigger extra validation | ||
custom: function custom() {// Just adding custom to trigger extra validation | ||
} | ||
}, | ||
'a.$': { | ||
type: Object, | ||
custom() {// Just adding custom to trigger extra validation | ||
custom: function custom() {// Just adding custom to trigger extra validation | ||
} | ||
}, | ||
b: { | ||
type: Array, | ||
custom() {// Just adding custom to trigger extra validation | ||
custom: function custom() {// Just adding custom to trigger extra validation | ||
} | ||
}, | ||
'b.$': { | ||
type: Object, | ||
custom() {// Just adding custom to trigger extra validation | ||
custom: function custom() {// Just adding custom to trigger extra validation | ||
} | ||
} | ||
}); | ||
var _default = requiredCustomSchema; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,7 +6,7 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
var _SimpleSchema = require("../SimpleSchema"); | ||
const requiredSchema = new _SimpleSchema.SimpleSchema({ | ||
var requiredSchema = new _SimpleSchema.SimpleSchema({ | ||
requiredString: { | ||
@@ -56,4 +56,4 @@ type: String | ||
var _default = requiredSchema; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -15,5 +15,5 @@ var _SimpleSchema = require("../SimpleSchema"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
const testSchema = new _SimpleSchema.SimpleSchema({ | ||
var testSchema = new _SimpleSchema.SimpleSchema({ | ||
string: { | ||
@@ -62,3 +62,3 @@ type: String, | ||
}, | ||
boolean: { | ||
"boolean": { | ||
type: Boolean, | ||
@@ -105,11 +105,8 @@ optional: true | ||
optional: true, | ||
min() { | ||
min: function min() { | ||
return 10; | ||
}, | ||
max() { | ||
max: function max() { | ||
return 20; | ||
} | ||
}, | ||
@@ -177,11 +174,8 @@ minMaxNumberExclusive: { | ||
optional: true, | ||
min() { | ||
min: function min() { | ||
return new Date(Date.UTC(2013, 0, 1)); | ||
}, | ||
max() { | ||
max: function max() { | ||
return new Date(Date.UTC(2013, 11, 31)); | ||
} | ||
}, | ||
@@ -199,3 +193,3 @@ email: { | ||
customObject: { | ||
type: _Address.default, | ||
type: _Address["default"], | ||
optional: true, | ||
@@ -216,4 +210,4 @@ blackbox: true | ||
var _default = testSchema; | ||
exports.default = _default; | ||
exports["default"] = _default; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
@@ -6,6 +6,6 @@ "use strict"; | ||
}); | ||
exports.default = validate; | ||
exports["default"] = validate; | ||
function validate(ss, doc, options) { | ||
const context = ss.newContext(); | ||
var context = ss.newContext(); | ||
context.validate(doc, options); | ||
@@ -12,0 +12,0 @@ return context; |
@@ -6,7 +6,7 @@ "use strict"; | ||
}); | ||
exports.default = appendAffectedKey; | ||
exports["default"] = appendAffectedKey; | ||
function appendAffectedKey(affectedKey, key) { | ||
if (key === '$each') return affectedKey; | ||
return affectedKey ? `${affectedKey}.${key}` : key; | ||
return affectedKey ? "".concat(affectedKey, ".").concat(key) : key; | ||
} | ||
@@ -13,0 +13,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = dateToDateString; | ||
exports["default"] = dateToDateString; | ||
@@ -13,7 +13,7 @@ /** | ||
function dateToDateString(date) { | ||
let m = date.getUTCMonth() + 1; | ||
if (m < 10) m = `0${m}`; | ||
let d = date.getUTCDate(); | ||
if (d < 10) d = `0${d}`; | ||
return `${date.getUTCFullYear()}-${m}-${d}`; | ||
var m = date.getUTCMonth() + 1; | ||
if (m < 10) m = "0".concat(m); | ||
var d = date.getUTCDate(); | ||
if (d < 10) d = "0".concat(d); | ||
return "".concat(date.getUTCFullYear(), "-").concat(m, "-").concat(d); | ||
} | ||
@@ -20,0 +20,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = forEachKeyAncestor; | ||
exports["default"] = forEachKeyAncestor; | ||
@@ -14,5 +14,5 @@ /** | ||
function forEachKeyAncestor(key, loopFunc) { | ||
let lastDot; // Iterate the dot-syntax hierarchy | ||
var lastDot; // Iterate the dot-syntax hierarchy | ||
let ancestor = key; | ||
var ancestor = key; | ||
@@ -24,3 +24,3 @@ do { | ||
ancestor = ancestor.slice(0, lastDot); | ||
const remainder = key.slice(ancestor.length + 1); | ||
var remainder = key.slice(ancestor.length + 1); | ||
loopFunc(ancestor, remainder); // Remove last path component | ||
@@ -27,0 +27,0 @@ } |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = getKeysWithValueInObj; | ||
exports["default"] = getKeysWithValueInObj; | ||
@@ -15,9 +15,11 @@ /** | ||
function getKeysWithValueInObj(obj, matchKey) { | ||
const keysWithValue = []; | ||
var keysWithValue = []; | ||
const keyAdjust = k => k.slice(0, matchKey.length + 1); | ||
var keyAdjust = function keyAdjust(k) { | ||
return k.slice(0, matchKey.length + 1); | ||
}; | ||
const matchKeyPlusDot = `${matchKey}.`; | ||
Object.keys(obj || {}).forEach(key => { | ||
const val = obj[key]; | ||
var matchKeyPlusDot = "".concat(matchKey, "."); | ||
Object.keys(obj || {}).forEach(function (key) { | ||
var val = obj[key]; | ||
if (val === undefined || val === null) return; | ||
@@ -24,0 +26,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = getLastPartOfKey; | ||
exports["default"] = getLastPartOfKey; | ||
@@ -17,4 +17,4 @@ /** | ||
function getLastPartOfKey(key, ancestorKey) { | ||
let lastPart = ''; | ||
const startString = `${ancestorKey}.`; | ||
var lastPart = ''; | ||
var startString = "".concat(ancestorKey, "."); | ||
@@ -21,0 +21,0 @@ if (key.indexOf(startString) === 0) { |
@@ -7,3 +7,3 @@ "use strict"; | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
@@ -13,7 +13,7 @@ /* eslint-disable func-names, prefer-arrow-callback */ | ||
it('returns the correct string for a non-array key', function () { | ||
(0, _expect.default)((0, _getLastPartOfKey.default)('a.b.c', 'a')).toBe('b.c'); | ||
(0, _expect["default"])((0, _getLastPartOfKey["default"])('a.b.c', 'a')).toBe('b.c'); | ||
}); | ||
it('returns the correct string for an array key', function () { | ||
(0, _expect.default)((0, _getLastPartOfKey.default)('a.b.$.c', 'a.b')).toBe('c'); | ||
(0, _expect["default"])((0, _getLastPartOfKey["default"])('a.b.$.c', 'a.b')).toBe('c'); | ||
}); | ||
}); |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = getParentOfKey; | ||
exports["default"] = getParentOfKey; | ||
@@ -15,3 +15,3 @@ /** | ||
function getParentOfKey(key, withEndDot) { | ||
const lastDot = key.lastIndexOf('.'); | ||
var lastDot = key.lastIndexOf('.'); | ||
return lastDot === -1 ? '' : key.slice(0, lastDot + Number(!!withEndDot)); | ||
@@ -18,0 +18,0 @@ } |
@@ -8,4 +8,4 @@ "use strict"; | ||
enumerable: true, | ||
get: function () { | ||
return _appendAffectedKey.default; | ||
get: function get() { | ||
return _appendAffectedKey["default"]; | ||
} | ||
@@ -15,4 +15,4 @@ }); | ||
enumerable: true, | ||
get: function () { | ||
return _dateToDateString.default; | ||
get: function get() { | ||
return _dateToDateString["default"]; | ||
} | ||
@@ -22,4 +22,4 @@ }); | ||
enumerable: true, | ||
get: function () { | ||
return _forEachKeyAncestor.default; | ||
get: function get() { | ||
return _forEachKeyAncestor["default"]; | ||
} | ||
@@ -29,4 +29,4 @@ }); | ||
enumerable: true, | ||
get: function () { | ||
return _getKeysWithValueInObj.default; | ||
get: function get() { | ||
return _getKeysWithValueInObj["default"]; | ||
} | ||
@@ -36,4 +36,4 @@ }); | ||
enumerable: true, | ||
get: function () { | ||
return _getLastPartOfKey.default; | ||
get: function get() { | ||
return _getLastPartOfKey["default"]; | ||
} | ||
@@ -43,4 +43,4 @@ }); | ||
enumerable: true, | ||
get: function () { | ||
return _getParentOfKey.default; | ||
get: function get() { | ||
return _getParentOfKey["default"]; | ||
} | ||
@@ -50,4 +50,4 @@ }); | ||
enumerable: true, | ||
get: function () { | ||
return _isObjectWeShouldTraverse.default; | ||
get: function get() { | ||
return _isObjectWeShouldTraverse["default"]; | ||
} | ||
@@ -57,4 +57,4 @@ }); | ||
enumerable: true, | ||
get: function () { | ||
return _looksLikeModifier.default; | ||
get: function get() { | ||
return _looksLikeModifier["default"]; | ||
} | ||
@@ -79,2 +79,2 @@ }); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = isObjectWeShouldTraverse; | ||
exports["default"] = isObjectWeShouldTraverse; | ||
@@ -9,0 +9,0 @@ function isObjectWeShouldTraverse(val) { |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = looksLikeModifier; | ||
exports["default"] = looksLikeModifier; | ||
@@ -13,3 +13,5 @@ /** | ||
function looksLikeModifier(obj) { | ||
return !!Object.keys(obj || {}).find(key => key.substring(0, 1) === '$'); | ||
return !!Object.keys(obj || {}).find(function (key) { | ||
return key.substring(0, 1) === '$'; | ||
}); | ||
} | ||
@@ -16,0 +18,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = allowedValuesValidator; | ||
exports["default"] = allowedValuesValidator; | ||
@@ -13,9 +13,9 @@ var _SimpleSchema = require("../SimpleSchema"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function allowedValuesValidator() { | ||
if (!this.valueShouldBeChecked) return; | ||
const allowedValues = this.definition.allowedValues; | ||
var allowedValues = this.definition.allowedValues; | ||
if (!allowedValues) return; | ||
let isAllowed; // set defined in scope and allowedValues is its instance | ||
var isAllowed; // set defined in scope and allowedValues is its instance | ||
@@ -25,3 +25,3 @@ if (typeof Set === 'function' && allowedValues instanceof Set) { | ||
} else { | ||
isAllowed = (0, _lodash.default)(allowedValues, this.value); | ||
isAllowed = (0, _lodash["default"])(allowedValues, this.value); | ||
} | ||
@@ -28,0 +28,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = requiredValidator; | ||
exports["default"] = requiredValidator; | ||
@@ -22,14 +22,10 @@ var _SimpleSchema = require("../SimpleSchema"); | ||
function requiredValidator() { | ||
const { | ||
definition, | ||
isInArrayItemObject, | ||
isInSubObject, | ||
key, | ||
obj, | ||
operator, | ||
value | ||
} = this; | ||
const { | ||
optional | ||
} = definition; | ||
var definition = this.definition, | ||
isInArrayItemObject = this.isInArrayItemObject, | ||
isInSubObject = this.isInSubObject, | ||
key = this.key, | ||
obj = this.obj, | ||
operator = this.operator, | ||
value = this.value; | ||
var optional = definition.optional; | ||
if (optional) return; // If value is null, no matter what, we add required | ||
@@ -47,9 +43,9 @@ | ||
const keysWithValueInSet = (0, _utility.getKeysWithValueInObj)(obj.$set, key); | ||
var keysWithValueInSet = (0, _utility.getKeysWithValueInObj)(obj.$set, key); | ||
if (keysWithValueInSet.length) return; | ||
const keysWithValueInSetOnInsert = (0, _utility.getKeysWithValueInObj)(obj.$setOnInsert, key); | ||
var keysWithValueInSetOnInsert = (0, _utility.getKeysWithValueInObj)(obj.$setOnInsert, key); | ||
if (keysWithValueInSetOnInsert.length) return; // In the case of $set and $setOnInsert, the value may be undefined here | ||
// but it is set in another operator. So check that first. | ||
const fieldInfo = this.field(key); | ||
var fieldInfo = this.field(key); | ||
if (fieldInfo.isSet && fieldInfo.value !== null) return; // Required if in an array or sub object | ||
@@ -56,0 +52,0 @@ |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = doArrayChecks; | ||
exports["default"] = doArrayChecks; | ||
@@ -9,0 +9,0 @@ var _SimpleSchema = require("../../SimpleSchema"); |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = doDateChecks; | ||
exports["default"] = doDateChecks; | ||
@@ -9,0 +9,0 @@ var _SimpleSchema = require("../../SimpleSchema"); |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = doNumberChecks; | ||
exports["default"] = doNumberChecks; | ||
@@ -9,0 +9,0 @@ var _SimpleSchema = require("../../SimpleSchema"); |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = doStringChecks; | ||
exports["default"] = doStringChecks; | ||
@@ -46,4 +46,4 @@ var _SimpleSchema = require("../../SimpleSchema"); | ||
if (Array.isArray(def.regEx)) { | ||
let regExError; | ||
def.regEx.every(re => { | ||
var regExError; | ||
def.regEx.every(function (re) { | ||
if (!re.test(keyValue)) { | ||
@@ -50,0 +50,0 @@ regExError = { |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = typeValidator; | ||
exports["default"] = typeValidator; | ||
@@ -19,13 +19,13 @@ var _SimpleSchema = require("../../SimpleSchema"); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
function typeValidator() { | ||
if (!this.valueShouldBeChecked) return; | ||
const def = this.definition; | ||
const expectedType = def.type; | ||
const keyValue = this.value; | ||
const op = this.operator; | ||
if (expectedType === String) return (0, _doStringChecks.default)(def, keyValue); | ||
if (expectedType === Number) return (0, _doNumberChecks.default)(def, keyValue, op, false); | ||
if (expectedType === _SimpleSchema.SimpleSchema.Integer) return (0, _doNumberChecks.default)(def, keyValue, op, true); | ||
var def = this.definition; | ||
var expectedType = def.type; | ||
var keyValue = this.value; | ||
var op = this.operator; | ||
if (expectedType === String) return (0, _doStringChecks["default"])(def, keyValue); | ||
if (expectedType === Number) return (0, _doNumberChecks["default"])(def, keyValue, op, false); | ||
if (expectedType === _SimpleSchema.SimpleSchema.Integer) return (0, _doNumberChecks["default"])(def, keyValue, op, true); | ||
@@ -50,3 +50,3 @@ if (expectedType === Boolean) { | ||
if (expectedType === Array) return (0, _doArrayChecks.default)(def, keyValue); | ||
if (expectedType === Array) return (0, _doArrayChecks["default"])(def, keyValue); | ||
@@ -60,3 +60,3 @@ if (expectedType instanceof Function) { | ||
if (expectedType === Date) return (0, _doDateChecks.default)(def, keyValue); | ||
if (expectedType === Date) return (0, _doDateChecks["default"])(def, keyValue); | ||
} | ||
@@ -63,0 +63,0 @@ } |
@@ -6,3 +6,3 @@ "use strict"; | ||
}); | ||
exports.default = void 0; | ||
exports["default"] = void 0; | ||
@@ -15,6 +15,18 @@ var _mongoObject = _interopRequireDefault(require("mongo-object")); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; } | ||
class ValidationContext { | ||
constructor(ss) { | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } | ||
function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; } | ||
var ValidationContext = | ||
/*#__PURE__*/ | ||
function () { | ||
function ValidationContext(ss) { | ||
var _this = this; | ||
_classCallCheck(this, ValidationContext); | ||
this._simpleSchema = ss; | ||
@@ -26,5 +38,3 @@ this._schema = ss.schema(); | ||
this._deps = {}; | ||
const { | ||
tracker | ||
} = ss._constructorOptions; | ||
var tracker = ss._constructorOptions.tracker; | ||
@@ -34,4 +44,4 @@ if (tracker) { | ||
this._schemaKeys.forEach(key => { | ||
this._deps[key] = new tracker.Dependency(); | ||
this._schemaKeys.forEach(function (key) { | ||
_this._deps[key] = new tracker.Dependency(); | ||
}); | ||
@@ -41,120 +51,186 @@ } | ||
_markKeyChanged(key) { | ||
const genericKey = _mongoObject.default.makeKeyGeneric(key); | ||
_createClass(ValidationContext, [{ | ||
key: "_markKeyChanged", | ||
value: function _markKeyChanged(key) { | ||
var genericKey = _mongoObject["default"].makeKeyGeneric(key); | ||
if (this._deps.hasOwnProperty(genericKey)) this._deps[genericKey].changed(); | ||
} | ||
if (this._deps.hasOwnProperty(genericKey)) this._deps[genericKey].changed(); | ||
} | ||
}, { | ||
key: "_markKeysChanged", | ||
value: function _markKeysChanged(keys) { | ||
var _this2 = this; | ||
_markKeysChanged(keys) { | ||
if (!keys || !Array.isArray(keys) || !keys.length) return; | ||
keys.forEach(key => this._markKeyChanged(key)); | ||
this._depsAny && this._depsAny.changed(); | ||
} | ||
if (!keys || !Array.isArray(keys) || !keys.length) return; | ||
keys.forEach(function (key) { | ||
return _this2._markKeyChanged(key); | ||
}); | ||
this._depsAny && this._depsAny.changed(); | ||
} | ||
}, { | ||
key: "setValidationErrors", | ||
value: function setValidationErrors(errors) { | ||
var previousValidationErrors = this._validationErrors.map(function (o) { | ||
return o.name; | ||
}); | ||
setValidationErrors(errors) { | ||
const previousValidationErrors = this._validationErrors.map(o => o.name); | ||
var newValidationErrors = errors.map(function (o) { | ||
return o.name; | ||
}); | ||
this._validationErrors = errors; // Mark all previous plus all new as changed | ||
const newValidationErrors = errors.map(o => o.name); | ||
this._validationErrors = errors; // Mark all previous plus all new as changed | ||
var changedKeys = previousValidationErrors.concat(newValidationErrors); | ||
const changedKeys = previousValidationErrors.concat(newValidationErrors); | ||
this._markKeysChanged(changedKeys); | ||
} | ||
}, { | ||
key: "addValidationErrors", | ||
value: function addValidationErrors(errors) { | ||
var _this3 = this; | ||
this._markKeysChanged(changedKeys); | ||
} | ||
var newValidationErrors = errors.map(function (o) { | ||
return o.name; | ||
}); | ||
errors.forEach(function (error) { | ||
return _this3._validationErrors.push(error); | ||
}); // Mark all new as changed | ||
addValidationErrors(errors) { | ||
const newValidationErrors = errors.map(o => o.name); | ||
errors.forEach(error => this._validationErrors.push(error)); // Mark all new as changed | ||
this._markKeysChanged(newValidationErrors); | ||
} // Reset the validationErrors array | ||
this._markKeysChanged(newValidationErrors); | ||
} // Reset the validationErrors array | ||
}, { | ||
key: "reset", | ||
value: function reset() { | ||
this.setValidationErrors([]); | ||
} | ||
}, { | ||
key: "getErrorForKey", | ||
value: function getErrorForKey(key) { | ||
var genericKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _mongoObject["default"].makeKeyGeneric(key); | ||
var errors = this._validationErrors; | ||
return (0, _lodash["default"])(errors, { | ||
name: key | ||
}) || (0, _lodash["default"])(errors, { | ||
name: genericKey | ||
}); | ||
} | ||
}, { | ||
key: "_keyIsInvalid", | ||
value: function _keyIsInvalid(key, genericKey) { | ||
return !!this.getErrorForKey(key, genericKey); | ||
} // Like the internal one, but with deps | ||
}, { | ||
key: "keyIsInvalid", | ||
value: function keyIsInvalid(key) { | ||
var genericKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _mongoObject["default"].makeKeyGeneric(key); | ||
if (this._deps.hasOwnProperty(genericKey)) this._deps[genericKey].depend(); | ||
return this._keyIsInvalid(key, genericKey); | ||
} | ||
}, { | ||
key: "keyErrorMessage", | ||
value: function keyErrorMessage(key) { | ||
var genericKey = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _mongoObject["default"].makeKeyGeneric(key); | ||
if (this._deps.hasOwnProperty(genericKey)) this._deps[genericKey].depend(); | ||
var errorObj = this.getErrorForKey(key, genericKey); | ||
if (!errorObj) return ''; | ||
return this._simpleSchema.messageForError(errorObj); | ||
} | ||
/** | ||
* Validates the object against the simple schema and sets a reactive array of error objects | ||
*/ | ||
reset() { | ||
this.setValidationErrors([]); | ||
} | ||
}, { | ||
key: "validate", | ||
value: function validate(obj) { | ||
var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {}, | ||
_ref$extendedCustomCo = _ref.extendedCustomContext, | ||
extendedCustomContext = _ref$extendedCustomCo === void 0 ? {} : _ref$extendedCustomCo, | ||
_ref$ignore = _ref.ignore, | ||
ignoreTypes = _ref$ignore === void 0 ? [] : _ref$ignore, | ||
keysToValidate = _ref.keys, | ||
_ref$modifier = _ref.modifier, | ||
isModifier = _ref$modifier === void 0 ? false : _ref$modifier, | ||
mongoObject = _ref.mongoObject, | ||
_ref$upsert = _ref.upsert, | ||
isUpsert = _ref$upsert === void 0 ? false : _ref$upsert; | ||
getErrorForKey(key, genericKey = _mongoObject.default.makeKeyGeneric(key)) { | ||
const errors = this._validationErrors; | ||
return (0, _lodash.default)(errors, { | ||
name: key | ||
}) || (0, _lodash.default)(errors, { | ||
name: genericKey | ||
}); | ||
} | ||
var validationErrors = (0, _doValidation["default"])({ | ||
extendedCustomContext: extendedCustomContext, | ||
ignoreTypes: ignoreTypes, | ||
isModifier: isModifier, | ||
isUpsert: isUpsert, | ||
keysToValidate: keysToValidate, | ||
mongoObject: mongoObject, | ||
obj: obj, | ||
schema: this._simpleSchema, | ||
validationContext: this | ||
}); | ||
_keyIsInvalid(key, genericKey) { | ||
return !!this.getErrorForKey(key, genericKey); | ||
} // Like the internal one, but with deps | ||
if (keysToValidate) { | ||
// We have only revalidated the listed keys, so if there | ||
// are any other existing errors that are NOT in the keys list, | ||
// we should keep these errors. | ||
var _iteratorNormalCompletion = true; | ||
var _didIteratorError = false; | ||
var _iteratorError = undefined; | ||
try { | ||
var _loop = function _loop() { | ||
var error = _step.value; | ||
var wasValidated = keysToValidate.some(function (key) { | ||
return key === error.name || error.name.startsWith("".concat(key, ".")); | ||
}); | ||
if (!wasValidated) validationErrors.push(error); | ||
}; | ||
keyIsInvalid(key, genericKey = _mongoObject.default.makeKeyGeneric(key)) { | ||
if (this._deps.hasOwnProperty(genericKey)) this._deps[genericKey].depend(); | ||
return this._keyIsInvalid(key, genericKey); | ||
} | ||
for (var _iterator = this._validationErrors[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) { | ||
_loop(); | ||
} | ||
} catch (err) { | ||
_didIteratorError = true; | ||
_iteratorError = err; | ||
} finally { | ||
try { | ||
if (!_iteratorNormalCompletion && _iterator["return"] != null) { | ||
_iterator["return"](); | ||
} | ||
} finally { | ||
if (_didIteratorError) { | ||
throw _iteratorError; | ||
} | ||
} | ||
} | ||
} | ||
keyErrorMessage(key, genericKey = _mongoObject.default.makeKeyGeneric(key)) { | ||
if (this._deps.hasOwnProperty(genericKey)) this._deps[genericKey].depend(); | ||
const errorObj = this.getErrorForKey(key, genericKey); | ||
if (!errorObj) return ''; | ||
return this._simpleSchema.messageForError(errorObj); | ||
} | ||
/** | ||
* Validates the object against the simple schema and sets a reactive array of error objects | ||
*/ | ||
this.setValidationErrors(validationErrors); // Return true if it was valid; otherwise, return false | ||
return !validationErrors.length; | ||
} | ||
}, { | ||
key: "isValid", | ||
value: function isValid() { | ||
this._depsAny && this._depsAny.depend(); | ||
return this._validationErrors.length === 0; | ||
} | ||
}, { | ||
key: "validationErrors", | ||
value: function validationErrors() { | ||
this._depsAny && this._depsAny.depend(); | ||
return this._validationErrors; | ||
} | ||
}, { | ||
key: "clean", | ||
value: function clean() { | ||
var _this$_simpleSchema; | ||
validate(obj, { | ||
extendedCustomContext = {}, | ||
ignore: ignoreTypes = [], | ||
keys: keysToValidate, | ||
modifier: isModifier = false, | ||
mongoObject, | ||
upsert: isUpsert = false | ||
} = {}) { | ||
const validationErrors = (0, _doValidation.default)({ | ||
extendedCustomContext, | ||
ignoreTypes, | ||
isModifier, | ||
isUpsert, | ||
keysToValidate, | ||
mongoObject, | ||
obj, | ||
schema: this._simpleSchema, | ||
validationContext: this | ||
}); | ||
if (keysToValidate) { | ||
// We have only revalidated the listed keys, so if there | ||
// are any other existing errors that are NOT in the keys list, | ||
// we should keep these errors. | ||
for (const error of this._validationErrors) { | ||
const wasValidated = keysToValidate.some(key => key === error.name || error.name.startsWith(`${key}.`)); | ||
if (!wasValidated) validationErrors.push(error); | ||
} | ||
return (_this$_simpleSchema = this._simpleSchema).clean.apply(_this$_simpleSchema, arguments); | ||
} | ||
}]); | ||
this.setValidationErrors(validationErrors); // Return true if it was valid; otherwise, return false | ||
return ValidationContext; | ||
}(); | ||
return !validationErrors.length; | ||
} | ||
isValid() { | ||
this._depsAny && this._depsAny.depend(); | ||
return this._validationErrors.length === 0; | ||
} | ||
validationErrors() { | ||
this._depsAny && this._depsAny.depend(); | ||
return this._validationErrors; | ||
} | ||
clean(...args) { | ||
return this._simpleSchema.clean(...args); | ||
} | ||
} | ||
exports.default = ValidationContext; | ||
exports["default"] = ValidationContext; | ||
module.exports = exports.default; | ||
module.exports.default = exports.default; |
{ | ||
"name": "simpl-schema", | ||
"version": "1.5.6", | ||
"version": "1.5.7", | ||
"description": "A schema validation package that supports direct validation of MongoDB update modifier objects.", | ||
@@ -31,3 +31,3 @@ "author": "Eric Dobbertin <aldeed@gmail.com>", | ||
"dependencies": { | ||
"clone": "^2.1.1", | ||
"clone": "^2.1.2", | ||
"extend": "^3.0.2", | ||
@@ -44,17 +44,17 @@ "lodash.every": "^4.6.0", | ||
"lodash.uniq": "^4.5.0", | ||
"message-box": "^0.2.0", | ||
"message-box": "^0.2.2", | ||
"mongo-object": "^0.1.3" | ||
}, | ||
"devDependencies": { | ||
"@babel/cli": "7.0.0", | ||
"@babel/core": "7.0.0", | ||
"@babel/plugin-proposal-class-properties": "7.3.0", | ||
"@babel/plugin-proposal-object-rest-spread": "7.0.0", | ||
"@babel/polyfill": "7.2.5", | ||
"@babel/preset-env": "7.0.0", | ||
"@babel/register": "7.0.0", | ||
"@babel/cli": "7.8.4", | ||
"@babel/core": "7.8.4", | ||
"@babel/plugin-proposal-class-properties": "7.8.3", | ||
"@babel/plugin-proposal-object-rest-spread": "7.8.3", | ||
"@babel/polyfill": "7.8.3", | ||
"@babel/preset-env": "7.8.4", | ||
"@babel/register": "7.8.3", | ||
"babel-core": "7.0.0-bridge.0", | ||
"babel-eslint": "8.2.3", | ||
"babel-eslint": "10.0.3", | ||
"babel-plugin-add-module-exports": "^1.0.2", | ||
"eslint": "^2.13.0", | ||
"eslint": "^6.8.0", | ||
"eslint-config-airbnb": "^9.0.1", | ||
@@ -65,14 +65,7 @@ "eslint-plugin-import": "^1.7.0", | ||
"expect": "^1.20.1", | ||
"mocha": "^5.2.0" | ||
"mocha": "^7.0.1" | ||
}, | ||
"babel": { | ||
"presets": [ | ||
[ | ||
"@babel/env", | ||
{ | ||
"targets": { | ||
"node": "8" | ||
} | ||
} | ||
] | ||
"@babel/env" | ||
], | ||
@@ -107,2 +100,3 @@ "plugins": [ | ||
"no-underscore-dangle": 0, | ||
"no-useless-escape": 0, | ||
"no-use-before-define": [ | ||
@@ -109,0 +103,0 @@ 2, |
Sorry, the diff of this file is not supported yet
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Major refactor
Supply chain riskPackage has recently undergone a major refactor. It may be unstable or indicate significant internal changes. Use caution when updating to versions that include significant changes.
Found 1 instance in 1 package
469471
12488
0
Updatedclone@^2.1.2
Updatedmessage-box@^0.2.2