tool-db 1.4.3 → 2.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 +32 -14
- package/bundle.js +112989 -57546
- package/dist/chain/Block.d.ts +3 -2
- package/dist/chain/Block.js +12 -1
- package/dist/chain/Block.js.map +1 -1
- package/dist/chain/ToolChain.d.ts +6 -4
- package/dist/chain/ToolChain.js +35 -13
- package/dist/chain/ToolChain.js.map +1 -1
- package/dist/chain/Tx.d.ts +34 -0
- package/dist/chain/Tx.js +111 -0
- package/dist/chain/Tx.js.map +1 -0
- package/dist/index.d.ts +18 -23
- package/dist/index.js +37 -52
- package/dist/index.js.map +1 -1
- package/dist/loadCrdtDocument.js +4 -9
- package/dist/loadCrdtDocument.js.map +1 -1
- package/dist/messageHandlers/handleCrdt.d.ts +2 -1
- package/dist/messageHandlers/handleCrdt.js +1 -5
- package/dist/messageHandlers/handleCrdt.js.map +1 -1
- package/dist/messageHandlers/handleCrdtGet.d.ts +2 -1
- package/dist/messageHandlers/handleCrdtGet.js +2 -2
- package/dist/messageHandlers/handleCrdtGet.js.map +1 -1
- package/dist/messageHandlers/handleCrdtPut.d.ts +2 -1
- package/dist/messageHandlers/handleCrdtPut.js +17 -9
- package/dist/messageHandlers/handleCrdtPut.js.map +1 -1
- package/dist/messageHandlers/handleGet.d.ts +2 -1
- package/dist/messageHandlers/handleGet.js +1 -1
- package/dist/messageHandlers/handleGet.js.map +1 -1
- package/dist/messageHandlers/handleJoin.d.ts +2 -1
- package/dist/messageHandlers/handleJoin.js +20 -24
- package/dist/messageHandlers/handleJoin.js.map +1 -1
- package/dist/messageHandlers/handlePing.d.ts +2 -1
- package/dist/messageHandlers/handlePing.js +10 -3
- package/dist/messageHandlers/handlePing.js.map +1 -1
- package/dist/messageHandlers/handlePong.d.ts +2 -1
- package/dist/messageHandlers/handlePong.js +22 -20
- package/dist/messageHandlers/handlePong.js.map +1 -1
- package/dist/messageHandlers/handlePut.d.ts +2 -1
- package/dist/messageHandlers/handlePut.js +3 -2
- package/dist/messageHandlers/handlePut.js.map +1 -1
- package/dist/messageHandlers/handleQuery.d.ts +2 -1
- package/dist/messageHandlers/handleQuery.js.map +1 -1
- package/dist/messageHandlers/handleServers.d.ts +2 -1
- package/dist/messageHandlers/handleServers.js +8 -9
- package/dist/messageHandlers/handleServers.js.map +1 -1
- package/dist/messageHandlers/handleSubscribe.d.ts +2 -1
- package/dist/messageHandlers/handleSubscribe.js +4 -3
- package/dist/messageHandlers/handleSubscribe.js.map +1 -1
- package/dist/toolDbAnonSignIn.d.ts +1 -4
- package/dist/toolDbAnonSignIn.js +2 -16
- package/dist/toolDbAnonSignIn.js.map +1 -1
- package/dist/toolDbClientOnMessage.js +3 -4
- package/dist/toolDbClientOnMessage.js.map +1 -1
- package/dist/toolDbCrdtGet.d.ts +1 -1
- package/dist/toolDbCrdtGet.js +13 -5
- package/dist/toolDbCrdtGet.js.map +1 -1
- package/dist/toolDbCrdtPut.js +22 -67
- package/dist/toolDbCrdtPut.js.map +1 -1
- package/dist/toolDbGet.js +2 -3
- package/dist/toolDbGet.js.map +1 -1
- package/dist/toolDbKeysSignIn.d.ts +1 -7
- package/dist/toolDbKeysSignIn.js +5 -18
- package/dist/toolDbKeysSignIn.js.map +1 -1
- package/dist/toolDbNetwork.js +7 -5
- package/dist/toolDbNetwork.js.map +1 -1
- package/dist/toolDbPut.js +24 -72
- package/dist/toolDbPut.js.map +1 -1
- package/dist/toolDbQueryKeys.js +2 -3
- package/dist/toolDbQueryKeys.js.map +1 -1
- package/dist/toolDbSignIn.d.ts +2 -4
- package/dist/toolDbSignIn.js +7 -113
- package/dist/toolDbSignIn.js.map +1 -1
- package/dist/toolDbSignUp.d.ts +1 -1
- package/dist/toolDbSignUp.js +37 -70
- package/dist/toolDbSignUp.js.map +1 -1
- package/dist/toolDbSubscribe.js +4 -4
- package/dist/toolDbSubscribe.js.map +1 -1
- package/dist/toolDbVerificationWrapper.js +23 -10
- package/dist/toolDbVerificationWrapper.js.map +1 -1
- package/dist/toolDbWebrtc.js +68 -16
- package/dist/toolDbWebrtc.js.map +1 -1
- package/dist/tooldb.d.ts +21 -14
- package/dist/tooldb.js +44 -27
- package/dist/tooldb.js.map +1 -1
- package/dist/types/message.d.ts +40 -1
- package/dist/types/tooldb.d.ts +53 -11
- package/dist/types/tooldb.js.map +1 -1
- package/dist/utils/crypto/decodeKeyString.d.ts +1 -1
- package/dist/utils/crypto/decodeKeyString.js +3 -4
- package/dist/utils/crypto/decodeKeyString.js.map +1 -1
- package/dist/utils/crypto/decryptData.js +3 -3
- package/dist/utils/crypto/decryptData.js.map +1 -1
- package/dist/utils/crypto/decryptWithPass.d.ts +1 -1
- package/dist/utils/crypto/decryptWithPass.js +2 -3
- package/dist/utils/crypto/decryptWithPass.js.map +1 -1
- package/dist/utils/crypto/encodeKeyString.js +3 -4
- package/dist/utils/crypto/encodeKeyString.js.map +1 -1
- package/dist/utils/crypto/encryptData.d.ts +1 -1
- package/dist/utils/crypto/encryptData.js +1 -6
- package/dist/utils/crypto/encryptData.js.map +1 -1
- package/dist/utils/crypto/encryptWithPass.d.ts +1 -1
- package/dist/utils/crypto/encryptWithPass.js +1 -5
- package/dist/utils/crypto/encryptWithPass.js.map +1 -1
- package/dist/utils/crypto/generateKeyFromPassword.js +1 -1
- package/dist/utils/crypto/generateKeyFromPassword.js.map +1 -1
- package/dist/utils/crypto/loadKeysComb.js +10 -10
- package/dist/utils/crypto/loadKeysComb.js.map +1 -1
- package/dist/utils/crypto/recoverPubKey.d.ts +1 -1
- package/dist/utils/crypto/recoverPubKey.js +12 -6
- package/dist/utils/crypto/recoverPubKey.js.map +1 -1
- package/dist/utils/crypto/saveSignKeys.d.ts +1 -1
- package/dist/utils/crypto/saveSignKeys.js +2 -2
- package/dist/utils/crypto/verifyData.js +1 -1
- package/dist/utils/crypto/verifyData.js.map +1 -1
- package/dist/utils/encoding/arrayBufferToHex.js +1 -1
- package/dist/utils/encoding/base64ToHex.js +1 -1
- package/dist/utils/encoding/uint8ArrayToHex.js +1 -1
- package/dist/utils/getPeerSignature.d.ts +2 -1
- package/dist/utils/getPeerSignature.js +7 -4
- package/dist/utils/getPeerSignature.js.map +1 -1
- package/dist/utils/leveldb.js +2 -0
- package/dist/utils/leveldb.js.map +1 -1
- package/dist/utils/signData.js +1 -1
- package/dist/utils/signData.js.map +1 -1
- package/dist/utils/verifyMessage.js +9 -18
- package/dist/utils/verifyMessage.js.map +1 -1
- package/dist/utils/verifyPeer.d.ts +2 -1
- package/dist/utils/verifyPeer.js +9 -8
- package/dist/utils/verifyPeer.js.map +1 -1
- package/package.json +4 -3
- package/test-alice/000087.ldb +0 -0
- package/test-alice/000089.ldb +0 -0
- package/test-alice/000092.ldb +0 -0
- package/test-alice/000093.log +0 -0
- package/test-alice/CURRENT +1 -1
- package/test-alice/LOG +5 -5
- package/test-alice/LOG.old +5 -5
- package/test-alice/MANIFEST-000091 +0 -0
- package/test-alice-speed/000003.log +0 -0
- package/test-alice-speed/CURRENT +1 -0
- package/{test-keys-a → test-alice-speed}/LOCK +0 -0
- package/test-alice-speed/LOG +1 -0
- package/test-alice-speed/MANIFEST-000002 +0 -0
- package/test-bob/000087.ldb +0 -0
- package/test-bob/000089.ldb +0 -0
- package/test-bob/000092.ldb +0 -0
- package/test-bob/000093.log +0 -0
- package/test-bob/CURRENT +1 -1
- package/test-bob/LOG +5 -5
- package/test-bob/LOG.old +5 -5
- package/test-bob/MANIFEST-000091 +0 -0
- package/test-node-a/000087.ldb +0 -0
- package/test-node-a/000089.ldb +0 -0
- package/test-node-a/000092.ldb +0 -0
- package/test-node-a/000093.log +0 -0
- package/test-node-a/CURRENT +1 -1
- package/test-node-a/LOG +5 -14
- package/test-node-a/LOG.old +5 -5
- package/test-node-a/MANIFEST-000091 +0 -0
- package/test-node-b/000087.ldb +0 -0
- package/test-node-b/000089.ldb +0 -0
- package/test-node-b/000092.ldb +0 -0
- package/test-node-b/000093.log +0 -0
- package/test-node-b/CURRENT +1 -1
- package/test-node-b/LOG +5 -14
- package/test-node-b/LOG.old +5 -5
- package/test-node-b/MANIFEST-000091 +0 -0
- package/test-verify-a/000026.ldb +0 -0
- package/test-verify-a/000029.ldb +0 -0
- package/test-verify-a/000031.ldb +0 -0
- package/test-verify-a/000033.ldb +0 -0
- package/{test-keys-a/000587.log → test-verify-a/000068.log} +0 -0
- package/test-verify-a/CURRENT +1 -1
- package/test-verify-a/LOG +3 -3
- package/test-verify-a/LOG.old +3 -3
- package/test-verify-a/MANIFEST-000067 +0 -0
- package/test-alice/000845.ldb +0 -0
- package/test-alice/000847.ldb +0 -0
- package/test-alice/000850.ldb +0 -0
- package/test-alice/000853.ldb +0 -0
- package/test-alice/000854.log +0 -0
- package/test-alice/MANIFEST-000852 +0 -0
- package/test-bob/000772.ldb +0 -0
- package/test-bob/000774.ldb +0 -0
- package/test-bob/000777.ldb +0 -0
- package/test-bob/000780.ldb +0 -0
- package/test-bob/000781.log +0 -0
- package/test-bob/MANIFEST-000779 +0 -0
- package/test-keys-a/CURRENT +0 -1
- package/test-keys-a/LOG +0 -3
- package/test-keys-a/LOG.old +0 -3
- package/test-keys-a/MANIFEST-000586 +0 -0
- package/test-keys-b/000587.log +0 -0
- package/test-keys-b/CURRENT +0 -1
- package/test-keys-b/LOCK +0 -0
- package/test-keys-b/LOG +0 -3
- package/test-keys-b/LOG.old +0 -3
- package/test-keys-b/MANIFEST-000586 +0 -0
- package/test-node-a/000870.log +0 -0
- package/test-node-a/000871.ldb +0 -0
- package/test-node-a/MANIFEST-000868 +0 -0
- package/test-node-b/000870.log +0 -0
- package/test-node-b/000871.ldb +0 -0
- package/test-node-b/MANIFEST-000868 +0 -0
- package/test-verify-a/000719.log +0 -0
- package/test-verify-a/MANIFEST-000718 +0 -0
package/README.md
CHANGED
|
@@ -27,6 +27,25 @@ While the database is currently functioning as expected, there are many things t
|
|
|
27
27
|
- Allow messages encryption, add methods for Elliptic Curves, shared keys, etc.
|
|
28
28
|
- Allow adding Noise/encryption to connections (probably based on the ECC?)
|
|
29
29
|
|
|
30
|
+
# Install
|
|
31
|
+
|
|
32
|
+
You can install ToolDb via npm or yarn;
|
|
33
|
+
|
|
34
|
+
```
|
|
35
|
+
npm install tool-db
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
or use it via script in your html;
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
<script src="https://unpkg.com/tool-db/bundle.js"></script>
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
That will include all of ToolDb exports in `tooldb`, then you can use it like;
|
|
45
|
+
|
|
46
|
+
```
|
|
47
|
+
const { ToolDb, sha256 } = tooldb;
|
|
48
|
+
```
|
|
30
49
|
|
|
31
50
|
## Base usage
|
|
32
51
|
Connect to the selected toolDb peers;
|
|
@@ -38,34 +57,34 @@ These are the options you can pass to the constructor:
|
|
|
38
57
|
|
|
39
58
|
```
|
|
40
59
|
{
|
|
41
|
-
// Database name to use
|
|
60
|
+
// Database name to use (default "tooldb")
|
|
42
61
|
db: string;
|
|
43
62
|
|
|
44
|
-
// Show debug console logs
|
|
63
|
+
// Show debug console logs (default false)
|
|
45
64
|
debug: boolean;
|
|
46
65
|
|
|
47
66
|
// Array of peers to connect to, each one in the form of { host: "127.0.0.1", port: 9000 }
|
|
48
67
|
peers: { host: "127.0.0.1", port: 9000 }[];
|
|
49
68
|
|
|
50
|
-
// Max number of tries when a connection fails
|
|
69
|
+
// Max number of tries when a connection fails (default 5)
|
|
51
70
|
maxRetries: number;
|
|
52
71
|
|
|
53
|
-
// How long to wait (max) for a debounced key listener recv
|
|
72
|
+
// How long to wait (max) for a debounced key listener recv (default 100)
|
|
54
73
|
triggerDebouce: number;
|
|
55
74
|
|
|
56
|
-
// How long to wait between retries
|
|
75
|
+
// How long to wait between retries (default 2000)
|
|
57
76
|
wait: number;
|
|
58
77
|
|
|
59
|
-
// If you want to force a Proof of Work on all messages, set how much (zero is no POW)
|
|
78
|
+
// If you want to force a Proof of Work on all messages, set how much (zero is no POW, default 0)
|
|
60
79
|
pow: number;
|
|
61
80
|
|
|
62
|
-
//
|
|
81
|
+
// Whether we are a server or not (default false)
|
|
63
82
|
server: boolean;
|
|
64
83
|
|
|
65
84
|
// Our hostname (server only)
|
|
66
85
|
host: string
|
|
67
86
|
|
|
68
|
-
// Port to listen incoming connections (server only)
|
|
87
|
+
// Port to listen incoming connections (server only, default is 8080)
|
|
69
88
|
port: number;
|
|
70
89
|
|
|
71
90
|
// A server instance like Express (server only)
|
|
@@ -80,10 +99,10 @@ These are the options you can pass to the constructor:
|
|
|
80
99
|
// A custom storage adapter function
|
|
81
100
|
storageAdapter: ToolDbStorageAdapter;
|
|
82
101
|
|
|
83
|
-
// Our client ID (defaults to a
|
|
102
|
+
// Our client ID (defaults to a generated publicKey)
|
|
84
103
|
id: string;
|
|
85
104
|
|
|
86
|
-
// The namespace/topic of our app
|
|
105
|
+
// The namespace/topic of our app (default is "tool-db-default")
|
|
87
106
|
topic: string;
|
|
88
107
|
|
|
89
108
|
// Public and private (ECDSA) keys of our client. In the default network adapter these are used to sign
|
|
@@ -104,9 +123,7 @@ client.anonSignIn().then();
|
|
|
104
123
|
|
|
105
124
|
To retrieve your public key; (only if logged in)
|
|
106
125
|
```
|
|
107
|
-
client.getPubKey()
|
|
108
|
-
// or
|
|
109
|
-
client.user?.pubKey
|
|
126
|
+
client.getPubKey();
|
|
110
127
|
```
|
|
111
128
|
|
|
112
129
|
You can check if you are correctly logged in by checking if the user field exists or not;
|
|
@@ -200,7 +217,8 @@ function handleDocumentKeyCrdt(msg) {
|
|
|
200
217
|
## Events
|
|
201
218
|
|
|
202
219
|
If you need to check when you are connected to a server peer or not you can use the following method replacements;
|
|
220
|
+
|
|
203
221
|
```
|
|
204
|
-
client.onConnect = () => { /* Your code here */ };
|
|
222
|
+
client.onConnect = (remotePeerId: string) => { /* Your code here */ };
|
|
205
223
|
client.onDisconnect = () => { /* Your code here */ };
|
|
206
224
|
```
|