Skip to content

Commit 4fb499c

Browse files
authored
Merge pull request #4 from ckb-cell/feat/btc-signet
feat: Support BTC Signet network
2 parents 59cd19d + afceaa9 commit 4fb499c

File tree

4 files changed

+54
-26
lines changed

4 files changed

+54
-26
lines changed

.github/workflows/update.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
1-
name: Update CellDeps Every 2 Minutes
1+
name: Update CellDeps Every 30 Minutes
22

33
on:
44
schedule:
5-
- cron: '*/2 * * * *' # Run every 2 minutes
5+
- cron: '*/30 * * * *' # Run every 30 minutes
66

77
jobs:
88
Update:

deployment/cell-deps.json

Lines changed: 18 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,32 +1,46 @@
11
{
22
"rgbpp": {
3+
"mainnet": {
4+
"outPoint": {
5+
"index": "0x0",
6+
"txHash": "0x04c5c3e69f1aa6ee27fb9de3d15a81704e387ab3b453965adbe0b6ca343c6f41"
7+
},
8+
"depType": "code"
9+
},
310
"testnet": {
411
"outPoint": {
512
"index": "0x0",
613
"txHash": "0xf1de59e973b85791ec32debbba08dff80c63197e895eb95d67fc1e9f6b413e00"
714
},
815
"depType": "code"
916
},
10-
"mainnet": {
17+
"signet": {
1118
"outPoint": {
1219
"index": "0x0",
13-
"txHash": "0x04c5c3e69f1aa6ee27fb9de3d15a81704e387ab3b453965adbe0b6ca343c6f41"
20+
"txHash": "0x61efdeddbaa0bb4132c0eb174b3e8002ff5ec430f61ba46f30768d683c516eec"
1421
},
1522
"depType": "code"
1623
}
1724
},
1825
"btcTime": {
26+
"mainnet": {
27+
"outPoint": {
28+
"index": "0x0",
29+
"txHash": "0x6257bf4297ee75fcebe2654d8c5f8d93bc9fc1b3dc62b8cef54ffe166162e996"
30+
},
31+
"depType": "code"
32+
},
1933
"testnet": {
2034
"outPoint": {
2135
"index": "0x0",
2236
"txHash": "0xde0f87878a97500f549418e5d46d2f7704c565a262aa17036c9c1c13ad638529"
2337
},
2438
"depType": "code"
2539
},
26-
"mainnet": {
40+
"signet": {
2741
"outPoint": {
2842
"index": "0x0",
29-
"txHash": "0x6257bf4297ee75fcebe2654d8c5f8d93bc9fc1b3dc62b8cef54ffe166162e996"
43+
"txHash": "0x5364b3535965e9eac9a35dd7af8e9e45a61d30a16e115923c032f80b28783e21"
3044
},
3145
"depType": "code"
3246
}

src/index.ts

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,12 @@ interface CellDepsObject {
77
rgbpp: {
88
mainnet: CKBComponents.CellDep;
99
testnet: CKBComponents.CellDep;
10+
signet: CKBComponents.CellDep;
1011
};
1112
btcTime: {
1213
mainnet: CKBComponents.CellDep;
1314
testnet: CKBComponents.CellDep;
15+
signet: CKBComponents.CellDep;
1416
};
1517
xudt: {
1618
testnet: CKBComponents.CellDep;
@@ -32,12 +34,14 @@ const fetchAndUpdateCellDeps = async () => {
3234

3335
const cellDepsObj: CellDepsObject = {
3436
rgbpp: {
35-
testnet: await fetchRgbppCellDep(testnetCollector, false),
36-
mainnet: await fetchRgbppCellDep(mainnetCollector, true),
37+
mainnet: await fetchRgbppCellDep(mainnetCollector, 'Mainnet'),
38+
testnet: await fetchRgbppCellDep(testnetCollector, 'Testnet3'),
39+
signet: await fetchRgbppCellDep(testnetCollector, 'Signet'),
3740
},
3841
btcTime: {
39-
testnet: await fetchBtcTimeCellDep(testnetCollector, false),
40-
mainnet: await fetchBtcTimeCellDep(mainnetCollector, true),
42+
mainnet: await fetchBtcTimeCellDep(mainnetCollector, 'Mainnet'),
43+
testnet: await fetchBtcTimeCellDep(testnetCollector, 'Testnet3'),
44+
signet: await fetchBtcTimeCellDep(testnetCollector, 'Signet'),
4145
},
4246
xudt: {
4347
testnet: await fetchXudtTestnetCellDep(testnetCollector),

src/typeid.ts

Lines changed: 26 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1,30 +1,40 @@
11
import { Collector } from '@rgbpp-sdk/ckb';
22

3+
export type BTCNetworkType = 'Mainnet' | 'Testnet3' | 'Signet'
4+
35
const TYPEID_DEPLOYMENT_TYPE_SCRIPT: CKBComponents.Script = {
46
codeHash: '0x00000000000000000000000000000000000000000000000000545950455f4944',
57
hashType: 'type',
68
args: '0x',
79
};
810

9-
const rgbppDeploymentTypeScript = (isMainnet: boolean): CKBComponents.Script => {
11+
const rgbppDeploymentTypeScript = (btcNetworkType: BTCNetworkType): CKBComponents.Script => {
12+
// Get the mainnet type script of the output(https://explorer.nervos.org/transaction/0x04c5c3e69f1aa6ee27fb9de3d15a81704e387ab3b453965adbe0b6ca343c6f41#0)
13+
let args = '0x68ad3d9e0bb9ea841a5d1fcd600137bd3f45401e759e353121f26cd0d981452f'
14+
if (btcNetworkType === 'Testnet3') {
15+
// Get the testnet type script of the output(https://pudge.explorer.nervos.org/transaction/0xa3bc8441df149def76cfe15fec7b1e51d949548bc27fb7a75e9d4b3ef1c12c7f#0)
16+
args = '0xa3bc8441df149def76cfe15fec7b1e51d949548bc27fb7a75e9d4b3ef1c12c7f'
17+
} else if (btcNetworkType === 'Signet') {
18+
args = '0xb69fe766ce3b7014a2a78ad1fe688d82f1679325805371d2856c3b8d18ebfa5a'
19+
}
1020
return {
1121
...TYPEID_DEPLOYMENT_TYPE_SCRIPT,
12-
// Get the testnet type script of the output(https://pudge.explorer.nervos.org/transaction/0xa3bc8441df149def76cfe15fec7b1e51d949548bc27fb7a75e9d4b3ef1c12c7f#0)
13-
// Get the mainnet type script of the output(https://explorer.nervos.org/transaction/0x04c5c3e69f1aa6ee27fb9de3d15a81704e387ab3b453965adbe0b6ca343c6f41#0)
14-
args: isMainnet
15-
? '0x68ad3d9e0bb9ea841a5d1fcd600137bd3f45401e759e353121f26cd0d981452f'
16-
: '0xa3bc8441df149def76cfe15fec7b1e51d949548bc27fb7a75e9d4b3ef1c12c7f',
22+
args
1723
};
1824
};
1925

20-
const btcTimeDeploymentTypeScript = (isMainnet: boolean): CKBComponents.Script => {
26+
const btcTimeDeploymentTypeScript = (btcNetworkType: BTCNetworkType): CKBComponents.Script => {
27+
// Get the mainnet type script of the output(https://explorer.nervos.org/transaction/0x6257bf4297ee75fcebe2654d8c5f8d93bc9fc1b3dc62b8cef54ffe166162e996#0)
28+
let args = '0x44b8253ae18e913a2845b0d548eaf6b3ba1099ed26835888932a754194028a8a'
29+
if (btcNetworkType === 'Testnet3') {
30+
// Get the testnet type script of the output(https://pudge.explorer.nervos.org/transaction/0xde0f87878a97500f549418e5d46d2f7704c565a262aa17036c9c1c13ad638529#0)
31+
args = '0xc9828585e6dd2afacb9e6e8ca7deb0975121aabee5c7983178a45509ffaec984'
32+
} else if (btcNetworkType === 'Signet') {
33+
args = '0x32fc8c70a6451a1439fd91e214bba093f9cdd9276bc4ab223430dab5940aff92'
34+
}
2135
return {
2236
...TYPEID_DEPLOYMENT_TYPE_SCRIPT,
23-
// Get the testnet type script of the output(https://pudge.explorer.nervos.org/transaction/0xde0f87878a97500f549418e5d46d2f7704c565a262aa17036c9c1c13ad638529#0)
24-
// Get the mainnet type script of the output(https://explorer.nervos.org/transaction/0x6257bf4297ee75fcebe2654d8c5f8d93bc9fc1b3dc62b8cef54ffe166162e996#0)
25-
args: isMainnet
26-
? '0x44b8253ae18e913a2845b0d548eaf6b3ba1099ed26835888932a754194028a8a'
27-
: '0xc9828585e6dd2afacb9e6e8ca7deb0975121aabee5c7983178a45509ffaec984',
37+
args
2838
};
2939
};
3040

@@ -44,8 +54,8 @@ const xudtTestnetDeploymentTypeScript = (): CKBComponents.Script => {
4454
};
4555
};
4656

47-
export const fetchRgbppCellDep = async (collector: Collector, isMainnet: boolean): Promise<CKBComponents.CellDep> => {
48-
const [cell] = await collector.getCells({ type: rgbppDeploymentTypeScript(isMainnet) });
57+
export const fetchRgbppCellDep = async (collector: Collector, btcNetworkType: BTCNetworkType): Promise<CKBComponents.CellDep> => {
58+
const [cell] = await collector.getCells({ type: rgbppDeploymentTypeScript(btcNetworkType) });
4959
if (!cell) {
5060
throw new Error('No rgbpp lock deployment live cell found');
5161
}
@@ -56,8 +66,8 @@ export const fetchRgbppCellDep = async (collector: Collector, isMainnet: boolean
5666
return rgbppLockDep;
5767
};
5868

59-
export const fetchBtcTimeCellDep = async (collector: Collector, isMainnet: boolean): Promise<CKBComponents.CellDep> => {
60-
const [cell] = await collector.getCells({ type: btcTimeDeploymentTypeScript(isMainnet) });
69+
export const fetchBtcTimeCellDep = async (collector: Collector, btcNetworkType: BTCNetworkType): Promise<CKBComponents.CellDep> => {
70+
const [cell] = await collector.getCells({ type: btcTimeDeploymentTypeScript(btcNetworkType) });
6171
if (!cell) {
6272
throw new Error('No BTC time lock deployment live cell found');
6373
}

0 commit comments

Comments
 (0)