@ellipticltd/aml-utils 0.16.9 → 0.16.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -31,10 +31,10 @@ export namespace bitcoinCash {
|
|
|
31
31
|
function isTxHash(str: any): boolean;
|
|
32
32
|
}
|
|
33
33
|
export namespace ethereum {
|
|
34
|
-
function isAddress(str: any):
|
|
35
|
-
function isBlockHash(str: any):
|
|
36
|
-
function isTxHash(str: any):
|
|
37
|
-
function isAddressCode(str: any):
|
|
34
|
+
function isAddress(str: any): any;
|
|
35
|
+
function isBlockHash(str: any): any;
|
|
36
|
+
function isTxHash(str: any): any;
|
|
37
|
+
function isAddressCode(str: any): any;
|
|
38
38
|
function isValidWeiAmount(str: any): boolean;
|
|
39
39
|
}
|
|
40
40
|
export namespace horizen {
|
|
@@ -50,7 +50,7 @@ export namespace ripple {
|
|
|
50
50
|
function isTxHash(str: any): boolean;
|
|
51
51
|
}
|
|
52
52
|
export namespace stellar {
|
|
53
|
-
function isAddress(str: any):
|
|
53
|
+
function isAddress(str: any): any;
|
|
54
54
|
function isTxHash(str: any): boolean;
|
|
55
55
|
}
|
|
56
56
|
export namespace zcash {
|
|
@@ -59,7 +59,7 @@ export namespace zcash {
|
|
|
59
59
|
}
|
|
60
60
|
export namespace zilliqa {
|
|
61
61
|
function isAddress(str: any): boolean;
|
|
62
|
-
function isTxHash(str: any):
|
|
62
|
+
function isTxHash(str: any): any;
|
|
63
63
|
}
|
|
64
64
|
export namespace algorand {
|
|
65
65
|
function isAddress(str: any): any;
|
|
@@ -71,7 +71,7 @@ export namespace tezos {
|
|
|
71
71
|
}
|
|
72
72
|
export namespace polkadot {
|
|
73
73
|
function isAddress(str: any): any;
|
|
74
|
-
function isTxHash(str: any):
|
|
74
|
+
function isTxHash(str: any): any;
|
|
75
75
|
}
|
|
76
76
|
export namespace cardano {
|
|
77
77
|
function isAddress(str: any): any;
|
|
@@ -91,55 +91,55 @@ export namespace doge {
|
|
|
91
91
|
}
|
|
92
92
|
export namespace cosmos {
|
|
93
93
|
function isAddress(str: any): boolean;
|
|
94
|
-
function isTxHash(str: any):
|
|
94
|
+
function isTxHash(str: any): any;
|
|
95
95
|
}
|
|
96
96
|
export namespace solana {
|
|
97
97
|
function isAddress(str: any): boolean;
|
|
98
98
|
function isTxHash(str: any): boolean;
|
|
99
99
|
}
|
|
100
100
|
export namespace binanceSmartChain {
|
|
101
|
-
function isAddress(str: any):
|
|
102
|
-
function isTxHash(str: any):
|
|
101
|
+
function isAddress(str: any): any;
|
|
102
|
+
function isTxHash(str: any): any;
|
|
103
103
|
}
|
|
104
104
|
export namespace polygon {
|
|
105
|
-
function isAddress(str: any):
|
|
106
|
-
function isTxHash(str: any):
|
|
105
|
+
function isAddress(str: any): any;
|
|
106
|
+
function isTxHash(str: any): any;
|
|
107
107
|
}
|
|
108
108
|
export namespace filecoin {
|
|
109
109
|
function isAddress(str: any): boolean;
|
|
110
110
|
function isTxHash(str: any): boolean;
|
|
111
111
|
}
|
|
112
112
|
export namespace optimism {
|
|
113
|
-
function isAddress(str: any):
|
|
114
|
-
function isTxHash(str: any):
|
|
113
|
+
function isAddress(str: any): any;
|
|
114
|
+
function isTxHash(str: any): any;
|
|
115
115
|
}
|
|
116
116
|
export namespace avalanche {
|
|
117
|
-
function isAddress(str: any):
|
|
118
|
-
function isTxHash(str: any):
|
|
117
|
+
function isAddress(str: any): any;
|
|
118
|
+
function isTxHash(str: any): any;
|
|
119
119
|
}
|
|
120
120
|
export namespace arbitrum {
|
|
121
|
-
function isAddress(str: any):
|
|
122
|
-
function isTxHash(str: any):
|
|
121
|
+
function isAddress(str: any): any;
|
|
122
|
+
function isTxHash(str: any): any;
|
|
123
123
|
}
|
|
124
124
|
export namespace tron {
|
|
125
125
|
function isAddress(str: any): any;
|
|
126
|
-
function isTxHash(str: any):
|
|
126
|
+
function isTxHash(str: any): any;
|
|
127
127
|
}
|
|
128
128
|
export namespace fantom {
|
|
129
|
-
function isAddress(str: any):
|
|
130
|
-
function isTxHash(str: any):
|
|
129
|
+
function isAddress(str: any): any;
|
|
130
|
+
function isTxHash(str: any): any;
|
|
131
131
|
}
|
|
132
132
|
export namespace celo {
|
|
133
|
-
function isAddress(str: any):
|
|
134
|
-
function isTxHash(str: any):
|
|
133
|
+
function isAddress(str: any): any;
|
|
134
|
+
function isTxHash(str: any): any;
|
|
135
135
|
}
|
|
136
136
|
export namespace ethereumClassic {
|
|
137
|
-
function isAddress(str: any):
|
|
138
|
-
function isTxHash(str: any):
|
|
137
|
+
function isAddress(str: any): any;
|
|
138
|
+
function isTxHash(str: any): any;
|
|
139
139
|
}
|
|
140
140
|
export namespace mobilecoin {
|
|
141
141
|
function isAddress(str: any): boolean;
|
|
142
|
-
function isTxHash(str: any):
|
|
142
|
+
function isTxHash(str: any): any;
|
|
143
143
|
}
|
|
144
144
|
export namespace sui {
|
|
145
145
|
function isAddress(str: any): boolean;
|
|
@@ -154,66 +154,70 @@ export namespace ton {
|
|
|
154
154
|
function isTxHash(str: any): boolean;
|
|
155
155
|
}
|
|
156
156
|
export namespace gnosis {
|
|
157
|
-
function isAddress(str: any):
|
|
158
|
-
function isTxHash(str: any):
|
|
157
|
+
function isAddress(str: any): any;
|
|
158
|
+
function isTxHash(str: any): any;
|
|
159
159
|
}
|
|
160
160
|
export namespace dydx {
|
|
161
161
|
function isAddress(str: any): boolean;
|
|
162
|
-
function isTxHash(str: any):
|
|
162
|
+
function isTxHash(str: any): any;
|
|
163
163
|
}
|
|
164
164
|
export namespace hederaHashgraph {
|
|
165
165
|
function isAddress(str: any): boolean;
|
|
166
166
|
function isTxHash(str: any): boolean;
|
|
167
167
|
}
|
|
168
168
|
export namespace aptos {
|
|
169
|
-
function isAddress(str: any):
|
|
170
|
-
function isTxHash(str: any):
|
|
169
|
+
function isAddress(str: any): any;
|
|
170
|
+
function isTxHash(str: any): any;
|
|
171
171
|
}
|
|
172
172
|
export namespace zksync {
|
|
173
|
-
function isAddress(str: any):
|
|
174
|
-
function isTxHash(str: any):
|
|
173
|
+
function isAddress(str: any): any;
|
|
174
|
+
function isTxHash(str: any): any;
|
|
175
175
|
}
|
|
176
176
|
export namespace haqq {
|
|
177
|
-
function isAddress(str: any):
|
|
178
|
-
function isTxHash(str: any):
|
|
177
|
+
function isAddress(str: any): any;
|
|
178
|
+
function isTxHash(str: any): any;
|
|
179
179
|
}
|
|
180
180
|
export namespace base {
|
|
181
|
-
function isAddress(str: any):
|
|
182
|
-
function isTxHash(str: any):
|
|
181
|
+
function isAddress(str: any): any;
|
|
182
|
+
function isTxHash(str: any): any;
|
|
183
183
|
}
|
|
184
184
|
export namespace corechain {
|
|
185
|
-
function isAddress(str: any):
|
|
186
|
-
function isTxHash(str: any):
|
|
185
|
+
function isAddress(str: any): any;
|
|
186
|
+
function isTxHash(str: any): any;
|
|
187
187
|
}
|
|
188
188
|
export namespace worldchain {
|
|
189
|
-
function isAddress(str: any):
|
|
190
|
-
function isTxHash(str: any):
|
|
189
|
+
function isAddress(str: any): any;
|
|
190
|
+
function isTxHash(str: any): any;
|
|
191
191
|
}
|
|
192
192
|
export namespace injective {
|
|
193
193
|
function isAddress(str: any): boolean;
|
|
194
|
-
function isTxHash(str: any):
|
|
194
|
+
function isTxHash(str: any): any;
|
|
195
195
|
}
|
|
196
196
|
export namespace linea {
|
|
197
|
-
function isAddress(str: any):
|
|
198
|
-
function isTxHash(str: any):
|
|
197
|
+
function isAddress(str: any): any;
|
|
198
|
+
function isTxHash(str: any): any;
|
|
199
199
|
}
|
|
200
200
|
export namespace xdc {
|
|
201
|
-
function isAddress(str: any):
|
|
202
|
-
function isTxHash(str: any):
|
|
201
|
+
function isAddress(str: any): any;
|
|
202
|
+
function isTxHash(str: any): any;
|
|
203
203
|
}
|
|
204
204
|
export namespace internetcomputer {
|
|
205
|
-
function isAddress(str: any):
|
|
206
|
-
function isTxHash(str: any):
|
|
205
|
+
function isAddress(str: any): any;
|
|
206
|
+
function isTxHash(str: any): any;
|
|
207
207
|
}
|
|
208
208
|
export namespace unichain {
|
|
209
|
-
function isAddress(str: any):
|
|
210
|
-
function isTxHash(str: any):
|
|
209
|
+
function isAddress(str: any): any;
|
|
210
|
+
function isTxHash(str: any): any;
|
|
211
211
|
}
|
|
212
212
|
export namespace sei {
|
|
213
213
|
function isAddress(str: any): boolean;
|
|
214
|
-
function isTxHash(str: any):
|
|
214
|
+
function isTxHash(str: any): any;
|
|
215
215
|
}
|
|
216
216
|
export namespace bittensor {
|
|
217
217
|
function isAddress(str: any): any;
|
|
218
|
-
function isTxHash(str: any):
|
|
218
|
+
function isTxHash(str: any): any;
|
|
219
|
+
}
|
|
220
|
+
export namespace codex {
|
|
221
|
+
function isAddress(str: any): any;
|
|
222
|
+
function isTxHash(str: any): any;
|
|
219
223
|
}
|
|
@@ -548,6 +548,14 @@ const validations = {
|
|
|
548
548
|
return str.length === 66 && web3.isHexStrict(str);
|
|
549
549
|
},
|
|
550
550
|
},
|
|
551
|
+
codex: {
|
|
552
|
+
isAddress(str) {
|
|
553
|
+
return web3.isAddress(str);
|
|
554
|
+
},
|
|
555
|
+
isTxHash(str) {
|
|
556
|
+
return str.length === 66 && web3.isHexStrict(str);
|
|
557
|
+
},
|
|
558
|
+
},
|
|
551
559
|
};
|
|
552
560
|
Object.keys(V).forEach((k) => {
|
|
553
561
|
const v = V[k];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validations.js","sourceRoot":"","sources":["../../../../../libs/aml-utils/lib/validations/validations.js"],"names":[],"mappings":"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","sourcesContent":["/* eslint no-underscore-dangle: 0 */\nconst V = require('validator');\nconst _ = require('lodash');\n\n// Importing directly from dist to make sure we import the browser-friendly version of the library\nconst addressValidator = require('multicoin-address-validator/dist/wallet-address-validator');\nconst zilUtils = require('@zilliqa-js/util');\nconst web3 = require('web3-utils');\nconst stellarBase = require('@stellar/stellar-base');\nconst E = require('../errors/errors');\n\nconst validations = {\n _validate(Err, pred, x, msg) {\n if (pred(x)) {\n return x;\n }\n throw new Err(msg);\n },\n _validateArg(pred, x, msg) {\n return this._validate(E.InvalidArguments, pred, x, msg);\n },\n _tryCheck(fn, arg) {\n try {\n fn(arg);\n return true;\n } catch (error) {\n return false;\n }\n },\n\n exists(x) {\n return x != null;\n },\n nonEmpty(x) {\n return (x != null ? x.length : undefined) > 0;\n },\n isNonEmptyString(x) {\n return _.isString(x) && (x != null ? x.length : undefined) > 0;\n },\n isSafeString(str) {\n // eslint-disable-next-line no-useless-escape, prefer-regex-literals\n return RegExp(/^(\\p{L}|[0-9]|-|=|!|\\.|:|\\s|@|\\+|_|,|\\$|£|&)+$/, 'u').test(str);\n },\n isAssetSafeString(str) {\n // eslint-disable-next-line no-useless-escape, prefer-regex-literals\n return RegExp(/^(\\p{L}|[0-9]|-|=|!|\\.|:|\\s|@|\\+|_|,|\\$|£|&|\\/)+$/, 'u').test(str);\n },\n ensureShortEnough(limit, x) {\n const l = x != null ? x.length : undefined;\n if (l <= limit) {\n return true;\n }\n throw new E.BadRequest(`Max query size exceeded: ${l} / ${limit}`);\n },\n ensure(crit, msg) {\n if (crit) {\n return true;\n }\n throw new E.BadRequest(msg);\n },\n argExists(x, msg) {\n return this._validateArg(this.exists, x, msg);\n },\n\n check: {\n matches(required, given, msg) {\n const newGiven = _.uniq(given);\n const crit = _.intersection(newGiven, required).length === given.length;\n if (crit) {\n return true;\n }\n throw new E.BadRequest(msg);\n },\n wasFound(type) {\n return (item) => {\n if (item == null) {\n throw new E.NotFound(`Unknown ${type}`);\n } else {\n return item;\n }\n };\n },\n wasCreated(msg) {\n return (arr) => {\n if (!arr[1]) {\n throw new E.BadRequest(msg);\n } else {\n return arr;\n }\n };\n },\n isTrue(crit, msg) {\n if (crit) {\n return true;\n }\n throw new E.BadRequest(msg);\n },\n isFalse(crit, msg) {\n if (!crit) {\n return true;\n }\n throw new E.BadRequest(msg);\n },\n },\n\n isCustomerReference(x) {\n return _.isString(x) && (x != null ? x.length : undefined) > 0 && (x != null ? x.length : undefined) <= 100;\n },\n isCustomerLabelName(x) {\n return _.isString(x) && (x != null ? x.length : undefined) > 0 && (x != null ? x.length : undefined) <= 50;\n },\n binanceChain: {\n isAddress(str) {\n return /^(bnb)([a-z0-9]{39})$/.test(str);\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n bitcoin: {\n isAddress(str, asset) {\n if (asset === 'lightning') {\n return validations.isNonEmptyString(str);\n }\n return typeof str === 'string' && addressValidator.validate(str.trim(), 'btc', 'prod');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n bitcoinCash: {\n isAddress(str) {\n return /^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$|^(bitcoincash:)?[q|p][a-z0-9]{41}$|^(BITCOINCASH:)?[Q|P][A-Z0-9]{41}$/.test(str);\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n ethereum: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isBlockHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n isAddressCode(str) {\n return web3.isHexStrict(str);\n },\n isValidWeiAmount(str) {\n try {\n web3.fromWei(str);\n return true;\n } catch (e) {\n return false;\n }\n },\n },\n horizen: {\n isAddress(str) {\n return addressValidator.validate(str, 'zen');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n litecoin: {\n isAddress(str) {\n return /^[3LM][a-km-zA-HJ-NP-Z1-9]{24,33}$|^ltc1[ac-hj-np-z02-9]{6,86}$|^LTC1[AC-HJ-NP-Z02-9]{6,86}$|^ltcmweb[a-zA-Z0-9]{114}$/.test(\n str\n );\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n ripple: {\n isAddress(str) {\n return addressValidator.validate(str, 'xrp');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n stellar: {\n isAddress(str) {\n return stellarBase.StrKey.isValidEd25519PublicKey(str);\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n zcash: {\n isAddress(str) {\n return addressValidator.validate(str, 'zec');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n zilliqa: {\n isAddress(str) {\n return zilUtils.validation.isBech32(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n algorand: {\n isAddress(str) {\n return addressValidator.validate(str, 'algo');\n },\n isTxHash(str) {\n return str.length === 52;\n },\n },\n tezos: {\n isAddress(str) {\n return str[0] !== 'o' && addressValidator.validate(str, 'xtz');\n },\n isTxHash(str) {\n return str.length === 51;\n },\n },\n polkadot: {\n isAddress(str) {\n return addressValidator.validate(str, 'dot');\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n cardano: {\n isAddress(str) {\n return addressValidator.validate(str, 'ada');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n cryptocom: {\n isAddress(str) {\n return addressValidator.validate(str, 'cro');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n near: {\n isAddress(str) {\n // https://nomicon.io/DataStructures/Account\n return /^(([a-z\\d]+[-_])*[a-z\\d]+\\.)*([a-z\\d]+[-_])*[a-z\\d]+$/.test(str);\n },\n isTxHash(str) {\n return str.length === 44 || str.length === 43;\n },\n },\n doge: {\n isAddress(str) {\n return /^[a-zA-Z\\d]{34}$/.test(str);\n },\n isTxHash(str) {\n return str.length === 64;\n },\n },\n cosmos: {\n isAddress(str) {\n return /^cosmos{1}[a-zA-Z\\d]{39}$/.test(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n solana: {\n isAddress(str) {\n return /^[1-9A-HJ-NP-Za-km-z]{32,44}$/.test(str);\n },\n isTxHash(str) {\n return /^[1-9A-HJ-NP-Za-km-z]{77,88}$/.test(str);\n },\n },\n binanceSmartChain: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n polygon: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n filecoin: {\n isAddress(str) {\n return /^(f0|f1|f2|f3)/.test(str);\n },\n isTxHash(str) {\n return str.length === 62 && /^bafy2bza/.test(str);\n },\n },\n optimism: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n avalanche: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n arbitrum: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n tron: {\n isAddress(str) {\n return addressValidator.validate(str, 'tron');\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n fantom: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n celo: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n ethereumClassic: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n mobilecoin: {\n isAddress(str) {\n return str.length === 24 && /^[A-Za-z0-9+/]+={0,2}$/.test(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n sui: {\n isAddress(str) {\n return str.length === 66 && /^[A-Za-z0-9+/]+$/.test(str);\n },\n isTxHash(str) {\n return str.length === 44;\n },\n },\n flare: {\n isAddress(str) {\n return str.length === 42 && /^[A-Za-z0-9+/]+$/.test(str);\n },\n isTxHash(str) {\n return str.length === 66;\n },\n },\n ton: {\n isAddress(str) {\n return /^[A-Za-z0-9+/]{64}$/.test(str);\n },\n isTxHash(str) {\n return /^[A-Za-z0-9+/]{64}$/.test(str);\n },\n },\n gnosis: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n dydx: {\n isAddress(str) {\n return /^[a-z]+1[a-zA-Z0-9]{38}$/.test(str) || str === 'dydx_chain';\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n hederaHashgraph: {\n isAddress(str) {\n return /^\\d+\\.\\d+\\.\\d+$/.test(str);\n },\n isTxHash(str) {\n return /^[xa-f0-9+/]{98}$/.test(str);\n },\n },\n aptos: {\n isAddress(str) {\n return str.length <= 66 && web3.isHex(str);\n },\n isTxHash(str) {\n return web3.isHex(str);\n },\n },\n zksync: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n haqq: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n base: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n corechain: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n worldchain: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n injective: {\n isAddress(str) {\n return /^[a-z0-9]+$/i.test(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n linea: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n xdc: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n internetcomputer: {\n isAddress(str) {\n return web3.isHex(str);\n },\n isTxHash(str) {\n return web3.isHex(str);\n },\n },\n unichain: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n sei: {\n isAddress(str) {\n return /^[a-z0-9]+$/i.test(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n bittensor: {\n isAddress(str) {\n return addressValidator.validate(str, 'dot');\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n};\n\nObject.keys(V).forEach((k) => {\n const v = V[k];\n // don't trigger validation with null values (prevents swagger 500 error)\n validations[k] = (x) => (x === null ? false : v(x));\n});\n\nmodule.exports = validations;\n"]}
|
|
1
|
+
{"version":3,"file":"validations.js","sourceRoot":"","sources":["../../../../../libs/aml-utils/lib/validations/validations.js"],"names":[],"mappings":"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","sourcesContent":["/* eslint no-underscore-dangle: 0 */\nconst V = require('validator');\nconst _ = require('lodash');\n\n// Importing directly from dist to make sure we import the browser-friendly version of the library\nconst addressValidator = require('multicoin-address-validator/dist/wallet-address-validator');\nconst zilUtils = require('@zilliqa-js/util');\nconst web3 = require('web3-utils');\nconst stellarBase = require('@stellar/stellar-base');\nconst E = require('../errors/errors');\n\nconst validations = {\n _validate(Err, pred, x, msg) {\n if (pred(x)) {\n return x;\n }\n throw new Err(msg);\n },\n _validateArg(pred, x, msg) {\n return this._validate(E.InvalidArguments, pred, x, msg);\n },\n _tryCheck(fn, arg) {\n try {\n fn(arg);\n return true;\n } catch (error) {\n return false;\n }\n },\n\n exists(x) {\n return x != null;\n },\n nonEmpty(x) {\n return (x != null ? x.length : undefined) > 0;\n },\n isNonEmptyString(x) {\n return _.isString(x) && (x != null ? x.length : undefined) > 0;\n },\n isSafeString(str) {\n // eslint-disable-next-line no-useless-escape, prefer-regex-literals\n return RegExp(/^(\\p{L}|[0-9]|-|=|!|\\.|:|\\s|@|\\+|_|,|\\$|£|&)+$/, 'u').test(str);\n },\n isAssetSafeString(str) {\n // eslint-disable-next-line no-useless-escape, prefer-regex-literals\n return RegExp(/^(\\p{L}|[0-9]|-|=|!|\\.|:|\\s|@|\\+|_|,|\\$|£|&|\\/)+$/, 'u').test(str);\n },\n ensureShortEnough(limit, x) {\n const l = x != null ? x.length : undefined;\n if (l <= limit) {\n return true;\n }\n throw new E.BadRequest(`Max query size exceeded: ${l} / ${limit}`);\n },\n ensure(crit, msg) {\n if (crit) {\n return true;\n }\n throw new E.BadRequest(msg);\n },\n argExists(x, msg) {\n return this._validateArg(this.exists, x, msg);\n },\n\n check: {\n matches(required, given, msg) {\n const newGiven = _.uniq(given);\n const crit = _.intersection(newGiven, required).length === given.length;\n if (crit) {\n return true;\n }\n throw new E.BadRequest(msg);\n },\n wasFound(type) {\n return (item) => {\n if (item == null) {\n throw new E.NotFound(`Unknown ${type}`);\n } else {\n return item;\n }\n };\n },\n wasCreated(msg) {\n return (arr) => {\n if (!arr[1]) {\n throw new E.BadRequest(msg);\n } else {\n return arr;\n }\n };\n },\n isTrue(crit, msg) {\n if (crit) {\n return true;\n }\n throw new E.BadRequest(msg);\n },\n isFalse(crit, msg) {\n if (!crit) {\n return true;\n }\n throw new E.BadRequest(msg);\n },\n },\n\n isCustomerReference(x) {\n return _.isString(x) && (x != null ? x.length : undefined) > 0 && (x != null ? x.length : undefined) <= 100;\n },\n isCustomerLabelName(x) {\n return _.isString(x) && (x != null ? x.length : undefined) > 0 && (x != null ? x.length : undefined) <= 50;\n },\n binanceChain: {\n isAddress(str) {\n return /^(bnb)([a-z0-9]{39})$/.test(str);\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n bitcoin: {\n isAddress(str, asset) {\n if (asset === 'lightning') {\n return validations.isNonEmptyString(str);\n }\n return typeof str === 'string' && addressValidator.validate(str.trim(), 'btc', 'prod');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n bitcoinCash: {\n isAddress(str) {\n return /^[13][a-km-zA-HJ-NP-Z1-9]{25,34}$|^(bitcoincash:)?[q|p][a-z0-9]{41}$|^(BITCOINCASH:)?[Q|P][A-Z0-9]{41}$/.test(str);\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n ethereum: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isBlockHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n isAddressCode(str) {\n return web3.isHexStrict(str);\n },\n isValidWeiAmount(str) {\n try {\n web3.fromWei(str);\n return true;\n } catch (e) {\n return false;\n }\n },\n },\n horizen: {\n isAddress(str) {\n return addressValidator.validate(str, 'zen');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n litecoin: {\n isAddress(str) {\n return /^[3LM][a-km-zA-HJ-NP-Z1-9]{24,33}$|^ltc1[ac-hj-np-z02-9]{6,86}$|^LTC1[AC-HJ-NP-Z02-9]{6,86}$|^ltcmweb[a-zA-Z0-9]{114}$/.test(\n str\n );\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n ripple: {\n isAddress(str) {\n return addressValidator.validate(str, 'xrp');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n stellar: {\n isAddress(str) {\n return stellarBase.StrKey.isValidEd25519PublicKey(str);\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n zcash: {\n isAddress(str) {\n return addressValidator.validate(str, 'zec');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n zilliqa: {\n isAddress(str) {\n return zilUtils.validation.isBech32(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n algorand: {\n isAddress(str) {\n return addressValidator.validate(str, 'algo');\n },\n isTxHash(str) {\n return str.length === 52;\n },\n },\n tezos: {\n isAddress(str) {\n return str[0] !== 'o' && addressValidator.validate(str, 'xtz');\n },\n isTxHash(str) {\n return str.length === 51;\n },\n },\n polkadot: {\n isAddress(str) {\n return addressValidator.validate(str, 'dot');\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n cardano: {\n isAddress(str) {\n return addressValidator.validate(str, 'ada');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n cryptocom: {\n isAddress(str) {\n return addressValidator.validate(str, 'cro');\n },\n isTxHash(str) {\n if (!V.isHexadecimal(str)) {\n return false;\n }\n return str.length === 64;\n },\n },\n near: {\n isAddress(str) {\n // https://nomicon.io/DataStructures/Account\n return /^(([a-z\\d]+[-_])*[a-z\\d]+\\.)*([a-z\\d]+[-_])*[a-z\\d]+$/.test(str);\n },\n isTxHash(str) {\n return str.length === 44 || str.length === 43;\n },\n },\n doge: {\n isAddress(str) {\n return /^[a-zA-Z\\d]{34}$/.test(str);\n },\n isTxHash(str) {\n return str.length === 64;\n },\n },\n cosmos: {\n isAddress(str) {\n return /^cosmos{1}[a-zA-Z\\d]{39}$/.test(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n solana: {\n isAddress(str) {\n return /^[1-9A-HJ-NP-Za-km-z]{32,44}$/.test(str);\n },\n isTxHash(str) {\n return /^[1-9A-HJ-NP-Za-km-z]{77,88}$/.test(str);\n },\n },\n binanceSmartChain: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n polygon: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n filecoin: {\n isAddress(str) {\n return /^(f0|f1|f2|f3)/.test(str);\n },\n isTxHash(str) {\n return str.length === 62 && /^bafy2bza/.test(str);\n },\n },\n optimism: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n avalanche: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n arbitrum: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n tron: {\n isAddress(str) {\n return addressValidator.validate(str, 'tron');\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n fantom: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n celo: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n ethereumClassic: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n mobilecoin: {\n isAddress(str) {\n return str.length === 24 && /^[A-Za-z0-9+/]+={0,2}$/.test(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n sui: {\n isAddress(str) {\n return str.length === 66 && /^[A-Za-z0-9+/]+$/.test(str);\n },\n isTxHash(str) {\n return str.length === 44;\n },\n },\n flare: {\n isAddress(str) {\n return str.length === 42 && /^[A-Za-z0-9+/]+$/.test(str);\n },\n isTxHash(str) {\n return str.length === 66;\n },\n },\n ton: {\n isAddress(str) {\n return /^[A-Za-z0-9+/]{64}$/.test(str);\n },\n isTxHash(str) {\n return /^[A-Za-z0-9+/]{64}$/.test(str);\n },\n },\n gnosis: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n dydx: {\n isAddress(str) {\n return /^[a-z]+1[a-zA-Z0-9]{38}$/.test(str) || str === 'dydx_chain';\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n hederaHashgraph: {\n isAddress(str) {\n return /^\\d+\\.\\d+\\.\\d+$/.test(str);\n },\n isTxHash(str) {\n return /^[xa-f0-9+/]{98}$/.test(str);\n },\n },\n aptos: {\n isAddress(str) {\n return str.length <= 66 && web3.isHex(str);\n },\n isTxHash(str) {\n return web3.isHex(str);\n },\n },\n zksync: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n haqq: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n base: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n corechain: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n worldchain: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n injective: {\n isAddress(str) {\n return /^[a-z0-9]+$/i.test(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n linea: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n xdc: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n internetcomputer: {\n isAddress(str) {\n return web3.isHex(str);\n },\n isTxHash(str) {\n return web3.isHex(str);\n },\n },\n unichain: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n sei: {\n isAddress(str) {\n return /^[a-z0-9]+$/i.test(str);\n },\n isTxHash(str) {\n return str.length === 64 && web3.isHex(str);\n },\n },\n bittensor: {\n isAddress(str) {\n return addressValidator.validate(str, 'dot');\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n codex: {\n isAddress(str) {\n return web3.isAddress(str);\n },\n isTxHash(str) {\n return str.length === 66 && web3.isHexStrict(str);\n },\n },\n};\n\nObject.keys(V).forEach((k) => {\n const v = V[k];\n // don't trigger validation with null values (prevents swagger 500 error)\n validations[k] = (x) => (x === null ? false : v(x));\n});\n\nmodule.exports = validations;\n"]}
|