@poap-xyz/poaps
Advanced tools
Comparing version 0.7.5 to 0.8.0
@@ -53,30 +53,52 @@ (function (global, factory) { | ||
} | ||
function isFilterValueDefined(value) { | ||
if (value == null) { | ||
return false; | ||
} | ||
switch (typeof value) { | ||
case 'boolean': | ||
return true; | ||
case 'number': | ||
return isNumberDefined(value); | ||
case 'object': | ||
return isObjectDefined(value); | ||
default: | ||
return !!value; | ||
} | ||
} | ||
function isNumberDefined(value) { | ||
return !isNaN(value) && value !== 0; | ||
} | ||
function isObjectDefined(value) { | ||
return Object.keys(value).length > 0; | ||
} | ||
function createEqFilter(key, value) { | ||
return value ? createField(key, { _eq: value }) : {}; | ||
return isFilterValueDefined(value) | ||
? createField(key, { _eq: value }) | ||
: {}; | ||
} | ||
function createAddressFilter(key, value) { | ||
return value | ||
return isFilterValueDefined(value) | ||
? createField(key, { _eq: value.toLowerCase() }) | ||
: {}; | ||
} | ||
function createNotNullAddressFilter(key, filterZeroAddress = true, filterDeadAddress = true) { | ||
if (filterZeroAddress && filterDeadAddress) { | ||
return createField(key, { | ||
_nin: [ZERO_ADDRESS, DEAD_ADDRESS], | ||
}); | ||
function createNotNullAddressFilter(key, filterZeroAddress, filterDeadAddress) { | ||
const filteredAddresses = []; | ||
if (filterZeroAddress !== false) { | ||
filteredAddresses.push(ZERO_ADDRESS); | ||
} | ||
if (filterZeroAddress) { | ||
return createField(key, { | ||
_neq: ZERO_ADDRESS, | ||
}); | ||
if (filterDeadAddress !== false) { | ||
filteredAddresses.push(DEAD_ADDRESS); | ||
} | ||
if (filterDeadAddress) { | ||
return createField(key, { | ||
_neq: DEAD_ADDRESS, | ||
}); | ||
if (filteredAddresses.length === 0) { | ||
return {}; | ||
} | ||
return {}; | ||
if (filteredAddresses.length === 1) { | ||
return createField(key, { _neq: filteredAddresses[0] }); | ||
} | ||
return createField(key, { _nin: filteredAddresses }); | ||
} | ||
function createInFilter(key, values) { | ||
return values && values.length > 0 | ||
return isFilterValueDefined(values) | ||
? createField(key, { _in: values }) | ||
@@ -87,9 +109,11 @@ : {}; | ||
const betweenFilter = {}; | ||
if (from) { | ||
const isFromDefined = isFilterValueDefined(from); | ||
const isToDefined = isFilterValueDefined(to); | ||
if (isFromDefined) { | ||
betweenFilter._gte = from; | ||
} | ||
if (to) { | ||
if (isToDefined) { | ||
betweenFilter._lte = to; | ||
} | ||
return from || to | ||
return isFromDefined || isToDefined | ||
? createField(key, betweenFilter) | ||
@@ -96,0 +120,0 @@ : {}; |
{ | ||
"name": "@poap-xyz/poaps", | ||
"version": "0.7.5", | ||
"version": "0.8.0", | ||
"description": "Poaps module for the poap.js library", | ||
@@ -34,5 +34,5 @@ "main": "dist/cjs/index.cjs", | ||
"dependencies": { | ||
"@poap-xyz/providers": "0.7.5", | ||
"@poap-xyz/utils": "0.7.5" | ||
"@poap-xyz/providers": "0.8.0", | ||
"@poap-xyz/utils": "0.8.0" | ||
} | ||
} |
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
Sorry, the diff of this file is not supported yet
278528
2510
+ Added@poap-xyz/providers@0.8.0(transitive)
+ Added@poap-xyz/utils@0.8.0(transitive)
- Removed@poap-xyz/providers@0.7.5(transitive)
- Removed@poap-xyz/utils@0.7.5(transitive)
Updated@poap-xyz/providers@0.8.0
Updated@poap-xyz/utils@0.8.0