@stacks/network 6.14.1-pr.31 → 6.14.1-pr.33

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.
@@ -11,5 +11,11 @@ export declare enum TransactionVersion {
11
11
  Mainnet = 0,
12
12
  Testnet = 128
13
13
  }
14
+ export declare enum AddressVersion {
15
+ MainnetSingleSig = 22,
16
+ MainnetMultiSig = 20,
17
+ TestnetSingleSig = 26,
18
+ TestnetMultiSig = 21
19
+ }
14
20
  export declare const DEFAULT_TRANSACTION_VERSION = TransactionVersion.Mainnet;
15
21
  export declare function whenTransactionVersion(transactionVersion: TransactionVersion): <T>(map: Record<TransactionVersion, T>) => T;
package/dist/constants.js CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.whenTransactionVersion = exports.DEFAULT_TRANSACTION_VERSION = exports.TransactionVersion = exports.DEFAULT_CHAIN_ID = exports.PeerNetworkId = exports.ChainId = void 0;
3
+ exports.whenTransactionVersion = exports.DEFAULT_TRANSACTION_VERSION = exports.AddressVersion = exports.TransactionVersion = exports.DEFAULT_CHAIN_ID = exports.PeerNetworkId = exports.ChainId = void 0;
4
4
  var ChainId;
5
5
  (function (ChainId) {
6
6
  ChainId[ChainId["Mainnet"] = 1] = "Mainnet";
@@ -17,6 +17,13 @@ var TransactionVersion;
17
17
  TransactionVersion[TransactionVersion["Mainnet"] = 0] = "Mainnet";
18
18
  TransactionVersion[TransactionVersion["Testnet"] = 128] = "Testnet";
19
19
  })(TransactionVersion || (exports.TransactionVersion = TransactionVersion = {}));
20
+ var AddressVersion;
21
+ (function (AddressVersion) {
22
+ AddressVersion[AddressVersion["MainnetSingleSig"] = 22] = "MainnetSingleSig";
23
+ AddressVersion[AddressVersion["MainnetMultiSig"] = 20] = "MainnetMultiSig";
24
+ AddressVersion[AddressVersion["TestnetSingleSig"] = 26] = "TestnetSingleSig";
25
+ AddressVersion[AddressVersion["TestnetMultiSig"] = 21] = "TestnetMultiSig";
26
+ })(AddressVersion || (exports.AddressVersion = AddressVersion = {}));
20
27
  exports.DEFAULT_TRANSACTION_VERSION = TransactionVersion.Mainnet;
21
28
  function whenTransactionVersion(transactionVersion) {
22
29
  return (map) => map[transactionVersion];
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAIA,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,2CAAoB,CAAA;IACpB,oDAAoB,CAAA;AACtB,CAAC,EAHW,OAAO,uBAAP,OAAO,QAGlB;AAYD,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,+DAAoB,CAAA;IACpB,gEAAoB,CAAA;AACtB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAEY,QAAA,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;AAOhD,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,iEAAc,CAAA;IACd,mEAAc,CAAA;AAChB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAEY,QAAA,2BAA2B,GAAG,kBAAkB,CAAC,OAAO,CAAC;AAGtE,SAAgB,sBAAsB,CAAC,kBAAsC;IAC3E,OAAO,CAAI,GAAkC,EAAK,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAC/E,CAAC;AAFD,wDAEC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../src/constants.ts"],"names":[],"mappings":";;;AAIA,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,2CAAoB,CAAA;IACpB,oDAAoB,CAAA;AACtB,CAAC,EAHW,OAAO,uBAAP,OAAO,QAGlB;AAYD,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,+DAAoB,CAAA;IACpB,gEAAoB,CAAA;AACtB,CAAC,EAHW,aAAa,6BAAb,aAAa,QAGxB;AAEY,QAAA,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;AAOhD,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,iEAAc,CAAA;IACd,mEAAc,CAAA;AAChB,CAAC,EAHW,kBAAkB,kCAAlB,kBAAkB,QAG7B;AAQD,IAAY,cASX;AATD,WAAY,cAAc;IAExB,4EAAqB,CAAA;IAErB,0EAAoB,CAAA;IAEpB,4EAAqB,CAAA;IAErB,0EAAoB,CAAA;AACtB,CAAC,EATW,cAAc,8BAAd,cAAc,QASzB;AAEY,QAAA,2BAA2B,GAAG,kBAAkB,CAAC,OAAO,CAAC;AAGtE,SAAgB,sBAAsB,CAAC,kBAAsC;IAC3E,OAAO,CAAI,GAAkC,EAAK,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAC/E,CAAC;AAFD,wDAEC"}
@@ -11,5 +11,11 @@ export declare enum TransactionVersion {
11
11
  Mainnet = 0,
12
12
  Testnet = 128
13
13
  }
14
+ export declare enum AddressVersion {
15
+ MainnetSingleSig = 22,
16
+ MainnetMultiSig = 20,
17
+ TestnetSingleSig = 26,
18
+ TestnetMultiSig = 21
19
+ }
14
20
  export declare const DEFAULT_TRANSACTION_VERSION = TransactionVersion.Mainnet;
15
21
  export declare function whenTransactionVersion(transactionVersion: TransactionVersion): <T>(map: Record<TransactionVersion, T>) => T;
@@ -14,6 +14,13 @@ export var TransactionVersion;
14
14
  TransactionVersion[TransactionVersion["Mainnet"] = 0] = "Mainnet";
15
15
  TransactionVersion[TransactionVersion["Testnet"] = 128] = "Testnet";
16
16
  })(TransactionVersion || (TransactionVersion = {}));
17
+ export var AddressVersion;
18
+ (function (AddressVersion) {
19
+ AddressVersion[AddressVersion["MainnetSingleSig"] = 22] = "MainnetSingleSig";
20
+ AddressVersion[AddressVersion["MainnetMultiSig"] = 20] = "MainnetMultiSig";
21
+ AddressVersion[AddressVersion["TestnetSingleSig"] = 26] = "TestnetSingleSig";
22
+ AddressVersion[AddressVersion["TestnetMultiSig"] = 21] = "TestnetMultiSig";
23
+ })(AddressVersion || (AddressVersion = {}));
17
24
  export const DEFAULT_TRANSACTION_VERSION = TransactionVersion.Mainnet;
18
25
  export function whenTransactionVersion(transactionVersion) {
19
26
  return (map) => map[transactionVersion];
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,2CAAoB,CAAA;IACpB,oDAAoB,CAAA;AACtB,CAAC,EAHW,OAAO,KAAP,OAAO,QAGlB;AAYD,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,+DAAoB,CAAA;IACpB,gEAAoB,CAAA;AACtB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;AAOhD,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,iEAAc,CAAA;IACd,mEAAc,CAAA;AAChB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,kBAAkB,CAAC,OAAO,CAAC;AAGtE,MAAM,UAAU,sBAAsB,CAAC,kBAAsC;IAC3E,OAAO,CAAI,GAAkC,EAAK,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAC/E,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/constants.ts"],"names":[],"mappings":"AAIA,MAAM,CAAN,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,2CAAoB,CAAA;IACpB,oDAAoB,CAAA;AACtB,CAAC,EAHW,OAAO,KAAP,OAAO,QAGlB;AAYD,MAAM,CAAN,IAAY,aAGX;AAHD,WAAY,aAAa;IACvB,+DAAoB,CAAA;IACpB,gEAAoB,CAAA;AACtB,CAAC,EAHW,aAAa,KAAb,aAAa,QAGxB;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,OAAO,CAAC,OAAO,CAAC;AAOhD,MAAM,CAAN,IAAY,kBAGX;AAHD,WAAY,kBAAkB;IAC5B,iEAAc,CAAA;IACd,mEAAc,CAAA;AAChB,CAAC,EAHW,kBAAkB,KAAlB,kBAAkB,QAG7B;AAQD,MAAM,CAAN,IAAY,cASX;AATD,WAAY,cAAc;IAExB,4EAAqB,CAAA;IAErB,0EAAoB,CAAA;IAEpB,4EAAqB,CAAA;IAErB,0EAAoB,CAAA;AACtB,CAAC,EATW,cAAc,KAAd,cAAc,QASzB;AAED,MAAM,CAAC,MAAM,2BAA2B,GAAG,kBAAkB,CAAC,OAAO,CAAC;AAGtE,MAAM,UAAU,sBAAsB,CAAC,kBAAsC;IAC3E,OAAO,CAAI,GAAkC,EAAK,EAAE,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC;AAC/E,CAAC"}
@@ -4,6 +4,10 @@ export interface StacksNetwork {
4
4
  peerNetworkId: number;
5
5
  magicBytes: string;
6
6
  bootAddress: string;
7
+ addressVersion: {
8
+ singleSig: number;
9
+ multiSig: number;
10
+ };
7
11
  }
8
12
  export declare const STACKS_MAINNET: StacksNetwork;
9
13
  export declare const STACKS_TESTNET: StacksNetwork;
@@ -1,11 +1,15 @@
1
1
  import { DEVNET_URL, HIRO_MAINNET_URL, HIRO_TESTNET_URL } from '@stacks/common';
2
- import { ChainId, PeerNetworkId, TransactionVersion } from './constants';
2
+ import { AddressVersion, ChainId, PeerNetworkId, TransactionVersion } from './constants';
3
3
  export const STACKS_MAINNET = {
4
4
  chainId: ChainId.Mainnet,
5
5
  transactionVersion: TransactionVersion.Mainnet,
6
6
  peerNetworkId: PeerNetworkId.Mainnet,
7
7
  magicBytes: 'X2',
8
8
  bootAddress: 'SP000000000000000000002Q6VF78',
9
+ addressVersion: {
10
+ singleSig: AddressVersion.MainnetSingleSig,
11
+ multiSig: AddressVersion.MainnetMultiSig,
12
+ },
9
13
  };
10
14
  export const STACKS_TESTNET = {
11
15
  chainId: ChainId.Testnet,
@@ -13,6 +17,10 @@ export const STACKS_TESTNET = {
13
17
  peerNetworkId: PeerNetworkId.Testnet,
14
18
  magicBytes: 'T2',
15
19
  bootAddress: 'ST000000000000000000002AMW42H',
20
+ addressVersion: {
21
+ singleSig: AddressVersion.TestnetSingleSig,
22
+ multiSig: AddressVersion.TestnetMultiSig,
23
+ },
16
24
  };
17
25
  export const STACKS_DEVNET = {
18
26
  ...STACKS_TESTNET,
@@ -1 +1 @@
1
- {"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAWzE,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,kBAAkB,EAAE,kBAAkB,CAAC,OAAO;IAC9C,aAAa,EAAE,aAAa,CAAC,OAAO;IACpC,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,+BAA+B;CAC7C,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,kBAAkB,EAAE,kBAAkB,CAAC,OAAO;IAC9C,aAAa,EAAE,aAAa,CAAC,OAAO;IACpC,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,+BAA+B;CAC7C,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C,GAAG,cAAc;IACjB,UAAU,EAAE,IAAI;CACjB,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAkB,EAAE,GAAG,aAAa,EAAE,CAAC;AAGlE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAInF,MAAM,UAAU,eAAe,CAAC,IAAuB;IACrD,QAAQ,IAAI,EAAE;QACZ,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC;QACxB,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC;QACvB,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC;QACxB;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;KACpD;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAA0C;IACpE,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAA2C;IAC1E,IAAI,CAAC,OAAO;QAAE,OAAO,gBAAgB,CAAC;IAEtC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAE/B,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,kBAAkB,KAAK,kBAAkB,CAAC,OAAO;QAC1E,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI;YAC3B,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,gBAAgB,CAAC;AACzB,CAAC"}
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../../src/network.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAezF,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,kBAAkB,EAAE,kBAAkB,CAAC,OAAO;IAC9C,aAAa,EAAE,aAAa,CAAC,OAAO;IACpC,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,+BAA+B;IAC5C,cAAc,EAAE;QACd,SAAS,EAAE,cAAc,CAAC,gBAAgB;QAC1C,QAAQ,EAAE,cAAc,CAAC,eAAe;KACzC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C,OAAO,EAAE,OAAO,CAAC,OAAO;IACxB,kBAAkB,EAAE,kBAAkB,CAAC,OAAO;IAC9C,aAAa,EAAE,aAAa,CAAC,OAAO;IACpC,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,+BAA+B;IAC5C,cAAc,EAAE;QACd,SAAS,EAAE,cAAc,CAAC,gBAAgB;QAC1C,QAAQ,EAAE,cAAc,CAAC,eAAe;KACzC;CACF,CAAC;AAEF,MAAM,CAAC,MAAM,aAAa,GAAkB;IAC1C,GAAG,cAAc;IACjB,UAAU,EAAE,IAAI;CACjB,CAAC;AACF,MAAM,CAAC,MAAM,cAAc,GAAkB,EAAE,GAAG,aAAa,EAAE,CAAC;AAGlE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAInF,MAAM,UAAU,eAAe,CAAC,IAAuB;IACrD,QAAQ,IAAI,EAAE;QACZ,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC;QACxB,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,aAAa,CAAC;QACvB,KAAK,SAAS;YACZ,OAAO,cAAc,CAAC;QACxB;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;KACpD;AACH,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,OAA0C;IACpE,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,OAA2C;IAC1E,IAAI,CAAC,OAAO;QAAE,OAAO,gBAAgB,CAAC;IAEtC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAE/B,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,kBAAkB,KAAK,kBAAkB,CAAC,OAAO;QAC1E,CAAC,CAAC,gBAAgB;QAClB,CAAC,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI;YAC3B,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,gBAAgB,CAAC;AACzB,CAAC"}
package/dist/network.d.ts CHANGED
@@ -4,6 +4,10 @@ export interface StacksNetwork {
4
4
  peerNetworkId: number;
5
5
  magicBytes: string;
6
6
  bootAddress: string;
7
+ addressVersion: {
8
+ singleSig: number;
9
+ multiSig: number;
10
+ };
7
11
  }
8
12
  export declare const STACKS_MAINNET: StacksNetwork;
9
13
  export declare const STACKS_TESTNET: StacksNetwork;
package/dist/network.js CHANGED
@@ -9,6 +9,10 @@ exports.STACKS_MAINNET = {
9
9
  peerNetworkId: constants_1.PeerNetworkId.Mainnet,
10
10
  magicBytes: 'X2',
11
11
  bootAddress: 'SP000000000000000000002Q6VF78',
12
+ addressVersion: {
13
+ singleSig: constants_1.AddressVersion.MainnetSingleSig,
14
+ multiSig: constants_1.AddressVersion.MainnetMultiSig,
15
+ },
12
16
  };
13
17
  exports.STACKS_TESTNET = {
14
18
  chainId: constants_1.ChainId.Testnet,
@@ -16,6 +20,10 @@ exports.STACKS_TESTNET = {
16
20
  peerNetworkId: constants_1.PeerNetworkId.Testnet,
17
21
  magicBytes: 'T2',
18
22
  bootAddress: 'ST000000000000000000002AMW42H',
23
+ addressVersion: {
24
+ singleSig: constants_1.AddressVersion.TestnetSingleSig,
25
+ multiSig: constants_1.AddressVersion.TestnetMultiSig,
26
+ },
19
27
  };
20
28
  exports.STACKS_DEVNET = {
21
29
  ...exports.STACKS_TESTNET,
@@ -1 +1 @@
1
- {"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":";;;AAAA,2CAAgF;AAChF,2CAAyE;AAW5D,QAAA,cAAc,GAAkB;IAC3C,OAAO,EAAE,mBAAO,CAAC,OAAO;IACxB,kBAAkB,EAAE,8BAAkB,CAAC,OAAO;IAC9C,aAAa,EAAE,yBAAa,CAAC,OAAO;IACpC,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,+BAA+B;CAC7C,CAAC;AAEW,QAAA,cAAc,GAAkB;IAC3C,OAAO,EAAE,mBAAO,CAAC,OAAO;IACxB,kBAAkB,EAAE,8BAAkB,CAAC,OAAO;IAC9C,aAAa,EAAE,yBAAa,CAAC,OAAO;IACpC,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,+BAA+B;CAC7C,CAAC;AAEW,QAAA,aAAa,GAAkB;IAC1C,GAAG,sBAAc;IACjB,UAAU,EAAE,IAAI;CACjB,CAAC;AACW,QAAA,cAAc,GAAkB,EAAE,GAAG,qBAAa,EAAE,CAAC;AAGrD,QAAA,cAAc,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAInF,SAAgB,eAAe,CAAC,IAAuB;IACrD,QAAQ,IAAI,EAAE;QACZ,KAAK,SAAS;YACZ,OAAO,sBAAc,CAAC;QACxB,KAAK,SAAS;YACZ,OAAO,sBAAc,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,qBAAa,CAAC;QACvB,KAAK,SAAS;YACZ,OAAO,sBAAc,CAAC;QACxB;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;KACpD;AACH,CAAC;AAbD,0CAaC;AAED,SAAgB,WAAW,CAAC,OAA0C;IACpE,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,OAAO,CAAC;AACjB,CAAC;AAHD,kCAGC;AAED,SAAgB,gBAAgB,CAAC,OAA2C;IAC1E,IAAI,CAAC,OAAO;QAAE,OAAO,yBAAgB,CAAC;IAEtC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAE/B,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,kBAAkB,KAAK,8BAAkB,CAAC,OAAO;QAC1E,CAAC,CAAC,yBAAgB;QAClB,CAAC,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI;YAC3B,CAAC,CAAC,mBAAU;YACZ,CAAC,CAAC,yBAAgB,CAAC;AACzB,CAAC;AAVD,4CAUC"}
1
+ {"version":3,"file":"network.js","sourceRoot":"","sources":["../src/network.ts"],"names":[],"mappings":";;;AAAA,2CAAgF;AAChF,2CAAyF;AAe5E,QAAA,cAAc,GAAkB;IAC3C,OAAO,EAAE,mBAAO,CAAC,OAAO;IACxB,kBAAkB,EAAE,8BAAkB,CAAC,OAAO;IAC9C,aAAa,EAAE,yBAAa,CAAC,OAAO;IACpC,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,+BAA+B;IAC5C,cAAc,EAAE;QACd,SAAS,EAAE,0BAAc,CAAC,gBAAgB;QAC1C,QAAQ,EAAE,0BAAc,CAAC,eAAe;KACzC;CACF,CAAC;AAEW,QAAA,cAAc,GAAkB;IAC3C,OAAO,EAAE,mBAAO,CAAC,OAAO;IACxB,kBAAkB,EAAE,8BAAkB,CAAC,OAAO;IAC9C,aAAa,EAAE,yBAAa,CAAC,OAAO;IACpC,UAAU,EAAE,IAAI;IAChB,WAAW,EAAE,+BAA+B;IAC5C,cAAc,EAAE;QACd,SAAS,EAAE,0BAAc,CAAC,gBAAgB;QAC1C,QAAQ,EAAE,0BAAc,CAAC,eAAe;KACzC;CACF,CAAC;AAEW,QAAA,aAAa,GAAkB;IAC1C,GAAG,sBAAc;IACjB,UAAU,EAAE,IAAI;CACjB,CAAC;AACW,QAAA,cAAc,GAAkB,EAAE,GAAG,qBAAa,EAAE,CAAC;AAGrD,QAAA,cAAc,GAAG,CAAC,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAU,CAAC;AAInF,SAAgB,eAAe,CAAC,IAAuB;IACrD,QAAQ,IAAI,EAAE;QACZ,KAAK,SAAS;YACZ,OAAO,sBAAc,CAAC;QACxB,KAAK,SAAS;YACZ,OAAO,sBAAc,CAAC;QACxB,KAAK,QAAQ;YACX,OAAO,qBAAa,CAAC;QACvB,KAAK,SAAS;YACZ,OAAO,sBAAc,CAAC;QACxB;YACE,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;KACpD;AACH,CAAC;AAbD,0CAaC;AAED,SAAgB,WAAW,CAAC,OAA0C;IACpE,IAAI,OAAO,OAAO,KAAK,QAAQ;QAAE,OAAO,eAAe,CAAC,OAAO,CAAC,CAAC;IACjE,OAAO,OAAO,CAAC;AACjB,CAAC;AAHD,kCAGC;AAED,SAAgB,gBAAgB,CAAC,OAA2C;IAC1E,IAAI,CAAC,OAAO;QAAE,OAAO,yBAAgB,CAAC;IAEtC,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;IAE/B,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,kBAAkB,KAAK,8BAAkB,CAAC,OAAO;QAC1E,CAAC,CAAC,yBAAgB;QAClB,CAAC,CAAC,OAAO,CAAC,UAAU,KAAK,IAAI;YAC3B,CAAC,CAAC,mBAAU;YACZ,CAAC,CAAC,yBAAgB,CAAC;AACzB,CAAC;AAVD,4CAUC"}
package/dist/umd/index.js CHANGED
@@ -1,2 +1,2 @@
1
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.StacksNetwork=t():e.StacksNetwork=t()}(this,(()=>(()=>{"use strict";var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{ChainId:()=>n,DEFAULT_CHAIN_ID:()=>o,DEFAULT_TRANSACTION_VERSION:()=>i,PeerNetworkId:()=>r,STACKS_DEVNET:()=>N,STACKS_MAINNET:()=>w,STACKS_MOCKNET:()=>h,STACKS_TESTNET:()=>O,StacksNetworks:()=>k,TransactionVersion:()=>a,deriveDefaultUrl:()=>j,networkFrom:()=>g,networkFromName:()=>M,whenTransactionVersion:()=>s});var n=(e=>(e[e.Mainnet=1]="Mainnet",e[e.Testnet=2147483648]="Testnet",e))(n||{}),r=(e=>(e[e.Mainnet=385875968]="Mainnet",e[e.Testnet=4278190080]="Testnet",e))(r||{});const o=1;var a=(e=>(e[e.Mainnet=0]="Mainnet",e[e.Testnet=128]="Testnet",e))(a||{});const i=0;function s(e){return t=>t[e]}const c="https://api.mainnet.hiro.so",p="https://api.testnet.hiro.so",d="http://localhost:3999";var u=Object.defineProperty,f=Object.defineProperties,T=Object.getOwnPropertyDescriptors,l=Object.getOwnPropertySymbols,y=Object.prototype.hasOwnProperty,b=Object.prototype.propertyIsEnumerable,m=(e,t,n)=>t in e?u(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,S=(e,t)=>{for(var n in t||(t={}))y.call(t,n)&&m(e,n,t[n]);if(l)for(var n of l(t))b.call(t,n)&&m(e,n,t[n]);return e};const w={chainId:n.Mainnet,transactionVersion:a.Mainnet,peerNetworkId:r.Mainnet,magicBytes:"X2",bootAddress:"SP000000000000000000002Q6VF78"},O={chainId:n.Testnet,transactionVersion:a.Testnet,peerNetworkId:r.Testnet,magicBytes:"T2",bootAddress:"ST000000000000000000002AMW42H"},N=f(S({},O),T({magicBytes:"id"}));const h=S({},N),k=["mainnet","testnet","devnet","mocknet"];function M(e){switch(e){case"mainnet":return w;case"testnet":return O;case"devnet":return N;case"mocknet":return h;default:throw new Error(`Unknown network name: ${e}`)}}function g(e){return"string"==typeof e?M(e):e}function j(e){return e&&(e=g(e))&&e.transactionVersion!==a.Mainnet?"id"===e.magicBytes?d:p:c}return t})()));
1
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.StacksNetwork=t():e.StacksNetwork=t()}(this,(()=>(()=>{"use strict";var e={d:(t,n)=>{for(var r in n)e.o(n,r)&&!e.o(t,r)&&Object.defineProperty(t,r,{enumerable:!0,get:n[r]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t),r:e=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})}},t={};e.r(t),e.d(t,{AddressVersion:()=>s,ChainId:()=>n,DEFAULT_CHAIN_ID:()=>i,DEFAULT_TRANSACTION_VERSION:()=>a,PeerNetworkId:()=>r,STACKS_DEVNET:()=>O,STACKS_MAINNET:()=>b,STACKS_MOCKNET:()=>N,STACKS_TESTNET:()=>w,StacksNetworks:()=>h,TransactionVersion:()=>o,deriveDefaultUrl:()=>j,networkFrom:()=>A,networkFromName:()=>k,whenTransactionVersion:()=>c});var n=(e=>(e[e.Mainnet=1]="Mainnet",e[e.Testnet=2147483648]="Testnet",e))(n||{}),r=(e=>(e[e.Mainnet=385875968]="Mainnet",e[e.Testnet=4278190080]="Testnet",e))(r||{});const i=1;var o=(e=>(e[e.Mainnet=0]="Mainnet",e[e.Testnet=128]="Testnet",e))(o||{}),s=(e=>(e[e.MainnetSingleSig=22]="MainnetSingleSig",e[e.MainnetMultiSig=20]="MainnetMultiSig",e[e.TestnetSingleSig=26]="TestnetSingleSig",e[e.TestnetMultiSig=21]="TestnetMultiSig",e))(s||{});const a=0;function c(e){return t=>t[e]}const S="https://api.mainnet.hiro.so",l="https://api.testnet.hiro.so",d="http://localhost:3999";var u=Object.defineProperty,g=Object.defineProperties,p=Object.getOwnPropertyDescriptors,T=Object.getOwnPropertySymbols,f=Object.prototype.hasOwnProperty,M=Object.prototype.propertyIsEnumerable,y=(e,t,n)=>t in e?u(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n,m=(e,t)=>{for(var n in t||(t={}))f.call(t,n)&&y(e,n,t[n]);if(T)for(var n of T(t))M.call(t,n)&&y(e,n,t[n]);return e};const b={chainId:n.Mainnet,transactionVersion:o.Mainnet,peerNetworkId:r.Mainnet,magicBytes:"X2",bootAddress:"SP000000000000000000002Q6VF78",addressVersion:{singleSig:s.MainnetSingleSig,multiSig:s.MainnetMultiSig}},w={chainId:n.Testnet,transactionVersion:o.Testnet,peerNetworkId:r.Testnet,magicBytes:"T2",bootAddress:"ST000000000000000000002AMW42H",addressVersion:{singleSig:s.TestnetSingleSig,multiSig:s.TestnetMultiSig}},O=g(m({},w),p({magicBytes:"id"}));const N=m({},O),h=["mainnet","testnet","devnet","mocknet"];function k(e){switch(e){case"mainnet":return b;case"testnet":return w;case"devnet":return O;case"mocknet":return N;default:throw new Error(`Unknown network name: ${e}`)}}function A(e){return"string"==typeof e?k(e):e}function j(e){return e&&(e=A(e))&&e.transactionVersion!==o.Mainnet?"id"===e.magicBytes?d:l:S}return t})()));
2
2
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","mappings":"CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,IACQ,mBAAXG,QAAyBA,OAAOC,IAC9CD,OAAO,GAAIH,GACe,iBAAZC,QACdA,QAAuB,cAAID,IAE3BD,EAAoB,cAAIC,GACzB,CATD,CASGK,MAAM,I,mBCRT,IAAIC,EAAsB,CCA1BA,EAAwB,CAACL,EAASM,KACjC,IAAI,IAAIC,KAAOD,EACXD,EAAoBG,EAAEF,EAAYC,KAASF,EAAoBG,EAAER,EAASO,IAC5EE,OAAOC,eAAeV,EAASO,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,IAE1E,ECNDF,EAAwB,CAACQ,EAAKC,IAAUL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,GCClFT,EAAyBL,IACH,oBAAXkB,QAA0BA,OAAOC,aAC1CV,OAAOC,eAAeV,EAASkB,OAAOC,YAAa,CAAEC,MAAO,WAE7DX,OAAOC,eAAeV,EAAS,aAAc,CAAEoB,OAAO,GAAO,G,6UCDvD,IAAKC,EAAL,CAAKA,IACVA,EAAAA,EAAA,QAAU,GAAV,UACAA,EAAAA,EAAA,QAAU,YAAV,UAFUA,GAAL,CAAKA,GAAA,IAeAC,EAAL,CAAKA,IACVA,EAAAA,EAAA,QAAU,WAAV,UACAA,EAAAA,EAAA,QAAU,YAAV,UAFUA,GAAL,CAAKA,GAAA,IAKL,MAAMC,EAAmB,EAOzB,IAAKC,EAAL,CAAKA,IACVA,EAAAA,EAAA,QAAU,GAAV,UACAA,EAAAA,EAAA,QAAU,KAAV,UAFUA,GAAL,CAAKA,GAAA,IAKL,MAAMC,EAA8B,EAGpC,SAASC,EAAuBC,GACrC,OAAWC,GAA0CA,EAAID,EAC3D,CCzCO,MAAME,EAAmB,8BACnBC,EAAmB,8BACnBC,EAAa,wB,0YCUnB,MAAMC,EAAgC,CAC3CC,QAASZ,EAAQa,QACjBP,mBAAoBH,EAAmBU,QACvCC,cAAeb,EAAcY,QAC7BE,WAAY,KACZC,YAAa,iCAGFC,EAAgC,CAC3CL,QAASZ,EAAQkB,QACjBZ,mBAAoBH,EAAmBe,QACvCJ,cAAeb,EAAciB,QAC7BH,WAAY,KACZC,YAAa,iCAGFG,E,EAA+B,KACvCF,G,EADuC,CAE1CF,WAAY,QAEP,MAAMK,EAAgC,KAAKD,GAGrCE,EAAiB,CAAC,UAAW,UAAW,SAAU,WAIxD,SAASC,EAAgBC,GAC9B,OAAQA,GACN,IAAK,UACH,OAAOZ,EACT,IAAK,UACH,OAAOM,EACT,IAAK,SACH,OAAOE,EACT,IAAK,UACH,OAAOC,EACT,QACE,MAAM,IAAII,MAAM,yBAAyBD,KAE/C,CAEO,SAASE,EAAYC,GAC1B,MAAuB,iBAAZA,EAA6BJ,EAAgBI,GACjDA,CACT,CAEO,SAASC,EAAiBD,GAC/B,OAAKA,IAELA,EAAUD,EAAYC,KAEHA,EAAQpB,qBAAuBH,EAAmBU,QAE1C,OAAvBa,EAAQX,WACNL,EACAD,EAReD,CASvB,C","sources":["webpack://StacksNetwork/webpack/universalModuleDefinition","webpack://StacksNetwork/webpack/bootstrap","webpack://StacksNetwork/webpack/runtime/define property getters","webpack://StacksNetwork/webpack/runtime/hasOwnProperty shorthand","webpack://StacksNetwork/webpack/runtime/make namespace object","webpack://StacksNetwork/./src/constants.ts","webpack://StacksNetwork/../common/dist/esm/constants.js","webpack://StacksNetwork/./src/network.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"StacksNetwork\"] = factory();\n\telse\n\t\troot[\"StacksNetwork\"] = factory();\n})(this, () => {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * The chain ID (unsigned 32-bit integer), used so transactions can't be replayed on other chains.\n * Similar to the {@link TransactionVersion}.\n */\nexport enum ChainId {\n Mainnet = 0x00000001,\n Testnet = 0x80000000,\n}\n\n/**\n * The **peer** network ID.\n * Typically not used in signing, but used for broadcasting to the P2P network.\n * It can also be used to determine the parent of a subnet.\n *\n * **Attention:**\n * For mainnet/testnet the v2/info response `.network_id` refers to the chain ID.\n * For subnets the v2/info response `.network_id` refers to the peer network ID and the chain ID (they are the same for subnets).\n * The `.parent_network_id` refers to the actual peer network ID (of the parent) in both cases.\n */\nexport enum PeerNetworkId {\n Mainnet = 0x17000000,\n Testnet = 0xff000000,\n}\n\nexport const DEFAULT_CHAIN_ID = ChainId.Mainnet;\n\n/**\n * The transaction version, used so transactions can't be replayed on other networks.\n * Similar to the {@link ChainId}.\n * Used internally for serializing and deserializing transactions.\n */\nexport enum TransactionVersion {\n Mainnet = 0x00,\n Testnet = 0x80,\n}\n\nexport const DEFAULT_TRANSACTION_VERSION = TransactionVersion.Mainnet;\n\n/** @ignore */\nexport function whenTransactionVersion(transactionVersion: TransactionVersion) {\n return <T>(map: Record<TransactionVersion, T>): T => map[transactionVersion];\n}\n","export const HIRO_MAINNET_URL = 'https://api.mainnet.hiro.so';\nexport const HIRO_TESTNET_URL = 'https://api.testnet.hiro.so';\nexport const DEVNET_URL = 'http://localhost:3999';\nexport const GAIA_URL = 'https://hub.blockstack.org';\nexport const PRIVATE_KEY_COMPRESSED_LENGTH = 33;\nexport const PRIVATE_KEY_UNCOMPRESSED_LENGTH = 32;\n//# sourceMappingURL=constants.js.map","import { DEVNET_URL, HIRO_MAINNET_URL, HIRO_TESTNET_URL } from '@stacks/common';\nimport { ChainId, PeerNetworkId, TransactionVersion } from './constants';\n\nexport interface StacksNetwork {\n chainId: number;\n transactionVersion: number; // todo: txVersion better?\n peerNetworkId: number;\n magicBytes: string;\n bootAddress: string;\n // todo: add check32 character bytes string\n}\n\nexport const STACKS_MAINNET: StacksNetwork = {\n chainId: ChainId.Mainnet,\n transactionVersion: TransactionVersion.Mainnet,\n peerNetworkId: PeerNetworkId.Mainnet,\n magicBytes: 'X2', // todo: comment bytes version of magic bytes\n bootAddress: 'SP000000000000000000002Q6VF78',\n};\n\nexport const STACKS_TESTNET: StacksNetwork = {\n chainId: ChainId.Testnet,\n transactionVersion: TransactionVersion.Testnet,\n peerNetworkId: PeerNetworkId.Testnet,\n magicBytes: 'T2', // todo: comment bytes version of magic bytes\n bootAddress: 'ST000000000000000000002AMW42H',\n};\n\nexport const STACKS_DEVNET: StacksNetwork = {\n ...STACKS_TESTNET,\n magicBytes: 'id', // todo: comment bytes version of magic bytes\n};\nexport const STACKS_MOCKNET: StacksNetwork = { ...STACKS_DEVNET };\n\n/** @ignore internal */\nexport const StacksNetworks = ['mainnet', 'testnet', 'devnet', 'mocknet'] as const;\n/** The enum-style names of different common Stacks networks */\nexport type StacksNetworkName = (typeof StacksNetworks)[number];\n\nexport function networkFromName(name: StacksNetworkName) {\n switch (name) {\n case 'mainnet':\n return STACKS_MAINNET;\n case 'testnet':\n return STACKS_TESTNET;\n case 'devnet':\n return STACKS_DEVNET;\n case 'mocknet':\n return STACKS_MOCKNET;\n default:\n throw new Error(`Unknown network name: ${name}`);\n }\n}\n\nexport function networkFrom(network: StacksNetworkName | StacksNetwork) {\n if (typeof network === 'string') return networkFromName(network);\n return network;\n}\n\nexport function deriveDefaultUrl(network?: StacksNetwork | StacksNetworkName) {\n if (!network) return HIRO_MAINNET_URL; // default to mainnet if no network is given\n\n network = networkFrom(network);\n\n return !network || network.transactionVersion === TransactionVersion.Mainnet\n ? HIRO_MAINNET_URL // default to mainnet if txVersion is mainnet\n : network.magicBytes === 'id'\n ? DEVNET_URL // default to devnet if magicBytes are devnet\n : HIRO_TESTNET_URL;\n}\n"],"names":["root","factory","exports","module","define","amd","this","__webpack_require__","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","ChainId","PeerNetworkId","DEFAULT_CHAIN_ID","TransactionVersion","DEFAULT_TRANSACTION_VERSION","whenTransactionVersion","transactionVersion","map","HIRO_MAINNET_URL","HIRO_TESTNET_URL","DEVNET_URL","STACKS_MAINNET","chainId","Mainnet","peerNetworkId","magicBytes","bootAddress","STACKS_TESTNET","Testnet","STACKS_DEVNET","STACKS_MOCKNET","StacksNetworks","networkFromName","name","Error","networkFrom","network","deriveDefaultUrl"],"sourceRoot":""}
1
+ {"version":3,"file":"index.js","mappings":"CAAA,SAA2CA,EAAMC,GAC1B,iBAAZC,SAA0C,iBAAXC,OACxCA,OAAOD,QAAUD,IACQ,mBAAXG,QAAyBA,OAAOC,IAC9CD,OAAO,GAAIH,GACe,iBAAZC,QACdA,QAAuB,cAAID,IAE3BD,EAAoB,cAAIC,GACzB,CATD,CASGK,MAAM,I,mBCRT,IAAIC,EAAsB,CCA1BA,EAAwB,CAACL,EAASM,KACjC,IAAI,IAAIC,KAAOD,EACXD,EAAoBG,EAAEF,EAAYC,KAASF,EAAoBG,EAAER,EAASO,IAC5EE,OAAOC,eAAeV,EAASO,EAAK,CAAEI,YAAY,EAAMC,IAAKN,EAAWC,IAE1E,ECNDF,EAAwB,CAACQ,EAAKC,IAAUL,OAAOM,UAAUC,eAAeC,KAAKJ,EAAKC,GCClFT,EAAyBL,IACH,oBAAXkB,QAA0BA,OAAOC,aAC1CV,OAAOC,eAAeV,EAASkB,OAAOC,YAAa,CAAEC,MAAO,WAE7DX,OAAOC,eAAeV,EAAS,aAAc,CAAEoB,OAAO,GAAO,G,kWCDvD,IAAKC,EAAL,CAAKA,IACVA,EAAAA,EAAA,QAAU,GAAV,UACAA,EAAAA,EAAA,QAAU,YAAV,UAFUA,GAAL,CAAKA,GAAA,IAeAC,EAAL,CAAKA,IACVA,EAAAA,EAAA,QAAU,WAAV,UACAA,EAAAA,EAAA,QAAU,YAAV,UAFUA,GAAL,CAAKA,GAAA,IAKL,MAAMC,EAAmB,EAOzB,IAAKC,EAAL,CAAKA,IACVA,EAAAA,EAAA,QAAU,GAAV,UACAA,EAAAA,EAAA,QAAU,KAAV,UAFUA,GAAL,CAAKA,GAAA,IAWAC,EAAL,CAAKA,IAEVA,EAAAA,EAAA,iBAAmB,IAAnB,mBAEAA,EAAAA,EAAA,gBAAkB,IAAlB,kBAEAA,EAAAA,EAAA,iBAAmB,IAAnB,mBAEAA,EAAAA,EAAA,gBAAkB,IAAlB,kBARUA,GAAL,CAAKA,GAAA,IAWL,MAAMC,EAA8B,EAGpC,SAASC,EAAuBC,GACrC,OAAWC,GAA0CA,EAAID,EAC3D,CC1DO,MAAME,EAAmB,8BACnBC,EAAmB,8BACnBC,EAAa,wB,0YCcnB,MAAMC,EAAgC,CAC3CC,QAASb,EAAQc,QACjBP,mBAAoBJ,EAAmBW,QACvCC,cAAed,EAAca,QAC7BE,WAAY,KACZC,YAAa,gCACbC,eAAgB,CACdC,UAAWf,EAAegB,iBAC1BC,SAAUjB,EAAekB,kBAIhBC,EAAgC,CAC3CV,QAASb,EAAQwB,QACjBjB,mBAAoBJ,EAAmBqB,QACvCT,cAAed,EAAcuB,QAC7BR,WAAY,KACZC,YAAa,gCACbC,eAAgB,CACdC,UAAWf,EAAeqB,iBAC1BJ,SAAUjB,EAAesB,kBAIhBC,E,EAA+B,KACvCJ,G,EADuC,CAE1CP,WAAY,QAEP,MAAMY,EAAgC,KAAKD,GAGrCE,EAAiB,CAAC,UAAW,UAAW,SAAU,WAIxD,SAASC,EAAgBC,GAC9B,OAAQA,GACN,IAAK,UACH,OAAOnB,EACT,IAAK,UACH,OAAOW,EACT,IAAK,SACH,OAAOI,EACT,IAAK,UACH,OAAOC,EACT,QACE,MAAM,IAAII,MAAM,yBAAyBD,KAE/C,CAEO,SAASE,EAAYC,GAC1B,MAAuB,iBAAZA,EAA6BJ,EAAgBI,GACjDA,CACT,CAEO,SAASC,EAAiBD,GAC/B,OAAKA,IAELA,EAAUD,EAAYC,KAEHA,EAAQ3B,qBAAuBJ,EAAmBW,QAE1C,OAAvBoB,EAAQlB,WACNL,EACAD,EAReD,CASvB,C","sources":["webpack://StacksNetwork/webpack/universalModuleDefinition","webpack://StacksNetwork/webpack/bootstrap","webpack://StacksNetwork/webpack/runtime/define property getters","webpack://StacksNetwork/webpack/runtime/hasOwnProperty shorthand","webpack://StacksNetwork/webpack/runtime/make namespace object","webpack://StacksNetwork/./src/constants.ts","webpack://StacksNetwork/../common/dist/esm/constants.js","webpack://StacksNetwork/./src/network.ts"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine([], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"StacksNetwork\"] = factory();\n\telse\n\t\troot[\"StacksNetwork\"] = factory();\n})(this, () => {\nreturn ","// The require scope\nvar __webpack_require__ = {};\n\n","// define getter functions for harmony exports\n__webpack_require__.d = (exports, definition) => {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.o = (obj, prop) => (Object.prototype.hasOwnProperty.call(obj, prop))","// define __esModule on exports\n__webpack_require__.r = (exports) => {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","/**\n * The chain ID (unsigned 32-bit integer), used so transactions can't be replayed on other chains.\n * Similar to the {@link TransactionVersion}.\n */\nexport enum ChainId {\n Mainnet = 0x00000001,\n Testnet = 0x80000000,\n}\n\n/**\n * The **peer** network ID.\n * Typically not used in signing, but used for broadcasting to the P2P network.\n * It can also be used to determine the parent of a subnet.\n *\n * **Attention:**\n * For mainnet/testnet the v2/info response `.network_id` refers to the chain ID.\n * For subnets the v2/info response `.network_id` refers to the peer network ID and the chain ID (they are the same for subnets).\n * The `.parent_network_id` refers to the actual peer network ID (of the parent) in both cases.\n */\nexport enum PeerNetworkId {\n Mainnet = 0x17000000,\n Testnet = 0xff000000,\n}\n\nexport const DEFAULT_CHAIN_ID = ChainId.Mainnet;\n\n/**\n * The transaction version, used so transactions can't be replayed on other networks.\n * Similar to the {@link ChainId}.\n * Used internally for serializing and deserializing transactions.\n */\nexport enum TransactionVersion {\n Mainnet = 0x00,\n Testnet = 0x80,\n}\n\n/**\n * Address versions for identifying address types in an encoded Stacks address.\n * The address version is a single byte, indicating the address type.\n * Every Stacks address starts with `S` followed by a single character indicating the address version.\n * The second character is the c32-encoded AddressVersion byte.\n */\nexport enum AddressVersion {\n /** `P` — A single-sig address for mainnet (starting with `SP`) */\n MainnetSingleSig = 22,\n /** `M` — A multi-sig address for mainnet (starting with `SM`) */\n MainnetMultiSig = 20,\n /** `T` — A single-sig address for testnet (starting with `ST`) */\n TestnetSingleSig = 26,\n /** `N` — A multi-sig address for testnet (starting with `SN`) */\n TestnetMultiSig = 21,\n}\n\nexport const DEFAULT_TRANSACTION_VERSION = TransactionVersion.Mainnet;\n\n/** @ignore */\nexport function whenTransactionVersion(transactionVersion: TransactionVersion) {\n return <T>(map: Record<TransactionVersion, T>): T => map[transactionVersion];\n}\n","export const HIRO_MAINNET_URL = 'https://api.mainnet.hiro.so';\nexport const HIRO_TESTNET_URL = 'https://api.testnet.hiro.so';\nexport const DEVNET_URL = 'http://localhost:3999';\nexport const GAIA_URL = 'https://hub.blockstack.org';\nexport const PRIVATE_KEY_COMPRESSED_LENGTH = 33;\nexport const PRIVATE_KEY_UNCOMPRESSED_LENGTH = 32;\n//# sourceMappingURL=constants.js.map","import { DEVNET_URL, HIRO_MAINNET_URL, HIRO_TESTNET_URL } from '@stacks/common';\nimport { AddressVersion, ChainId, PeerNetworkId, TransactionVersion } from './constants';\n\nexport interface StacksNetwork {\n chainId: number;\n transactionVersion: number; // todo: txVersion better?\n peerNetworkId: number;\n magicBytes: string;\n bootAddress: string;\n addressVersion: {\n singleSig: number;\n multiSig: number;\n };\n // todo: add check32 character bytes string\n}\n\nexport const STACKS_MAINNET: StacksNetwork = {\n chainId: ChainId.Mainnet,\n transactionVersion: TransactionVersion.Mainnet,\n peerNetworkId: PeerNetworkId.Mainnet,\n magicBytes: 'X2', // todo: comment bytes version of magic bytes\n bootAddress: 'SP000000000000000000002Q6VF78',\n addressVersion: {\n singleSig: AddressVersion.MainnetSingleSig,\n multiSig: AddressVersion.MainnetMultiSig,\n },\n};\n\nexport const STACKS_TESTNET: StacksNetwork = {\n chainId: ChainId.Testnet,\n transactionVersion: TransactionVersion.Testnet,\n peerNetworkId: PeerNetworkId.Testnet,\n magicBytes: 'T2', // todo: comment bytes version of magic bytes\n bootAddress: 'ST000000000000000000002AMW42H',\n addressVersion: {\n singleSig: AddressVersion.TestnetSingleSig,\n multiSig: AddressVersion.TestnetMultiSig,\n },\n};\n\nexport const STACKS_DEVNET: StacksNetwork = {\n ...STACKS_TESTNET,\n magicBytes: 'id', // todo: comment bytes version of magic bytes\n};\nexport const STACKS_MOCKNET: StacksNetwork = { ...STACKS_DEVNET };\n\n/** @ignore internal */\nexport const StacksNetworks = ['mainnet', 'testnet', 'devnet', 'mocknet'] as const;\n/** The enum-style names of different common Stacks networks */\nexport type StacksNetworkName = (typeof StacksNetworks)[number];\n\nexport function networkFromName(name: StacksNetworkName) {\n switch (name) {\n case 'mainnet':\n return STACKS_MAINNET;\n case 'testnet':\n return STACKS_TESTNET;\n case 'devnet':\n return STACKS_DEVNET;\n case 'mocknet':\n return STACKS_MOCKNET;\n default:\n throw new Error(`Unknown network name: ${name}`);\n }\n}\n\nexport function networkFrom(network: StacksNetworkName | StacksNetwork) {\n if (typeof network === 'string') return networkFromName(network);\n return network;\n}\n\nexport function deriveDefaultUrl(network?: StacksNetwork | StacksNetworkName) {\n if (!network) return HIRO_MAINNET_URL; // default to mainnet if no network is given\n\n network = networkFrom(network);\n\n return !network || network.transactionVersion === TransactionVersion.Mainnet\n ? HIRO_MAINNET_URL // default to mainnet if txVersion is mainnet\n : network.magicBytes === 'id'\n ? DEVNET_URL // default to devnet if magicBytes are devnet\n : HIRO_TESTNET_URL;\n}\n"],"names":["root","factory","exports","module","define","amd","this","__webpack_require__","definition","key","o","Object","defineProperty","enumerable","get","obj","prop","prototype","hasOwnProperty","call","Symbol","toStringTag","value","ChainId","PeerNetworkId","DEFAULT_CHAIN_ID","TransactionVersion","AddressVersion","DEFAULT_TRANSACTION_VERSION","whenTransactionVersion","transactionVersion","map","HIRO_MAINNET_URL","HIRO_TESTNET_URL","DEVNET_URL","STACKS_MAINNET","chainId","Mainnet","peerNetworkId","magicBytes","bootAddress","addressVersion","singleSig","MainnetSingleSig","multiSig","MainnetMultiSig","STACKS_TESTNET","Testnet","TestnetSingleSig","TestnetMultiSig","STACKS_DEVNET","STACKS_MOCKNET","StacksNetworks","networkFromName","name","Error","networkFrom","network","deriveDefaultUrl"],"sourceRoot":""}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@stacks/network",
3
- "version": "6.14.1-pr.31+3d8c3141",
3
+ "version": "6.14.1-pr.33+c42997b6",
4
4
  "description": "Library for Stacks network operations",
5
5
  "license": "MIT",
6
6
  "author": "Hiro Systems PBC (https://hiro.so)",
@@ -20,7 +20,7 @@
20
20
  "typecheck:watch": "npm run typecheck -- --watch"
21
21
  },
22
22
  "dependencies": {
23
- "@stacks/common": "^6.14.1-pr.31+3d8c3141",
23
+ "@stacks/common": "^6.14.1-pr.33+c42997b6",
24
24
  "cross-fetch": "^3.1.5"
25
25
  },
26
26
  "devDependencies": {
@@ -52,5 +52,5 @@
52
52
  "bugs": {
53
53
  "url": "https://github.com/blockstack/blockstack.js/issues"
54
54
  },
55
- "gitHead": "3d8c314146849501e3eda86bb8bed63844732688"
55
+ "gitHead": "c42997b6fdb349c6af559a6973d53eeefe03c428"
56
56
  }
package/src/constants.ts CHANGED
@@ -34,6 +34,23 @@ export enum TransactionVersion {
34
34
  Testnet = 0x80,
35
35
  }
36
36
 
37
+ /**
38
+ * Address versions for identifying address types in an encoded Stacks address.
39
+ * The address version is a single byte, indicating the address type.
40
+ * Every Stacks address starts with `S` followed by a single character indicating the address version.
41
+ * The second character is the c32-encoded AddressVersion byte.
42
+ */
43
+ export enum AddressVersion {
44
+ /** `P` — A single-sig address for mainnet (starting with `SP`) */
45
+ MainnetSingleSig = 22,
46
+ /** `M` — A multi-sig address for mainnet (starting with `SM`) */
47
+ MainnetMultiSig = 20,
48
+ /** `T` — A single-sig address for testnet (starting with `ST`) */
49
+ TestnetSingleSig = 26,
50
+ /** `N` — A multi-sig address for testnet (starting with `SN`) */
51
+ TestnetMultiSig = 21,
52
+ }
53
+
37
54
  export const DEFAULT_TRANSACTION_VERSION = TransactionVersion.Mainnet;
38
55
 
39
56
  /** @ignore */
package/src/network.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import { DEVNET_URL, HIRO_MAINNET_URL, HIRO_TESTNET_URL } from '@stacks/common';
2
- import { ChainId, PeerNetworkId, TransactionVersion } from './constants';
2
+ import { AddressVersion, ChainId, PeerNetworkId, TransactionVersion } from './constants';
3
3
 
4
4
  export interface StacksNetwork {
5
5
  chainId: number;
@@ -7,6 +7,10 @@ export interface StacksNetwork {
7
7
  peerNetworkId: number;
8
8
  magicBytes: string;
9
9
  bootAddress: string;
10
+ addressVersion: {
11
+ singleSig: number;
12
+ multiSig: number;
13
+ };
10
14
  // todo: add check32 character bytes string
11
15
  }
12
16
 
@@ -16,6 +20,10 @@ export const STACKS_MAINNET: StacksNetwork = {
16
20
  peerNetworkId: PeerNetworkId.Mainnet,
17
21
  magicBytes: 'X2', // todo: comment bytes version of magic bytes
18
22
  bootAddress: 'SP000000000000000000002Q6VF78',
23
+ addressVersion: {
24
+ singleSig: AddressVersion.MainnetSingleSig,
25
+ multiSig: AddressVersion.MainnetMultiSig,
26
+ },
19
27
  };
20
28
 
21
29
  export const STACKS_TESTNET: StacksNetwork = {
@@ -24,6 +32,10 @@ export const STACKS_TESTNET: StacksNetwork = {
24
32
  peerNetworkId: PeerNetworkId.Testnet,
25
33
  magicBytes: 'T2', // todo: comment bytes version of magic bytes
26
34
  bootAddress: 'ST000000000000000000002AMW42H',
35
+ addressVersion: {
36
+ singleSig: AddressVersion.TestnetSingleSig,
37
+ multiSig: AddressVersion.TestnetMultiSig,
38
+ },
27
39
  };
28
40
 
29
41
  export const STACKS_DEVNET: StacksNetwork = {