@magic-ext/bitcoin 28.8.0 → 29.0.0-canary.1107.29954805103.0
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.
- package/dist/cjs/index.js +1 -1
- package/dist/cjs/index.js.map +4 -4
- package/dist/es/index.js +1 -1
- package/dist/es/index.js.map +4 -4
- package/dist/es/index.mjs +1 -1
- package/dist/es/index.mjs.map +4 -4
- package/dist/extension.js +1 -1
- package/dist/types/index.d.ts +9 -2
- package/dist/types/types.d.ts +22 -0
- package/package.json +2 -2
package/dist/cjs/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var
|
|
1
|
+
"use strict";var a=Object.defineProperty;var u=Object.getOwnPropertyDescriptor;var p=Object.getOwnPropertyNames;var g=Object.prototype.hasOwnProperty;var T=(t,n)=>{for(var i in n)a(t,i,{get:n[i],enumerable:!0})},B=(t,n,i,o)=>{if(n&&typeof n=="object"||typeof n=="function")for(let r of p(n))!g.call(t,r)&&r!==i&&a(t,r,{get:()=>n[r],enumerable:!(o=u(n,r))||o.enumerable});return t};var d=t=>B(a({},"__esModule",{value:!0}),t);var m={};T(m,{BitcoinExtension:()=>s,BitcoinPayloadMethod:()=>c});module.exports=d(m);var e=require("@magic-sdk/provider");var c=(n=>(n.BitcoinSignTransaction="btc_signTransaction",n))(c||{});var s=class extends e.MultichainExtension{constructor(i){super({rpcUrl:i.rpcUrl,chainType:"BITCOIN",options:{network:i.network}});this.bitcoinConfig=i}name="bitcoin";async signTransaction(i,o){return this.request(this.utils.createJsonRpcRequestPayload("btc_signTransaction",[{inputs:i,outputs:o}]))}};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { MultichainExtension } from '@magic-sdk/provider';\nimport {
|
|
5
|
-
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,IAAA,eAAAC,
|
|
6
|
-
"names": ["index_exports", "__export", "BitcoinExtension", "__toCommonJS", "import_provider", "BitcoinExtension", "bitcoinConfig", "
|
|
3
|
+
"sources": ["../../src/index.ts", "../../src/types.ts"],
|
|
4
|
+
"sourcesContent": ["import { MultichainExtension } from '@magic-sdk/provider';\nimport {\n BitcoinConfig,\n BitcoinPayloadMethod,\n BitcoinSignedTransaction,\n BitcoinTransactionInput,\n BitcoinTransactionOutput,\n} from './types';\n\nexport * from './types';\n\nexport class BitcoinExtension extends MultichainExtension<'bitcoin'> {\n name = 'bitcoin' as const;\n\n constructor(public bitcoinConfig: BitcoinConfig) {\n super({\n rpcUrl: bitcoinConfig.rpcUrl,\n chainType: 'BITCOIN',\n options: {\n network: bitcoinConfig.network,\n },\n });\n }\n\n /**\n * Signs a Bitcoin transaction in the TEE. The caller supplies fully-formed\n * inputs (the UTXOs to spend, each with its value) and outputs; coin selection,\n * fee, and change are the caller's responsibility. Resolves with the\n * broadcast-ready signed transaction.\n */\n public async signTransaction(\n inputs: BitcoinTransactionInput[],\n outputs: BitcoinTransactionOutput[],\n ): Promise<BitcoinSignedTransaction> {\n return this.request<BitcoinSignedTransaction>(\n this.utils.createJsonRpcRequestPayload(BitcoinPayloadMethod.BitcoinSignTransaction, [{ inputs, outputs }]),\n );\n }\n}\n", "export interface BitcoinConfig {\n rpcUrl: string;\n network: string;\n}\n\nexport enum BitcoinPayloadMethod {\n BitcoinSignTransaction = 'btc_signTransaction',\n}\n\n/**\n * A UTXO to spend. `value` is in BTC (not satoshis) and is required: the enclave\n * needs each input's value to compute its segwit (BIP143) sighash. `tx_num` is\n * the output index (vout) of the UTXO within its source transaction.\n */\nexport interface BitcoinTransactionInput {\n txid: string;\n tx_num: number;\n value: number;\n address?: string;\n}\n\n/** A transaction output. `value` is in BTC (not satoshis). */\nexport interface BitcoinTransactionOutput {\n address: string;\n value: number;\n}\n\nexport interface BitcoinSignedTransaction {\n /** The broadcast-ready, fully-signed transaction as hex. */\n signedTransaction: string;\n /** The transaction hash (txid). */\n transactionHash: string;\n}\n"],
|
|
5
|
+
"mappings": "yaAAA,IAAAA,EAAA,GAAAC,EAAAD,EAAA,sBAAAE,EAAA,yBAAAC,IAAA,eAAAC,EAAAJ,GAAA,IAAAK,EAAoC,+BCK7B,IAAKC,OACVA,EAAA,uBAAyB,sBADfA,OAAA,IDML,IAAMC,EAAN,cAA+B,qBAA+B,CAGnE,YAAmBC,EAA8B,CAC/C,MAAM,CACJ,OAAQA,EAAc,OACtB,UAAW,UACX,QAAS,CACP,QAASA,EAAc,OACzB,CACF,CAAC,EAPgB,mBAAAA,CAQnB,CAVA,KAAO,UAkBP,MAAa,gBACXC,EACAC,EACmC,CACnC,OAAO,KAAK,QACV,KAAK,MAAM,kDAAyE,CAAC,CAAE,OAAAD,EAAQ,QAAAC,CAAQ,CAAC,CAAC,CAC3G,CACF,CACF",
|
|
6
|
+
"names": ["index_exports", "__export", "BitcoinExtension", "BitcoinPayloadMethod", "__toCommonJS", "import_provider", "BitcoinPayloadMethod", "BitcoinExtension", "bitcoinConfig", "inputs", "outputs"]
|
|
7
7
|
}
|
package/dist/es/index.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{MultichainExtension as
|
|
1
|
+
import{MultichainExtension as a}from"@magic-sdk/provider";var t=(i=>(i.BitcoinSignTransaction="btc_signTransaction",i))(t||{});var r=class extends a{constructor(n){super({rpcUrl:n.rpcUrl,chainType:"BITCOIN",options:{network:n.network}});this.bitcoinConfig=n}name="bitcoin";async signTransaction(n,o){return this.request(this.utils.createJsonRpcRequestPayload("btc_signTransaction",[{inputs:n,outputs:o}]))}};export{r as BitcoinExtension,t as BitcoinPayloadMethod};
|
|
2
2
|
//# sourceMappingURL=index.js.map
|
package/dist/es/index.js.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { MultichainExtension } from '@magic-sdk/provider';\nimport {
|
|
5
|
-
"mappings": "AAAA,OAAS,uBAAAA,MAA2B,
|
|
6
|
-
"names": ["MultichainExtension", "BitcoinExtension", "MultichainExtension", "bitcoinConfig", "
|
|
3
|
+
"sources": ["../../src/index.ts", "../../src/types.ts"],
|
|
4
|
+
"sourcesContent": ["import { MultichainExtension } from '@magic-sdk/provider';\nimport {\n BitcoinConfig,\n BitcoinPayloadMethod,\n BitcoinSignedTransaction,\n BitcoinTransactionInput,\n BitcoinTransactionOutput,\n} from './types';\n\nexport * from './types';\n\nexport class BitcoinExtension extends MultichainExtension<'bitcoin'> {\n name = 'bitcoin' as const;\n\n constructor(public bitcoinConfig: BitcoinConfig) {\n super({\n rpcUrl: bitcoinConfig.rpcUrl,\n chainType: 'BITCOIN',\n options: {\n network: bitcoinConfig.network,\n },\n });\n }\n\n /**\n * Signs a Bitcoin transaction in the TEE. The caller supplies fully-formed\n * inputs (the UTXOs to spend, each with its value) and outputs; coin selection,\n * fee, and change are the caller's responsibility. Resolves with the\n * broadcast-ready signed transaction.\n */\n public async signTransaction(\n inputs: BitcoinTransactionInput[],\n outputs: BitcoinTransactionOutput[],\n ): Promise<BitcoinSignedTransaction> {\n return this.request<BitcoinSignedTransaction>(\n this.utils.createJsonRpcRequestPayload(BitcoinPayloadMethod.BitcoinSignTransaction, [{ inputs, outputs }]),\n );\n }\n}\n", "export interface BitcoinConfig {\n rpcUrl: string;\n network: string;\n}\n\nexport enum BitcoinPayloadMethod {\n BitcoinSignTransaction = 'btc_signTransaction',\n}\n\n/**\n * A UTXO to spend. `value` is in BTC (not satoshis) and is required: the enclave\n * needs each input's value to compute its segwit (BIP143) sighash. `tx_num` is\n * the output index (vout) of the UTXO within its source transaction.\n */\nexport interface BitcoinTransactionInput {\n txid: string;\n tx_num: number;\n value: number;\n address?: string;\n}\n\n/** A transaction output. `value` is in BTC (not satoshis). */\nexport interface BitcoinTransactionOutput {\n address: string;\n value: number;\n}\n\nexport interface BitcoinSignedTransaction {\n /** The broadcast-ready, fully-signed transaction as hex. */\n signedTransaction: string;\n /** The transaction hash (txid). */\n transactionHash: string;\n}\n"],
|
|
5
|
+
"mappings": "AAAA,OAAS,uBAAAA,MAA2B,sBCK7B,IAAKC,OACVA,EAAA,uBAAyB,sBADfA,OAAA,IDML,IAAMC,EAAN,cAA+BC,CAA+B,CAGnE,YAAmBC,EAA8B,CAC/C,MAAM,CACJ,OAAQA,EAAc,OACtB,UAAW,UACX,QAAS,CACP,QAASA,EAAc,OACzB,CACF,CAAC,EAPgB,mBAAAA,CAQnB,CAVA,KAAO,UAkBP,MAAa,gBACXC,EACAC,EACmC,CACnC,OAAO,KAAK,QACV,KAAK,MAAM,kDAAyE,CAAC,CAAE,OAAAD,EAAQ,QAAAC,CAAQ,CAAC,CAAC,CAC3G,CACF,CACF",
|
|
6
|
+
"names": ["MultichainExtension", "BitcoinPayloadMethod", "BitcoinExtension", "MultichainExtension", "bitcoinConfig", "inputs", "outputs"]
|
|
7
7
|
}
|
package/dist/es/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{MultichainExtension as
|
|
1
|
+
import{MultichainExtension as a}from"@magic-sdk/provider";var t=(i=>(i.BitcoinSignTransaction="btc_signTransaction",i))(t||{});var r=class extends a{constructor(n){super({rpcUrl:n.rpcUrl,chainType:"BITCOIN",options:{network:n.network}});this.bitcoinConfig=n}name="bitcoin";async signTransaction(n,o){return this.request(this.utils.createJsonRpcRequestPayload("btc_signTransaction",[{inputs:n,outputs:o}]))}};export{r as BitcoinExtension,t as BitcoinPayloadMethod};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
package/dist/es/index.mjs.map
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"version": 3,
|
|
3
|
-
"sources": ["../../src/index.ts"],
|
|
4
|
-
"sourcesContent": ["import { MultichainExtension } from '@magic-sdk/provider';\nimport {
|
|
5
|
-
"mappings": "AAAA,OAAS,uBAAAA,MAA2B,
|
|
6
|
-
"names": ["MultichainExtension", "BitcoinExtension", "MultichainExtension", "bitcoinConfig", "
|
|
3
|
+
"sources": ["../../src/index.ts", "../../src/types.ts"],
|
|
4
|
+
"sourcesContent": ["import { MultichainExtension } from '@magic-sdk/provider';\nimport {\n BitcoinConfig,\n BitcoinPayloadMethod,\n BitcoinSignedTransaction,\n BitcoinTransactionInput,\n BitcoinTransactionOutput,\n} from './types';\n\nexport * from './types';\n\nexport class BitcoinExtension extends MultichainExtension<'bitcoin'> {\n name = 'bitcoin' as const;\n\n constructor(public bitcoinConfig: BitcoinConfig) {\n super({\n rpcUrl: bitcoinConfig.rpcUrl,\n chainType: 'BITCOIN',\n options: {\n network: bitcoinConfig.network,\n },\n });\n }\n\n /**\n * Signs a Bitcoin transaction in the TEE. The caller supplies fully-formed\n * inputs (the UTXOs to spend, each with its value) and outputs; coin selection,\n * fee, and change are the caller's responsibility. Resolves with the\n * broadcast-ready signed transaction.\n */\n public async signTransaction(\n inputs: BitcoinTransactionInput[],\n outputs: BitcoinTransactionOutput[],\n ): Promise<BitcoinSignedTransaction> {\n return this.request<BitcoinSignedTransaction>(\n this.utils.createJsonRpcRequestPayload(BitcoinPayloadMethod.BitcoinSignTransaction, [{ inputs, outputs }]),\n );\n }\n}\n", "export interface BitcoinConfig {\n rpcUrl: string;\n network: string;\n}\n\nexport enum BitcoinPayloadMethod {\n BitcoinSignTransaction = 'btc_signTransaction',\n}\n\n/**\n * A UTXO to spend. `value` is in BTC (not satoshis) and is required: the enclave\n * needs each input's value to compute its segwit (BIP143) sighash. `tx_num` is\n * the output index (vout) of the UTXO within its source transaction.\n */\nexport interface BitcoinTransactionInput {\n txid: string;\n tx_num: number;\n value: number;\n address?: string;\n}\n\n/** A transaction output. `value` is in BTC (not satoshis). */\nexport interface BitcoinTransactionOutput {\n address: string;\n value: number;\n}\n\nexport interface BitcoinSignedTransaction {\n /** The broadcast-ready, fully-signed transaction as hex. */\n signedTransaction: string;\n /** The transaction hash (txid). */\n transactionHash: string;\n}\n"],
|
|
5
|
+
"mappings": "AAAA,OAAS,uBAAAA,MAA2B,sBCK7B,IAAKC,OACVA,EAAA,uBAAyB,sBADfA,OAAA,IDML,IAAMC,EAAN,cAA+BC,CAA+B,CAGnE,YAAmBC,EAA8B,CAC/C,MAAM,CACJ,OAAQA,EAAc,OACtB,UAAW,UACX,QAAS,CACP,QAASA,EAAc,OACzB,CACF,CAAC,EAPgB,mBAAAA,CAQnB,CAVA,KAAO,UAkBP,MAAa,gBACXC,EACAC,EACmC,CACnC,OAAO,KAAK,QACV,KAAK,MAAM,kDAAyE,CAAC,CAAE,OAAAD,EAAQ,QAAAC,CAAQ,CAAC,CAAC,CAC3G,CACF,CACF",
|
|
6
|
+
"names": ["MultichainExtension", "BitcoinPayloadMethod", "BitcoinExtension", "MultichainExtension", "bitcoinConfig", "inputs", "outputs"]
|
|
7
7
|
}
|
package/dist/extension.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";var MagicBitcoinExtension=(()=>{var g=Object.create;var
|
|
1
|
+
"use strict";var MagicBitcoinExtension=(()=>{var g=Object.create;var a=Object.defineProperty;var T=Object.getOwnPropertyDescriptor;var B=Object.getOwnPropertyNames;var m=Object.getPrototypeOf,d=Object.prototype.hasOwnProperty;var x=(n,i)=>()=>(i||n((i={exports:{}}).exports,i),i.exports),l=(n,i)=>{for(var t in i)a(n,t,{get:i[t],enumerable:!0})},s=(n,i,t,o)=>{if(i&&typeof i=="object"||typeof i=="function")for(let r of B(i))!d.call(n,r)&&r!==t&&a(n,r,{get:()=>i[r],enumerable:!(o=T(i,r))||o.enumerable});return n};var f=(n,i,t)=>(t=n!=null?g(m(n)):{},s(i||!n||!n.__esModule?a(t,"default",{value:n,enumerable:!0}):t,n)),b=n=>s(a({},"__esModule",{value:!0}),n);var p=x((O,e)=>{"use strict";e.exports=Magic});var h={};l(h,{default:()=>S});var u=f(p());var c=class extends u.MultichainExtension{constructor(t){super({rpcUrl:t.rpcUrl,chainType:"BITCOIN",options:{network:t.network}});this.bitcoinConfig=t}name="bitcoin";async signTransaction(t,o){return this.request(this.utils.createJsonRpcRequestPayload("btc_signTransaction",[{inputs:t,outputs:o}]))}};var S=c;return b(h);})();
|
|
2
2
|
if (MagicBitcoinExtension && MagicBitcoinExtension.default != null) { MagicBitcoinExtension = Object.assign(MagicBitcoinExtension.default, MagicBitcoinExtension); delete MagicBitcoinExtension.default; }
|
package/dist/types/index.d.ts
CHANGED
|
@@ -1,8 +1,15 @@
|
|
|
1
1
|
import { MultichainExtension } from '@magic-sdk/provider';
|
|
2
|
-
import { BitcoinConfig } from './types';
|
|
2
|
+
import { BitcoinConfig, BitcoinSignedTransaction, BitcoinTransactionInput, BitcoinTransactionOutput } from './types';
|
|
3
|
+
export * from './types';
|
|
3
4
|
export declare class BitcoinExtension extends MultichainExtension<'bitcoin'> {
|
|
4
5
|
bitcoinConfig: BitcoinConfig;
|
|
5
6
|
name: "bitcoin";
|
|
6
7
|
constructor(bitcoinConfig: BitcoinConfig);
|
|
7
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Signs a Bitcoin transaction in the TEE. The caller supplies fully-formed
|
|
10
|
+
* inputs (the UTXOs to spend, each with its value) and outputs; coin selection,
|
|
11
|
+
* fee, and change are the caller's responsibility. Resolves with the
|
|
12
|
+
* broadcast-ready signed transaction.
|
|
13
|
+
*/
|
|
14
|
+
signTransaction(inputs: BitcoinTransactionInput[], outputs: BitcoinTransactionOutput[]): Promise<BitcoinSignedTransaction>;
|
|
8
15
|
}
|
package/dist/types/types.d.ts
CHANGED
|
@@ -5,3 +5,25 @@ export interface BitcoinConfig {
|
|
|
5
5
|
export declare enum BitcoinPayloadMethod {
|
|
6
6
|
BitcoinSignTransaction = "btc_signTransaction"
|
|
7
7
|
}
|
|
8
|
+
/**
|
|
9
|
+
* A UTXO to spend. `value` is in BTC (not satoshis) and is required: the enclave
|
|
10
|
+
* needs each input's value to compute its segwit (BIP143) sighash. `tx_num` is
|
|
11
|
+
* the output index (vout) of the UTXO within its source transaction.
|
|
12
|
+
*/
|
|
13
|
+
export interface BitcoinTransactionInput {
|
|
14
|
+
txid: string;
|
|
15
|
+
tx_num: number;
|
|
16
|
+
value: number;
|
|
17
|
+
address?: string;
|
|
18
|
+
}
|
|
19
|
+
/** A transaction output. `value` is in BTC (not satoshis). */
|
|
20
|
+
export interface BitcoinTransactionOutput {
|
|
21
|
+
address: string;
|
|
22
|
+
value: number;
|
|
23
|
+
}
|
|
24
|
+
export interface BitcoinSignedTransaction {
|
|
25
|
+
/** The broadcast-ready, fully-signed transaction as hex. */
|
|
26
|
+
signedTransaction: string;
|
|
27
|
+
/** The transaction hash (txid). */
|
|
28
|
+
transactionHash: string;
|
|
29
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@magic-ext/bitcoin",
|
|
3
|
-
"version": "
|
|
3
|
+
"version": "29.0.0-canary.1107.29954805103.0",
|
|
4
4
|
"description": "magic bitcoin extension",
|
|
5
5
|
"author": "Magic <team@magic.link> (https://magic.link/)",
|
|
6
6
|
"license": "MIT",
|
|
@@ -30,5 +30,5 @@
|
|
|
30
30
|
"devDependencies": {
|
|
31
31
|
"@magic-sdk/provider": "^33.9.0"
|
|
32
32
|
},
|
|
33
|
-
"gitHead": "
|
|
33
|
+
"gitHead": "721abe11d15c060608597ed7162964299a3ddc35"
|
|
34
34
|
}
|