ecash-lib 1.4.1 → 1.5.1

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/README.md CHANGED
@@ -95,6 +95,19 @@ const rawTx = tx.ser();
95
95
  console.log(toHex(rawTx));
96
96
  ```
97
97
 
98
+ ### Troubleshooting
99
+
100
+ #### Can't load WebAssembly
101
+
102
+ Some bundlers can't handle WebAssembly yet (at the time of writing, vite).
103
+ If you run into "CompileError: expected magic word 00 61 73 6d", you can
104
+ provide a custom WASM URL or module:
105
+
106
+ ```ts
107
+ import ecashLibWasmUrl from 'ecash-lib/dist/ffi/ecash_lib_wasm_bg_browser.wasm?url';
108
+ await initWasm(ecashLibWasmUrl);
109
+ ```
110
+
98
111
  ## Changelog
99
112
 
100
113
  - 0.1.1 - Validation that feePerKb is an integer
@@ -110,3 +123,5 @@ console.log(toHex(rawTx));
110
123
  - 1.3.0 - Add `toHex()` method to `Script` to allow simple conversion to hex string [D17527](https://reviews.bitcoinabc.org/D17527)
111
124
  - 1.4.0 - Add `HdNode`, `entropyToMnemonic`, `mnemonicToEntropy` and `mnemonicToSeed` to complete wallet functionality [D17619](https://reviews.bitcoinabc.org/D17619)
112
125
  - 1.4.1 - Patch import in `mnemonic.ts` [D17621](https://reviews.bitcoinabc.org/D17621)
126
+ - 1.5.0 - Support custom WASM URL and module [D17622](https://reviews.bitcoinabc.org/D17622)
127
+ - 1.5.1 - `Address.withPrefix()` returns same prefix if unchanged (instead of throwing an error) [D17623](https://reviews.bitcoinabc.org/D17623)
@@ -114,7 +114,7 @@ class Address {
114
114
  }
115
115
  if (this.prefix === prefix) {
116
116
  // Take no action if prefix is not changing
117
- throw new Error(`prefix is already "${this.prefix}"`);
117
+ return this;
118
118
  }
119
119
  return new Address({
120
120
  type: this.type,
@@ -1 +1 @@
1
- {"version":3,"file":"address.js","sourceRoot":"","sources":["../../src/address/address.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"address.js","sourceRoot":"","sources":["../../src/address/address.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,12 @@
1
- /** Load and initialize the WASM module for Web */
2
- export declare function initWasm(): Promise<void>;
1
+ import * as ffi from './ffi/ecash_lib_wasm_browser.js';
2
+ /**
3
+ * Load and initialize the WASM module for Web.
4
+ *
5
+ * Some bundlers can't handle WebAssembly yet (at the time of writing, vite).
6
+ * If you run into "CompileError: expected magic word 00 61 73 6d", you can
7
+ * provide a custom WASM URL or module:
8
+ * import ecashLibWasmUrl from 'ecash-lib/dist/ffi/ecash_lib_wasm_bg_browser.wasm?url';
9
+ * await initWasm(ecashLibWasmUrl);
10
+ **/
11
+ export declare function initWasm(module_or_path?: ffi.InitInput | Promise<ffi.InitInput>): Promise<void>;
3
12
  //# sourceMappingURL=initBrowser.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"initBrowser.d.ts","sourceRoot":"","sources":["../src/initBrowser.ts"],"names":[],"mappings":"AAQA,kDAAkD;AAClD,wBAAsB,QAAQ,kBAW7B"}
1
+ {"version":3,"file":"initBrowser.d.ts","sourceRoot":"","sources":["../src/initBrowser.ts"],"names":[],"mappings":"AAKA,OAAmB,KAAK,GAAG,MAAM,iCAAiC,CAAC;AAGnE;;;;;;;;IAQI;AACJ,wBAAsB,QAAQ,CAC1B,cAAc,CAAC,EAAE,GAAG,CAAC,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,iBAY1D"}
@@ -30,9 +30,17 @@ exports.initWasm = void 0;
30
30
  const ecc_js_1 = require("./ecc.js");
31
31
  const ecash_lib_wasm_browser_js_1 = __importStar(require("./ffi/ecash_lib_wasm_browser.js")), ffi = ecash_lib_wasm_browser_js_1;
32
32
  const hash_js_1 = require("./hash.js");
33
- /** Load and initialize the WASM module for Web */
34
- async function initWasm() {
35
- await (0, ecash_lib_wasm_browser_js_1.default)();
33
+ /**
34
+ * Load and initialize the WASM module for Web.
35
+ *
36
+ * Some bundlers can't handle WebAssembly yet (at the time of writing, vite).
37
+ * If you run into "CompileError: expected magic word 00 61 73 6d", you can
38
+ * provide a custom WASM URL or module:
39
+ * import ecashLibWasmUrl from 'ecash-lib/dist/ffi/ecash_lib_wasm_bg_browser.wasm?url';
40
+ * await initWasm(ecashLibWasmUrl);
41
+ **/
42
+ async function initWasm(module_or_path) {
43
+ await (0, ecash_lib_wasm_browser_js_1.default)(module_or_path);
36
44
  (0, ecc_js_1.__setEcc)(ffi.Ecc);
37
45
  (0, hash_js_1.__setHashes)({
38
46
  sha256: ffi.sha256,
@@ -1 +1 @@
1
- {"version":3,"file":"initBrowser.js","sourceRoot":"","sources":["../src/initBrowser.ts"],"names":[],"mappings":";AAAA,4CAA4C;AAC5C,mEAAmE;AACnE,sEAAsE;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtE,qCAAoC;AACpC,gIAAmE;AACnE,uCAAwC;AAExC,kDAAkD;AAC3C,KAAK,UAAU,QAAQ;IAC1B,MAAM,IAAA,mCAAU,GAAE,CAAC;IACnB,IAAA,iBAAQ,EAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,IAAA,qBAAW,EAAC;QACR,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;KACvB,CAAC,CAAC;AACP,CAAC;AAXD,4BAWC"}
1
+ {"version":3,"file":"initBrowser.js","sourceRoot":"","sources":["../src/initBrowser.ts"],"names":[],"mappings":";AAAA,4CAA4C;AAC5C,mEAAmE;AACnE,sEAAsE;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtE,qCAAoC;AACpC,gIAAmE;AACnE,uCAAwC;AAExC;;;;;;;;IAQI;AACG,KAAK,UAAU,QAAQ,CAC1B,cAAuD;IAEvD,MAAM,IAAA,mCAAU,EAAC,cAAc,CAAC,CAAC;IACjC,IAAA,iBAAQ,EAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,IAAA,qBAAW,EAAC;QACR,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;KACvB,CAAC,CAAC;AACP,CAAC;AAbD,4BAaC"}
@@ -1,3 +1,3 @@
1
1
  /** Load and initialize the WASM module for NodeJS */
2
- export declare function initWasm(): Promise<void>;
2
+ export declare function initWasm(_dummy?: any): Promise<void>;
3
3
  //# sourceMappingURL=initNodeJs.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"initNodeJs.d.ts","sourceRoot":"","sources":["../src/initNodeJs.ts"],"names":[],"mappings":"AAQA,qDAAqD;AACrD,wBAAsB,QAAQ,kBAU7B"}
1
+ {"version":3,"file":"initNodeJs.d.ts","sourceRoot":"","sources":["../src/initNodeJs.ts"],"names":[],"mappings":"AAQA,qDAAqD;AACrD,wBAAsB,QAAQ,CAAC,MAAM,CAAC,EAAE,GAAG,iBAU1C"}
@@ -31,7 +31,7 @@ const ecc_js_1 = require("./ecc.js");
31
31
  const ffi = __importStar(require("./ffi/ecash_lib_wasm_nodejs.js"));
32
32
  const hash_js_1 = require("./hash.js");
33
33
  /** Load and initialize the WASM module for NodeJS */
34
- async function initWasm() {
34
+ async function initWasm(_dummy) {
35
35
  (0, ecc_js_1.__setEcc)(ffi.Ecc);
36
36
  (0, hash_js_1.__setHashes)({
37
37
  sha256: ffi.sha256,
@@ -1 +1 @@
1
- {"version":3,"file":"initNodeJs.js","sourceRoot":"","sources":["../src/initNodeJs.ts"],"names":[],"mappings":";AAAA,4CAA4C;AAC5C,mEAAmE;AACnE,sEAAsE;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtE,qCAAoC;AACpC,oEAAsD;AACtD,uCAAwC;AAExC,qDAAqD;AAC9C,KAAK,UAAU,QAAQ;IAC1B,IAAA,iBAAQ,EAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,IAAA,qBAAW,EAAC;QACR,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;KACvB,CAAC,CAAC;AACP,CAAC;AAVD,4BAUC"}
1
+ {"version":3,"file":"initNodeJs.js","sourceRoot":"","sources":["../src/initNodeJs.ts"],"names":[],"mappings":";AAAA,4CAA4C;AAC5C,mEAAmE;AACnE,sEAAsE;;;;;;;;;;;;;;;;;;;;;;;;;;AAEtE,qCAAoC;AACpC,oEAAsD;AACtD,uCAAwC;AAExC,qDAAqD;AAC9C,KAAK,UAAU,QAAQ,CAAC,MAAY;IACvC,IAAA,iBAAQ,EAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAClB,IAAA,qBAAW,EAAC;QACR,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,SAAS,EAAE,GAAG,CAAC,SAAS;QACxB,MAAM,EAAE,GAAG,CAAC,MAAM;QAClB,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO;KACvB,CAAC,CAAC;AACP,CAAC;AAVD,4BAUC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ecash-lib",
3
- "version": "1.4.1",
3
+ "version": "1.5.1",
4
4
  "description": "Library for eCash transaction building",
5
5
  "main": "./dist/indexNodeJs.js",
6
6
  "browser": "./dist/indexBrowser.js",
@@ -323,7 +323,7 @@ export class Address implements AddressInterface {
323
323
  }
324
324
  if (this.prefix === prefix) {
325
325
  // Take no action if prefix is not changing
326
- throw new Error(`prefix is already "${this.prefix}"`);
326
+ return this;
327
327
  }
328
328
  return new Address({
329
329
  type: this.type,
@@ -6,9 +6,19 @@ import { __setEcc } from './ecc.js';
6
6
  import __wbg_init, * as ffi from './ffi/ecash_lib_wasm_browser.js';
7
7
  import { __setHashes } from './hash.js';
8
8
 
9
- /** Load and initialize the WASM module for Web */
10
- export async function initWasm() {
11
- await __wbg_init();
9
+ /**
10
+ * Load and initialize the WASM module for Web.
11
+ *
12
+ * Some bundlers can't handle WebAssembly yet (at the time of writing, vite).
13
+ * If you run into "CompileError: expected magic word 00 61 73 6d", you can
14
+ * provide a custom WASM URL or module:
15
+ * import ecashLibWasmUrl from 'ecash-lib/dist/ffi/ecash_lib_wasm_bg_browser.wasm?url';
16
+ * await initWasm(ecashLibWasmUrl);
17
+ **/
18
+ export async function initWasm(
19
+ module_or_path?: ffi.InitInput | Promise<ffi.InitInput>,
20
+ ) {
21
+ await __wbg_init(module_or_path);
12
22
  __setEcc(ffi.Ecc);
13
23
  __setHashes({
14
24
  sha256: ffi.sha256,
package/src/initNodeJs.ts CHANGED
@@ -7,7 +7,7 @@ import * as ffi from './ffi/ecash_lib_wasm_nodejs.js';
7
7
  import { __setHashes } from './hash.js';
8
8
 
9
9
  /** Load and initialize the WASM module for NodeJS */
10
- export async function initWasm() {
10
+ export async function initWasm(_dummy?: any) {
11
11
  __setEcc(ffi.Ecc);
12
12
  __setHashes({
13
13
  sha256: ffi.sha256,