Skip to content

Commit bca2267

Browse files
feat: add DogeOS and DogeOS Testnet support
Ticket: WIN-8082
1 parent 0175240 commit bca2267

File tree

6 files changed

+75
-0
lines changed

6 files changed

+75
-0
lines changed

modules/bitgo/test/v2/unit/keychains.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -103,6 +103,7 @@ describe('V2 Keychains', function () {
103103
n.asset !== UnderlyingAsset.MANTLE &&
104104
n.asset !== UnderlyingAsset.JOVAYETH &&
105105
n.asset !== UnderlyingAsset.OKB &&
106+
n.asset !== UnderlyingAsset.DOGEOS &&
106107
coinFamilyValues.includes(n.name)
107108
);
108109

modules/sdk-core/src/bitgo/environments.ts

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -286,6 +286,9 @@ const mainnetBase: EnvironmentTemplate = {
286286
okb: {
287287
baseUrl: 'https://www.oklink.com/api/v5/explorer/block/block-list?chainShortName=xlayer',
288288
},
289+
dogeos: {
290+
baseUrl: '', //TODO: WIN-8082 => add mainnet url when available
291+
},
289292
},
290293
icpNodeUrl: 'https://ic0.app',
291294
worldExplorerBaseUrl: 'https://worldscan.org/',
@@ -439,6 +442,9 @@ const testnetBase: EnvironmentTemplate = {
439442
okb: {
440443
baseUrl: 'https://www.oklink.com/api/v5/explorer/block/block-list?chainShortName=xlayer_testnet',
441444
},
445+
dogeos: {
446+
baseUrl: 'https://blockscout.testnet.dogeos.com',
447+
},
442448
},
443449
stxNodeUrl: 'https://api.testnet.hiro.so',
444450
vetNodeUrl: 'https://sync-testnet.vechain.org',

modules/statics/src/allCoinsAndTokens.ts

Lines changed: 44 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2313,6 +2313,50 @@ export const allCoinsAndTokens = [
23132313
CoinFeature.EVM_COMPATIBLE_WP,
23142314
]
23152315
),
2316+
account(
2317+
'887eebff-5d50-47f7-aea5-905e25c2e846',
2318+
'tdogeos',
2319+
'DogeOS Testnet',
2320+
Networks.test.dogeos,
2321+
18,
2322+
UnderlyingAsset.DOGEOS,
2323+
BaseUnit.ETH,
2324+
[
2325+
...EVM_FEATURES,
2326+
CoinFeature.SHARED_EVM_SIGNING,
2327+
CoinFeature.SHARED_EVM_SDK,
2328+
CoinFeature.EVM_COMPATIBLE_IMS,
2329+
CoinFeature.EVM_COMPATIBLE_UI,
2330+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2331+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2332+
CoinFeature.SUPPORTS_ERC20,
2333+
],
2334+
KeyCurve.Secp256k1,
2335+
'',
2336+
'TDogeOS'
2337+
),
2338+
account(
2339+
'7d69a368-ea4b-422d-bb21-38812fb5a418',
2340+
'dogeos',
2341+
'DogeOS',
2342+
Networks.main.dogeos,
2343+
18,
2344+
UnderlyingAsset.DOGEOS,
2345+
BaseUnit.ETH,
2346+
[
2347+
...EVM_FEATURES,
2348+
CoinFeature.SHARED_EVM_SIGNING,
2349+
CoinFeature.SHARED_EVM_SDK,
2350+
CoinFeature.EVM_COMPATIBLE_IMS,
2351+
CoinFeature.EVM_COMPATIBLE_UI,
2352+
CoinFeature.EVM_NON_BITGO_RECOVERY,
2353+
CoinFeature.EVM_UNSIGNED_SWEEP_RECOVERY,
2354+
CoinFeature.SUPPORTS_ERC20,
2355+
],
2356+
KeyCurve.Secp256k1,
2357+
'',
2358+
'DogeOS'
2359+
),
23162360
canton(
23172361
'07385320-5a4f-48e9-97a5-86d4be9f24b0',
23182362
'canton',

modules/statics/src/base.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,7 @@ export enum CoinFamily {
4747
CSPR = 'cspr',
4848
DASH = 'dash',
4949
DOGE = 'doge',
50+
DOGEOS = 'dogeos',
5051
DOT = 'dot',
5152
ETH = 'eth',
5253
ETH2 = 'eth2',
@@ -940,6 +941,7 @@ export enum UnderlyingAsset {
940941
DODO = 'dodo',
941942
DOG = 'dog',
942943
DOGE = 'doge',
944+
DOGEOS = 'dogeos',
943945
DOGEBEAR = 'dogebear',
944946
DOGEBEAR2021 = 'dogebear2021',
945947
DOGEBULL = 'dogebull',

modules/statics/src/networks.ts

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2144,6 +2144,24 @@ class CantonTestnet extends Testnet implements BaseNetwork {
21442144
explorerUrl = 'https://devnet.ccview.io/updates/';
21452145
}
21462146

2147+
class Dogeos extends Mainnet implements EthereumNetwork {
2148+
name = 'Doge OS';
2149+
family = CoinFamily.DOGEOS;
2150+
explorerUrl = ''; //TODO: WIN-8082 => add mainnet url when available
2151+
accountExplorerUrl = ''; //TODO: WIN-8082 => add mainnet url when available
2152+
chainId = 1234567; ////TODO: WIN-8082 => add mainnet chainId when available
2153+
nativeCoinOperationHashPrefix = '1234567'; //TODO: WIN-8082 => add when mainnet details available
2154+
}
2155+
2156+
class DogeosTestnet extends Testnet implements EthereumNetwork {
2157+
name = 'Doge OS Testnet';
2158+
family = CoinFamily.DOGEOS;
2159+
explorerUrl = 'https://blockscout.testnet.dogeos.com/tx/';
2160+
accountExplorerUrl = 'https://blockscout.testnet.dogeos.com/address/';
2161+
chainId = 6281971;
2162+
nativeCoinOperationHashPrefix = '6281971';
2163+
}
2164+
21472165
export const Networks = {
21482166
main: {
21492167
ada: Object.freeze(new Ada()),
@@ -2172,6 +2190,7 @@ export const Networks = {
21722190
cronos: Object.freeze(new Cronos()),
21732191
dash: Object.freeze(new Dash()),
21742192
dogecoin: Object.freeze(new Dogecoin()),
2193+
dogeos: Object.freeze(new Dogeos()),
21752194
dot: Object.freeze(new PolkadotAssetHub()),
21762195
eCash: Object.freeze(new ECash()),
21772196
eos: Object.freeze(new Eos()),
@@ -2276,6 +2295,7 @@ export const Networks = {
22762295
cronos: Object.freeze(new CronosTestnet()),
22772296
dash: Object.freeze(new DashTestnet()),
22782297
dogecoin: Object.freeze(new DogecoinTestnet()),
2298+
dogeos: Object.freeze(new DogeosTestnet()),
22792299
dot: Object.freeze(new WestendAssetHub()),
22802300
eCash: Object.freeze(new ECashTestnet()),
22812301
eos: Object.freeze(new EosTestnet()),

modules/statics/test/unit/fixtures/expectedColdFeatures.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,7 @@ export const expectedColdFeatures = {
8383
'coredao',
8484
'coreum',
8585
'cronos',
86+
'dogeos',
8687
'dot',
8788
'fetchai',
8889
'flow',
@@ -143,6 +144,7 @@ export const expectedColdFeatures = {
143144
'tcoredao',
144145
'tcoreum',
145146
'tcronos',
147+
'tdogeos',
146148
'tdot',
147149
'tfetchai',
148150
'tflow',

0 commit comments

Comments
 (0)