add support for sets
This commit is contained in:
@@ -17,15 +17,17 @@ export function checkMatchesObjectStructure(
|
|||||||
const actualType = typeof objectToCheck[key];
|
const actualType = typeof objectToCheck[key];
|
||||||
if (requiredType != actualType) return false;
|
if (requiredType != actualType) return false;
|
||||||
|
|
||||||
if (Array.isArray(reference[key])) {
|
if (Array.isArray(reference[key]) || reference[key] instanceof Set) {
|
||||||
// only check if array is not empty
|
// only check if array is not empty
|
||||||
if (objectToCheck[key].length == 0) continue;
|
if (objectToCheck[key].length == 0) continue;
|
||||||
|
if (objectToCheck[key].size == 0) continue;
|
||||||
|
|
||||||
// check first item of array
|
// check first item of array
|
||||||
// recurse into objects
|
const [firstOfObjectToCheck] = objectToCheck[key];
|
||||||
|
const [fisrtOfReference] = reference[key];
|
||||||
const doesFirstItemMatch = checkMatchesObjectStructure(
|
const doesFirstItemMatch = checkMatchesObjectStructure(
|
||||||
objectToCheck[key][0],
|
firstOfObjectToCheck,
|
||||||
reference[key][0]
|
fisrtOfReference
|
||||||
);
|
);
|
||||||
if (doesFirstItemMatch == false) return false;
|
if (doesFirstItemMatch == false) return false;
|
||||||
} else if (requiredType == "object") {
|
} else if (requiredType == "object") {
|
||||||
|
|||||||
Reference in New Issue
Block a user