@knuth/js-wasm 0.0.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 +1 -0
- package/package.json +47 -0
- package/src/kth.js +7 -0
- package/src/kth.wasm +0 -0
- package/types/EllipticCurve.d.ts +5 -0
- package/types/Kth.d.ts +13 -0
- package/types/LazySequence.d.ts +12 -0
- package/types/PaymentAddress.d.ts +18 -0
- package/types/Wallet.d.ts +18 -0
- package/types/env.d.ts +6 -0
- package/types/main.d.ts +15 -0
- package/types/types.d.ts +25 -0
- package/types/utils.d.ts +11 -0
- package/types/wasm/EmscriptenModule.d.ts +8 -0
- package/types/wasm/bootloader.d.ts +3 -0
- package/types/wasm/glue.d.ts +184 -0
- package/types/wasm/loadLib.d.ts +14 -0
- package/types/wasm/mem.d.ts +10 -0
- package/types/wasm/promises.d.ts +7 -0
- package/types/wasm/stack.d.ts +2 -0
- package/types/wasm/string.d.ts +2 -0
package/README.md
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
# Knuth WebAssembly
|
package/package.json
ADDED
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@knuth/js-wasm",
|
|
3
|
+
"version": "0.0.1",
|
|
4
|
+
"publishConfig": {
|
|
5
|
+
"access": "public"
|
|
6
|
+
},
|
|
7
|
+
"description": "",
|
|
8
|
+
"main": "src/kth.js",
|
|
9
|
+
"files": [
|
|
10
|
+
"src/kth.js",
|
|
11
|
+
"src/kth.wasm",
|
|
12
|
+
"LICENSE.md",
|
|
13
|
+
"types/**/*"
|
|
14
|
+
],
|
|
15
|
+
"types": "types/wasm/bootloader.d.ts",
|
|
16
|
+
"devDependencies": {
|
|
17
|
+
"@types/file-saver": "^2.0.6",
|
|
18
|
+
"@types/jest": "^29.5.6",
|
|
19
|
+
"@typescript-eslint/eslint-plugin": "^6.9.0",
|
|
20
|
+
"@typescript-eslint/parser": "^6.9.0",
|
|
21
|
+
"eslint": "^8.52.0",
|
|
22
|
+
"eslint-plugin-import": "^2.29.0",
|
|
23
|
+
"eslint-plugin-jest": "^27.4.3",
|
|
24
|
+
"file-saver": "^2.0.5",
|
|
25
|
+
"jest": "^29.7.0",
|
|
26
|
+
"ts-jest": "^29.1.1",
|
|
27
|
+
"ts-loader": "^9.5.0",
|
|
28
|
+
"ts-transformer-keys": "^0.4.4",
|
|
29
|
+
"typescript": "^5.2.2",
|
|
30
|
+
"webpack": "^5.89.0",
|
|
31
|
+
"webpack-cli": "^5.1.4"
|
|
32
|
+
},
|
|
33
|
+
"scripts": {
|
|
34
|
+
"test": "jest --runInBand --verbose"
|
|
35
|
+
},
|
|
36
|
+
"repository": {
|
|
37
|
+
"type": "git",
|
|
38
|
+
"url": "git+https://github.com/k-nuth/js-wasm.git"
|
|
39
|
+
},
|
|
40
|
+
|
|
41
|
+
"author": "Knuth Developers",
|
|
42
|
+
"license": "MIT",
|
|
43
|
+
"bugs": {
|
|
44
|
+
"url": "https://github.com/k-nuth/kth/issues"
|
|
45
|
+
},
|
|
46
|
+
"homepage": "https://github.com/k-nuth"
|
|
47
|
+
}
|
package/src/kth.js
ADDED
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
// Copyright (c) 2016-2023 Knuth Project developers.
|
|
2
|
+
// Distributed under the MIT software license, see the accompanying
|
|
3
|
+
// file COPYING or http://www.opensource.org/licenses/mit-license.php.
|
|
4
|
+
|
|
5
|
+
(()=>{
|
|
6
|
+
"use strict";var Module=typeof Module!="undefined"?Module:{};!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.kth=e():t.__KTH_MODULE__=e()}(globalThis,()=>(()=>{"use strict";var t={407:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.EllipticCurve=void 0;const s=r(760);class a{static secretToPublic(t){const e=new s.EcCompressedNative;if(s.EllipticCurveNative.secretToPublic(e,t))return e}}e.EllipticCurve=a,e.default=a},490:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.Kth=void 0;const s=r(760),a=r(33);class i{static getLibconfig(){const t=s.LibConfig.getLibconfig(),e={logLibrary:t.log_library,useLibmdbx:t.use_libmdbx,version:t.version,microarchitectureId:t.microarchitecture_id,currency:t.currency,mempool:t.mempool,dbReadonly:t.db_readonly,debugMode:t.debug_mode};return(0,a.free)(t),e}}e.Kth=i,e.default=i},644:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.PaymentAddress=void 0;const s=r(760),a=r(33);class i{static fromNative(t,e=!1){const r=new i(t.encodedCashaddr(!1),!1,!1);return e&&(0,a.free)(t),r}static fromString(t){const e=new s.PaymentAddressNative(t);if(!e.isValid())return void(0,a.free)(e);const r=i.fromNative(e);return(0,a.free)(e),r}static isValid(t){const e=new s.PaymentAddressNative(t),r=e.isValid();return(0,a.free)(e),r}constructor(t,e=!1,r=!1){this.addressStr=t,this.tokenAware=e,this.legacy=r}toNative(){return new s.PaymentAddressNative(this.addressStr)}get hash(){const t=this.toNative(),e=t.hash20();return(0,a.free)(t),e}get version(){const t=this.toNative(),e=t.version();return(0,a.free)(t),e}encoded(){if(this.tokenAware){const t=this.toNative(),e=t.encodedCashaddr(!1);return(0,a.free)(t),e}return this.addressStr}encodedCashAddr(){const t=this.toNative(),e=t.encodedCashaddr(!1);return(0,a.free)(t),e}encodedCashTokens(){const t=this.toNative(),e=t.encodedCashaddr(!0);return(0,a.free)(t),e}encodedLegacy(){const t=this.toNative(),e=t.encodedLegacy();return(0,a.free)(t),e}}e.PaymentAddress=i,e.default=i},88:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.Wallet=void 0;const s=r(407),a=r(760),i=r(644);class n{constructor(t,e,r="MAINNET"){this.mnemonic=t,this.derivationPath=e,this.network=r;const s=new a.StringListNative;this.mnemonic.forEach(t=>{s.pushBack(t)}),this.seed=a.WalletNative.mnemonicsToSeed(s);const i="MAINNET"===this.network?326702167824577054n:303293221666392015n;this.master=new a.HdPrivateNative(this.seed.hash,64,i),this.lastDerived=this.master.derivePrivate(2147483692);const n=this.derivationPath.split("/");this.lastDerived=n.reduce((t,e)=>{if("m"===e)return t;const r=e.endsWith("'");let s=parseInt(e,10);if(isNaN(s))throw new Error("Invalid derivation path.");return r&&(s+=2147483648),t.derivePrivate(s)},this.master)}get rootKey(){return this.master.encoded()}get extendedPrivateKey(){return this.lastDerived.encoded()}get extendedPublicKey(){return this.lastDerived.toPublic().encoded()}getAddress(t){const e=this.lastDerived.derivePrivate(t).secret(),r=s.default.secretToPublic(e);if(void 0===r)throw new Error("Invalid secret.");const n=new a.EcPublicNative(r,!0).toPaymentAddress("MAINNET"===this.network?0:5);return i.PaymentAddress.fromNative(n)}getAddresses(t=20,e=0){const r=[];for(let s=e;s<e+t;++s)r.push(this.getAddress(s));return r}deriveAccount(t){return new n(this.mnemonic,t,this.network)}}e.Wallet=n,e.default=n},354:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.FETCH_WITH_SHARED_ARRAY_BUFFER=e.IS_WEB_WORKER=e.IS_NODE_WORKER=e.IS_NODE_MAIN_THREAD=e.IS_WEB_MAIN_THREAD=e.IS_WORKER=void 0,e.IS_WORKER="function"==typeof globalThis.importScripts,e.IS_WEB_MAIN_THREAD="object"==typeof window,e.IS_NODE_MAIN_THREAD=!e.IS_WEB_MAIN_THREAD&&!e.IS_WORKER,e.IS_NODE_WORKER=e.IS_WORKER&&"function"==typeof globalThis.require,e.IS_WEB_WORKER=e.IS_WORKER&&!e.IS_NODE_WORKER;const r=!!/(?!Chrom.*OPR)Chrom(?:e|ium)\/([0-9\.]+)(:?\s|$)/.exec(globalThis?.navigator?.userAgent);e.FETCH_WITH_SHARED_ARRAY_BUFFER=r},183:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.malloc=e.free=e.Wallet=e.PaymentAddress=e.Kth=e.loadLib=void 0;const s=r(490);e.Kth=s.default;const a=r(644);e.PaymentAddress=a.default;const i=r(88);e.Wallet=i.default;const n=r(35);e.loadLib=n.default;const o=r(33);Object.defineProperty(e,"free",{enumerable:!0,get:function(){return o.free}}),Object.defineProperty(e,"malloc",{enumerable:!0,get:function(){return o.malloc}}),e.default={loadLib:n.default,Kth:s.default,PaymentAddress:a.default,Wallet:i.default,free:o.free,malloc:o.malloc}},344:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.stringToBytes=e.mapParallel=e.mapSeries=e.copyObject=e.isStringPair=e.isArrayArrayDate=e.isArrayDate=e.isDate=e.isArrayArrayString=e.isArrayString=void 0;const s=r(35),a=new RegExp("^(-?(?:[1-9][0-9]*)?[0-9]{4})-(1[0-2]|0[1-9])-(3[01]|0[1-9]|[12][0-9])T(2[0-3]|[01][0-9]):[0-5][0-9]:[0-5][0-9](.[0-9]+)?(Z|([+-])?(((2[0-3]|[01][0-9])[0-5][0-9])|((2[0-3]|[01][0-9]):[0-5][0-9])))?$");function i(t){return null!=t&&a.test(t)}e.isArrayString=function(t){return t.length>0&&"string"==typeof t.find(t=>null!=t)},e.isArrayArrayString=function(t){if(t.length>0){const e=t.find(t=>t.length>0);return null!=e&&"string"==typeof e[0]}return!1},e.isDate=i,e.isArrayDate=function(t){return t.length>0&&i(t.find(t=>null!=t))},e.isArrayArrayDate=function(t){if(t.length>0){const e=t.find(t=>null!=t&&t.length>0&&null!=t.find(t=>null!=t));return null!=e&&i(e.find(t=>null!=t))}return!1},e.isStringPair=function(t){return null!=t&&"object"==typeof t&&2===t.length&&"string"==typeof t[0]&&"string"==typeof t[1]},e.copyObject=function(t,e){const r={};return e.forEach(e=>r[e]=t[e]),r},e.mapSeries=async function(t,e){const r=[];for(let s=0;s<t.length;s++)r[s]=await e(t[s],s,t);return r},e.mapParallel=async function(t,e,r){e=Math.max(1,Math.min(e,t.length));const s=[];let a=0;const i=Array(e).fill(0).map(async()=>(async()=>{for(;a<t.length;){const e=a++,i=t[e];s[e]=await r(i,e,t)}})());return await Promise.all(i),s},e.stringToBytes=function(t){const e=/(\d+(?:\.\d+)?)\s?(k|m|g|t)?b?/i.exec(t);return null==e?0:parseInt(e[1],10)*(null!=e[2]?Math.pow(1024,{k:1,m:2,g:3,t:4}[e[2].toLowerCase()]):1)},s.default.promise.then(()=>{})},613:function(t,e,r){var s=this&&this.__createBinding||(Object.create?function(t,e,r,s){void 0===s&&(s=r);var a=Object.getOwnPropertyDescriptor(e,r);a&&!("get"in a?!e.__esModule:a.writable||a.configurable)||(a={enumerable:!0,get:function(){return e[r]}}),Object.defineProperty(t,s,a)}:function(t,e,r,s){void 0===s&&(s=r),t[s]=e[r]}),a=this&&this.__exportStar||function(t,e){for(var r in t)"default"===r||Object.prototype.hasOwnProperty.call(e,r)||s(e,t,r)};Object.defineProperty(e,"__esModule",{value:!0});const i=r(354);r(344);const n=new Promise(t=>{Module.__resolveFilePaths=t});if(i.IS_WEB_MAIN_THREAD){const t=globalThis.fetch;globalThis.fetch=async(e,r)=>e.includes("kth.wasm")?(await n,globalThis.fetch=t,t(Module.locateFile("kth.wasm"),r)):t(e,r)}else if(i.IS_NODE_MAIN_THREAD){const t=getBinaryPromise;getBinaryPromise=async e=>(await n,t(Module.locateFile(e)))}const o=r(183);a(r(183),e),e.default=o.default},760:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.WalletNative=e.EcPublicNative=e.EcPrivateNative=e.PaymentAddressNative=e.HdPrivateNative=e.HdPublicNative=e.EllipticCurveNative=e.HdLineageNative=e.WifCompressedNative=e.WifUncompressedNative=e.EcSecretNative=e.EcUncompressedNative=e.EcCompressedNative=e.HdKeyNative=e.HdChainCodeNative=e.LongHashNative=e.HashNative=e.ShortHashNative=e.StringListNative=e.LibConfig=void 0;const s=r(554),a=r(63),i=Symbol("ptr"),n=(Symbol("derivedClass"),["bitcoin","bitcoin_cash","litecoin"]),o=["boost","spdlog","binlog"];class _{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get log_library(){return o[_kth_wasm_0(this[i])]}get use_libmdbx(){return!!_kth_wasm_1(this[i])}get version(){return(0,a.UTF8ToString)(_kth_wasm_2(this[i])>>>0)}get microarchitecture_id(){return(0,a.UTF8ToString)(_kth_wasm_3(this[i])>>>0)}get currency(){return n[_kth_wasm_4(this[i])]}get mempool(){return!!_kth_wasm_5(this[i])}get db_readonly(){return!!_kth_wasm_6(this[i])}get debug_mode(){return!!_kth_wasm_7(this[i])}_destructor(){_kth_wasm_8(this[i])}static getLibconfig(){return _._create(_kth_wasm_9()>>>0)}}e.LibConfig=_,e.StringListNative=class{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}_destructor(){_kth_wasm_10(this[i])}constructor(){this[i]=_kth_wasm_11()>>>0}pushBack(t){(0,s.clearStack)(),_kth_wasm_12(this[i],(0,s.allocateUTF8String)(t))}};class c{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get hash(){return _kth_wasm_13(this[i])>>>0}_destructor(){_kth_wasm_14(this[i])}}e.ShortHashNative=c;class h{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get hash(){return _kth_wasm_15(this[i])>>>0}_destructor(){_kth_wasm_16(this[i])}}e.HashNative=h;class u{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get hash(){return _kth_wasm_17(this[i])>>>0}_destructor(){_kth_wasm_18(this[i])}}e.LongHashNative=u;class d{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get data(){return _kth_wasm_19(this[i])>>>0}_destructor(){_kth_wasm_20(this[i])}}e.HdChainCodeNative=d;class l{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get data(){return _kth_wasm_21(this[i])>>>0}_destructor(){_kth_wasm_22(this[i])}}e.HdKeyNative=l;class m{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get data(){return _kth_wasm_23(this[i])>>>0}_destructor(){_kth_wasm_24(this[i])}}e.EcCompressedNative=m,e.EcUncompressedNative=class{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get data(){return _kth_wasm_25(this[i])>>>0}_destructor(){_kth_wasm_26(this[i])}};class f{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get hash(){return _kth_wasm_27(this[i])>>>0}_destructor(){_kth_wasm_28(this[i])}}e.EcSecretNative=f;class p{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get data(){return _kth_wasm_29(this[i])>>>0}_destructor(){_kth_wasm_30(this[i])}}e.WifUncompressedNative=p;class w{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get data(){return _kth_wasm_31(this[i])>>>0}_destructor(){_kth_wasm_32(this[i])}}e.WifCompressedNative=w;class g{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}get prefixes(){return _kth_wasm_33(this[i])}get depth(){return _kth_wasm_34(this[i])}get parent_fingerprint(){return _kth_wasm_35(this[i])>>>0}get child_number(){return _kth_wasm_36(this[i])>>>0}_destructor(){_kth_wasm_37(this[i])}}e.HdLineageNative=g,e.EllipticCurveNative=class{static secretToPublic(t,e){return!!_kth_wasm_38(t[i],e[i])}};class v{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}_destructor(){_kth_wasm_39(this[i])}constructor(){this[i]=_kth_wasm_40()>>>0}isValid(){return!!_kth_wasm_41(this[i])}encoded(){return(0,a.UTF8ToString)(_kth_wasm_42(this[i])>>>0)}chainCode(){return d._create(_kth_wasm_43(this[i])>>>0)}lineage(){return g._create(_kth_wasm_44(this[i])>>>0)}point(){return m._create(_kth_wasm_45(this[i])>>>0)}toHdKey(){return l._create(_kth_wasm_46(this[i])>>>0)}derivePublic(t){return v._create(_kth_wasm_47(this[i],t)>>>0)}}e.HdPublicNative=v;class y{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}_destructor(){_kth_wasm_48(this[i])}constructor(t,e,r){(0,s.clearStack)(),this[i]=null==t?_kth_wasm_49_0()>>>0:"string"==typeof t?_kth_wasm_49_1((0,s.allocateUTF8String)(t))>>>0:_kth_wasm_49_2(t,e,r)>>>0}isValid(){return!!_kth_wasm_50(this[i])}encoded(){return(0,a.UTF8ToString)(_kth_wasm_51(this[i])>>>0)}secret(){return f._create(_kth_wasm_52(this[i])>>>0)}chainCode(){return d._create(_kth_wasm_53(this[i])>>>0)}lineage(){return g._create(_kth_wasm_54(this[i])>>>0)}point(){return m._create(_kth_wasm_55(this[i])>>>0)}toHdKeyNative(){return l._create(_kth_wasm_56(this[i])>>>0)}toPublic(){return v._create(_kth_wasm_57(this[i])>>>0)}derivePrivate(t){return y._create(_kth_wasm_58(this[i],t)>>>0)}derivePublic(t){return v._create(_kth_wasm_59(this[i],t)>>>0)}}e.HdPrivateNative=y;class k{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}_destructor(){_kth_wasm_60(this[i])}constructor(t,e){(0,s.clearStack)(),this[i]="string"==typeof t?_kth_wasm_61_0((0,s.allocateUTF8String)(t))>>>0:_kth_wasm_61_1(t[i],e)>>>0}encodedLegacy(){return(0,a.UTF8ToString)(_kth_wasm_62(this[i])>>>0)}encodedCashaddr(t){return(0,a.UTF8ToString)(_kth_wasm_63(this[i],t)>>>0)}hash20(){return c._create(_kth_wasm_64(this[i])>>>0)}hash32(){return h._create(_kth_wasm_65(this[i])>>>0)}version(){return _kth_wasm_66(this[i])}isValid(){return!!_kth_wasm_67(this[i])}}e.PaymentAddressNative=k;class b{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}_destructor(){_kth_wasm_68(this[i])}constructor(t,e,r){(0,s.clearStack)(),this[i]=null==t?_kth_wasm_69_0()>>>0:"string"==typeof t?_kth_wasm_69_1((0,s.allocateUTF8String)(t),e)>>>0:t instanceof w?_kth_wasm_69_2(t[i],e)>>>0:t instanceof p?_kth_wasm_69_3(t[i],e)>>>0:_kth_wasm_69_4(t[i],e,r)>>>0}isValid(){return!!_kth_wasm_70(this[i])}encoded(){return(0,a.UTF8ToString)(_kth_wasm_71(this[i])>>>0)}secret(){return f._create(_kth_wasm_72(this[i])>>>0)}version(){return _kth_wasm_73(this[i])}paymentVersion(){return _kth_wasm_74(this[i])}wifVersion(){return _kth_wasm_75(this[i])}compressed(){return!!_kth_wasm_76(this[i])}toPublic(){return N._create(_kth_wasm_77(this[i])>>>0)}toPaymentAddress(){return k._create(_kth_wasm_78(this[i])>>>0)}}e.EcPrivateNative=b;class N{static _create(t){const e=Object.create(this.prototype);return e[i]=t,e}_destructor(){_kth_wasm_79(this[i])}constructor(t,e){(0,s.clearStack)(),this[i]=null==t?_kth_wasm_80_0()>>>0:"string"==typeof t?_kth_wasm_80_1((0,s.allocateUTF8String)(t))>>>0:t instanceof b?_kth_wasm_80_2(t[i])>>>0:_kth_wasm_80_3(t[i],e)>>>0}isValid(){return!!_kth_wasm_81(this[i])}encoded(){return(0,a.UTF8ToString)(_kth_wasm_82(this[i])>>>0)}point(){return m._create(_kth_wasm_83(this[i])>>>0)}compressed(){return!!_kth_wasm_84(this[i])}toUncompressed(t){return!!_kth_wasm_85(this[i],t[i])}toPaymentAddress(t){return k._create(_kth_wasm_86(this[i],t)>>>0)}}e.EcPublicNative=N,e.WalletNative=class{static mnemonicsToSeed(t){return u._create(_kth_wasm_87(t[i])>>>0)}static hdNew(t,e){return y._create(_kth_wasm_88(t[i],e)>>>0)}static hdPrivateToEc(t){return f._create(_kth_wasm_89(t[i])>>>0)}static ecToPublic(t,e){return N._create(_kth_wasm_90(t[i],e)>>>0)}static ecToAddress(t,e){return k._create(_kth_wasm_91(t[i],e)>>>0)}}},35:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0});const s=r(354);var a;let i;r(643),function(t){t[t.unloaded=0]="unloaded",t[t.loading=1]="loading",t[t.loaded=2]="loaded"}(a||(a={}));const n=new Promise(t=>i=t),o={};function _(t,e){if(_.status!==a.unloaded)return _.promise;if(Module.mainScriptUrlOrBlob=e??"kth.js",o["kth.wasm"]=t??"kth.wasm",s.IS_WEB_MAIN_THREAD&&"string"==typeof Module.mainScriptUrlOrBlob){const t=new URL(Module.mainScriptUrlOrBlob,location.href).toString();Module.mainScriptUrlOrBlob=t}function r(){_.status=a.loaded,i()}return s.IS_WEB_MAIN_THREAD?window.addEventListener("_kthWasmLoaded",r):s.IS_NODE_MAIN_THREAD&&(globalThis._kthWasmLoaded=r),_.status=a.loading,Module.__resolveFilePaths(),n}Module.locateFile=t=>o[t]??t,_.promise=n,_.status=a.unloaded,e.default=_},33:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.buffer=e.free=e.malloc=void 0;const r=Symbol("custom_malloc_sym");function s(){return HEAPU8.buffer}e.buffer=s,e.malloc=function(t,e){const a=e*t.BYTES_PER_ELEMENT,i=Module._malloc(a)>>>0,n=new t(s(),i,e);return n[r]=!0,n.ptr=i,n},e.free=function(t){"number"==typeof t?Module._free(t):!0===t[r]?Module._free(t.ptr):t._destructor()}},554:(t,e,r)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.allocateUTF8String=e.clearStack=void 0;const s=r(35),a=r(63),i={reset(){this._usedBytes=0,this._toFree.forEach(t=>Module._free(t)),this._toFree.length=0},alloc(t){if(t>5120){const e=Module._malloc(t)>>>0;return this._toFree.push(e),e}if(this._usedBytes+t>this._size){const e=this._usedBytes+t+10240,r=Module._malloc(e)>>>0;0!==this._ptr&&this._toFree.push(this._ptr),this._ptr=r,this._usedBytes=0,this._size=e}const e=this._ptr+this._usedBytes;return this._usedBytes+=t,e},_ptr:0,_usedBytes:0,_size:0,_toFree:new Array};s.default.promise.then(()=>i.alloc(0)),e.clearStack=function(){i.reset()},e.allocateUTF8String=function(t){const e=3*t.length+10,r=i.alloc(e);return(0,a.StringToUTF8)(t,r,e),r}},63:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.StringToUTF8=e.UTF8ToString=void 0;const r=new TextDecoder("utf8"),s=new TextEncoder,a=new Array(128).fill("").map((t,e)=>String.fromCodePoint(e));e.UTF8ToString=function(t,e){return 0===t?"":(null==e&&(e=Module._strlen(t)),0===e?"":e>30?r.decode(HEAPU8.subarray(t>>>0,t+e>>>0)):function(t,e){const r=HEAPU8,s=t+e;let i,n,o,_="";for(;t<s;)i=r[t++],i<=127?_+=a[i]:(n=r[t++],o=i<=223?(31&i)<<6|63&n:i<=239?(15&i)<<12|(63&n)<<6|63&r[t++]:(7&i)<<18|(63&n)<<12|(63&r[t++])<<6|63&r[t++],_+=String.fromCodePoint(o));return _}(t,e))},e.StringToUTF8=function(t,e,r){const a=HEAPU8;if(t.length<100)return stringToUTF8Array(t,a,e,r);{const{written:i=0}=s.encodeInto(t,a.subarray(e,e+r));return a[e+Math.min(i,r-1)]=0,i}}},643:(t,e)=>{Object.defineProperty(e,"__esModule",{value:!0}),e.default="<WORKER_JS>"}},e={};return function r(s){var a=e[s];if(void 0!==a)return a.exports;var i=e[s]={exports:{}};return t[s].call(i.exports,i,i.exports,r),i.exports}(613)})());var moduleOverrides=Object.assign({},Module);var arguments_=[];var thisProgram="./this.program";var quit_=(status,toThrow)=>{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)onerror(err);else onload(binary?data.buffer:data)})};if(!Module["thisProgram"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){}process.on("uncaughtException",ex=>{if(ex!=="unwind"&&!(ex instanceof ExitStatus)&&!(ex.context instanceof ExitStatus)){throw ex}});quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow};Module["inspect"]=()=>"[Emscripten Module object]"}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=title=>document.title=title}else{}var out=console.log.bind(console);var err=console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;var wasmBinary;var noExitRuntime=true;if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var wasmExports;var ABORT=false;var EXITSTATUS;var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAP64,HEAPU64,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b);Module["HEAP64"]=HEAP64=new BigInt64Array(b);Module["HEAPU64"]=HEAPU64=new BigUint64Array(b)}var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){callRuntimeCallbacks(__ATPOSTRUN__)}function addOnInit(cb){__ATINIT__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function addRunDependency(id){runDependencies++}function removeRunDependency(id){runDependencies--;if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";if(runtimeInitialized){___trap()}var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="kth.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinarySync(file){if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{if(!response["ok"]){throw"failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()}).catch(()=>getBinarySync(binaryFile))}}return Promise.resolve().then(()=>getBinarySync(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>WebAssembly.instantiate(binary,imports)).then(instance=>instance).then(receiver,reason=>{err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}return instantiateArrayBuffer(binaryFile,imports,callback)}function createWasm(){var info={"a":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;exports=applySignatureConversions(exports);wasmExports=exports;wasmMemory=wasmExports["l"];updateMemoryViews();wasmTable=wasmExports["jb"];addOnInit(wasmExports["m"]);removeRunDependency("wasm-instantiate");return exports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var ASM_CONSTS={27940:()=>{if(typeof window!=="undefined"){window.dispatchEvent(new CustomEvent("_kthWasmLoaded"))}else{globalThis._kthWasmLoaded&&globalThis._kthWasmLoaded()}}};function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}var callRuntimeCallbacks=callbacks=>{while(callbacks.length>0){callbacks.shift()(Module)}};var _abort=()=>{abort("")};var readEmAsmArgsArray=[];var readEmAsmArgs=(sigPtr,buf)=>{readEmAsmArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++>>>0]){buf+=ch!=105&buf;readEmAsmArgsArray.push(ch==105?HEAP32[buf>>>0]:(ch==106?HEAP64:HEAPF64)[buf++>>1]);++buf}return readEmAsmArgsArray};var runMainThreadEmAsm=(code,sigPtr,argbuf,sync)=>{var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)};var MAX_INT53=9007199254740992;var MIN_INT53=-9007199254740992;function bigintToI53Checked(num){return num<MIN_INT53||num>MAX_INT53?NaN:Number(num)}function _emscripten_asm_const_async_on_main_thread(code,sigPtr,argbuf){code=bigintToI53Checked(code);sigPtr=bigintToI53Checked(sigPtr);argbuf=bigintToI53Checked(argbuf);return runMainThreadEmAsm(code,sigPtr,argbuf,0)}var _emscripten_exit_with_live_runtime=()=>{throw"unwind"};var getHeapMax=()=>4294901760;var _emscripten_get_heap_max=()=>BigInt(getHeapMax());var growMemory=size=>{var b=wasmMemory.buffer;var pages=size-b.byteLength+65535>>>16;try{wasmMemory.grow(pages);updateMemoryViews();return 1}catch(e){}};function _emscripten_resize_heap(requestedSize){requestedSize=bigintToI53Checked(requestedSize);var oldSize=HEAPU8.length;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=growMemory(newSize);if(replacement){return true}}return false}var ENV={};var getExecutableName=()=>thisProgram||"./this.program";var getEnvStrings=()=>{if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings};var stringToAscii=(str,buffer)=>{for(var i=0;i<str.length;++i){HEAP8[buffer++>>>0]=str.charCodeAt(i)}HEAP8[buffer>>>0]=0};var UTF8Decoder=new TextDecoder("utf8");var UTF8ToString=(ptr,maxBytesToRead)=>{ptr>>>=0;if(!ptr)return"";var maxPtr=ptr+maxBytesToRead;for(var end=ptr;!(end>=maxPtr)&&HEAPU8[end>>>0];)++end;return UTF8Decoder.decode(HEAPU8.subarray(ptr>>>0,end>>>0))};var SYSCALLS={varargs:undefined,get(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>>2];return ret},getStr(ptr){var ret=UTF8ToString(ptr);return ret}};function _environ_get(__environ,environ_buf){__environ=bigintToI53Checked(__environ);environ_buf=bigintToI53Checked(environ_buf);var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){penviron_count=bigintToI53Checked(penviron_count);penviron_buf_size=bigintToI53Checked(penviron_buf_size);var strings=getEnvStrings();HEAPU32[penviron_count>>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAPU32[penviron_buf_size>>>2]=bufSize;return 0}var _fd_close=fd=>52;function _fd_seek(fd,offset,whence,newOffset){offset=bigintToI53Checked(offset);newOffset=bigintToI53Checked(newOffset);return 70}var printCharBuffers=[null,[],[]];var UTF8ArrayToString=(heapOrArray,idx,maxBytesToRead)=>{idx>>>=0;var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;return UTF8Decoder.decode(heapOrArray.buffer?heapOrArray.subarray(idx,endPtr):new Uint8Array(heapOrArray.slice(idx,endPtr)))};var printChar=(stream,curr)=>{var buffer=printCharBuffers[stream];if(curr===0||curr===10){(stream===1?out:err)(UTF8ArrayToString(buffer,0));buffer.length=0}else{buffer.push(curr)}};function _fd_write(fd,iov,iovcnt,pnum){iov=bigintToI53Checked(iov);iovcnt=bigintToI53Checked(iovcnt);pnum=bigintToI53Checked(pnum);var num=0;for(var i=0;i<iovcnt;i++){var ptr=HEAPU32[iov>>>2];var len=HEAPU32[iov+4>>>2];iov+=8;for(var j=0;j<len;j++){printChar(fd,HEAPU8[ptr+j>>>0])}num+=len}HEAPU32[pnum>>>2]=num;return 0}var isLeapYear=year=>year%4===0&&(year%100!==0||year%400===0);var arraySum=(array,index)=>{var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum};var MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];var addDays=(date,days)=>{var newDate=new Date(date.getTime());while(days>0){var leap=isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate};var lengthBytesUTF8=str=>{var len=0;for(var i=0;i<str.length;++i){var c=str.charCodeAt(i);if(c<=127){len++}else if(c<=2047){len+=2}else if(c>=55296&&c<=57343){len+=4;++i}else{len+=3}}return len};var stringToUTF8Array=(str,heap,outIdx,maxBytesToWrite)=>{outIdx>>>=0;if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i<str.length;++i){var u=str.charCodeAt(i);if(u>=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++>>>0]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++>>>0]=192|u>>6;heap[outIdx++>>>0]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++>>>0]=224|u>>12;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++>>>0]=240|u>>18;heap[outIdx++>>>0]=128|u>>12&63;heap[outIdx++>>>0]=128|u>>6&63;heap[outIdx++>>>0]=128|u&63}}heap[outIdx>>>0]=0;return outIdx-startIdx};function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var writeArrayToMemory=(array,buffer)=>{HEAP8.set(array,buffer>>>0)};var _strftime=function(s,maxsize,format,tm){s=bigintToI53Checked(s);maxsize=bigintToI53Checked(maxsize);format=bigintToI53Checked(format);tm=bigintToI53Checked(tm);var ret=(()=>{var tm_zone=HEAP32[tm+40>>>2];var date={tm_sec:HEAP32[tm>>>2],tm_min:HEAP32[tm+4>>>2],tm_hour:HEAP32[tm+8>>>2],tm_mday:HEAP32[tm+12>>>2],tm_mon:HEAP32[tm+16>>>2],tm_year:HEAP32[tm+20>>>2],tm_wday:HEAP32[tm+24>>>2],tm_yday:HEAP32[tm+28>>>2],tm_isdst:HEAP32[tm+32>>>2],tm_gmtoff:HEAP32[tm+36>>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value=="number"?value.toString():value||"";while(str.length<digits){str=character[0]+str}return str}function leadingNulls(value,digits){return leadingSomething(value,digits,"0")}function compareByDay(date1,date2){function sgn(value){return value<0?-1:value>0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}return thisDate.getFullYear()}return thisDate.getFullYear()-1}var EXPANSION_RULES_2={"%a":date=>WEEKDAYS[date.tm_wday].substring(0,3),"%A":date=>WEEKDAYS[date.tm_wday],"%b":date=>MONTHS[date.tm_mon].substring(0,3),"%B":date=>MONTHS[date.tm_mon],"%C":date=>{var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":date=>leadingNulls(date.tm_mday,2),"%e":date=>leadingSomething(date.tm_mday,2," "),"%g":date=>getWeekBasedYear(date).toString().substring(2),"%G":date=>getWeekBasedYear(date),"%H":date=>leadingNulls(date.tm_hour,2),"%I":date=>{var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":date=>leadingNulls(date.tm_mday+arraySum(isLeapYear(date.tm_year+1900)?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,date.tm_mon-1),3),"%m":date=>leadingNulls(date.tm_mon+1,2),"%M":date=>leadingNulls(date.tm_min,2),"%n":()=>"\n","%p":date=>{if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}return"PM"},"%S":date=>leadingNulls(date.tm_sec,2),"%t":()=>"\t","%u":date=>date.tm_wday||7,"%U":date=>{var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},"%V":date=>{var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},"%w":date=>date.tm_wday,"%W":date=>{var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},"%y":date=>(date.tm_year+1900).toString().substring(2),"%Y":date=>date.tm_year+1900,"%z":date=>{var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":date=>date.tm_zone,"%%":()=>"%"};pattern=pattern.replace(/%%/g,"\0\0");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\0\0/g,"%");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1})();return BigInt(ret)};var _strftime_l=function(s,maxsize,format,tm,loc){s=bigintToI53Checked(s);maxsize=bigintToI53Checked(maxsize);format=bigintToI53Checked(format);tm=bigintToI53Checked(tm);loc=bigintToI53Checked(loc);var ret=(()=>_strftime(s,maxsize,format,tm))();return BigInt(ret)};var _proc_exit=code=>{EXITSTATUS=code;if(!keepRuntimeAlive()){ABORT=true}quit_(code,new ExitStatus(code))};var exitJS=(status,implicit)=>{EXITSTATUS=status;_proc_exit(status)};var handleException=e=>{if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)};var wasmImports={a:_abort,k:_emscripten_asm_const_async_on_main_thread,j:_emscripten_exit_with_live_runtime,e:_emscripten_get_heap_max,d:_emscripten_resize_heap,b:_environ_get,c:_environ_sizes_get,h:_fd_close,f:_fd_seek,g:_fd_write,i:_strftime_l};var asm=createWasm();var ___wasm_call_ctors=()=>(___wasm_call_ctors=wasmExports["m"])();var _kth_wasm_0=Module["_kth_wasm_0"]=a0=>(_kth_wasm_0=Module["_kth_wasm_0"]=wasmExports["n"])(a0);var _kth_wasm_1=Module["_kth_wasm_1"]=a0=>(_kth_wasm_1=Module["_kth_wasm_1"]=wasmExports["o"])(a0);var _kth_wasm_2=Module["_kth_wasm_2"]=a0=>(_kth_wasm_2=Module["_kth_wasm_2"]=wasmExports["p"])(a0);var _kth_wasm_3=Module["_kth_wasm_3"]=a0=>(_kth_wasm_3=Module["_kth_wasm_3"]=wasmExports["q"])(a0);var _kth_wasm_4=Module["_kth_wasm_4"]=a0=>(_kth_wasm_4=Module["_kth_wasm_4"]=wasmExports["r"])(a0);var _kth_wasm_5=Module["_kth_wasm_5"]=a0=>(_kth_wasm_5=Module["_kth_wasm_5"]=wasmExports["s"])(a0);var _kth_wasm_6=Module["_kth_wasm_6"]=a0=>(_kth_wasm_6=Module["_kth_wasm_6"]=wasmExports["t"])(a0);var _kth_wasm_7=Module["_kth_wasm_7"]=a0=>(_kth_wasm_7=Module["_kth_wasm_7"]=wasmExports["u"])(a0);var _kth_wasm_8=Module["_kth_wasm_8"]=a0=>(_kth_wasm_8=Module["_kth_wasm_8"]=wasmExports["v"])(a0);var _kth_wasm_9=Module["_kth_wasm_9"]=()=>(_kth_wasm_9=Module["_kth_wasm_9"]=wasmExports["w"])();var _kth_wasm_10=Module["_kth_wasm_10"]=a0=>(_kth_wasm_10=Module["_kth_wasm_10"]=wasmExports["x"])(a0);var _kth_wasm_11=Module["_kth_wasm_11"]=()=>(_kth_wasm_11=Module["_kth_wasm_11"]=wasmExports["y"])();var _kth_wasm_12=Module["_kth_wasm_12"]=(a0,a1)=>(_kth_wasm_12=Module["_kth_wasm_12"]=wasmExports["z"])(a0,a1);var _kth_wasm_13=Module["_kth_wasm_13"]=a0=>(_kth_wasm_13=Module["_kth_wasm_13"]=wasmExports["A"])(a0);var _kth_wasm_14=Module["_kth_wasm_14"]=a0=>(_kth_wasm_14=Module["_kth_wasm_14"]=wasmExports["B"])(a0);var _kth_wasm_15=Module["_kth_wasm_15"]=a0=>(_kth_wasm_15=Module["_kth_wasm_15"]=wasmExports["C"])(a0);var _kth_wasm_16=Module["_kth_wasm_16"]=a0=>(_kth_wasm_16=Module["_kth_wasm_16"]=wasmExports["D"])(a0);var _kth_wasm_17=Module["_kth_wasm_17"]=a0=>(_kth_wasm_17=Module["_kth_wasm_17"]=wasmExports["E"])(a0);var _kth_wasm_18=Module["_kth_wasm_18"]=a0=>(_kth_wasm_18=Module["_kth_wasm_18"]=wasmExports["F"])(a0);var _kth_wasm_19=Module["_kth_wasm_19"]=a0=>(_kth_wasm_19=Module["_kth_wasm_19"]=wasmExports["G"])(a0);var _kth_wasm_20=Module["_kth_wasm_20"]=a0=>(_kth_wasm_20=Module["_kth_wasm_20"]=wasmExports["H"])(a0);var _kth_wasm_21=Module["_kth_wasm_21"]=a0=>(_kth_wasm_21=Module["_kth_wasm_21"]=wasmExports["I"])(a0);var _kth_wasm_22=Module["_kth_wasm_22"]=a0=>(_kth_wasm_22=Module["_kth_wasm_22"]=wasmExports["J"])(a0);var _kth_wasm_23=Module["_kth_wasm_23"]=a0=>(_kth_wasm_23=Module["_kth_wasm_23"]=wasmExports["K"])(a0);var _kth_wasm_24=Module["_kth_wasm_24"]=a0=>(_kth_wasm_24=Module["_kth_wasm_24"]=wasmExports["L"])(a0);var _kth_wasm_25=Module["_kth_wasm_25"]=a0=>(_kth_wasm_25=Module["_kth_wasm_25"]=wasmExports["M"])(a0);var _kth_wasm_26=Module["_kth_wasm_26"]=a0=>(_kth_wasm_26=Module["_kth_wasm_26"]=wasmExports["N"])(a0);var _kth_wasm_27=Module["_kth_wasm_27"]=a0=>(_kth_wasm_27=Module["_kth_wasm_27"]=wasmExports["O"])(a0);var _kth_wasm_28=Module["_kth_wasm_28"]=a0=>(_kth_wasm_28=Module["_kth_wasm_28"]=wasmExports["P"])(a0);var _kth_wasm_29=Module["_kth_wasm_29"]=a0=>(_kth_wasm_29=Module["_kth_wasm_29"]=wasmExports["Q"])(a0);var _kth_wasm_30=Module["_kth_wasm_30"]=a0=>(_kth_wasm_30=Module["_kth_wasm_30"]=wasmExports["R"])(a0);var _kth_wasm_31=Module["_kth_wasm_31"]=a0=>(_kth_wasm_31=Module["_kth_wasm_31"]=wasmExports["S"])(a0);var _kth_wasm_32=Module["_kth_wasm_32"]=a0=>(_kth_wasm_32=Module["_kth_wasm_32"]=wasmExports["T"])(a0);var _kth_wasm_33=Module["_kth_wasm_33"]=a0=>(_kth_wasm_33=Module["_kth_wasm_33"]=wasmExports["U"])(a0);var _kth_wasm_34=Module["_kth_wasm_34"]=a0=>(_kth_wasm_34=Module["_kth_wasm_34"]=wasmExports["V"])(a0);var _kth_wasm_35=Module["_kth_wasm_35"]=a0=>(_kth_wasm_35=Module["_kth_wasm_35"]=wasmExports["W"])(a0);var _kth_wasm_36=Module["_kth_wasm_36"]=a0=>(_kth_wasm_36=Module["_kth_wasm_36"]=wasmExports["X"])(a0);var _kth_wasm_37=Module["_kth_wasm_37"]=a0=>(_kth_wasm_37=Module["_kth_wasm_37"]=wasmExports["Y"])(a0);var _kth_wasm_38=Module["_kth_wasm_38"]=(a0,a1)=>(_kth_wasm_38=Module["_kth_wasm_38"]=wasmExports["Z"])(a0,a1);var _kth_wasm_39=Module["_kth_wasm_39"]=a0=>(_kth_wasm_39=Module["_kth_wasm_39"]=wasmExports["_"])(a0);var _kth_wasm_40=Module["_kth_wasm_40"]=()=>(_kth_wasm_40=Module["_kth_wasm_40"]=wasmExports["$"])();var _kth_wasm_41=Module["_kth_wasm_41"]=a0=>(_kth_wasm_41=Module["_kth_wasm_41"]=wasmExports["aa"])(a0);var _kth_wasm_42=Module["_kth_wasm_42"]=a0=>(_kth_wasm_42=Module["_kth_wasm_42"]=wasmExports["ba"])(a0);var _kth_wasm_43=Module["_kth_wasm_43"]=a0=>(_kth_wasm_43=Module["_kth_wasm_43"]=wasmExports["ca"])(a0);var _kth_wasm_44=Module["_kth_wasm_44"]=a0=>(_kth_wasm_44=Module["_kth_wasm_44"]=wasmExports["da"])(a0);var _kth_wasm_45=Module["_kth_wasm_45"]=a0=>(_kth_wasm_45=Module["_kth_wasm_45"]=wasmExports["ea"])(a0);var _kth_wasm_46=Module["_kth_wasm_46"]=a0=>(_kth_wasm_46=Module["_kth_wasm_46"]=wasmExports["fa"])(a0);var _kth_wasm_47=Module["_kth_wasm_47"]=(a0,a1)=>(_kth_wasm_47=Module["_kth_wasm_47"]=wasmExports["ga"])(a0,a1);var _kth_wasm_48=Module["_kth_wasm_48"]=a0=>(_kth_wasm_48=Module["_kth_wasm_48"]=wasmExports["ha"])(a0);var _kth_wasm_49_0=Module["_kth_wasm_49_0"]=()=>(_kth_wasm_49_0=Module["_kth_wasm_49_0"]=wasmExports["ia"])();var _kth_wasm_49_1=Module["_kth_wasm_49_1"]=a0=>(_kth_wasm_49_1=Module["_kth_wasm_49_1"]=wasmExports["ja"])(a0);var _kth_wasm_49_2=Module["_kth_wasm_49_2"]=(a0,a1,a2)=>(_kth_wasm_49_2=Module["_kth_wasm_49_2"]=wasmExports["ka"])(a0,a1,a2);var _kth_wasm_50=Module["_kth_wasm_50"]=a0=>(_kth_wasm_50=Module["_kth_wasm_50"]=wasmExports["la"])(a0);var _kth_wasm_51=Module["_kth_wasm_51"]=a0=>(_kth_wasm_51=Module["_kth_wasm_51"]=wasmExports["ma"])(a0);var _kth_wasm_52=Module["_kth_wasm_52"]=a0=>(_kth_wasm_52=Module["_kth_wasm_52"]=wasmExports["na"])(a0);var _kth_wasm_53=Module["_kth_wasm_53"]=a0=>(_kth_wasm_53=Module["_kth_wasm_53"]=wasmExports["oa"])(a0);var _kth_wasm_54=Module["_kth_wasm_54"]=a0=>(_kth_wasm_54=Module["_kth_wasm_54"]=wasmExports["pa"])(a0);var _kth_wasm_55=Module["_kth_wasm_55"]=a0=>(_kth_wasm_55=Module["_kth_wasm_55"]=wasmExports["qa"])(a0);var _kth_wasm_56=Module["_kth_wasm_56"]=a0=>(_kth_wasm_56=Module["_kth_wasm_56"]=wasmExports["ra"])(a0);var _kth_wasm_57=Module["_kth_wasm_57"]=a0=>(_kth_wasm_57=Module["_kth_wasm_57"]=wasmExports["sa"])(a0);var _kth_wasm_58=Module["_kth_wasm_58"]=(a0,a1)=>(_kth_wasm_58=Module["_kth_wasm_58"]=wasmExports["ta"])(a0,a1);var _kth_wasm_59=Module["_kth_wasm_59"]=(a0,a1)=>(_kth_wasm_59=Module["_kth_wasm_59"]=wasmExports["ua"])(a0,a1);var _kth_wasm_60=Module["_kth_wasm_60"]=a0=>(_kth_wasm_60=Module["_kth_wasm_60"]=wasmExports["va"])(a0);var _kth_wasm_61_0=Module["_kth_wasm_61_0"]=a0=>(_kth_wasm_61_0=Module["_kth_wasm_61_0"]=wasmExports["wa"])(a0);var _kth_wasm_61_1=Module["_kth_wasm_61_1"]=(a0,a1)=>(_kth_wasm_61_1=Module["_kth_wasm_61_1"]=wasmExports["xa"])(a0,a1);var _kth_wasm_62=Module["_kth_wasm_62"]=a0=>(_kth_wasm_62=Module["_kth_wasm_62"]=wasmExports["ya"])(a0);var _kth_wasm_63=Module["_kth_wasm_63"]=(a0,a1)=>(_kth_wasm_63=Module["_kth_wasm_63"]=wasmExports["za"])(a0,a1);var _kth_wasm_64=Module["_kth_wasm_64"]=a0=>(_kth_wasm_64=Module["_kth_wasm_64"]=wasmExports["Aa"])(a0);var _kth_wasm_65=Module["_kth_wasm_65"]=a0=>(_kth_wasm_65=Module["_kth_wasm_65"]=wasmExports["Ba"])(a0);var _kth_wasm_66=Module["_kth_wasm_66"]=a0=>(_kth_wasm_66=Module["_kth_wasm_66"]=wasmExports["Ca"])(a0);var _kth_wasm_67=Module["_kth_wasm_67"]=a0=>(_kth_wasm_67=Module["_kth_wasm_67"]=wasmExports["Da"])(a0);var _kth_wasm_68=Module["_kth_wasm_68"]=a0=>(_kth_wasm_68=Module["_kth_wasm_68"]=wasmExports["Ea"])(a0);var _kth_wasm_69_0=Module["_kth_wasm_69_0"]=()=>(_kth_wasm_69_0=Module["_kth_wasm_69_0"]=wasmExports["Fa"])();var _kth_wasm_69_1=Module["_kth_wasm_69_1"]=(a0,a1)=>(_kth_wasm_69_1=Module["_kth_wasm_69_1"]=wasmExports["Ga"])(a0,a1);var _kth_wasm_69_2=Module["_kth_wasm_69_2"]=(a0,a1)=>(_kth_wasm_69_2=Module["_kth_wasm_69_2"]=wasmExports["Ha"])(a0,a1);var _kth_wasm_69_3=Module["_kth_wasm_69_3"]=(a0,a1)=>(_kth_wasm_69_3=Module["_kth_wasm_69_3"]=wasmExports["Ia"])(a0,a1);var _kth_wasm_69_4=Module["_kth_wasm_69_4"]=(a0,a1,a2)=>(_kth_wasm_69_4=Module["_kth_wasm_69_4"]=wasmExports["Ja"])(a0,a1,a2);var _kth_wasm_70=Module["_kth_wasm_70"]=a0=>(_kth_wasm_70=Module["_kth_wasm_70"]=wasmExports["Ka"])(a0);var _kth_wasm_71=Module["_kth_wasm_71"]=a0=>(_kth_wasm_71=Module["_kth_wasm_71"]=wasmExports["La"])(a0);var _kth_wasm_72=Module["_kth_wasm_72"]=a0=>(_kth_wasm_72=Module["_kth_wasm_72"]=wasmExports["Ma"])(a0);var _kth_wasm_73=Module["_kth_wasm_73"]=a0=>(_kth_wasm_73=Module["_kth_wasm_73"]=wasmExports["Na"])(a0);var _kth_wasm_74=Module["_kth_wasm_74"]=a0=>(_kth_wasm_74=Module["_kth_wasm_74"]=wasmExports["Oa"])(a0);var _kth_wasm_75=Module["_kth_wasm_75"]=a0=>(_kth_wasm_75=Module["_kth_wasm_75"]=wasmExports["Pa"])(a0);var _kth_wasm_76=Module["_kth_wasm_76"]=a0=>(_kth_wasm_76=Module["_kth_wasm_76"]=wasmExports["Qa"])(a0);var _kth_wasm_77=Module["_kth_wasm_77"]=a0=>(_kth_wasm_77=Module["_kth_wasm_77"]=wasmExports["Ra"])(a0);var _kth_wasm_78=Module["_kth_wasm_78"]=a0=>(_kth_wasm_78=Module["_kth_wasm_78"]=wasmExports["Sa"])(a0);var _kth_wasm_79=Module["_kth_wasm_79"]=a0=>(_kth_wasm_79=Module["_kth_wasm_79"]=wasmExports["Ta"])(a0);var _kth_wasm_80_0=Module["_kth_wasm_80_0"]=()=>(_kth_wasm_80_0=Module["_kth_wasm_80_0"]=wasmExports["Ua"])();var _kth_wasm_80_1=Module["_kth_wasm_80_1"]=a0=>(_kth_wasm_80_1=Module["_kth_wasm_80_1"]=wasmExports["Va"])(a0);var _kth_wasm_80_2=Module["_kth_wasm_80_2"]=a0=>(_kth_wasm_80_2=Module["_kth_wasm_80_2"]=wasmExports["Wa"])(a0);var _kth_wasm_80_3=Module["_kth_wasm_80_3"]=(a0,a1)=>(_kth_wasm_80_3=Module["_kth_wasm_80_3"]=wasmExports["Xa"])(a0,a1);var _kth_wasm_81=Module["_kth_wasm_81"]=a0=>(_kth_wasm_81=Module["_kth_wasm_81"]=wasmExports["Ya"])(a0);var _kth_wasm_82=Module["_kth_wasm_82"]=a0=>(_kth_wasm_82=Module["_kth_wasm_82"]=wasmExports["Za"])(a0);var _kth_wasm_83=Module["_kth_wasm_83"]=a0=>(_kth_wasm_83=Module["_kth_wasm_83"]=wasmExports["_a"])(a0);var _kth_wasm_84=Module["_kth_wasm_84"]=a0=>(_kth_wasm_84=Module["_kth_wasm_84"]=wasmExports["$a"])(a0);var _kth_wasm_85=Module["_kth_wasm_85"]=(a0,a1)=>(_kth_wasm_85=Module["_kth_wasm_85"]=wasmExports["ab"])(a0,a1);var _kth_wasm_86=Module["_kth_wasm_86"]=(a0,a1)=>(_kth_wasm_86=Module["_kth_wasm_86"]=wasmExports["bb"])(a0,a1);var _kth_wasm_87=Module["_kth_wasm_87"]=a0=>(_kth_wasm_87=Module["_kth_wasm_87"]=wasmExports["cb"])(a0);var _kth_wasm_88=Module["_kth_wasm_88"]=(a0,a1)=>(_kth_wasm_88=Module["_kth_wasm_88"]=wasmExports["db"])(a0,a1);var _kth_wasm_89=Module["_kth_wasm_89"]=a0=>(_kth_wasm_89=Module["_kth_wasm_89"]=wasmExports["eb"])(a0);var _kth_wasm_90=Module["_kth_wasm_90"]=(a0,a1)=>(_kth_wasm_90=Module["_kth_wasm_90"]=wasmExports["fb"])(a0,a1);var _kth_wasm_91=Module["_kth_wasm_91"]=(a0,a1)=>(_kth_wasm_91=Module["_kth_wasm_91"]=wasmExports["gb"])(a0,a1);var _main=Module["_main"]=(a0,a1)=>(_main=Module["_main"]=wasmExports["hb"])(a0,a1);var _strlen=Module["_strlen"]=a0=>(_strlen=Module["_strlen"]=wasmExports["ib"])(a0);var _malloc=Module["_malloc"]=a0=>(_malloc=Module["_malloc"]=wasmExports["kb"])(a0);var _free=Module["_free"]=a0=>(_free=Module["_free"]=wasmExports["lb"])(a0);var ___trap=()=>(___trap=wasmExports["mb"])();function applySignatureConversions(exports){exports=Object.assign({},exports);var makeWrapper_pp=f=>a0=>f(a0)>>>0;var makeWrapper_p=f=>()=>f()>>>0;exports["malloc"]=makeWrapper_pp(exports["malloc"]);exports["stackSave"]=makeWrapper_p(exports["stackSave"]);exports["stackAlloc"]=makeWrapper_pp(exports["stackAlloc"]);return exports}var calledRun;dependenciesFulfilled=function runCaller(){if(!calledRun)run();if(!calledRun)dependenciesFulfilled=runCaller};function callMain(){var entryFunction=_main;var argc=0;var argv=0;try{var ret=entryFunction(argc,argv);exitJS(ret,true);return ret}catch(e){return handleException(e)}}function run(){if(runDependencies>0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();if(shouldRunNow)callMain();postRun()}{doRun()}}var shouldRunNow=true;run();
|
|
7
|
+
})()
|
package/src/kth.wasm
ADDED
|
Binary file
|
package/types/Kth.d.ts
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare class Kth {
|
|
2
|
+
static getLibconfig(): {
|
|
3
|
+
logLibrary: "boost" | "spdlog" | "binlog";
|
|
4
|
+
useLibmdbx: boolean;
|
|
5
|
+
version: string;
|
|
6
|
+
microarchitectureId: string;
|
|
7
|
+
currency: "bitcoin" | "bitcoin_cash" | "litecoin";
|
|
8
|
+
mempool: boolean;
|
|
9
|
+
dbReadonly: boolean;
|
|
10
|
+
debugMode: boolean;
|
|
11
|
+
};
|
|
12
|
+
}
|
|
13
|
+
export default Kth;
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export declare class LazySequence<T> {
|
|
2
|
+
private generatorFunc;
|
|
3
|
+
private startIndex;
|
|
4
|
+
constructor(generatorFunc: () => Generator<T>, startIndex?: number);
|
|
5
|
+
[Symbol.iterator](): Generator<T, void, unknown>;
|
|
6
|
+
take(count: number): LazySequence<T>;
|
|
7
|
+
skip(count: number): LazySequence<T>;
|
|
8
|
+
map<U>(transformFunc: (item: T) => U): LazySequence<U>;
|
|
9
|
+
toArray(): T[];
|
|
10
|
+
forEach(callback: (item: T) => void): void;
|
|
11
|
+
}
|
|
12
|
+
export default LazySequence;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { PaymentAddressNative } from './wasm/glue';
|
|
2
|
+
export declare class PaymentAddress {
|
|
3
|
+
private addressStr;
|
|
4
|
+
private tokenAware;
|
|
5
|
+
private legacy;
|
|
6
|
+
static fromNative(native: PaymentAddressNative, destroy?: boolean): PaymentAddress;
|
|
7
|
+
static fromString(addressStr: string): PaymentAddress | undefined;
|
|
8
|
+
static isValid(addressStr: string): boolean;
|
|
9
|
+
constructor(addressStr: string, tokenAware?: boolean, legacy?: boolean);
|
|
10
|
+
toNative(): PaymentAddressNative;
|
|
11
|
+
get hash(): import("./wasm/glue").ShortHashNative;
|
|
12
|
+
get version(): number;
|
|
13
|
+
encoded(): string;
|
|
14
|
+
encodedCashAddr(): string;
|
|
15
|
+
encodedCashTokens(): string;
|
|
16
|
+
encodedLegacy(): string;
|
|
17
|
+
}
|
|
18
|
+
export default PaymentAddress;
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { LongHashNative } from './wasm/glue';
|
|
2
|
+
import { PaymentAddress } from './PaymentAddress';
|
|
3
|
+
export declare class Wallet {
|
|
4
|
+
private mnemonic;
|
|
5
|
+
private derivationPath;
|
|
6
|
+
private network;
|
|
7
|
+
seed: LongHashNative;
|
|
8
|
+
private master;
|
|
9
|
+
private lastDerived;
|
|
10
|
+
constructor(mnemonic: string[], derivationPath: string, network?: string);
|
|
11
|
+
get rootKey(): string;
|
|
12
|
+
get extendedPrivateKey(): string;
|
|
13
|
+
get extendedPublicKey(): string;
|
|
14
|
+
getAddress(index: number): PaymentAddress;
|
|
15
|
+
getAddresses(count?: number, from?: number): PaymentAddress[];
|
|
16
|
+
deriveAccount(derivationPath: string): Wallet;
|
|
17
|
+
}
|
|
18
|
+
export default Wallet;
|
package/types/env.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export declare const IS_WORKER: boolean;
|
|
2
|
+
export declare const IS_WEB_MAIN_THREAD: boolean;
|
|
3
|
+
export declare const IS_NODE_MAIN_THREAD: boolean;
|
|
4
|
+
export declare const IS_NODE_WORKER: boolean;
|
|
5
|
+
export declare const IS_WEB_WORKER: boolean;
|
|
6
|
+
export declare const FETCH_WITH_SHARED_ARRAY_BUFFER: boolean;
|
package/types/main.d.ts
ADDED
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import Kth from './Kth';
|
|
2
|
+
import PaymentAddress from './PaymentAddress';
|
|
3
|
+
import Wallet from './Wallet';
|
|
4
|
+
import loadLib from './wasm/loadLib';
|
|
5
|
+
import { free, malloc } from './wasm/mem';
|
|
6
|
+
export { loadLib, Kth, PaymentAddress, Wallet, free, malloc };
|
|
7
|
+
declare const _default: {
|
|
8
|
+
loadLib: typeof loadLib;
|
|
9
|
+
Kth: typeof Kth;
|
|
10
|
+
PaymentAddress: typeof PaymentAddress;
|
|
11
|
+
Wallet: typeof Wallet;
|
|
12
|
+
free: typeof free;
|
|
13
|
+
malloc: typeof malloc;
|
|
14
|
+
};
|
|
15
|
+
export default _default;
|
package/types/types.d.ts
ADDED
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
export type OnlyAttributes<T extends object> = WithoutValueType<WithoutKeyType<T, Symbol>, Function>;
|
|
2
|
+
export type WithoutKeyType<T extends object, KT> = {
|
|
3
|
+
[P in keyof T as P extends KT ? never : P]: T[P];
|
|
4
|
+
};
|
|
5
|
+
export type WithoutValueType<T extends object, VT> = {
|
|
6
|
+
[P in keyof T as T[P] extends VT ? never : P]: T[P];
|
|
7
|
+
};
|
|
8
|
+
type CommonKeysAndTypes<A, B> = {
|
|
9
|
+
[K in keyof A & keyof B]: A[K] extends B[K] ? K : never;
|
|
10
|
+
}[keyof A & keyof B];
|
|
11
|
+
type NotCommonKeysAndTypes<A, B> = Exclude<keyof A, CommonKeysAndTypes<A, B>>;
|
|
12
|
+
export type AnyTypedArray = Int8Array | Uint8Array | Uint8ClampedArray | Int16Array | Uint16Array | Int32Array | Uint32Array | Float32Array | Float64Array;
|
|
13
|
+
export type ObjectCommonKeysAndTypes<A, B> = {
|
|
14
|
+
[K in CommonKeysAndTypes<A, B>]: A[K];
|
|
15
|
+
};
|
|
16
|
+
export type ObjectNotCommonKeysAndTypes<A, B> = {
|
|
17
|
+
[K in NotCommonKeysAndTypes<A, B>]: A[K];
|
|
18
|
+
};
|
|
19
|
+
export interface Segment {
|
|
20
|
+
mode: 'VALUES' | 'RANGE' | 'EVERYTHING' | 'SELECTION';
|
|
21
|
+
column?: string | null;
|
|
22
|
+
values?: Array<number> | Array<string> | null;
|
|
23
|
+
range?: [number, number] | [string, string] | null;
|
|
24
|
+
}
|
|
25
|
+
export {};
|
package/types/utils.d.ts
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { WithoutKeyType } from './types';
|
|
2
|
+
export declare function isArrayString(obj: any): obj is Array<string | null>;
|
|
3
|
+
export declare function isArrayArrayString(obj: any): obj is Array<Array<string>>;
|
|
4
|
+
export declare function isDate(date: string | null | undefined): boolean;
|
|
5
|
+
export declare function isArrayDate(obj: Array<string | null>): boolean;
|
|
6
|
+
export declare function isArrayArrayDate(obj: Array<Array<string>>): boolean;
|
|
7
|
+
export declare function isStringPair(obj: any): obj is [string, string];
|
|
8
|
+
export declare function copyObject<T extends object>(obj: T, attrs: Array<string>): WithoutKeyType<T, Symbol>;
|
|
9
|
+
export declare function mapSeries<T, U>(array: Array<T>, callback: (value: T, index: number, array: Array<T>) => Promise<U>): Promise<U[]>;
|
|
10
|
+
export declare function mapParallel<T, U>(array: Array<T>, nWorkers: number, callback: (value: T, index: number, array: Array<T>) => Promise<U>): Promise<U[]>;
|
|
11
|
+
export declare function stringToBytes(str: string): number;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export default interface EmscriptenModule {
|
|
2
|
+
readonly _malloc: (size: number) => number;
|
|
3
|
+
readonly _free: (ptr: number) => void;
|
|
4
|
+
readonly _strlen: (ptr: number) => number;
|
|
5
|
+
wasmMemory: WebAssembly.Memory;
|
|
6
|
+
locateFile: (fileName: string) => string;
|
|
7
|
+
mainScriptUrlOrBlob: string | Blob | undefined;
|
|
8
|
+
}
|
|
@@ -0,0 +1,184 @@
|
|
|
1
|
+
declare const ptrSym: unique symbol;
|
|
2
|
+
declare const _CurrencyIntToKey: readonly ["bitcoin", "bitcoin_cash", "litecoin"];
|
|
3
|
+
export declare type Currency = (typeof _CurrencyIntToKey)[number];
|
|
4
|
+
declare const _LogLibraryIntToKey: readonly ["boost", "spdlog", "binlog"];
|
|
5
|
+
export declare type LogLibrary = (typeof _LogLibraryIntToKey)[number];
|
|
6
|
+
export declare class LibConfig {
|
|
7
|
+
private readonly [ptrSym];
|
|
8
|
+
static _create(ptr: number): LibConfig;
|
|
9
|
+
get log_library(): LogLibrary;
|
|
10
|
+
get use_libmdbx(): boolean;
|
|
11
|
+
get version(): string;
|
|
12
|
+
get microarchitecture_id(): string;
|
|
13
|
+
get currency(): Currency;
|
|
14
|
+
get mempool(): boolean;
|
|
15
|
+
get db_readonly(): boolean;
|
|
16
|
+
get debug_mode(): boolean;
|
|
17
|
+
protected _destructor(): void;
|
|
18
|
+
static getLibconfig(): LibConfig;
|
|
19
|
+
}
|
|
20
|
+
export declare class StringListNative {
|
|
21
|
+
private readonly [ptrSym];
|
|
22
|
+
static _create(ptr: number): StringListNative;
|
|
23
|
+
protected _destructor(): void;
|
|
24
|
+
constructor();
|
|
25
|
+
pushBack(string: string): void;
|
|
26
|
+
}
|
|
27
|
+
export declare class ShortHashNative {
|
|
28
|
+
private readonly [ptrSym];
|
|
29
|
+
static _create(ptr: number): ShortHashNative;
|
|
30
|
+
get hash(): number;
|
|
31
|
+
protected _destructor(): void;
|
|
32
|
+
}
|
|
33
|
+
export declare class HashNative {
|
|
34
|
+
private readonly [ptrSym];
|
|
35
|
+
static _create(ptr: number): HashNative;
|
|
36
|
+
get hash(): number;
|
|
37
|
+
protected _destructor(): void;
|
|
38
|
+
}
|
|
39
|
+
export declare class LongHashNative {
|
|
40
|
+
private readonly [ptrSym];
|
|
41
|
+
static _create(ptr: number): LongHashNative;
|
|
42
|
+
get hash(): number;
|
|
43
|
+
protected _destructor(): void;
|
|
44
|
+
}
|
|
45
|
+
export declare class HdChainCodeNative {
|
|
46
|
+
private readonly [ptrSym];
|
|
47
|
+
static _create(ptr: number): HdChainCodeNative;
|
|
48
|
+
get data(): number;
|
|
49
|
+
protected _destructor(): void;
|
|
50
|
+
}
|
|
51
|
+
export declare class HdKeyNative {
|
|
52
|
+
private readonly [ptrSym];
|
|
53
|
+
static _create(ptr: number): HdKeyNative;
|
|
54
|
+
get data(): number;
|
|
55
|
+
protected _destructor(): void;
|
|
56
|
+
}
|
|
57
|
+
export declare class EcCompressedNative {
|
|
58
|
+
private readonly [ptrSym];
|
|
59
|
+
static _create(ptr: number): EcCompressedNative;
|
|
60
|
+
get data(): number;
|
|
61
|
+
protected _destructor(): void;
|
|
62
|
+
}
|
|
63
|
+
export declare class EcUncompressedNative {
|
|
64
|
+
private readonly [ptrSym];
|
|
65
|
+
static _create(ptr: number): EcUncompressedNative;
|
|
66
|
+
get data(): number;
|
|
67
|
+
protected _destructor(): void;
|
|
68
|
+
}
|
|
69
|
+
export declare class EcSecretNative {
|
|
70
|
+
private readonly [ptrSym];
|
|
71
|
+
static _create(ptr: number): EcSecretNative;
|
|
72
|
+
get hash(): number;
|
|
73
|
+
protected _destructor(): void;
|
|
74
|
+
}
|
|
75
|
+
export declare class WifUncompressedNative {
|
|
76
|
+
private readonly [ptrSym];
|
|
77
|
+
static _create(ptr: number): WifUncompressedNative;
|
|
78
|
+
get data(): number;
|
|
79
|
+
protected _destructor(): void;
|
|
80
|
+
}
|
|
81
|
+
export declare class WifCompressedNative {
|
|
82
|
+
private readonly [ptrSym];
|
|
83
|
+
static _create(ptr: number): WifCompressedNative;
|
|
84
|
+
get data(): number;
|
|
85
|
+
protected _destructor(): void;
|
|
86
|
+
}
|
|
87
|
+
export declare class HdLineageNative {
|
|
88
|
+
private readonly [ptrSym];
|
|
89
|
+
static _create(ptr: number): HdLineageNative;
|
|
90
|
+
get prefixes(): bigint;
|
|
91
|
+
get depth(): number;
|
|
92
|
+
get parent_fingerprint(): number;
|
|
93
|
+
get child_number(): number;
|
|
94
|
+
protected _destructor(): void;
|
|
95
|
+
}
|
|
96
|
+
export declare class EllipticCurveNative {
|
|
97
|
+
static secretToPublic(out: EcCompressedNative, secret: EcSecretNative): boolean;
|
|
98
|
+
}
|
|
99
|
+
export declare class HdPublicNative {
|
|
100
|
+
private readonly [ptrSym];
|
|
101
|
+
static _create(ptr: number): HdPublicNative;
|
|
102
|
+
protected _destructor(): void;
|
|
103
|
+
constructor();
|
|
104
|
+
isValid(): boolean;
|
|
105
|
+
encoded(): string;
|
|
106
|
+
chainCode(): HdChainCodeNative;
|
|
107
|
+
lineage(): HdLineageNative;
|
|
108
|
+
point(): EcCompressedNative;
|
|
109
|
+
toHdKey(): HdKeyNative;
|
|
110
|
+
derivePublic(index: number): HdPublicNative;
|
|
111
|
+
}
|
|
112
|
+
export declare class HdPrivateNative {
|
|
113
|
+
private readonly [ptrSym];
|
|
114
|
+
static _create(ptr: number): HdPrivateNative;
|
|
115
|
+
protected _destructor(): void;
|
|
116
|
+
constructor();
|
|
117
|
+
constructor(encoded: string);
|
|
118
|
+
constructor(seed: number, size: number, prefixes: bigint);
|
|
119
|
+
isValid(): boolean;
|
|
120
|
+
encoded(): string;
|
|
121
|
+
secret(): EcSecretNative;
|
|
122
|
+
chainCode(): HdChainCodeNative;
|
|
123
|
+
lineage(): HdLineageNative;
|
|
124
|
+
point(): EcCompressedNative;
|
|
125
|
+
toHdKeyNative(): HdKeyNative;
|
|
126
|
+
toPublic(): HdPublicNative;
|
|
127
|
+
derivePrivate(index: number): HdPrivateNative;
|
|
128
|
+
derivePublic(index: number): HdPublicNative;
|
|
129
|
+
}
|
|
130
|
+
export declare class PaymentAddressNative {
|
|
131
|
+
private readonly [ptrSym];
|
|
132
|
+
static _create(ptr: number): PaymentAddressNative;
|
|
133
|
+
protected _destructor(): void;
|
|
134
|
+
constructor(address: string);
|
|
135
|
+
constructor(hash: ShortHashNative, version: number);
|
|
136
|
+
encodedLegacy(): string;
|
|
137
|
+
encodedCashaddr(tokenAware: boolean): string;
|
|
138
|
+
hash20(): ShortHashNative;
|
|
139
|
+
hash32(): HashNative;
|
|
140
|
+
version(): number;
|
|
141
|
+
isValid(): boolean;
|
|
142
|
+
}
|
|
143
|
+
export declare class EcPrivateNative {
|
|
144
|
+
private readonly [ptrSym];
|
|
145
|
+
static _create(ptr: number): EcPrivateNative;
|
|
146
|
+
protected _destructor(): void;
|
|
147
|
+
constructor();
|
|
148
|
+
constructor(wif: string, version: number);
|
|
149
|
+
constructor(wif: WifCompressedNative, version: number);
|
|
150
|
+
constructor(wif: WifUncompressedNative, version: number);
|
|
151
|
+
constructor(secret: EcSecretNative, version: number, compress: boolean);
|
|
152
|
+
isValid(): boolean;
|
|
153
|
+
encoded(): string;
|
|
154
|
+
secret(): EcSecretNative;
|
|
155
|
+
version(): number;
|
|
156
|
+
paymentVersion(): number;
|
|
157
|
+
wifVersion(): number;
|
|
158
|
+
compressed(): boolean;
|
|
159
|
+
toPublic(): EcPublicNative;
|
|
160
|
+
toPaymentAddress(): PaymentAddressNative;
|
|
161
|
+
}
|
|
162
|
+
export declare class EcPublicNative {
|
|
163
|
+
private readonly [ptrSym];
|
|
164
|
+
static _create(ptr: number): EcPublicNative;
|
|
165
|
+
protected _destructor(): void;
|
|
166
|
+
constructor();
|
|
167
|
+
constructor(base16: string);
|
|
168
|
+
constructor(secret: EcPrivateNative);
|
|
169
|
+
constructor(point: EcCompressedNative, compress: boolean);
|
|
170
|
+
isValid(): boolean;
|
|
171
|
+
encoded(): string;
|
|
172
|
+
point(): EcCompressedNative;
|
|
173
|
+
compressed(): boolean;
|
|
174
|
+
toUncompressed(outData: EcUncompressedNative): boolean;
|
|
175
|
+
toPaymentAddress(version: number): PaymentAddressNative;
|
|
176
|
+
}
|
|
177
|
+
export declare class WalletNative {
|
|
178
|
+
static mnemonicsToSeed(mnemonics: StringListNative): LongHashNative;
|
|
179
|
+
static hdNew(seed: LongHashNative, version: number): HdPrivateNative;
|
|
180
|
+
static hdPrivateToEc(key: HdPrivateNative): EcSecretNative;
|
|
181
|
+
static ecToPublic(secret: EcSecretNative, uncompressed: boolean): EcPublicNative;
|
|
182
|
+
static ecToAddress(point: EcPublicNative, version: number): PaymentAddressNative;
|
|
183
|
+
}
|
|
184
|
+
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface LoadWasmModuleExt {
|
|
2
|
+
__resolveFilePaths: () => void;
|
|
3
|
+
}
|
|
4
|
+
declare enum LoadWasmStatus {
|
|
5
|
+
unloaded = 0,
|
|
6
|
+
loading = 1,
|
|
7
|
+
loaded = 2
|
|
8
|
+
}
|
|
9
|
+
declare function loadLib(wasmUrl?: string, jsUrl?: string | Blob): Promise<unknown>;
|
|
10
|
+
declare namespace loadLib {
|
|
11
|
+
var promise: Promise<unknown>;
|
|
12
|
+
var status: LoadWasmStatus;
|
|
13
|
+
}
|
|
14
|
+
export default loadLib;
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
declare const custom_malloc_sym: unique symbol;
|
|
2
|
+
type AnyTypedArrayConstructor = Int8ArrayConstructor | Uint8ArrayConstructor | Uint8ClampedArrayConstructor | Int16ArrayConstructor | Uint16ArrayConstructor | Int32ArrayConstructor | Uint32ArrayConstructor | Float32ArrayConstructor | Float64ArrayConstructor;
|
|
3
|
+
interface CustomAllocatedArray {
|
|
4
|
+
[custom_malloc_sym]: true;
|
|
5
|
+
ptr: number;
|
|
6
|
+
}
|
|
7
|
+
declare function buffer(): ArrayBufferLike;
|
|
8
|
+
declare function malloc<T extends AnyTypedArrayConstructor>(arrayClass: T, len: number): InstanceType<T> & CustomAllocatedArray;
|
|
9
|
+
declare function free(objOrPtr: any): void;
|
|
10
|
+
export { malloc, free, buffer };
|