diff --git a/CHANGELOG.md b/CHANGELOG.md index 46c48d5..f16c8bd 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,3 +1,7 @@ +## 6.1.1 +### Changes + * Bump `com.esaulpaugh:headlong` version + ## 6.1.0 ### Changes * Updated default providers to use [Alchemy](http://alchemy.com/) diff --git a/build.gradle b/build.gradle index aec0e8f..81d3c3e 100755 --- a/build.gradle +++ b/build.gradle @@ -31,7 +31,7 @@ lombok { dependencies { implementation 'org.apache.commons:commons-lang3:3.11' - implementation 'com.esaulpaugh:headlong:3.4.1' + implementation 'com.esaulpaugh:headlong:3.8.3' implementation 'com.google.code.gson:gson:2.8.6' implementation 'org.bouncycastle:bcprov-jdk15on:1.65.01' diff --git a/src/main/resources/com/unstoppabledomains/config/client/client.json b/src/main/resources/com/unstoppabledomains/config/client/client.json index bbd6e10..4d3e5d2 100644 --- a/src/main/resources/com/unstoppabledomains/config/client/client.json +++ b/src/main/resources/com/unstoppabledomains/config/client/client.json @@ -1,3 +1,3 @@ { - "version": "6.1.0" + "version": "6.1.1" } diff --git a/src/main/resources/com/unstoppabledomains/config/knownRecords.json b/src/main/resources/com/unstoppabledomains/config/knownRecords.json index 202205d..4acf8fe 100644 --- a/src/main/resources/com/unstoppabledomains/config/knownRecords.json +++ b/src/main/resources/com/unstoppabledomains/config/knownRecords.json @@ -1,5 +1,5 @@ { - "version": "2.1.4", + "version": "2.1.12", "information": { "description": "This file describes all resolver keys with a defined meaning and related metadata used by Unstoppable Domains UNS Registry", "documentation": "https://docs.unstoppabledomains.com/developer-toolkit/records-reference/", @@ -11,6 +11,21 @@ "deprecated": false, "validationRegex": "^bc1[ac-hj-np-z02-9]{6,87}$|^[13][a-km-zA-HJ-NP-Z1-9]{25,39}$" }, + "crypto.B2M.version.MATIC.address": { + "deprecatedKeyName": "B2M_MATIC", + "validationRegex": "^0x[a-zA-Z0-9]*$", + "deprecated": false + }, + "crypto.B2M.version.BEP20.address": { + "deprecatedKeyName": "B2M_BEP20", + "validationRegex": "^0x[a-zA-Z0-9]*$", + "deprecated": false + }, + "crypto.B2M.version.ERC20.address": { + "deprecatedKeyName": "B2M_ERC20", + "validationRegex": "^0x[a-zA-Z0-9]*$", + "deprecated": false + }, "crypto.ETH.address": { "deprecatedKeyName": "ETH", "deprecated": false, @@ -208,6 +223,11 @@ }, "crypto.XZC.address": { "deprecatedKeyName": "XZC", + "deprecated": true, + "validationRegex": "^[a-km-zA-HJ-NP-Z1-9]{34}$" + }, + "crypto.FIRO.address": { + "deprecatedKeyName": "FIRO", "deprecated": false, "validationRegex": "^[a-km-zA-HJ-NP-Z1-9]{34}$" }, @@ -219,7 +239,7 @@ "crypto.DCR.address": { "deprecatedKeyName": "DCR", "deprecated": false, - "validationRegex": null + "validationRegex": "^D[a-zA-Z0-9]*$" }, "crypto.XEM.address": { "deprecatedKeyName": "XEM", @@ -269,7 +289,7 @@ "crypto.GAS.address": { "deprecatedKeyName": "GAS", "deprecated": false, - "validationRegex": null + "validationRegex": "^[a-zA-Z0-9]*$" }, "crypto.TRX.address": { "deprecatedKeyName": "TRX", @@ -1073,7 +1093,7 @@ }, "crypto.DOT.address": { "deprecatedKeyName": "DOT", - "validationRegex": null, + "validationRegex": "^1[a-zA-Z0-9]*$", "deprecated": false }, "crypto.UNI.version.ERC20.address": { @@ -1088,7 +1108,7 @@ }, "crypto.UNI.version.MATIC.address": { "deprecatedKeyName": "UNI_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.UNI.version.HRC20.address": { @@ -1098,12 +1118,12 @@ }, "crypto.UNI.version.XDAI.address": { "deprecatedKeyName": "UNI_XDAI", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SOL.address": { "deprecatedKeyName": "SOL", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.BUSD.version.ERC20.address": { @@ -1123,12 +1143,12 @@ }, "crypto.ICP.address": { "deprecatedKeyName": "ICP", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.THETA.address": { "deprecatedKeyName": "THETA", - "validationRegex": null, + "validationRegex": "^0x[a-zA-Z0-9]*$", "deprecated": false }, "crypto.WBTC.version.ERC20.address": { @@ -1138,12 +1158,12 @@ }, "crypto.WBTC.version.MATIC.address": { "deprecatedKeyName": "WBTC_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.WBTC.version.FANTOM.address": { "deprecatedKeyName": "WBTC_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.WBTC.version.HRC20.address": { @@ -1153,12 +1173,12 @@ }, "crypto.WBTC.version.XDAI.address": { "deprecatedKeyName": "WBTC_XDAI", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.FIL.address": { "deprecatedKeyName": "FIL", - "validationRegex": null, + "validationRegex": "^f[a-zA-Z0-9]*$", "deprecated": false }, "crypto.CDAI.address": { @@ -1168,7 +1188,7 @@ }, "crypto.KSM.address": { "deprecatedKeyName": "KSM", - "validationRegex": null, + "validationRegex": "^[CDEFGHJ][a-zA-Z0-9]*$", "deprecated": false }, "crypto.OKB.address": { @@ -1183,12 +1203,12 @@ }, "crypto.AAVE.version.MATIC.address": { "deprecatedKeyName": "AAVE_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.AAVE.version.FANTOM.address": { "deprecatedKeyName": "AAVE_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.AAVE.version.HRC20.address": { @@ -1208,12 +1228,12 @@ }, "crypto.SHIB.version.MATIC.address": { "deprecatedKeyName": "SHIB_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SHIB.version.FANTOM.address": { "deprecatedKeyName": "SHIB_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.CEL.version.ERC20.address": { @@ -1223,12 +1243,12 @@ }, "crypto.CEL.version.MATIC.address": { "deprecatedKeyName": "CEL_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.CEL.version.FANTOM.address": { "deprecatedKeyName": "CEL_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.CEL.version.HRC20.address": { @@ -1263,7 +1283,7 @@ }, "crypto.MIOTA.address": { "deprecatedKeyName": "MIOTA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.FTT.address": { @@ -1278,22 +1298,22 @@ }, "crypto.TFUEL.address": { "deprecatedKeyName": "TFUEL", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.KLAY.address": { "deprecatedKeyName": "KLAY", - "validationRegex": null, + "validationRegex": "^0x[a-zA-Z0-9]*$", "deprecated": false }, "crypto.LUNA.address": { "deprecatedKeyName": "LUNA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.AVAX.address": { "deprecatedKeyName": "AVAX", - "validationRegex": null, + "validationRegex": "^0x[a-zA-Z0-9]*$", "deprecated": false }, "crypto.LEO.address": { @@ -1323,7 +1343,7 @@ }, "crypto.HBAR.address": { "deprecatedKeyName": "HBAR", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.TEL.version.ERC20.address": { @@ -1333,7 +1353,7 @@ }, "crypto.TEL.version.MATIC.address": { "deprecatedKeyName": "TEL_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.CHZ.address": { @@ -1353,12 +1373,12 @@ }, "crypto.SUSHI.version.MATIC.address": { "deprecatedKeyName": "SUSHI_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SUSHI.version.FANTOM.address": { "deprecatedKeyName": "SUSHI_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SUSHI.version.HRC20.address": { @@ -1368,7 +1388,7 @@ }, "crypto.EGLD.address": { "deprecatedKeyName": "EGLD", - "validationRegex": null, + "validationRegex": "^0x[a-zA-Z0-9]*$", "deprecated": false }, "crypto.TUSD.version.ERC20.address": { @@ -1383,7 +1403,7 @@ }, "crypto.TUSD.version.AVAX.address": { "deprecatedKeyName": "TUSD_AVAX", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.TUSD.version.HRC20.address": { @@ -1408,7 +1428,7 @@ }, "crypto.HBTC.version.HRC20.address": { "deprecatedKeyName": "HBTC_HRC20", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SNX.version.ERC20.address": { @@ -1418,12 +1438,12 @@ }, "crypto.SNX.version.MATIC.address": { "deprecatedKeyName": "SNX_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SNX.version.FANTOM.address": { "deprecatedKeyName": "SNX_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SNX.version.HRC20.address": { @@ -1443,12 +1463,12 @@ }, "crypto.NEAR.address": { "deprecatedKeyName": "NEAR", - "validationRegex": null, + "validationRegex": "^0x[a-zA-Z0-9]*$", "deprecated": false }, "crypto.HNT.address": { "deprecatedKeyName": "HNT", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.STETH.address": { @@ -1463,7 +1483,7 @@ }, "crypto.NEXO.version.FANTOM.address": { "deprecatedKeyName": "NEXO_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.PAX.address": { @@ -1473,7 +1493,7 @@ }, "crypto.STX.address": { "deprecatedKeyName": "STX", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.MANA.version.ERC20.address": { @@ -1483,12 +1503,12 @@ }, "crypto.MANA.version.MATIC.address": { "deprecatedKeyName": "MANA_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.MDX.version.HRC20.address": { "deprecatedKeyName": "MDX_HRC20", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.MDX.version.BEP20.address": { @@ -1498,12 +1518,12 @@ }, "crypto.ZEN.address": { "deprecatedKeyName": "ZEN", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.ARRR.address": { "deprecatedKeyName": "ARRR", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.BNT.address": { @@ -1518,7 +1538,7 @@ }, "crypto.LUSD.version.MATIC.address": { "deprecatedKeyName": "LUSD_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.GRT.version.ERC20.address": { @@ -1528,7 +1548,7 @@ }, "crypto.GRT.version.MATIC.address": { "deprecatedKeyName": "GRT_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.GRT.version.HRC20.address": { @@ -1538,7 +1558,7 @@ }, "crypto.SC.address": { "deprecatedKeyName": "SC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.HUSD.version.ERC20.address": { @@ -1548,7 +1568,7 @@ }, "crypto.HUSD.version.HRC20.address": { "deprecatedKeyName": "HUSD_HRC20", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.CRV.version.ERC20.address": { @@ -1558,12 +1578,12 @@ }, "crypto.CRV.version.MATIC.address": { "deprecatedKeyName": "CRV_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.CRV.version.FANTOM.address": { "deprecatedKeyName": "CRV_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.UMA.address": { @@ -1578,12 +1598,12 @@ }, "crypto.WRX.version.MATIC.address": { "deprecatedKeyName": "WRX_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.AR.address": { "deprecatedKeyName": "AR", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9-_]{43}$", "deprecated": false }, "crypto.OMG.address": { @@ -1608,7 +1628,7 @@ }, "crypto.IOST.address": { "deprecatedKeyName": "IOST", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.NXM.address": { @@ -1643,7 +1663,7 @@ }, "crypto.FLOW.address": { "deprecatedKeyName": "FLOW", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.ANKR.address": { @@ -1653,7 +1673,7 @@ }, "crypto.HBC.address": { "deprecatedKeyName": "HBC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.VGX.address": { @@ -1688,7 +1708,7 @@ }, "crypto.1INCH.version.MATIC.address": { "deprecatedKeyName": "1INCH_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.1INCH.version.HRC20.address": { @@ -1698,7 +1718,7 @@ }, "crypto.CKB.address": { "deprecatedKeyName": "CKB", - "validationRegex": null, + "validationRegex": "^ckb1q[a-zA-Z0-9]*$", "deprecated": false }, "crypto.WOO.version.ERC20.address": { @@ -1708,7 +1728,7 @@ }, "crypto.WOO.version.HRC20.address": { "deprecatedKeyName": "WOO_HRC20", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.TITAN.address": { @@ -1718,12 +1738,12 @@ }, "crypto.OMI.address": { "deprecatedKeyName": "OMI", - "validationRegex": null, + "validationRegex": "^0x[a-zA-Z0-9]*$", "deprecated": false }, "crypto.MINA.address": { "deprecatedKeyName": "MINA", - "validationRegex": null, + "validationRegex": "^B62[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SETH.address": { @@ -1738,7 +1758,7 @@ }, "crypto.OXY.version.SOLANA.address": { "deprecatedKeyName": "OXY_SOLANA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.OXY.version.ERC20.address": { @@ -1758,7 +1778,7 @@ }, "crypto.XCH.address": { "deprecatedKeyName": "XCH", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.RENBTC.version.ERC20.address": { @@ -1783,7 +1803,7 @@ }, "crypto.BCHA.address": { "deprecatedKeyName": "BCHA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.LRC.address": { @@ -1798,7 +1818,7 @@ }, "crypto.ERG.address": { "deprecatedKeyName": "ERG", - "validationRegex": null, + "validationRegex": "^0x[a-zA-Z0-9]*$", "deprecated": false }, "crypto.WIN.address": { @@ -1833,7 +1853,7 @@ }, "crypto.CELO.address": { "deprecatedKeyName": "CELO", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.DENT.address": { @@ -1893,7 +1913,7 @@ }, "crypto.CFX.address": { "deprecatedKeyName": "CFX", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.UOS.address": { @@ -1933,7 +1953,7 @@ }, "crypto.KAVA.address": { "deprecatedKeyName": "KAVA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.ALCX.address": { @@ -1943,7 +1963,7 @@ }, "crypto.EWT.address": { "deprecatedKeyName": "EWT", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.TON.address": { @@ -1978,7 +1998,7 @@ }, "crypto.BAND.version.FANTOM.address": { "deprecatedKeyName": "BAND_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.NMR.address": { @@ -1998,7 +2018,7 @@ }, "crypto.WAXP.address": { "deprecatedKeyName": "WAXP", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.UQC.address": { @@ -2043,17 +2063,17 @@ }, "crypto.CTSI.version.MATIC.address": { "deprecatedKeyName": "CTSI_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.RAY.address": { "deprecatedKeyName": "RAY", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.ANC.version.TERRA.address": { "deprecatedKeyName": "ANC_TERRA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.ANC.version.ERC20.address": { @@ -2073,7 +2093,7 @@ }, "crypto.IQ.version.MATIC.address": { "deprecatedKeyName": "IQ_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SUSD.version.ERC20.address": { @@ -2083,7 +2103,7 @@ }, "crypto.SUSD.version.FANTOM.address": { "deprecatedKeyName": "SUSD_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.KLV.address": { @@ -2103,7 +2123,7 @@ }, "crypto.AKT.address": { "deprecatedKeyName": "AKT", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.STMX.address": { @@ -2118,7 +2138,7 @@ }, "crypto.XPRT.address": { "deprecatedKeyName": "XPRT", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.SRM.version.ERC20.address": { @@ -2128,7 +2148,7 @@ }, "crypto.SRM.version.SOLANA.address": { "deprecatedKeyName": "SRM_SOLANA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.RPL.address": { @@ -2149,6 +2169,16 @@ "crypto.FET.address": { "deprecatedKeyName": "FET", "validationRegex": "^0x[a-fA-F0-9]{40}$", + "deprecated": true + }, + "crypto.FET.version.ERC20.address": { + "deprecatedKeyName": "FET_ERC20", + "validationRegex": "^0x[a-fA-F0-9]{40}$", + "deprecated": false + }, + "crypto.FET.version.FETCHAI.address": { + "deprecatedKeyName": "FET_FETCHAI", + "validationRegex": "^fetch[a-zA-Z0-9]{39}$", "deprecated": false }, "crypto.OXT.address": { @@ -2158,7 +2188,7 @@ }, "crypto.ARDR.address": { "deprecatedKeyName": "ARDR", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.MATH.address": { @@ -2198,7 +2228,7 @@ }, "crypto.STEEM.address": { "deprecatedKeyName": "STEEM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.ORN.address": { @@ -2258,7 +2288,7 @@ }, "crypto.KNCL.version.FANTOM.address": { "deprecatedKeyName": "KNCL_FANTOM", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.KNCL.version.HRC20.address": { @@ -2268,7 +2298,7 @@ }, "crypto.MED.address": { "deprecatedKeyName": "MED", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.XAUT.address": { @@ -2278,7 +2308,7 @@ }, "crypto.VLX.address": { "deprecatedKeyName": "VLX", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.PHA.address": { @@ -2298,7 +2328,7 @@ }, "crypto.XHV.address": { "deprecatedKeyName": "XHV", - "validationRegex": null, + "validationRegex": "^hv[a-zA-Z0-9]*$", "deprecated": false }, "crypto.META.address": { @@ -2313,7 +2343,7 @@ }, "crypto.MONA.address": { "deprecatedKeyName": "MONA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.ANT.address": { @@ -2323,7 +2353,7 @@ }, "crypto.HYDRA.address": { "deprecatedKeyName": "HYDRA", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.ZKS.address": { @@ -2348,7 +2378,7 @@ }, "crypto.CSPR.address": { "deprecatedKeyName": "CSPR", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.MTL.address": { @@ -2378,7 +2408,7 @@ }, "crypto.ETN.address": { "deprecatedKeyName": "ETN", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.UBT.version.ERC20.address": { @@ -2388,7 +2418,7 @@ }, "crypto.UBT.version.MATIC.address": { "deprecatedKeyName": "UBT_MATIC", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.EXRD.address": { @@ -2403,7 +2433,7 @@ }, "crypto.RIF.address": { "deprecatedKeyName": "RIF", - "validationRegex": null, + "validationRegex": "^[a-zA-Z0-9]*$", "deprecated": false }, "crypto.STORJ.version.ERC20.address": { @@ -2428,8 +2458,58 @@ }, "crypto.DPI.version.MATIC.address": { "deprecatedKeyName": "DPI_MATIC", + "validationRegex": "^[a-zA-Z0-9]*$", + "deprecated": false + }, + "crypto.DOG.version.MATIC.address": { + "deprecatedKeyName": "DOG_MATIC", + "validationRegex": null, + "deprecated": false + }, + "crypto.DOG.version.BEP20.address": { + "deprecatedKeyName": "DOG_BEP20", + "validationRegex": "^0x[a-fA-F0-9]{40}$", + "deprecated": false + }, + "crypto.DOG.version.ERC20.address": { + "deprecatedKeyName": "DOG_ERC20", + "validationRegex": "^0x[a-fA-F0-9]{40}$", + "deprecated": false + }, + "crypto.DOG.version.AETH.address": { + "deprecatedKeyName": "DOG_AETH", "validationRegex": null, "deprecated": false + }, + "crypto.DOG.version.OP.address": { + "deprecatedKeyName": "DOG_OP", + "validationRegex": null, + "deprecated": false + }, + "crypto.GALA.version.ERC20.address": { + "deprecatedKeyName": "GALA_ERC20", + "validationRegex": "^0x[a-zA-Z0-9]{40}$", + "deprecated": false + }, + "crypto.GALA.version.BEP20.address": { + "deprecatedKeyName": "GALA_BEP20", + "validationRegex": "^0x[a-zA-Z0-9]{40}$", + "deprecated": false + }, + "crypto.MOBX.address": { + "deprecatedKeyName": "MOBX", + "validationRegex": "^fetch[a-zA-Z0-9]{39}$", + "deprecated": false + }, + "crypto.FAB.address": { + "deprecatedKeyName": "FAB", + "deprecated": false, + "validationRegex": "^[a-zA-Z0-9]{34}$" + }, + "crypto.BEAM.address": { + "deprecatedKeyName": "BEAM", + "deprecated": false, + "validationRegex": null } } } diff --git a/src/main/resources/com/unstoppabledomains/config/network/uns-config.json b/src/main/resources/com/unstoppabledomains/config/network/uns-config.json index 8966871..46652ae 100644 --- a/src/main/resources/com/unstoppabledomains/config/network/uns-config.json +++ b/src/main/resources/com/unstoppabledomains/config/network/uns-config.json @@ -1,13 +1,13 @@ { - "version": "0.5.1", + "version": "0.5.4", "networks": { "1": { "contracts": { "UNSRegistry": { "address": "0x049aba7510f45BA5b64ea9E658E342F904DB358D", - "implementation": "0xa715562307AA8AEDCba976b3793b3337F371c14a", + "implementation": "0x4ed485a33175b8329a6786D17C5aDf1583B14FFB", "legacyAddresses": [], - "deploymentBlock": "0xd62e9d", + "deploymentBlock": "0xc2fede", "forwarder": "0x049aba7510f45BA5b64ea9E658E342F904DB358D" }, "CNSRegistry": { @@ -18,7 +18,7 @@ }, "MintingManager": { "address": "0x2a7084870bB724175a3C96Da8FaA55128fa3E19D", - "implementation": "0x8caAeaD19aab5f54C94BB9F4be32e200E54AC8D7", + "implementation": "0x22655AdDDD2Ac3E3490aD40113F8dc653A9cfe4d", "legacyAddresses": [], "deploymentBlock": "0xc2fee0", "forwarder": "0xb970fbCF52cd8111c76c379D4f2FE12E7f8AE7fb" @@ -106,7 +106,7 @@ "contracts": { "UNSRegistry": { "address": "0x070e83FCed225184E67c86302493ffFCDB953f71", - "implementation": "0xe42Cae86552020ABb3C4D9d212B43f0e33C381D7", + "implementation": "0xF5e6e88d12fE21fbD53AA7579E0d722DDa749804", "legacyAddresses": [], "deploymentBlock": "0x5b57ea", "forwarder": "0x070e83FCed225184E67c86302493ffFCDB953f71" @@ -119,7 +119,7 @@ }, "MintingManager": { "address": "0x9ee42D3EB042e06F8Cd241890C4fA0d51e4DA345", - "implementation": "0xFB11410f3067BB6Db61bC335f0de23bE87A1767e", + "implementation": "0x926C1D3947947c2796D6dC6A1c6012280e6a29F4", "legacyAddresses": [], "deploymentBlock": "0x5b57ec", "forwarder": "0x7F9F48cF94C69ce91D4b442DA186F31118ac0185" @@ -200,8 +200,8 @@ "UNSRegistry": { "address": "0xa9a6A3626993D487d2Dbda3173cf58cA1a9D9e9f", "legacyAddresses": [], - "deploymentBlock": "0x019d6188", - "implementation": "0x5442953b0BFFf69FC945f5f1387cbFD2e2673447", + "deploymentBlock": "0x01272eb5", + "implementation": "0xE96cE2F6546AF59b1ecC91d80fE887e0AAbc91B7", "forwarder": "0xa9a6A3626993D487d2Dbda3173cf58cA1a9D9e9f" }, "CNSRegistry": { @@ -214,7 +214,7 @@ "address": "0x7be83293BeeDc9Eba1bd76c66A65F10F3efaeC26", "legacyAddresses": [], "deploymentBlock": "0x01272f41", - "implementation": "0xBb45a6E10224Aa36EAcd812205F3763D353e9783", + "implementation": "0x4726E4a6858eFff6A89A3A7Fc21048b4333825D6", "forwarder": "0xC37d3c4326ab0E1D2b9D8b916bBdf5715f780fcF" }, "ProxyAdmin": { @@ -367,14 +367,14 @@ "deprecated": true }, "MintableERC721Predicate": { - "address": "0x7c3c91245769c8B7450aD522792deC4bd4bf797f", + "address": "0x930d66d6D8780fBb38e3668F31f46DB506AA721c", "legacyAddresses": [], - "deploymentBlock": "0x1b" + "deploymentBlock": "0x1c" }, "RootChainManager": { - "address": "0x2f5e6eed50C839835BD2873d428E1683793Ad09D", + "address": "0xBDeFCF6429D0AC68236A6BEb321cBD2Ce66B463C", "legacyAddresses": [], - "deploymentBlock": "0x1d" + "deploymentBlock": "0x1e" } } }, @@ -383,8 +383,8 @@ "UNSRegistry": { "address": "0x2a93C52E7B6E7054870758e15A1446E769EdfB93", "legacyAddresses": [], - "deploymentBlock": "0x0189f713", - "implementation": "0x267f251B85B2003B98645195D085021C5B6e928c", + "deploymentBlock": "0x01213f43", + "implementation": "0xc7C84B247661ab766115E27a20BD39E324c81dBD", "forwarder": "0x2a93C52E7B6E7054870758e15A1446E769EdfB93" }, "CNSRegistry": { @@ -397,7 +397,7 @@ "address": "0x428189346bb3CC52f031A1092fd47C919AC30A9f", "legacyAddresses": [], "deploymentBlock": "0x01213f4a", - "implementation": "0xCC17E698bA21bae4277579F22cA51135AaF00777", + "implementation": "0x41F3B5e1dDCb7fF4578a71C8431dadE9be9B2CE4", "forwarder": "0xEf3a491A8750BEC2Dff5339CF6Df94436d432C4d" }, "ProxyAdmin": { diff --git a/src/test/java/com/unstoppabledomains/config/KnownRecordsTest.java b/src/test/java/com/unstoppabledomains/config/KnownRecordsTest.java index 5de3a14..26ff258 100644 --- a/src/test/java/com/unstoppabledomains/config/KnownRecordsTest.java +++ b/src/test/java/com/unstoppabledomains/config/KnownRecordsTest.java @@ -18,7 +18,7 @@ void shouldNotThrowExceptionsWhenLoadingRecords() { void shouldLoadCorrectRecords() { String versionFromCode = KnownRecords.getVersion(); // we want to keep this hardcoded and manually updated to test if the Client.getVersion correctly reads the .json file; - String versionFromFile = "2.1.4"; + String versionFromFile = "2.1.12"; assertEquals(versionFromFile, versionFromCode); } } diff --git a/src/test/java/com/unstoppabledomains/config/network/NetworkConfigLoaderTest.java b/src/test/java/com/unstoppabledomains/config/network/NetworkConfigLoaderTest.java index 3cf818f..510bbd5 100644 --- a/src/test/java/com/unstoppabledomains/config/network/NetworkConfigLoaderTest.java +++ b/src/test/java/com/unstoppabledomains/config/network/NetworkConfigLoaderTest.java @@ -18,7 +18,7 @@ void shouldNotThrowExceptionsWhenLoadingNetworkConfig() { void shouldLoadCorrectNetworkConfig() { String versionFromClient = Client.getVersion(); // we want to keep this hardcoded and manually updated to test if the Client.getVersion correctly reads the .json file; - String versionFromFile = "6.1.0"; + String versionFromFile = "6.1.1"; assertEquals(versionFromFile, versionFromClient); } } diff --git a/src/test/java/com/unstoppabledomains/resolution/ResolutionTest.java b/src/test/java/com/unstoppabledomains/resolution/ResolutionTest.java index fa46817..930d25c 100755 --- a/src/test/java/com/unstoppabledomains/resolution/ResolutionTest.java +++ b/src/test/java/com/unstoppabledomains/resolution/ResolutionTest.java @@ -556,13 +556,14 @@ public void testTokenURIMetadata() throws Exception { TokenUriMetadata metadata = resolution.getTokenURIMetadata(testDomain); assertNotNull(metadata); assertEquals(testDomain, metadata.getName()); - assertEquals(5, metadata.getAttributes().size()); + assertEquals(4, metadata.getAttributes().size()); Map expectedRecords = new HashMap() {{ put("dns.A", "[\"10.0.0.1\", \"10.0.0.3\"]"); put("dns.ttl", "128"); put("dns.AAAA", "[]"); put("dns.A.ttl", "98"); put("custom.record", "custom.value"); + put("whois.email.value", "testing@example.com"); put("dweb.ipfs.hash", "QmdyBw5oTgCtTLQ18PbDvPL8iaLoEPhSyzD91q9XmgmAjb"); put("ipfs.html.value", "QmdyBw5oTgCtTLQ18PbDvPL8iaLoEPhSyzD91q9XmgmAjb"); put("crypto.ETH.address", "0x8aaD44321A86b170879d7A244c1e8d360c99DdA8"); @@ -571,8 +572,6 @@ public void testTokenURIMetadata() throws Exception { put("crypto.USDT.version.OMNI.address", "19o6LvAdCPkjLi83VsjrCsmvQZUirT4KXJ"); put("crypto.USDT.version.TRON.address", "TNemhXhpX7MwzZJa3oXvfCjo5pEeXrfN2h"); put("crypto.USDT.version.ERC20.address", "0xe7474D07fD2FA286e7e0aa23cd107F8379085037"); - put("whois.email.value", "testing@example.com"); - put("custom.record", "custom.value"); }}; Map recordsFromProperties = metadata.getProperties().getRecords(); assertEquals(expectedRecords, recordsFromProperties);