tool-db 2.3.0 → 2.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 +10 -2
- package/bundle.js +1 -1
- package/dist/adapters-base/networkAdapter.d.ts +3 -2
- package/dist/adapters-base/networkAdapter.js +36 -6
- package/dist/adapters-base/networkAdapter.js.map +1 -1
- package/dist/adapters-base/storageAdapter.d.ts +4 -2
- package/dist/adapters-base/storageAdapter.js +11 -1
- package/dist/adapters-base/storageAdapter.js.map +1 -1
- package/dist/adapters-base/userAdapter.d.ts +3 -2
- package/dist/adapters-base/userAdapter.js +8 -1
- package/dist/adapters-base/userAdapter.js.map +1 -1
- package/dist/crdt/baseCrdt.d.ts +1 -1
- package/dist/crdt/baseCrdt.js +2 -2
- package/dist/crdt/baseCrdt.js.map +1 -1
- package/dist/crdt/counterCrdt.d.ts +2 -2
- package/dist/crdt/counterCrdt.js +5 -23
- package/dist/crdt/counterCrdt.js.map +1 -1
- package/dist/crdt/listCrdt.d.ts +2 -2
- package/dist/crdt/listCrdt.js +8 -26
- package/dist/crdt/listCrdt.js.map +1 -1
- package/dist/crdt/mapCrdt.d.ts +2 -2
- package/dist/crdt/mapCrdt.js +5 -23
- package/dist/crdt/mapCrdt.js.map +1 -1
- package/dist/index.d.ts +5 -17
- package/dist/index.js +16 -40
- package/dist/index.js.map +1 -1
- package/dist/logger.d.ts +1 -1
- package/dist/logger.js +2 -5
- package/dist/logger.js.map +1 -1
- package/dist/messageHandlers/handleCrdtGet.d.ts +1 -2
- package/dist/messageHandlers/handleCrdtGet.js.map +1 -1
- package/dist/messageHandlers/handleCrdtPut.d.ts +1 -2
- package/dist/messageHandlers/handleCrdtPut.js +8 -12
- package/dist/messageHandlers/handleCrdtPut.js.map +1 -1
- package/dist/messageHandlers/handleGet.d.ts +1 -2
- package/dist/messageHandlers/handleGet.js.map +1 -1
- package/dist/messageHandlers/handlePing.d.ts +1 -2
- package/dist/messageHandlers/handlePing.js +25 -17
- package/dist/messageHandlers/handlePing.js.map +1 -1
- package/dist/messageHandlers/handlePong.d.ts +1 -2
- package/dist/messageHandlers/handlePong.js +15 -1
- package/dist/messageHandlers/handlePong.js.map +1 -1
- package/dist/messageHandlers/handlePut.d.ts +1 -2
- package/dist/messageHandlers/handlePut.js +2 -2
- package/dist/messageHandlers/handlePut.js.map +1 -1
- package/dist/messageHandlers/handleQuery.d.ts +1 -2
- package/dist/messageHandlers/handleQuery.js.map +1 -1
- package/dist/messageHandlers/handleSubscribe.d.ts +1 -2
- package/dist/messageHandlers/handleSubscribe.js.map +1 -1
- package/dist/server.js +2 -5
- package/dist/server.js.map +1 -1
- package/dist/shared.js.map +1 -1
- package/dist/toolDbAnonSignIn.d.ts +1 -1
- package/dist/toolDbAnonSignIn.js.map +1 -1
- package/dist/toolDbClientOnMessage.d.ts +1 -2
- package/dist/toolDbClientOnMessage.js +1 -1
- package/dist/toolDbClientOnMessage.js.map +1 -1
- package/dist/toolDbCrdtGet.d.ts +1 -3
- package/dist/toolDbCrdtGet.js +1 -1
- package/dist/toolDbCrdtGet.js.map +1 -1
- package/dist/toolDbCrdtPut.d.ts +1 -3
- package/dist/toolDbCrdtPut.js +4 -8
- package/dist/toolDbCrdtPut.js.map +1 -1
- package/dist/toolDbGet.d.ts +1 -1
- package/dist/toolDbGet.js +1 -1
- package/dist/toolDbGet.js.map +1 -1
- package/dist/toolDbKeysSignIn.d.ts +1 -1
- package/dist/toolDbKeysSignIn.js.map +1 -1
- package/dist/toolDbPut.d.ts +1 -2
- package/dist/toolDbPut.js +4 -8
- package/dist/toolDbPut.js.map +1 -1
- package/dist/toolDbQueryKeys.d.ts +1 -1
- package/dist/toolDbQueryKeys.js +2 -6
- package/dist/toolDbQueryKeys.js.map +1 -1
- package/dist/toolDbSignIn.d.ts +1 -1
- package/dist/toolDbSignIn.js +4 -8
- package/dist/toolDbSignIn.js.map +1 -1
- package/dist/toolDbSignUp.d.ts +1 -2
- package/dist/toolDbSignUp.js +2 -2
- package/dist/toolDbSignUp.js.map +1 -1
- package/dist/toolDbSubscribe.d.ts +1 -1
- package/dist/toolDbSubscribe.js +1 -1
- package/dist/toolDbSubscribe.js.map +1 -1
- package/dist/toolDbVerificationWrapper.js.map +1 -1
- package/dist/tooldb.d.ts +5 -10
- package/dist/tooldb.js +36 -16
- package/dist/tooldb.js.map +1 -1
- package/dist/types/message.d.ts +5 -11
- package/dist/types/message.js.map +1 -1
- package/dist/types/tooldb.d.ts +2 -5
- package/dist/types/tooldb.js.map +1 -1
- package/dist/utils/catchReturn.js.map +1 -1
- package/dist/utils/encoding/arrayBufferToHex.js.map +1 -1
- package/dist/utils/encoding/arrayBufferToString.js.map +1 -1
- package/dist/utils/encoding/hexToArrayBuffer.js.map +1 -1
- package/dist/utils/encoding/hexToString.js.map +1 -1
- package/dist/utils/encoding/hexToUint8.js +2 -5
- package/dist/utils/encoding/hexToUint8.js.map +1 -1
- package/dist/utils/encoding/stringToArrayBuffer.js.map +1 -1
- package/dist/utils/getPeerSignature.d.ts +1 -1
- package/dist/utils/getPeerSignature.js +2 -5
- package/dist/utils/getPeerSignature.js.map +1 -1
- package/dist/utils/getTimestamp.js.map +1 -1
- package/dist/utils/proofOfWork.js +3 -6
- package/dist/utils/proofOfWork.js.map +1 -1
- package/dist/utils/randomAnimal.js +1 -1
- package/dist/utils/randomAnimal.js.map +1 -1
- package/dist/utils/sha1.js.map +1 -1
- package/dist/utils/sha256.js.map +1 -1
- package/dist/utils/textRandom.js.map +1 -1
- package/dist/utils/uniq.d.ts +1 -0
- package/dist/utils/uniq.js +7 -0
- package/dist/utils/uniq.js.map +1 -0
- package/dist/utils/verifyMessage.d.ts +1 -2
- package/dist/utils/verifyMessage.js +9 -13
- package/dist/utils/verifyMessage.js.map +1 -1
- package/dist/utils/verifyPeer.d.ts +1 -2
- package/dist/utils/verifyPeer.js +2 -5
- package/dist/utils/verifyPeer.js.map +1 -1
- package/lib/adapters-base/networkAdapter.ts +215 -0
- package/lib/adapters-base/storageAdapter.ts +35 -0
- package/lib/adapters-base/userAdapter.ts +49 -0
- package/lib/crdt/baseCrdt.ts +21 -0
- package/lib/crdt/counterCrdt.ts +111 -0
- package/lib/crdt/listCrdt.ts +190 -0
- package/lib/crdt/mapCrdt.ts +119 -0
- package/lib/index.ts +42 -0
- package/lib/logger.ts +30 -0
- package/lib/messageHandlers/handleCrdtGet.ts +29 -0
- package/lib/messageHandlers/handleCrdtPut.ts +118 -0
- package/lib/messageHandlers/handleGet.ts +29 -0
- package/lib/messageHandlers/handlePing.ts +40 -0
- package/lib/messageHandlers/handlePong.ts +30 -0
- package/lib/messageHandlers/handlePut.ts +54 -0
- package/lib/messageHandlers/handleQuery.ts +25 -0
- package/lib/messageHandlers/handleSubscribe.ts +46 -0
- package/lib/server.ts +7 -0
- package/lib/shared.ts +5 -0
- package/lib/toolDbAnonSignIn.ts +5 -0
- package/lib/toolDbClientOnMessage.ts +75 -0
- package/lib/toolDbCrdtGet.ts +82 -0
- package/lib/toolDbCrdtPut.ts +77 -0
- package/lib/toolDbGet.ts +80 -0
- package/lib/toolDbKeysSignIn.ts +16 -0
- package/lib/toolDbPut.ts +83 -0
- package/lib/toolDbQueryKeys.ts +64 -0
- package/lib/toolDbSignIn.ts +31 -0
- package/lib/toolDbSignUp.ts +71 -0
- package/lib/toolDbSubscribe.ts +53 -0
- package/lib/toolDbVerificationWrapper.ts +55 -0
- package/lib/tooldb.ts +314 -0
- package/lib/types/message.ts +133 -0
- package/lib/types/tooldb.ts +89 -0
- package/lib/utils/catchReturn.ts +4 -0
- package/lib/utils/encoding/arrayBufferToHex.ts +18 -0
- package/lib/utils/encoding/arrayBufferToString.ts +8 -0
- package/lib/utils/encoding/hexToArrayBuffer.ts +13 -0
- package/lib/utils/encoding/hexToString.ts +8 -0
- package/lib/utils/encoding/hexToUint8.ts +5 -0
- package/lib/utils/encoding/stringToArrayBuffer.ts +8 -0
- package/lib/utils/getPeerSignature.ts +12 -0
- package/lib/utils/getTimestamp.ts +3 -0
- package/lib/utils/proofOfWork.ts +16 -0
- package/lib/utils/randomAnimal.ts +77 -0
- package/lib/utils/sha1.ts +7 -0
- package/lib/utils/sha256.ts +7 -0
- package/lib/utils/textRandom.ts +11 -0
- package/lib/utils/uniq.ts +3 -0
- package/lib/utils/verifyMessage.ts +88 -0
- package/lib/utils/verifyPeer.ts +15 -0
- package/package.json +32 -69
- package/tsconfig.json +10 -72
- package/.eslintrc.json +0 -74
- package/.github/workflows/main.yml +0 -29
- package/babel.config.js +0 -6
- package/custom-test-env.js +0 -28
- package/dist/__tests__ copy/base64.d.ts +0 -1
- package/dist/__tests__ copy/base64.js +0 -61
- package/dist/__tests__ copy/base64.js.map +0 -1
- package/dist/__tests__ copy/encryption.d.ts +0 -1
- package/dist/__tests__ copy/encryption.js +0 -68
- package/dist/__tests__ copy/encryption.js.map +0 -1
- package/dist/__tests__ copy/keys.d.ts +0 -1
- package/dist/__tests__ copy/keys.js +0 -238
- package/dist/__tests__ copy/keys.js.map +0 -1
- package/dist/__tests__ copy/network.d.ts +0 -1
- package/dist/__tests__ copy/network.js +0 -206
- package/dist/__tests__ copy/network.js.map +0 -1
- package/dist/__tests__ copy/pow.d.ts +0 -1
- package/dist/__tests__ copy/pow.js +0 -25
- package/dist/__tests__ copy/pow.js.map +0 -1
- package/dist/__tests__ copy/sha1.d.ts +0 -1
- package/dist/__tests__ copy/sha1.js +0 -16
- package/dist/__tests__ copy/sha1.js.map +0 -1
- package/dist/__tests__ copy/sha256.d.ts +0 -1
- package/dist/__tests__ copy/sha256.js +0 -16
- package/dist/__tests__ copy/sha256.js.map +0 -1
- package/dist/__tests__ copy/textRandom.d.ts +0 -1
- package/dist/__tests__ copy/textRandom.js +0 -17
- package/dist/__tests__ copy/textRandom.js.map +0 -1
- package/dist/adapters/toolDbIndexedb.d.ts +0 -10
- package/dist/adapters/toolDbIndexedb.js +0 -128
- package/dist/adapters/toolDbIndexedb.js.map +0 -1
- package/dist/adapters/toolDbLeveldb.d.ts +0 -9
- package/dist/adapters/toolDbLeveldb.js +0 -112
- package/dist/adapters/toolDbLeveldb.js.map +0 -1
- package/dist/adapters/toolDbWeb3User.d.ts +0 -20
- package/dist/adapters/toolDbWeb3User.js +0 -75
- package/dist/adapters/toolDbWeb3User.js.map +0 -1
- package/dist/adapters/toolDbWebrtc.d.ts +0 -59
- package/dist/adapters/toolDbWebrtc.js +0 -492
- package/dist/adapters/toolDbWebrtc.js.map +0 -1
- package/dist/adapters/toolDbWebsocket.d.ts +0 -19
- package/dist/adapters/toolDbWebsocket.js +0 -181
- package/dist/adapters/toolDbWebsocket.js.map +0 -1
- package/dist/bundle.js +0 -69086
- package/dist/chain/Block.d.ts +0 -29
- package/dist/chain/Block.js +0 -142
- package/dist/chain/Block.js.map +0 -1
- package/dist/chain/ToolChain.d.ts +0 -27
- package/dist/chain/ToolChain.js +0 -253
- package/dist/chain/ToolChain.js.map +0 -1
- package/dist/chain/Tx.d.ts +0 -50
- package/dist/chain/Tx.js +0 -54
- package/dist/chain/Tx.js.map +0 -1
- package/dist/chain/Wallet.d.ts +0 -9
- package/dist/chain/Wallet.js +0 -37
- package/dist/chain/Wallet.js.map +0 -1
- package/dist/chain/isValidChain.d.ts +0 -1
- package/dist/chain/isValidChain.js +0 -37
- package/dist/chain/isValidChain.js.map +0 -1
- package/dist/chain/mempool.d.ts +0 -0
- package/dist/chain/mempool.js +0 -2
- package/dist/chain/mempool.js.map +0 -1
- package/dist/getCrypto.d.ts +0 -1
- package/dist/getCrypto.js +0 -10
- package/dist/getCrypto.js.map +0 -1
- package/dist/infuraFilecoin.d.ts +0 -0
- package/dist/infuraFilecoin.js +0 -2
- package/dist/infuraFilecoin.js.map +0 -1
- package/dist/loadCrdtDocument.d.ts +0 -3
- package/dist/loadCrdtDocument.js +0 -38
- package/dist/loadCrdtDocument.js.map +0 -1
- package/dist/makeTx.d.ts +0 -1
- package/dist/makeTx.js +0 -27
- package/dist/makeTx.js.map +0 -1
- package/dist/messageHandlers/handleCrdt.d.ts +0 -3
- package/dist/messageHandlers/handleCrdt.js +0 -11
- package/dist/messageHandlers/handleCrdt.js.map +0 -1
- package/dist/messageHandlers/handleJoin.d.ts +0 -3
- package/dist/messageHandlers/handleJoin.js +0 -36
- package/dist/messageHandlers/handleJoin.js.map +0 -1
- package/dist/messageHandlers/handleServers.d.ts +0 -3
- package/dist/messageHandlers/handleServers.js +0 -23
- package/dist/messageHandlers/handleServers.js.map +0 -1
- package/dist/sendJoin.d.ts +0 -2
- package/dist/sendJoin.js +0 -31
- package/dist/sendJoin.js.map +0 -1
- package/dist/test.d.ts +0 -1
- package/dist/test.js +0 -17
- package/dist/test.js.map +0 -1
- package/dist/toolChainServer.d.ts +0 -8
- package/dist/toolChainServer.js +0 -60
- package/dist/toolChainServer.js.map +0 -1
- package/dist/toolDbGetPubKey.d.ts +0 -2
- package/dist/toolDbGetPubKey.js +0 -18
- package/dist/toolDbGetPubKey.js.map +0 -1
- package/dist/toolDbNetwork.d.ts +0 -20
- package/dist/toolDbNetwork.js +0 -193
- package/dist/toolDbNetwork.js.map +0 -1
- package/dist/toolDbNetworkAdapter.d.ts +0 -57
- package/dist/toolDbNetworkAdapter.js +0 -188
- package/dist/toolDbNetworkAdapter.js.map +0 -1
- package/dist/toolDbWeb3User.d.ts +0 -20
- package/dist/toolDbWeb3User.js +0 -75
- package/dist/toolDbWeb3User.js.map +0 -1
- package/dist/toolDbWebrtc.d.ts +0 -59
- package/dist/toolDbWebrtc.js +0 -490
- package/dist/toolDbWebrtc.js.map +0 -1
- package/dist/toolDbWebsocket.d.ts +0 -19
- package/dist/toolDbWebsocket.js +0 -187
- package/dist/toolDbWebsocket.js.map +0 -1
- package/dist/toolchain.d.ts +0 -1
- package/dist/toolchain.js +0 -8
- package/dist/toolchain.js.map +0 -1
- package/dist/types/graph.d.ts +0 -0
- package/dist/types/graph.js +0 -2
- package/dist/types/graph.js.map +0 -1
- package/dist/utils/arrayBufferToBase64.d.ts +0 -1
- package/dist/utils/arrayBufferToBase64.js +0 -12
- package/dist/utils/arrayBufferToBase64.js.map +0 -1
- package/dist/utils/arrayBufferToHex.d.ts +0 -1
- package/dist/utils/arrayBufferToHex.js +0 -19
- package/dist/utils/arrayBufferToHex.js.map +0 -1
- package/dist/utils/arrayBufferToString.d.ts +0 -1
- package/dist/utils/arrayBufferToString.js +0 -12
- package/dist/utils/arrayBufferToString.js.map +0 -1
- package/dist/utils/base64ToArrayBuffer.d.ts +0 -1
- package/dist/utils/base64ToArrayBuffer.js +0 -12
- package/dist/utils/base64ToArrayBuffer.js.map +0 -1
- package/dist/utils/base64ToBinaryChange.d.ts +0 -2
- package/dist/utils/base64ToBinaryChange.js +0 -18
- package/dist/utils/base64ToBinaryChange.js.map +0 -1
- package/dist/utils/base64ToBinaryDocument.d.ts +0 -2
- package/dist/utils/base64ToBinaryDocument.js +0 -18
- package/dist/utils/base64ToBinaryDocument.js.map +0 -1
- package/dist/utils/base64ToHex.d.ts +0 -1
- package/dist/utils/base64ToHex.js +0 -13
- package/dist/utils/base64ToHex.js.map +0 -1
- package/dist/utils/base64ToUint8.d.ts +0 -1
- package/dist/utils/base64ToUint8.js +0 -17
- package/dist/utils/base64ToUint8.js.map +0 -1
- package/dist/utils/crypto/base64KeyToHex.d.ts +0 -1
- package/dist/utils/crypto/base64KeyToHex.js +0 -24
- package/dist/utils/crypto/base64KeyToHex.js.map +0 -1
- package/dist/utils/crypto/base64PublicKeyToHex.d.ts +0 -1
- package/dist/utils/crypto/base64PublicKeyToHex.js +0 -22
- package/dist/utils/crypto/base64PublicKeyToHex.js.map +0 -1
- package/dist/utils/crypto/decodeKeyString.d.ts +0 -1
- package/dist/utils/crypto/decodeKeyString.js +0 -12
- package/dist/utils/crypto/decodeKeyString.js.map +0 -1
- package/dist/utils/crypto/decryptData.d.ts +0 -1
- package/dist/utils/crypto/decryptData.js +0 -28
- package/dist/utils/crypto/decryptData.js.map +0 -1
- package/dist/utils/crypto/decryptWithPass.d.ts +0 -1
- package/dist/utils/crypto/decryptWithPass.js +0 -22
- package/dist/utils/crypto/decryptWithPass.js.map +0 -1
- package/dist/utils/crypto/deriveSecret.d.ts +0 -1
- package/dist/utils/crypto/deriveSecret.js +0 -18
- package/dist/utils/crypto/deriveSecret.js.map +0 -1
- package/dist/utils/crypto/encodeKeyString.d.ts +0 -1
- package/dist/utils/crypto/encodeKeyString.js +0 -12
- package/dist/utils/crypto/encodeKeyString.js.map +0 -1
- package/dist/utils/crypto/encryptData.d.ts +0 -1
- package/dist/utils/crypto/encryptData.js +0 -25
- package/dist/utils/crypto/encryptData.js.map +0 -1
- package/dist/utils/crypto/encryptWithPass.d.ts +0 -1
- package/dist/utils/crypto/encryptWithPass.js +0 -22
- package/dist/utils/crypto/encryptWithPass.js.map +0 -1
- package/dist/utils/crypto/exportKey.d.ts +0 -1
- package/dist/utils/crypto/exportKey.js +0 -14
- package/dist/utils/crypto/exportKey.js.map +0 -1
- package/dist/utils/crypto/exportKeyAsHex.d.ts +0 -1
- package/dist/utils/crypto/exportKeyAsHex.js +0 -18
- package/dist/utils/crypto/exportKeyAsHex.js.map +0 -1
- package/dist/utils/crypto/generateKeyFromPassword.d.ts +0 -1
- package/dist/utils/crypto/generateKeyFromPassword.js +0 -25
- package/dist/utils/crypto/generateKeyFromPassword.js.map +0 -1
- package/dist/utils/crypto/generateKeyPair.d.ts +0 -1
- package/dist/utils/crypto/generateKeyPair.js +0 -17
- package/dist/utils/crypto/generateKeyPair.js.map +0 -1
- package/dist/utils/crypto/generateKeysComb.d.ts +0 -4
- package/dist/utils/crypto/generateKeysComb.js +0 -60
- package/dist/utils/crypto/generateKeysComb.js.map +0 -1
- package/dist/utils/crypto/importKey.d.ts +0 -1
- package/dist/utils/crypto/importKey.js +0 -23
- package/dist/utils/crypto/importKey.js.map +0 -1
- package/dist/utils/crypto/loadKeysComb.d.ts +0 -5
- package/dist/utils/crypto/loadKeysComb.js +0 -90
- package/dist/utils/crypto/loadKeysComb.js.map +0 -1
- package/dist/utils/crypto/loadSignKeys.d.ts +0 -2
- package/dist/utils/crypto/loadSignKeys.js +0 -78
- package/dist/utils/crypto/loadSignKeys.js.map +0 -1
- package/dist/utils/crypto/recoverPubKey.d.ts +0 -1
- package/dist/utils/crypto/recoverPubKey.js +0 -33
- package/dist/utils/crypto/recoverPubKey.js.map +0 -1
- package/dist/utils/crypto/recoverPubKeyFromPrivate.d.ts +0 -1
- package/dist/utils/crypto/recoverPubKeyFromPrivate.js +0 -16
- package/dist/utils/crypto/recoverPubKeyFromPrivate.js.map +0 -1
- package/dist/utils/crypto/saveKeysComb.d.ts +0 -2
- package/dist/utils/crypto/saveKeysComb.js +0 -75
- package/dist/utils/crypto/saveKeysComb.js.map +0 -1
- package/dist/utils/crypto/saveSignKeys.d.ts +0 -2
- package/dist/utils/crypto/saveSignKeys.js +0 -67
- package/dist/utils/crypto/saveSignKeys.js.map +0 -1
- package/dist/utils/crypto/verifyData.d.ts +0 -1
- package/dist/utils/crypto/verifyData.js +0 -20
- package/dist/utils/crypto/verifyData.js.map +0 -1
- package/dist/utils/encoding/arrayBufferToBase64.d.ts +0 -1
- package/dist/utils/encoding/arrayBufferToBase64.js +0 -12
- package/dist/utils/encoding/arrayBufferToBase64.js.map +0 -1
- package/dist/utils/encoding/base64ToArrayBuffer.d.ts +0 -1
- package/dist/utils/encoding/base64ToArrayBuffer.js +0 -12
- package/dist/utils/encoding/base64ToArrayBuffer.js.map +0 -1
- package/dist/utils/encoding/base64ToBinaryChange.d.ts +0 -2
- package/dist/utils/encoding/base64ToBinaryChange.js +0 -18
- package/dist/utils/encoding/base64ToBinaryChange.js.map +0 -1
- package/dist/utils/encoding/base64ToBinaryDocument.d.ts +0 -2
- package/dist/utils/encoding/base64ToBinaryDocument.js +0 -18
- package/dist/utils/encoding/base64ToBinaryDocument.js.map +0 -1
- package/dist/utils/encoding/base64ToHex.d.ts +0 -1
- package/dist/utils/encoding/base64ToHex.js +0 -13
- package/dist/utils/encoding/base64ToHex.js.map +0 -1
- package/dist/utils/encoding/base64ToUint8.d.ts +0 -1
- package/dist/utils/encoding/base64ToUint8.js +0 -17
- package/dist/utils/encoding/base64ToUint8.js.map +0 -1
- package/dist/utils/encoding/fromBase64.d.ts +0 -1
- package/dist/utils/encoding/fromBase64.js +0 -7
- package/dist/utils/encoding/fromBase64.js.map +0 -1
- package/dist/utils/encoding/hexToBase64.d.ts +0 -1
- package/dist/utils/encoding/hexToBase64.js +0 -12
- package/dist/utils/encoding/hexToBase64.js.map +0 -1
- package/dist/utils/encoding/toBase64.d.ts +0 -1
- package/dist/utils/encoding/toBase64.js +0 -7
- package/dist/utils/encoding/toBase64.js.map +0 -1
- package/dist/utils/encoding/uint8ArrayToHex.d.ts +0 -1
- package/dist/utils/encoding/uint8ArrayToHex.js +0 -7
- package/dist/utils/encoding/uint8ArrayToHex.js.map +0 -1
- package/dist/utils/encoding/uint8ToBase64.d.ts +0 -1
- package/dist/utils/encoding/uint8ToBase64.js +0 -15
- package/dist/utils/encoding/uint8ToBase64.js.map +0 -1
- package/dist/utils/fromBase64.d.ts +0 -1
- package/dist/utils/fromBase64.js +0 -7
- package/dist/utils/fromBase64.js.map +0 -1
- package/dist/utils/generateIv.d.ts +0 -1
- package/dist/utils/generateIv.js +0 -12
- package/dist/utils/generateIv.js.map +0 -1
- package/dist/utils/hexToArrayBuffer.d.ts +0 -1
- package/dist/utils/hexToArrayBuffer.js +0 -15
- package/dist/utils/hexToArrayBuffer.js.map +0 -1
- package/dist/utils/hexToBase64.d.ts +0 -1
- package/dist/utils/hexToBase64.js +0 -12
- package/dist/utils/hexToBase64.js.map +0 -1
- package/dist/utils/hexToString.d.ts +0 -1
- package/dist/utils/hexToString.js +0 -12
- package/dist/utils/hexToString.js.map +0 -1
- package/dist/utils/hexToUint8.d.ts +0 -1
- package/dist/utils/hexToUint8.js +0 -8
- package/dist/utils/hexToUint8.js.map +0 -1
- package/dist/utils/indexedb.d.ts +0 -2
- package/dist/utils/indexedb.js +0 -116
- package/dist/utils/indexedb.js.map +0 -1
- package/dist/utils/leveldb.d.ts +0 -2
- package/dist/utils/leveldb.js +0 -85
- package/dist/utils/leveldb.js.map +0 -1
- package/dist/utils/signData.d.ts +0 -1
- package/dist/utils/signData.js +0 -19
- package/dist/utils/signData.js.map +0 -1
- package/dist/utils/stringToArrayBuffer.d.ts +0 -1
- package/dist/utils/stringToArrayBuffer.js +0 -12
- package/dist/utils/stringToArrayBuffer.js.map +0 -1
- package/dist/utils/toBase64.d.ts +0 -1
- package/dist/utils/toBase64.js +0 -7
- package/dist/utils/toBase64.js.map +0 -1
- package/dist/utils/uint8ArrayToHex.d.ts +0 -2
- package/dist/utils/uint8ArrayToHex.js +0 -7
- package/dist/utils/uint8ArrayToHex.js.map +0 -1
- package/dist/utils/uint8ToBase64.d.ts +0 -2
- package/dist/utils/uint8ToBase64.js +0 -15
- package/dist/utils/uint8ToBase64.js.map +0 -1
- package/jest.config.ts +0 -195
- package/jest.setup.js +0 -0
- package/test-alice/000145.ldb +0 -0
- package/test-alice/000147.ldb +0 -0
- package/test-alice/000150.ldb +0 -0
- package/test-alice/000153.ldb +0 -0
- package/test-alice/000154.log +0 -0
- package/test-alice/CURRENT +0 -1
- package/test-alice/LOCK +0 -0
- package/test-alice/LOG +0 -5
- package/test-alice/LOG.old +0 -5
- package/test-alice/MANIFEST-000152 +0 -0
- package/test-alice-speed/000022.ldb +0 -0
- package/test-alice-speed/000024.ldb +0 -0
- package/test-alice-speed/000027.ldb +0 -0
- package/test-alice-speed/000030.ldb +0 -0
- package/test-alice-speed/000031.log +0 -0
- package/test-alice-speed/CURRENT +0 -1
- package/test-alice-speed/LOCK +0 -0
- package/test-alice-speed/LOG +0 -5
- package/test-alice-speed/LOG.old +0 -5
- package/test-alice-speed/MANIFEST-000029 +0 -0
- package/test-base-client/000099.log +0 -0
- package/test-base-client/CURRENT +0 -1
- package/test-base-client/LOCK +0 -0
- package/test-base-client/LOG +0 -3
- package/test-base-client/LOG.old +0 -3
- package/test-base-client/MANIFEST-000098 +0 -0
- package/test-base-server/000101.log +0 -0
- package/test-base-server/CURRENT +0 -1
- package/test-base-server/LOCK +0 -0
- package/test-base-server/LOG +0 -3
- package/test-base-server/LOG.old +0 -3
- package/test-base-server/MANIFEST-000100 +0 -0
- package/test-bob/000160.ldb +0 -0
- package/test-bob/000162.ldb +0 -0
- package/test-bob/000163.log +0 -0
- package/test-bob/CURRENT +0 -1
- package/test-bob/LOCK +0 -0
- package/test-bob/LOG +0 -5
- package/test-bob/LOG.old +0 -14
- package/test-bob/MANIFEST-000161 +0 -0
- package/test-chris/000017.ldb +0 -0
- package/test-chris/000020.ldb +0 -0
- package/test-chris/000023.ldb +0 -0
- package/test-chris/000026.ldb +0 -0
- package/test-chris/000029.ldb +0 -0
- package/test-chris/000086.ldb +0 -0
- package/test-chris/000089.ldb +0 -0
- package/test-chris/000092.ldb +0 -0
- package/test-chris/000095.ldb +0 -0
- package/test-chris/000098.ldb +0 -0
- package/test-chris/000103.ldb +0 -0
- package/test-chris/000106.ldb +0 -0
- package/test-chris/000109.ldb +0 -0
- package/test-chris/000112.ldb +0 -0
- package/test-chris/000115.ldb +0 -0
- package/test-chris/000118.ldb +0 -0
- package/test-chris/000121.ldb +0 -0
- package/test-chris/000124.ldb +0 -0
- package/test-chris/000127.ldb +0 -0
- package/test-chris/000130.ldb +0 -0
- package/test-chris/000133.ldb +0 -0
- package/test-chris/000136.ldb +0 -0
- package/test-chris/000139.ldb +0 -0
- package/test-chris/000142.ldb +0 -0
- package/test-chris/000145.ldb +0 -0
- package/test-chris/000148.ldb +0 -0
- package/test-chris/000151.ldb +0 -0
- package/test-chris/000152.log +0 -0
- package/test-chris/CURRENT +0 -1
- package/test-chris/LOCK +0 -0
- package/test-chris/LOG +0 -6
- package/test-chris/LOG.old +0 -6
- package/test-chris/MANIFEST-000150 +0 -0
- package/test-node-a/000175.ldb +0 -0
- package/test-node-a/000177.ldb +0 -0
- package/test-node-a/000178.log +0 -0
- package/test-node-a/CURRENT +0 -1
- package/test-node-a/LOCK +0 -0
- package/test-node-a/LOG +0 -5
- package/test-node-a/LOG.old +0 -14
- package/test-node-a/MANIFEST-000176 +0 -0
- package/test-node-b/000175.ldb +0 -0
- package/test-node-b/000177.ldb +0 -0
- package/test-node-b/000178.log +0 -0
- package/test-node-b/CURRENT +0 -1
- package/test-node-b/LOCK +0 -0
- package/test-node-b/LOG +0 -5
- package/test-node-b/LOG.old +0 -14
- package/test-node-b/MANIFEST-000176 +0 -0
- package/test-store/000007.ldb +0 -0
- package/test-store/000010.ldb +0 -0
- package/test-store/000013.ldb +0 -0
- package/test-store/000016.ldb +0 -0
- package/test-store/000019.ldb +0 -0
- package/test-store/000022.ldb +0 -0
- package/test-store/000025.ldb +0 -0
- package/test-store/000028.ldb +0 -0
- package/test-store/000031.ldb +0 -0
- package/test-store/000034.ldb +0 -0
- package/test-store/000037.ldb +0 -0
- package/test-store/000038.log +0 -0
- package/test-store/CURRENT +0 -1
- package/test-store/LOCK +0 -0
- package/test-store/LOG +0 -6
- package/test-store/LOG.old +0 -6
- package/test-store/MANIFEST-000036 +0 -0
- package/test-verify-a/000049.log +0 -0
- package/test-verify-a/CURRENT +0 -1
- package/test-verify-a/LOCK +0 -0
- package/test-verify-a/LOG +0 -3
- package/test-verify-a/LOG.old +0 -3
- package/test-verify-a/MANIFEST-000048 +0 -0
- package/toolDbLibP2p.ts +0 -207
|
@@ -1,181 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __extends = (this && this.__extends) || (function () {
|
|
3
|
-
var extendStatics = function (d, b) {
|
|
4
|
-
extendStatics = Object.setPrototypeOf ||
|
|
5
|
-
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
-
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
-
return extendStatics(d, b);
|
|
8
|
-
};
|
|
9
|
-
return function (d, b) {
|
|
10
|
-
if (typeof b !== "function" && b !== null)
|
|
11
|
-
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
-
extendStatics(d, b);
|
|
13
|
-
function __() { this.constructor = d; }
|
|
14
|
-
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
-
};
|
|
16
|
-
})();
|
|
17
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
18
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
19
|
-
};
|
|
20
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
21
|
-
var ws_1 = __importDefault(require("ws"));
|
|
22
|
-
var __1 = require("..");
|
|
23
|
-
var networkAdapter_1 = __importDefault(require("../adapters-base/networkAdapter"));
|
|
24
|
-
var ToolDbWebsocket = /** @class */ (function (_super) {
|
|
25
|
-
__extends(ToolDbWebsocket, _super);
|
|
26
|
-
function ToolDbWebsocket(db) {
|
|
27
|
-
var _this = _super.call(this, db) || this;
|
|
28
|
-
_this.wnd = typeof window === "undefined" ? undefined : window;
|
|
29
|
-
_this._wss = _this.wnd
|
|
30
|
-
? _this.wnd.WebSocket || _this.wnd.webkitWebSocket || _this.wnd.mozWebSocket
|
|
31
|
-
: ws_1.default;
|
|
32
|
-
_this.server = null;
|
|
33
|
-
_this._connections = {};
|
|
34
|
-
_this._awaitingConnections = [];
|
|
35
|
-
_this.removeFromAwaiting = function (id) {
|
|
36
|
-
var index = _this._awaitingConnections.findIndex(function (c) { return c.id === id; });
|
|
37
|
-
if (index !== -1) {
|
|
38
|
-
_this._awaitingConnections.slice(index, 1);
|
|
39
|
-
}
|
|
40
|
-
};
|
|
41
|
-
/**
|
|
42
|
-
* Open a connection to a server
|
|
43
|
-
* @param url URL of the server (including port)
|
|
44
|
-
* @returns websocket
|
|
45
|
-
*/
|
|
46
|
-
_this.connectTo = function (host, port, connectionId) {
|
|
47
|
-
_this.tooldb.logger("connectTo:", host + ":" + port);
|
|
48
|
-
try {
|
|
49
|
-
var wsUrl = port === 443 ? "wss://" + host : "ws://" + host + ":" + port;
|
|
50
|
-
var wss_1 = new _this._wss(wsUrl);
|
|
51
|
-
var connId_1 = connectionId || (0, __1.textRandom)(10);
|
|
52
|
-
var clientId_1 = "";
|
|
53
|
-
var previousConnection = _this._awaitingConnections.filter(function (c) { return c.id === connectionId; })[0];
|
|
54
|
-
if (connectionId && previousConnection) {
|
|
55
|
-
previousConnection.socket = wss_1;
|
|
56
|
-
}
|
|
57
|
-
else {
|
|
58
|
-
_this._awaitingConnections.push({
|
|
59
|
-
id: connId_1,
|
|
60
|
-
socket: wss_1,
|
|
61
|
-
tries: 0,
|
|
62
|
-
defer: null,
|
|
63
|
-
host: host,
|
|
64
|
-
port: port,
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
wss_1.onclose = function (_error) {
|
|
68
|
-
_this.tooldb.logger(_error.error);
|
|
69
|
-
_this.reconnect(connId_1);
|
|
70
|
-
};
|
|
71
|
-
wss_1.onerror = function (_error) {
|
|
72
|
-
var _a;
|
|
73
|
-
_this.tooldb.logger("wss.onerror", connId_1);
|
|
74
|
-
if (((_a = _error === null || _error === void 0 ? void 0 : _error.error) === null || _a === void 0 ? void 0 : _a.code) !== "ETIMEDOUT") {
|
|
75
|
-
_this.reconnect(connId_1);
|
|
76
|
-
}
|
|
77
|
-
};
|
|
78
|
-
wss_1.onopen = function () {
|
|
79
|
-
_this.removeFromAwaiting(connId_1);
|
|
80
|
-
_this.tooldb.logger("Connected to " + host + ":" + port + " sucessfully.");
|
|
81
|
-
// hi peer
|
|
82
|
-
wss_1.send(JSON.stringify({
|
|
83
|
-
type: "ping",
|
|
84
|
-
clientId: _this.tooldb.network.getClientAddress(),
|
|
85
|
-
to: [_this.tooldb.network.getClientAddress()],
|
|
86
|
-
isServer: _this.tooldb.options.server,
|
|
87
|
-
id: (0, __1.textRandom)(10),
|
|
88
|
-
}));
|
|
89
|
-
};
|
|
90
|
-
wss_1.onmessage = function (msg) {
|
|
91
|
-
if (!msg) {
|
|
92
|
-
return;
|
|
93
|
-
}
|
|
94
|
-
_this.onClientMessage(msg.data, clientId_1, function (id) {
|
|
95
|
-
clientId_1 = id;
|
|
96
|
-
_this.isClientConnected[id] = function () {
|
|
97
|
-
return wss_1.readyState === wss_1.OPEN;
|
|
98
|
-
};
|
|
99
|
-
_this.clientToSend[id] = function (_msg) {
|
|
100
|
-
wss_1.send(_msg);
|
|
101
|
-
};
|
|
102
|
-
});
|
|
103
|
-
};
|
|
104
|
-
return wss_1;
|
|
105
|
-
}
|
|
106
|
-
catch (e) {
|
|
107
|
-
_this.tooldb.logger(e);
|
|
108
|
-
}
|
|
109
|
-
return undefined;
|
|
110
|
-
};
|
|
111
|
-
_this.reconnect = function (connectionId) {
|
|
112
|
-
var connection = _this._awaitingConnections.filter(function (c) { return c.id === connectionId; })[0];
|
|
113
|
-
_this.tooldb.logger("reconnect", connectionId, connection);
|
|
114
|
-
if (connection) {
|
|
115
|
-
if (connection.defer) {
|
|
116
|
-
clearTimeout(connection.defer);
|
|
117
|
-
}
|
|
118
|
-
_this.tooldb.logger("connection " + connectionId + " tries: " + connection.tries);
|
|
119
|
-
if (connection.tries < _this.tooldb.options.maxRetries) {
|
|
120
|
-
var defer = function () {
|
|
121
|
-
connection.tries += 1;
|
|
122
|
-
_this.tooldb.logger("connection to " + connection.host + ":" + connection.port + " (" + connectionId + ") retry.");
|
|
123
|
-
_this.connectTo(connection.host, connection.port, connectionId);
|
|
124
|
-
};
|
|
125
|
-
connection.defer = setTimeout(defer, _this.tooldb.options.wait);
|
|
126
|
-
}
|
|
127
|
-
else {
|
|
128
|
-
_this.tooldb.logger("connection attempts to " + connection.host + ":" + connection.port + " (" + connectionId + ") exceeded,");
|
|
129
|
-
_this.removeFromAwaiting(connectionId);
|
|
130
|
-
// There are no more peers to connect!
|
|
131
|
-
if (Object.keys(_this._connections).length === 0) {
|
|
132
|
-
_this.tooldb.onDisconnect();
|
|
133
|
-
_this.tooldb.isConnected = false;
|
|
134
|
-
}
|
|
135
|
-
}
|
|
136
|
-
}
|
|
137
|
-
// else , attempting to reconnect to a missing peer?
|
|
138
|
-
};
|
|
139
|
-
_this.tooldb.options.peers.forEach(function (p) {
|
|
140
|
-
_this.connectTo(p.host, p.port);
|
|
141
|
-
});
|
|
142
|
-
if (_this.tooldb.options.server) {
|
|
143
|
-
_this.server = new ws_1.default.Server({
|
|
144
|
-
port: _this.tooldb.options.port,
|
|
145
|
-
server: _this.tooldb.options.httpServer,
|
|
146
|
-
});
|
|
147
|
-
_this.server.on("connection", function (socket) {
|
|
148
|
-
var clientId = null;
|
|
149
|
-
_this.tooldb.logger("new connection:", clientId);
|
|
150
|
-
socket.on("close", function () {
|
|
151
|
-
_this.tooldb.logger("closed connection:", clientId);
|
|
152
|
-
if (clientId) {
|
|
153
|
-
_this.onClientDisconnect(clientId);
|
|
154
|
-
}
|
|
155
|
-
});
|
|
156
|
-
socket.on("error", function () {
|
|
157
|
-
_this.tooldb.logger("errored connection:", clientId);
|
|
158
|
-
if (clientId) {
|
|
159
|
-
_this.onClientDisconnect(clientId);
|
|
160
|
-
}
|
|
161
|
-
});
|
|
162
|
-
socket.on("message", function (message) {
|
|
163
|
-
_this.onClientMessage(message, clientId || "", function (id) {
|
|
164
|
-
clientId = id;
|
|
165
|
-
// Set this socket's functions on the adapter
|
|
166
|
-
_this.isClientConnected[id] = function () {
|
|
167
|
-
return socket.readyState === socket.OPEN;
|
|
168
|
-
};
|
|
169
|
-
_this.clientToSend[id] = function (_msg) {
|
|
170
|
-
socket.send(_msg);
|
|
171
|
-
};
|
|
172
|
-
});
|
|
173
|
-
});
|
|
174
|
-
});
|
|
175
|
-
}
|
|
176
|
-
return _this;
|
|
177
|
-
}
|
|
178
|
-
return ToolDbWebsocket;
|
|
179
|
-
}(networkAdapter_1.default));
|
|
180
|
-
exports.default = ToolDbWebsocket;
|
|
181
|
-
//# sourceMappingURL=toolDbWebsocket.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"toolDbWebsocket.js","sourceRoot":"","sources":["../../src/adapters/toolDbWebsocket.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AACA,0CAA2B;AAC3B,wBAA6C;AAE7C,mFAAmE;AAWnE;IAA6C,mCAAoB;IA4B/D,yBAAY,EAAU;QAAtB,YACE,kBAAM,EAAE,CAAC,SA6CV;QAzEO,SAAG,GACT,OAAO,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAE,MAA0B,CAAC;QAElE,UAAI,GAAG,KAAI,CAAC,GAAG;YACrB,CAAC,CAAC,KAAI,CAAC,GAAG,CAAC,SAAS,IAAI,KAAI,CAAC,GAAG,CAAC,eAAe,IAAI,KAAI,CAAC,GAAG,CAAC,YAAY;YACzE,CAAC,CAAC,YAAS,CAAC;QAEN,YAAM,GAA4B,IAAI,CAAC;QAEvC,kBAAY,GAOhB,EAAE,CAAC;QAEC,0BAAoB,GAAyB,EAAE,CAAC;QAEhD,wBAAkB,GAAG,UAAC,EAAU;YACtC,IAAM,KAAK,GAAG,KAAI,CAAC,oBAAoB,CAAC,SAAS,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,EAAE,EAAX,CAAW,CAAC,CAAC;YACtE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;gBAChB,KAAI,CAAC,oBAAoB,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;aAC3C;QACH,CAAC,CAAC;QAkDF;;;;WAIG;QACI,eAAS,GAAG,UACjB,IAAY,EACZ,IAAY,EACZ,YAAqB;YAErB,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC,CAAC;YACpD,IAAI;gBACF,IAAM,KAAK,GACT,IAAI,KAAK,GAAG,CAAC,CAAC,CAAC,QAAQ,GAAG,IAAI,CAAC,CAAC,CAAC,OAAO,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,CAAC;gBAC/D,IAAM,KAAG,GAAG,IAAI,KAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBACjC,IAAM,QAAM,GAAG,YAAY,IAAI,IAAA,cAAU,EAAC,EAAE,CAAC,CAAC;gBAC9C,IAAI,UAAQ,GAAG,EAAE,CAAC;gBAElB,IAAM,kBAAkB,GAAG,KAAI,CAAC,oBAAoB,CAAC,MAAM,CACzD,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,YAAY,EAArB,CAAqB,CAC7B,CAAC,CAAC,CAAC,CAAC;gBACL,IAAI,YAAY,IAAI,kBAAkB,EAAE;oBACtC,kBAAkB,CAAC,MAAM,GAAG,KAAG,CAAC;iBACjC;qBAAM;oBACL,KAAI,CAAC,oBAAoB,CAAC,IAAI,CAAC;wBAC7B,EAAE,EAAE,QAAM;wBACV,MAAM,EAAE,KAAG;wBACX,KAAK,EAAE,CAAC;wBACR,KAAK,EAAE,IAAI;wBACX,IAAI,EAAE,IAAI;wBACV,IAAI,EAAE,IAAI;qBACX,CAAC,CAAC;iBACJ;gBAED,KAAG,CAAC,OAAO,GAAG,UAAC,MAAW;oBACxB,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;oBACjC,KAAI,CAAC,SAAS,CAAC,QAAM,CAAC,CAAC;gBACzB,CAAC,CAAC;gBAEF,KAAG,CAAC,OAAO,GAAG,UAAC,MAAW;;oBACxB,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,EAAE,QAAM,CAAC,CAAC;oBAC1C,IAAI,CAAA,MAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,0CAAE,IAAI,MAAK,WAAW,EAAE;wBACvC,KAAI,CAAC,SAAS,CAAC,QAAM,CAAC,CAAC;qBACxB;gBACH,CAAC,CAAC;gBAEF,KAAG,CAAC,MAAM,GAAG;oBACX,KAAI,CAAC,kBAAkB,CAAC,QAAM,CAAC,CAAC;oBAChC,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,kBAAgB,IAAI,SAAI,IAAI,kBAAe,CAAC,CAAC;oBAEhE,UAAU;oBACV,KAAG,CAAC,IAAI,CACN,IAAI,CAAC,SAAS,CAAC;wBACb,IAAI,EAAE,MAAM;wBACZ,QAAQ,EAAE,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE;wBAChD,EAAE,EAAE,CAAC,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC;wBAC5C,QAAQ,EAAE,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM;wBACpC,EAAE,EAAE,IAAA,cAAU,EAAC,EAAE,CAAC;qBACJ,CAAC,CAClB,CAAC;gBACJ,CAAC,CAAC;gBAEF,KAAG,CAAC,SAAS,GAAG,UAAC,GAA2B;oBAC1C,IAAI,CAAC,GAAG,EAAE;wBACR,OAAO;qBACR;oBAED,KAAI,CAAC,eAAe,CAAC,GAAG,CAAC,IAAc,EAAE,UAAQ,EAAE,UAAC,EAAE;wBACpD,UAAQ,GAAG,EAAE,CAAC;wBAEd,KAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG;4BAC3B,OAAO,KAAG,CAAC,UAAU,KAAK,KAAG,CAAC,IAAI,CAAC;wBACrC,CAAC,CAAC;wBACF,KAAI,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,UAAC,IAAY;4BACnC,KAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACjB,CAAC,CAAC;oBACJ,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC;gBAEF,OAAO,KAAG,CAAC;aACZ;YAAC,OAAO,CAAC,EAAE;gBACV,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;aACvB;YACD,OAAO,SAAS,CAAC;QACnB,CAAC,CAAC;QAEM,eAAS,GAAG,UAAC,YAAoB;YACvC,IAAM,UAAU,GAAG,KAAI,CAAC,oBAAoB,CAAC,MAAM,CACjD,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,EAAE,KAAK,YAAY,EAArB,CAAqB,CAC7B,CAAC,CAAC,CAAC,CAAC;YACL,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC;YAC1D,IAAI,UAAU,EAAE;gBACd,IAAI,UAAU,CAAC,KAAK,EAAE;oBACpB,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;iBAChC;gBAED,KAAI,CAAC,MAAM,CAAC,MAAM,CAChB,gBAAc,YAAY,gBAAW,UAAU,CAAC,KAAO,CACxD,CAAC;gBACF,IAAI,UAAU,CAAC,KAAK,GAAG,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU,EAAE;oBACrD,IAAM,KAAK,GAAG;wBACZ,UAAU,CAAC,KAAK,IAAI,CAAC,CAAC;wBACtB,KAAI,CAAC,MAAM,CAAC,MAAM,CAChB,mBAAiB,UAAU,CAAC,IAAI,SAAI,UAAU,CAAC,IAAI,UAAK,YAAY,aAAU,CAC/E,CAAC;wBACF,KAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC;oBACjE,CAAC,CAAC;oBAEF,UAAU,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,EAAE,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAQ,CAAC;iBACvE;qBAAM;oBACL,KAAI,CAAC,MAAM,CAAC,MAAM,CAChB,4BAA0B,UAAU,CAAC,IAAI,SAAI,UAAU,CAAC,IAAI,UAAK,YAAY,gBAAa,CAC3F,CAAC;oBACF,KAAI,CAAC,kBAAkB,CAAC,YAAY,CAAC,CAAC;oBAEtC,sCAAsC;oBACtC,IAAI,MAAM,CAAC,IAAI,CAAC,KAAI,CAAC,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC/C,KAAI,CAAC,MAAM,CAAC,YAAY,EAAE,CAAC;wBAC3B,KAAI,CAAC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC;qBACjC;iBACF;aACF;YACD,oDAAoD;QACtD,CAAC,CAAC;QAxKA,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,UAAC,CAAC;YAClC,KAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,IAAI,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE;YAC9B,KAAI,CAAC,MAAM,GAAG,IAAI,YAAS,CAAC,MAAM,CAAC;gBACjC,IAAI,EAAE,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI;gBAC9B,MAAM,EAAE,KAAI,CAAC,MAAM,CAAC,OAAO,CAAC,UAAU;aACvC,CAAC,CAAC;YAEH,KAAI,CAAC,MAAM,CAAC,EAAE,CAAC,YAAY,EAAE,UAAC,MAAiB;gBAC7C,IAAI,QAAQ,GAAkB,IAAI,CAAC;gBAEnC,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC;gBAChD,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE;oBACjB,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,oBAAoB,EAAE,QAAQ,CAAC,CAAC;oBACnD,IAAI,QAAQ,EAAE;wBACZ,KAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;qBACnC;gBACH,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,OAAO,EAAE;oBACjB,KAAI,CAAC,MAAM,CAAC,MAAM,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;oBACpD,IAAI,QAAQ,EAAE;wBACZ,KAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAC;qBACnC;gBACH,CAAC,CAAC,CAAC;gBAEH,MAAM,CAAC,EAAE,CAAC,SAAS,EAAE,UAAC,OAAe;oBACnC,KAAI,CAAC,eAAe,CAAC,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,UAAC,EAAE;wBAC/C,QAAQ,GAAG,EAAE,CAAC;wBAEd,6CAA6C;wBAC7C,KAAI,CAAC,iBAAiB,CAAC,EAAE,CAAC,GAAG;4BAC3B,OAAO,MAAM,CAAC,UAAU,KAAK,MAAM,CAAC,IAAI,CAAC;wBAC3C,CAAC,CAAC;wBACF,KAAI,CAAC,YAAY,CAAC,EAAE,CAAC,GAAG,UAAC,IAAY;4BACnC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;wBACpB,CAAC,CAAC;oBACJ,CAAC,CAAC,CAAC;gBACL,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;SACJ;;IACH,CAAC;IA8HH,sBAAC;AAAD,CAAC,AAxMD,CAA6C,wBAAoB,GAwMhE"}
|