forked from polkadot-js/apps
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathcolors.ts
616 lines (606 loc) · 20.8 KB
/
colors.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
// Copyright 2017-2022 @polkadot/apps-config authors & contributors
// SPDX-License-Identifier: Apache-2.0
/* eslint sort-keys: ["error", "asc", { caseSensitive: false }] */
import nodeBasiliskRococo from './logos/nodes/basilisk-rococo-bg.png';
import { sanitize } from './util';
// The mapping here is done on the actual chain name (system.chain RPC) or
// the actual RPC node it is corrected to (system.name RPC)
// defaults
const emptyColor = '#99999';
// based on chain name
// alphabetical
const chainSherpax = '#6bbee8';
const chainAcala = '#645AFF';
const chainAjuna = '#161212';
const chainAleph = '#00CCAB';
const chainAltair = '#ffb700';
const chainAmplitude = '#5DEFA7';
const chainAmplitudeRococo = '#5DEFA7';
const chainApron = 'linear-gradient(45deg, #0099F7 0%, #2E49EB 100%)';
const chainAstar = '#1b6dc1d9';
const chainEggnet = '#0099ff';
const chainAutomata = '#EC7032';
const chainAutomataContextFree = '#EC7032';
const chainBajun = '#161212';
const chainBitCountry = '#191a2e';
const chainBitCountryPioneer = '#000000';
const chainBasiliskTestnet = `url(${String(nodeBasiliskRococo)}) #000`;
const chainBeastEave = '#900048';
const chainBitgreen = '#13F513';
const chainBrainstorm = '#161616';
const chainCalamari = '#000000';
const chainCoinversation = '#e6017a';
const chainCompetitorsClub = '#213830';
const chainComposableFinance = '#C90E8A';
const chainCrab = '#512DBC';
const chainCreditcoin = '#2D353F';
const chainCreditcoinTestnet = '#00DF83';
const chainCrownSterling = '#13264b';
const chainCrust = '#ff8812';
const chainCrustMaxwell = '#2E333B';
const chainClover = 'linear-gradient(to right, #52ad75, #7cc773)';
const chainChainx = '#F6C94A';
const chainDarwinia = '#FF0083';
const chainDali = '#000000';
const chainDolphin = '#000000';
const chainDorafactory = '#FF761C';
const chainDotMog = '#020609';
const chainEfinity = '#496ddb';
const chainEquilibrium = '#1792ff';
const chainFantour = '#5a189a';
const chainGalital = '#00063F';
const chainGalois = '#000000';
const chainGamePower = '#5d21a5';
const chainGenshiro = '#e8662d';
const chainGM = '#f47b36';
const chainHanonycash = '#0099CC';
const chainHeiko = '#42d5de';
const chainHydrate = '#000000';
const chainIdavoll = '#ff43ff';
const chainImbue = '#baff36';
const chainInterbtc = '#1a0a2d';
const chainInterlay = '#3E96FF';
const chainIpse = '#08a1e8';
const chainJupiter = '#7143ff';
const chainKarura = '#ff4c3b';
const chainKhala = '#03f3f3';
const chainKintsugi = '#1a0a2d';
const chainKlug = '#000000';
const chainKulupu = '#003366';
const chainKico = '#29B58D';
const chainKilt = '#8c145a';
const chainKiltDev = '#f05a27';
const chainKiltPeregrine = `linear-gradient(45deg, ${chainKiltDev} 0%, ${chainKilt} 100%)`;
const chainKiltRilt = `linear-gradient(45deg, ${chainKilt} 0%, ${chainKiltDev} 100%)`;
const chainKonomi = '#007aff';
const chainKusama = '#000000';
const chainKusamaDataHighway = 'linear-gradient(-90deg, #9400D3 0%, #5A5CA9 50%, #00BFFF 100%)';
const chainKusari = '#b8860b';
const chainKylin = '#ed007e';
const chainListen = '#FFAD0A';
const chainLitentry = 'linear-gradient(45deg, #5cc27c 0%, #6de98f 100%)';
const chainLitentryRococo = '#0a6a08';
const chainLitmus = '#6822fb';
const chainLogion = 'rgb(21, 38, 101)';
const chainMinix = '#5152f7';
const chainManta = '#2070a6';
const chainMangata = '#030408';
const chainMd5 = '#3584e4';
const chainMoonrock = '#3d1d5a';
const chainMoonsama = '#000000';
const chainMybank = '#282736';
const chainMyriad = '#7342CC';
const chainNFTMart = '#815287';
const chainNodle = '#1ab394';
const chainOAK = '#A8278C';
const chainOLI = '#8CC63F';
const chainOmniBTC = '#6759E9';
const chainOpal = '#3B9C9D';
const chainOriginTrail = '#FB5DEB';
const chainOriginTrailTestnet = '#0C0C0C';
const chainPangolin = '#4B30DD';
const chainPangoro = '#4B30DD';
const chainParallel = '#ef18ac';
const chainParami = '#ee06e2';
const chainPicasso = '#000000';
const chainPichiu = '#ed007e';
const chainPhala = '#c6fa4c';
const chainPhoenix = '#d42181';
const chainPolkadex = '#7C30DD';
const chainPolkadot = '#e6007a';
const chainPolkaFoundry = '#ff527c';
const chainPolkaSmith = '#0DDDFB';
const chainPontem = '#A92FAC';
const chainPrism = 'linear-gradient(45deg, rgba(63,94,251,1) 0%, rgba(252,70,107,1) 100%)';
const chainQuartz = '#FF4D6A';
const chainRocco = '#6f36dc';
const chainRoccoMandala = '#173DC9';
const chainRoccoAres = '#70FF8B';
const chainAresGladios = '#1295F0';
const chainRoccoBifrost = '#5a25f0';
const chainRococoContracts = '#000000';
const chainRoccoDarwinia = '#FF0083';
const chainRoccoDataHighway = 'linear-gradient(-90deg, #9400D3 0%, #5A5CA9 50%, #00BFFF 100%)';
const chainRococoEave = '#900048';
const chainRococoLaminar = '#004FFF';
const chainRoccoTick = '#22bb22';
const chainRoccoTrack = '#bb2222';
const chainRoccoTrick = '#2222bb';
const chainRiochain = '#4d87f6';
const chainSakura = '#ff5995';
const chainShadow = '#ffa940';
const chainShiden = '#5923B2';
const chainSkyeKiwi = '#6667ab';
const chainSnakenet = '#f653a2';
const chainSora = '#2D2926';
const chainSpanner = '#EC3D3D';
const chainStandard = 'background: radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(42,170,244,1) 35%, rgba(10,10,10,1) 100%)';
const chainSwapdex = '#E94082';
const chainSubDAO = 'linear-gradient(50deg, #F20092 0%, #FF4D5D 100%)';
const chainTinker = '#161616';
const chainTinkerRococo = 'linear-gradient(90deg, rgba(253,52,166,1) 0%, rgba(22,213,239,1) 100%)';
const chainTotem = 'linear-gradient(158deg, rgba(226,157,0,1) 0%, rgba(234,55,203,1) 100%)';
const chainTrustBase = '#ff43aa';
const chainTuring = '#A8278C';
const chainT0rn = '#212322';
const chainUniarts = 'linear-gradient(150deg, #333ef7 0%, #55adff 100%)';
const chainUnique = '#40BCFF';
const chainUnitv = '#1452F0';
const chainUnorthodox = 'radial-gradient(circle, rgba(255,255,255,1) 0%, rgba(42,244,187,1) 35%, rgba(10,10,10,1) 100%)';
const chainVirto = '#063970';
const chainVln = '#33cc33';
const chainWeb3games = '#000000';
const chainWestend = '#da68a7';
const chainWestlake = 'linear-gradient(-90deg, #9400D3 0%, #5A5CA9 50%, #00BFFF 100%)';
const chainWhala = '#03f3f3';
const chainZero = '#000000';
const chainZenlink = 'linear-gradient(45deg, #F20082 0%, #FF4D4D 100%)';
const chainCESS = '#2269a9';
// based on node name
// alphabetical
const nodeAjuna = '#161212';
const nodeApron = 'linear-gradient(45deg, #0099F7 0%, #2E49EB 100%)';
const nodeAres = '#E56239';
const nodeAstar = '#1b6dc1d9';
const nodeAutomata = '#EC7032';
const nodeAutomataContextFree = '#EC7032';
const nodeBasilisk = '#49E49F';
const nodeBajun = '#161212';
const nodeBitCountry = '#191a2e';
const nodeBifrost = '#5a25f0';
const nodeCentrifuge = '#fcc367';
const nodeCoinversation = '#e6017a';
const nodeCompetitorsClub = '#213830';
const nodeCrownSterling = '#13264b';
const nodeDotMog = '#020609';
const nodeEdgeware = '#111111';
const nodeEfinity = '#496ddb';
const nodeEncointer = '#0000cc';
const nodeFantour = '#5a189a';
const nodeGalital = '#00063F;';
const nodeGamePower = '#5d21a5';
const nodeGeek = '#4f46e5';
const nodeHeiko = '#42d5de';
const nodeImbue = '#baff36';
const nodeIntegritee = '#658ea9';
const nodeIpse = '#08a1e8';
const nodeJaz = '#121212';
const nodeJoystream = '#4038FF';
const nodeJupiter = '#7143ff';
const nodeKabocha = '#f53485';
const nodeKonomi = '#007aff';
const nodeKpron = 'linear-gradient(45deg, #0099F7 0%, #2E49EB 100%)';
const nodeKylin = '#ed007e';
const nodeKlug = '#663399';
const nodeKusari = '#b8860b';
const nodeLitentry = 'linear-gradient(45deg, #5cc27c 0%, #6de98f 100%)';
const nodeManta = '#2070a6';
const nodeMathChain = '#000000';
const nodeMd5 = '#175bae';
const nodeMoonbeam = '#53cbc9';
const nodeMoonbase = '#F45B5B';
const nodeMoonriver = '#0E132E';
const nodeMybank = '#282736';
const nodeNFTMart = '#307182';
const nodeNodle = '#1ab394';
const nodeOdyssey = '#1295F0';
const nodeOmniBTC = '#6759E9';
const nodeOpportunity = '#6143bc';
const nodePangolin = '#4B30DD';
const nodePangoro = '#4B30DD';
const nodeParallel = '#ef18ac';
const nodeParami = '#ee06e2';
const nodePichiu = '#ed007e';
const nodePolkadex = '#7C30DD';
const nodePolymesh = '#1348e4';
const nodePontem = '#A92FAC';
const nodePrism = 'linear-gradient(45deg, rgba(63,94,251,1) 0%, rgba(252,70,107,1) 100%)';
const nodeRealis = '#000000';
const nodeRiochain = '#1A3BB3';
const nodeRobonomics = '#2949d3';
const nodeSora = '#2D2926';
const nodeStafi = '#00F3AB';
const nodeSubDAO = 'linear-gradient(50deg, #F20092 0%, #FF4D5D 100%)';
const nodeSubsocial = '#b9018c';
const nodeSubsocialX = '#69058C';
const nodeSubspace = '#562b8e';
const nodeSwapdex = '#E94082';
const nodeTernoa = '#d622ff';
const nodeUniarts = chainUniarts;
const nodeUnique = chainUnique;
const nodeOpal = chainOpal;
const nodeWeb3games = '#000000';
const nodeWestlake = chainWestlake;
const nodeZeitgeist = 'linear-gradient(180deg, rgba(32,90,172,1) 0%, rgba(26,72,138,1) 50%, rgba(13,36,69,1) 100%)';
const nodeZero = '#0099cc';
const nodeZenlink = 'linear-gradient(45deg, #F20082 0%, #FF4D4D 100%)';
const nodeSubGame = '#EB027D';
const nodeZCloak = 'linear-gradient(to right, #E89A76 0%, #C5B8CC 50%, #B0B4D7 100%)';
const nodeCESS = '#2269a9';
// based on the spec name
const specShell = '#2e86ab'; // '#0596FC';
const specStatemine = '#113911';
const specStatemint = '#86e62a';
const specWestmint = '#77bb77';
export { emptyColor };
// Alphabetical overrides based on the actual matched chain name
// NOTE: This is as retrieved via the system.chain RPC
export const chainColors: Record<string, string> = Object.entries({
Acala: chainAcala,
'Acala Dev': chainAcala,
'acala mandala pc1': chainRoccoMandala,
'acala mandala pc2': chainRoccoMandala,
'Ajuna Testnet': chainAjuna,
'Aleph Zero': chainAleph,
'Aleph Zero Testnet': chainAleph,
Altair: chainAltair,
Amplitude: chainAmplitude,
'Amplitude Testnet': chainAmplitudeRococo,
'Apron PC1': chainApron,
'Ares Gladios': chainAresGladios,
'Ares Odyssey': nodeOdyssey,
'Ares PC1': chainRoccoAres,
Astar: chainAstar,
Automata: chainAutomata,
'Automata ContextFree': chainAutomataContextFree,
'Bajun Testnet': chainBajun,
'Basilisk testnet': chainBasiliskTestnet,
'Beast Developer': chainBeastEave,
bifrost: chainRoccoBifrost,
'Bifrost Asgard CC4': chainRoccoBifrost,
'Bifrost K Rococo': chainRoccoBifrost,
'Bifrost Kusama': chainRoccoBifrost,
'Bifrost PC1': chainRoccoBifrost,
'Bifrost Polkadot': chainRoccoBifrost,
'Bifrost Stage Testnet': chainRoccoBifrost,
'Bit.Country Tewai Chain': chainBitCountry,
BitgreenRococo: chainBitgreen,
'Calamari Parachain': chainCalamari,
'Calamari Parachain Development': chainCalamari,
'Calamari Parachain Local': chainCalamari,
'Calamari Parachain Testnet': chainCalamari,
Centrifuge: nodeCentrifuge,
'CESS Testnet': chainCESS,
ChainOLI: chainOLI,
ChainX: chainChainx,
Clover: chainClover,
Coinversation: chainCoinversation,
'Competitors Club': chainCompetitorsClub,
'Composable Finance': chainComposableFinance,
'Contracts on Rococo': chainRococoContracts,
'Crab Parachain': chainCrab,
Creditcoin: chainCreditcoin,
'Creditcoin Testnet': chainCreditcoinTestnet,
'Crown Sterling': chainCrownSterling,
crust: chainCrust,
'crust maxwell': chainCrustMaxwell,
'Crust PC1': chainCrust,
'Crust Testnet': chainCrust,
'Dali Rococo': chainDali,
'Dali Westend': chainDali,
Darwinia: chainDarwinia,
'darwinia cc1': chainDarwinia,
'Darwinia Crab': chainCrab,
'Darwinia Crab Redirect': chainCrab,
'Darwinia Parachain': chainDarwinia,
'Darwinia PC2': chainRoccoDarwinia,
'DataHighway Spreehafen Rococo Parachain Testnet': chainRoccoDataHighway,
'DataHighway Tanganika Kusama Parachain': chainKusamaDataHighway,
Dolphin: chainDolphin,
'Dolphin Testnet': chainDolphin,
'Dora Factory': chainDorafactory,
'DOTMog.com NET': chainDotMog,
Efinity: chainEfinity,
'Egg Rococo': chainEggnet,
Equilibrium: chainEquilibrium,
'Equilibrium parachain': chainEquilibrium,
EquilibriumTestnet: chainGenshiro,
'Fantour Development': chainFantour,
Galital: chainGalital,
'Galois-PoC-1': chainGalois,
'GamePower Network': chainGamePower,
Genshiro: chainGenshiro,
'Genshiro Rococo Testnet': chainGenshiro,
'GM Parachain': chainGM,
'Halongbay PC1': chainPolkaFoundry,
hanonycash: chainHanonycash,
HydraDX: chainSnakenet,
'HydraDX Hydrate': chainHydrate,
'HydraDX Snakenet': chainHydrate,
'HydraDX Snakenet Gen2': chainHydrate,
'HydraDX Snakenet Gen3': chainHydrate,
Idavoll: chainIdavoll,
'Imbue Testnet': chainImbue,
InterBTC: chainInterbtc,
'InterBTC Staging': chainInterbtc,
Interlay: chainInterlay,
'InvArch Brainstorm Testnet': chainBrainstorm,
'InvArch Tinker Network': chainTinker,
IpseTestnet: chainIpse,
'Jupiter A1': chainJupiter,
'Jupiter PC1': chainJupiter,
Kapex: chainTotem,
Karura: chainKarura,
Khala: chainKhala,
KICO: chainKico,
KILT: chainKilt,
'KILT Local': chainKiltDev,
'KILT Peregrine': chainKiltPeregrine,
'KILT Peregrine Stagenet': chainKiltDev,
'KILT Spiritnet': chainKilt,
'KILT Spiritnet Development': chainKiltDev,
'KILT Testnet': chainKiltDev,
Kintsugi: chainKintsugi,
'KLUGDOSSIER.NET': chainKlug,
Konomi: chainKonomi,
Kpron: nodeKpron,
Kulupu: chainKulupu,
Kusama: chainKusama,
'Kusama CC1': chainKusama,
'Kusama CC2': chainKusama,
'Kusama CC3': chainKusama,
kusari: chainKusari,
'Kylin Testnet': chainKylin,
'laminar turbulence pc1': chainRococoLaminar,
Lego: chainTotem,
'Listen Network': chainListen,
Litentry: chainLitentry,
'Litentry-rococo': chainLitentryRococo,
Litmus: chainLitmus,
'Mangata Kusama Mainnet': chainMangata,
'Mangata Public Testnet': chainMangata,
'Manta Parachain': chainManta,
'Manta Parachain Development': chainManta,
'Manta Parachain Local': chainManta,
'Manta Parachain Testnet': chainManta,
Mars: nodeAres,
MathChain: nodeMathChain,
'MathChain PC1': chainGalois,
'MD5 Network': chainMd5,
Minix: chainMinix,
'Minix Testnet': chainMinix,
'Moonbase Alpha': nodeMoonbase,
'Moonbase Development Testnet': nodeMoonbase,
'Moonbase Stage': nodeMoonbase,
Moonbeam: nodeMoonbeam,
Moonriver: nodeMoonriver,
Moonrock: chainMoonrock,
'Moonsama Development': chainMoonsama,
Moonshadow: nodeMoonbeam,
'mybank.network Testnet': chainMybank,
'NFTMart Staging': chainNFTMart,
'NFTMart Testnet': chainNFTMart,
'Nodle Parachain': chainNodle,
'Nodle Testing Parachain': chainNodle,
'OAK Network': chainOAK,
Odyssey: nodeOdyssey,
'OLI Parachain': chainOLI,
OmniBTC: chainOmniBTC,
'Opal Node': chainOpal,
'OriginTrail Parachain': chainOriginTrail,
'OriginTrail Parachain Testnet': chainOriginTrailTestnet,
Pangolin: chainPangolin,
'Pangolin Parachain': chainPangolin,
Pangoro: chainPangoro,
Parallel: chainParallel,
'Parallel Heiko': chainHeiko,
'Parami PC2': chainParami,
Phala: chainPhala,
PHOENIX: chainPhoenix,
Picasso: chainPicasso,
'Pichiu Testnet': chainPichiu,
'Pioneer Network': chainBitCountryPioneer,
PolkaBTC: chainInterbtc,
'Polkadex Testnet': chainPolkadex,
Polkadot: chainPolkadot,
'Polkadot CC1': chainPolkadot,
PolkaSmith: chainPolkaSmith,
'Pontem Testnet': chainPontem,
'Prism PC1': chainPrism,
'Prism Testnet': chainPrism,
'QUARTZ by UNIQUE': chainQuartz,
'ReAlis Network': nodeRealis,
RILT: chainKiltRilt,
'RioChain CC-1': chainRiochain,
'Riochain Staging': chainRiochain,
Robonomics: nodeRobonomics,
Rococo: chainRocco,
Sakura: chainSakura,
Shadow: chainShadow,
Sherpax: chainSherpax,
'Sherpax Testnet': chainSherpax,
Shiden: chainShiden,
'SkyeKiwi Testnet Alpha': chainSkyeKiwi,
'SORA Kusama': chainSora,
'SORA Rococo': chainSora,
Spanner: chainSpanner,
Standard: chainStandard,
'Standard Kusama Parachain': chainUnorthodox,
Statemine: specStatemine,
'Statemine Test': specStatemine,
Statemint: specStatemint,
'Statemint Test': specStatemint,
'Steam PC': chainRococoEave,
SubDAO: chainSubDAO,
'SubDAO PC1': chainSubDAO,
'SubDAO Staging': chainSubDAO,
subgame: nodeSubGame,
'SubGame Gamma': nodeSubGame,
'SubGame Staging': nodeSubGame,
Subspace: nodeSubspace,
Subzero: chainZero,
swapdex: chainSwapdex,
t0rn: chainT0rn,
Tick: chainRoccoTick,
'Tinkernet Rococo Testnet': chainTinkerRococo,
Track: chainRoccoTrack,
Trick: chainRoccoTrick,
'TrustBase PC1': chainTrustBase,
'Turing Network': chainTuring,
'Turing Network (Staging)': chainTuring,
'uni arts staging network': chainUniarts,
'UniArts Mainnet': chainUniarts,
'Unique Node': chainUnique,
UNIT: chainUnitv,
VirtoRococo: chainVirto,
'VLN PC': chainVln,
Wapex: chainTotem,
'Web3Games Plum': chainWeb3games,
Westend: chainWestend,
Westlake: chainWestlake,
Westmint: specWestmint,
'Westmint Test': specWestmint,
Whala: chainWhala,
WILT: chainKilt,
'zcloak poc1': nodeZCloak,
'Zenlink PC1': chainZenlink,
'ZERO.IO': chainZero
}).reduce<Record<string, string>>((colors, [chain, color]) => ({
...colors,
[sanitize(chain)]: color
}), {});
// Alphabetical overrides based on the actual software node type
// NOTE: This is as retrieved via the system.name RPC
export const nodeColors = Object.entries({
'Ajuna Node': nodeAjuna,
'Apron Node': nodeApron,
Astar: nodeAstar,
'Automata ContextFree Node': nodeAutomataContextFree,
'Automata Node': nodeAutomata,
'Bajun Node': nodeBajun,
Basilisk: nodeBasilisk,
'Bifrost Node': nodeBifrost,
'Bifrost Stage Testnet': nodeBifrost,
'Bit.Country Node': nodeBitCountry,
centrifuge: nodeCentrifuge,
'centrifuge chain': nodeCentrifuge,
'Centrifuge Chain Node': nodeCentrifuge,
'CESS Testnet': nodeCESS,
'Circuit Collator': chainT0rn,
Coinversation: nodeCoinversation,
'Competitors Club': nodeCompetitorsClub,
'Crown Sterling': nodeCrownSterling,
'DataHighway Spreehafen Rococo Parachain Testnet': chainRoccoDataHighway,
'DataHighway Tanganika Kusama Parachain': chainKusamaDataHighway,
'Dora Factory': chainDorafactory,
'DOTMog Node': nodeDotMog,
'edgeware node': nodeEdgeware,
Efinity: nodeEfinity,
'Encointer collator': nodeEncointer,
'Encointer Node noTEE': nodeEncointer,
'Fantour Development': nodeFantour,
Galital: nodeGalital,
'Galital Parachain Collator': nodeGalital,
'GamePower Node': nodeGamePower,
GEEK: nodeGeek,
'GM Collator': chainGM,
'Imbue Parachain Collator': nodeImbue,
'Integritee Collator': nodeIntegritee,
'Integritee Node': nodeIntegritee,
'InvArch Brainstorm Node': chainBrainstorm,
'InvArch Tinkernet Node': chainTinker,
IpseTestnet: nodeIpse,
'Jaz Node': nodeJaz,
'Joystream Node': nodeJoystream,
Kabocha: nodeKabocha,
KICO: chainKico,
'Klug Dossier Node': nodeKlug,
'Konomi Collator': nodeKonomi,
'Kpron Collator': nodeKpron,
kusari: nodeKusari,
'Kylin Parachain Collator': nodeKylin,
'Listen Network': chainListen,
'Litentry node': nodeLitentry,
'logion Collator': chainLogion,
'Logion Node': chainLogion,
'Manta Collator': nodeManta,
'Manta Node': nodeManta,
MathChain: nodeMathChain,
'MD5 Network': nodeMd5,
'Moonsama Development': chainMoonsama,
'mybank.network node': nodeMybank,
Myriad: chainMyriad,
'NFTMart Staging': nodeNFTMart,
'NFTMart Testnet': nodeNFTMart,
'nodle chain node': nodeNodle,
OmniBTC: nodeOmniBTC,
'Opal Node': nodeOpal,
'Opportunity Standalone Testnet': nodeOpportunity,
Pangolin: nodePangolin,
'Pangolin Parachain': nodePangolin,
Pangoro: nodePangoro,
Parallel: nodeParallel,
'Parallel Heiko': nodeHeiko,
'Parami Collator': nodeParami,
'Patract Node': nodeJupiter,
'Pichiu Parachain Collator': nodePichiu,
'Polkadex Node': nodePolkadex,
'Polymesh Node': nodePolymesh,
'Pontem Node': nodePontem,
'Prism Collator': nodePrism,
'Prism Node': nodePrism,
'ReAlis Network': nodeRealis,
'Rio Defi Chain Node': nodeRiochain,
'Riochain Staging': nodeRiochain,
'Shiden Collator': chainShiden,
SORA: nodeSora,
'Stafi node': nodeStafi,
'Statemine Collator': specStatemint,
'Statemint Collator': specStatemint,
SubDAO: nodeSubDAO,
'SubDAO Collator': nodeSubDAO,
'SubDAO Staging': nodeSubDAO,
subgame: nodeSubGame,
'SubGame Gamma': nodeSubGame,
'SubGame Staging': nodeSubGame,
'Subsocial Collator': nodeSubsocialX,
'subsocial node': nodeSubsocial,
Subspace: nodeSubspace,
'subzero node': nodeZero,
swapdex: nodeSwapdex,
'Ternoa Node': nodeTernoa,
'uni arts node': nodeUniarts,
'UniArts Node': nodeUniarts,
'Unique Node': nodeUnique,
'Web3Games Node': nodeWeb3games,
Westlake: nodeWestlake,
'Westmint Collator': specWestmint,
'zcloak node': nodeZCloak,
'Zeitgeist Collator': nodeZeitgeist,
'Zeitgeist Node': nodeZeitgeist,
'Zenlink Collator': nodeZenlink
}).reduce<Record<string, string>>((colors, [node, color]) => ({
...colors,
[sanitize(node)]: color
}), {});
// Alphabetical overrides based on the actual software node type
// NOTE: This is as retrieved via the system.name RPC
export const specColors = Object.entries({
shell: specShell,
statemine: specStatemine,
statemint: specStatemint,
westmint: specWestmint
}).reduce<Record<string, string>>((colors, [spec, color]) => ({
...colors,
[sanitize(spec)]: color
}), {});