tool-db 1.1.9 → 1.1.13
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 -7
- package/dist/toolDbClientOnMessage.js +10 -8
- package/dist/toolDbClientOnMessage.js.map +1 -1
- package/dist/toolDbGet.js +13 -11
- package/dist/toolDbGet.js.map +1 -1
- package/dist/toolDbQueryKeys.d.ts +1 -1
- package/dist/toolDbQueryKeys.js +26 -2
- package/dist/toolDbQueryKeys.js.map +1 -1
- package/dist/tooldb.d.ts +1 -0
- package/dist/tooldb.js +12 -1
- package/dist/tooldb.js.map +1 -1
- package/dist/types/message.d.ts +9 -9
- package/dist/types/message.js +9 -9
- package/dist/types/message.js.map +1 -1
- package/dist/types/tooldb.d.ts +1 -0
- package/package.json +1 -2
package/README.md
CHANGED
|
@@ -15,9 +15,9 @@ Please check the [chain-swarm](https://github.com/Manuel-777/chain-swarm) reposi
|
|
|
15
15
|
We do that using [discovery-channel](https://www.npmjs.com/package/discovery-channel), but you can use any DHT solution you want! Theoretically, even WebRTC between browsers would work.
|
|
16
16
|
|
|
17
17
|
## Base usage
|
|
18
|
-
Connect to the selected
|
|
18
|
+
Connect to the selected toolDb peers;
|
|
19
19
|
```
|
|
20
|
-
const client = new
|
|
20
|
+
const client = new ToolDb(options);
|
|
21
21
|
```
|
|
22
22
|
|
|
23
23
|
These are the options you can pass to the constructor:
|
|
@@ -63,7 +63,9 @@ if (client.user) {
|
|
|
63
63
|
}
|
|
64
64
|
```
|
|
65
65
|
|
|
66
|
-
|
|
66
|
+
## Putting and getting data
|
|
67
|
+
|
|
68
|
+
Core methods are very straighforward:
|
|
67
69
|
```
|
|
68
70
|
client.getData("key", userNamespaced?, timeout?).then();
|
|
69
71
|
client.putData("key", value, userNamespaced?).then();
|
|
@@ -83,9 +85,9 @@ client.removeKeyListener(listenerId);
|
|
|
83
85
|
|
|
84
86
|
Similarly, for using a custom verification on a key (or subset of keys) you can create a new function that returns a Promise boolean;
|
|
85
87
|
```
|
|
86
|
-
const
|
|
88
|
+
const validateFn = (msg) => {
|
|
87
89
|
return new Promise((resolve) => {
|
|
88
|
-
console.log("Custom
|
|
90
|
+
console.log("Custom verification: ", msg);
|
|
89
91
|
if (typeof msg.value === "string") resolve(true);
|
|
90
92
|
else resolve(false);
|
|
91
93
|
});
|
|
@@ -93,12 +95,27 @@ const validateDn = (msg) => {
|
|
|
93
95
|
|
|
94
96
|
const validatorId = client.addCustomVerification("value", validateFn);
|
|
95
97
|
|
|
96
|
-
// You will not usually need to remove validators, but we provide a function anyway.
|
|
97
98
|
client.removeCustomVerification(validatorId);
|
|
98
99
|
```
|
|
99
100
|
|
|
100
101
|
Keep in mind custom validators should run on all client and server nodes, and even though the nodes not running your validator will be able to store and relay invalid messages its up to each peer to check these messages on arrival. ToolDb does this automatically when using the custom validation, but its important to make sure every peer runs the same code to avoid tampered messages flowing in the network.
|
|
101
102
|
|
|
103
|
+
## Query
|
|
104
|
+
|
|
105
|
+
To make queries or just create indexes you can make a query, it simply asks all server or peers connected a list of all keys starting with a prefix. You can later use these keys to get the data itself.
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
client.queryKeys(keyPrefix, userNamespaced?, timeout?).then()
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
Just like previous methods you can configure the namespace and timeout and returns a promise, but in this case the value is always an array with the found keys.
|
|
112
|
+
Using for example ":" + publicKey as our prefix would return all keys stored for that specific user namespace; you can also create keys for very specific use cases like "post-1" and query again "post-" to get a list of all available posts.
|
|
113
|
+
|
|
114
|
+
Keep in mind this can be an intensive thing to do if your indexes are too big, and not recommended to be used very frequently.
|
|
115
|
+
|
|
116
|
+
|
|
117
|
+
## Listen for changes
|
|
118
|
+
|
|
102
119
|
Some times you want to subscribe to the changes made on a certain key, this is possible via subscribeData;
|
|
103
120
|
```
|
|
104
121
|
client.subscribeData("key", userNamespaced?);
|
|
@@ -125,4 +142,12 @@ function handleDocumentKeyCrdt(msg) {
|
|
|
125
142
|
}
|
|
126
143
|
}
|
|
127
144
|
}
|
|
128
|
-
```
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
## Events
|
|
148
|
+
|
|
149
|
+
If you need to check when you are connected to a server peer or not you can use the following method replacements;
|
|
150
|
+
```
|
|
151
|
+
client.onConnect = () => { /* Your code here */ };
|
|
152
|
+
client.onDisconnect = () => { /* Your code here */ };
|
|
153
|
+
```
|
|
@@ -23,12 +23,7 @@ function toolDbClientOnMessage(data, socket) {
|
|
|
23
23
|
var originalData = data;
|
|
24
24
|
if (typeof data === "string") {
|
|
25
25
|
var message_1 = JSON.parse(data);
|
|
26
|
-
// console.log(
|
|
27
|
-
// "Got message > ",
|
|
28
|
-
// data,
|
|
29
|
-
// message.type,
|
|
30
|
-
// (message as any).key || ""
|
|
31
|
-
// );
|
|
26
|
+
// console.log("Got message > ", message.type, (message as any).k || "");
|
|
32
27
|
// Check if we are listening for this ID
|
|
33
28
|
if (message_1.id) {
|
|
34
29
|
var msgId = message_1.id;
|
|
@@ -48,6 +43,7 @@ function toolDbClientOnMessage(data, socket) {
|
|
|
48
43
|
if (message_1.type === "pong") {
|
|
49
44
|
socket.toolDbId = message_1.id;
|
|
50
45
|
this.websockets._clientSockets[message_1.id] = socket;
|
|
46
|
+
this.onConnect();
|
|
51
47
|
}
|
|
52
48
|
if (message_1.type === "subscribe") {
|
|
53
49
|
if (socket.toolDbId) {
|
|
@@ -120,12 +116,13 @@ function toolDbClientOnMessage(data, socket) {
|
|
|
120
116
|
}
|
|
121
117
|
if (message_1.type === "put") {
|
|
122
118
|
toolDbVerificationWrapper_1.default.call(this, message_1).then(function (value) {
|
|
119
|
+
// console.log("Verification wrapper result: ", value, message.k);
|
|
123
120
|
if (value === _1.VerifyResult.Verified) {
|
|
124
121
|
// relay to other servers
|
|
125
122
|
_this.websockets.send(message_1, message_1.to);
|
|
126
123
|
_this.store.get(message_1.k, function (err, oldData) {
|
|
127
124
|
if (oldData) {
|
|
128
|
-
var parsedOldData = JSON.parse(oldData);
|
|
125
|
+
var parsedOldData = __assign({ type: "put" }, JSON.parse(oldData));
|
|
129
126
|
if (parsedOldData.t < message_1.t) {
|
|
130
127
|
var key = message_1.k;
|
|
131
128
|
_this.triggerKeyListener(key, message_1);
|
|
@@ -133,6 +130,10 @@ function toolDbClientOnMessage(data, socket) {
|
|
|
133
130
|
//
|
|
134
131
|
});
|
|
135
132
|
}
|
|
133
|
+
else {
|
|
134
|
+
var key = message_1.k;
|
|
135
|
+
_this.triggerKeyListener(key, parsedOldData);
|
|
136
|
+
}
|
|
136
137
|
// } else if (this.options.debug) {
|
|
137
138
|
// console.log(
|
|
138
139
|
// `${message.k} has old data, but its newer. old ${parsedOldData.t} < new ${message.t}`
|
|
@@ -149,7 +150,7 @@ function toolDbClientOnMessage(data, socket) {
|
|
|
149
150
|
});
|
|
150
151
|
}
|
|
151
152
|
else {
|
|
152
|
-
console.
|
|
153
|
+
console.warn("unverified message: ", value, message_1);
|
|
153
154
|
}
|
|
154
155
|
});
|
|
155
156
|
}
|
|
@@ -158,6 +159,7 @@ function toolDbClientOnMessage(data, socket) {
|
|
|
158
159
|
// key.crdt = automerge doc with changes
|
|
159
160
|
// const writeStart = new Date().getTime();
|
|
160
161
|
toolDbVerificationWrapper_1.default.call(this, message_1).then(function (value) {
|
|
162
|
+
// console.log("CRDT Verification wrapper result: ", value);
|
|
161
163
|
if (value === _1.VerifyResult.Verified) {
|
|
162
164
|
var key_1 = message_1.k;
|
|
163
165
|
var data_1 = [];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolDbClientOnMessage.js","sourceRoot":"","sources":["../src/toolDbClientOnMessage.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,sBAUW;AAEX,0FAAoE;AAEpE,wDAAkC;AAClC,sFAAgE;AAGhE,SAAwB,qBAAqB,CAE3C,IAAY,EACZ,MAAuB;IAHzB,
|
|
1
|
+
{"version":3,"file":"toolDbClientOnMessage.js","sourceRoot":"","sources":["../src/toolDbClientOnMessage.ts"],"names":[],"mappings":"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"}
|
package/dist/toolDbGet.js
CHANGED
|
@@ -27,17 +27,6 @@ function toolDbGet(key, userNamespaced, timeoutMs) {
|
|
|
27
27
|
console.log("GET > " + finalKey);
|
|
28
28
|
}
|
|
29
29
|
var msgId = (0, _1.textRandom)(10);
|
|
30
|
-
_this.store.get(finalKey, function (err, data) {
|
|
31
|
-
if (data) {
|
|
32
|
-
try {
|
|
33
|
-
var message = JSON.parse(data);
|
|
34
|
-
_this.triggerKeyListener(finalKey, message);
|
|
35
|
-
}
|
|
36
|
-
catch (e) {
|
|
37
|
-
// do nothing
|
|
38
|
-
}
|
|
39
|
-
}
|
|
40
|
-
});
|
|
41
30
|
var cancelTimeout = setTimeout(function () {
|
|
42
31
|
_this.store.get(finalKey, function (err, data) {
|
|
43
32
|
if (data) {
|
|
@@ -63,6 +52,19 @@ function toolDbGet(key, userNamespaced, timeoutMs) {
|
|
|
63
52
|
resolve(msg.v);
|
|
64
53
|
}
|
|
65
54
|
});
|
|
55
|
+
_this.store.get(finalKey, function (err, data) {
|
|
56
|
+
if (data) {
|
|
57
|
+
try {
|
|
58
|
+
var val = JSON.parse(data).v;
|
|
59
|
+
clearTimeout(cancelTimeout);
|
|
60
|
+
_this.removeIdListener(msgId);
|
|
61
|
+
resolve(val);
|
|
62
|
+
}
|
|
63
|
+
catch (e) {
|
|
64
|
+
// do nothing
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
});
|
|
66
68
|
// Do get
|
|
67
69
|
_this.websockets.send({
|
|
68
70
|
type: "get",
|
package/dist/toolDbGet.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolDbGet.js","sourceRoot":"","sources":["../src/toolDbGet.ts"],"names":[],"mappings":";;;;;AAAA,sBAA+B;AAE/B,sEAAgD;AAEhD;;;;;;GAMG;AACH,SAAwB,SAAS,CAE/B,GAAW,EACX,cAAsB,EACtB,SAAgB;IAJlB,
|
|
1
|
+
{"version":3,"file":"toolDbGet.js","sourceRoot":"","sources":["../src/toolDbGet.ts"],"names":[],"mappings":";;;;;AAAA,sBAA+B;AAE/B,sEAAgD;AAEhD;;;;;;GAMG;AACH,SAAwB,SAAS,CAE/B,GAAW,EACX,cAAsB,EACtB,SAAgB;IAJlB,iBAiEC;IA9DC,+BAAA,EAAA,sBAAsB;IACtB,0BAAA,EAAA,gBAAgB;IAEhB,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;;QACjC,IAAI,cAAc,IAAI,CAAA,MAAA,KAAI,CAAC,IAAI,0CAAE,MAAM,MAAK,SAAS,EAAE;YACrD,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;YACjD,OAAO;SACR;QACD,IAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,OAAI,MAAA,KAAI,CAAC,IAAI,0CAAE,MAAM,UAAI,GAAK,CAAC,CAAC,CAAC,GAAG,CAAC;QACvE,IAAI,KAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YACtB,OAAO,CAAC,GAAG,CAAC,QAAQ,GAAG,QAAQ,CAAC,CAAC;SAClC;QAED,IAAM,KAAK,GAAG,IAAA,aAAU,EAAC,EAAE,CAAC,CAAC;QAE7B,IAAM,aAAa,GAAG,UAAU,CAAC;YAC/B,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAC,GAAG,EAAE,IAAI;gBACjC,IAAI,IAAI,EAAE;oBACR,IAAI;wBACF,IAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;wBACjC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;qBACpB;oBAAC,OAAO,CAAC,EAAE;wBACV,OAAO,CAAC,IAAI,CAAC,CAAC;qBACf;iBACF;qBAAM;oBACL,OAAO,CAAC,IAAI,CAAC,CAAC;iBACf;YACH,CAAC,CAAC,CAAC;QACL,CAAC,EAAE,SAAS,CAAC,CAAC;QAEd,KAAI,CAAC,aAAa,CAAC,KAAK,EAAE,UAAC,GAAG;YAC5B,IAAI,KAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,cAAc,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC;aAC7C;YAED,YAAY,CAAC,aAAa,CAAC,CAAC;YAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;aAChB;QACH,CAAC,CAAC,CAAC;QAEH,KAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,EAAE,UAAC,GAAG,EAAE,IAAI;YACjC,IAAI,IAAI,EAAE;gBACR,IAAI;oBACF,IAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;oBAC/B,YAAY,CAAC,aAAa,CAAC,CAAC;oBAC5B,KAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;oBAC7B,OAAO,CAAC,GAAG,CAAC,CAAC;iBACd;gBAAC,OAAO,CAAC,EAAE;oBACV,aAAa;iBACd;aACF;QACH,CAAC,CAAC,CAAC;QAEH,SAAS;QACT,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,KAAK;YACX,EAAE,EAAE,KAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,sBAAY,CAAC;YACjD,GAAG,EAAE,QAAQ;YACb,EAAE,EAAE,KAAK;SACV,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAjED,4BAiEC"}
|
|
@@ -5,4 +5,4 @@ import ToolDb from "./tooldb";
|
|
|
5
5
|
* @param userNamespaced If this key bolongs to a user or its public.
|
|
6
6
|
* @returns Promise<Data>
|
|
7
7
|
*/
|
|
8
|
-
export default function toolDbQueryKeys(this: ToolDb, key: string, userNamespaced?: boolean): Promise<string[] | null>;
|
|
8
|
+
export default function toolDbQueryKeys(this: ToolDb, key: string, userNamespaced?: boolean, timeoutMs?: number): Promise<string[] | null>;
|
package/dist/toolDbQueryKeys.js
CHANGED
|
@@ -1,8 +1,18 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
|
|
3
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
4
|
+
if (ar || !(i in from)) {
|
|
5
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
6
|
+
ar[i] = from[i];
|
|
7
|
+
}
|
|
8
|
+
}
|
|
9
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
10
|
+
};
|
|
2
11
|
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
12
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
13
|
};
|
|
5
14
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
+
var lodash_1 = __importDefault(require("lodash"));
|
|
6
16
|
var _1 = require(".");
|
|
7
17
|
var getIpFromUrl_1 = __importDefault(require("./utils/getIpFromUrl"));
|
|
8
18
|
/**
|
|
@@ -11,9 +21,10 @@ var getIpFromUrl_1 = __importDefault(require("./utils/getIpFromUrl"));
|
|
|
11
21
|
* @param userNamespaced If this key bolongs to a user or its public.
|
|
12
22
|
* @returns Promise<Data>
|
|
13
23
|
*/
|
|
14
|
-
function toolDbQueryKeys(key, userNamespaced) {
|
|
24
|
+
function toolDbQueryKeys(key, userNamespaced, timeoutMs) {
|
|
15
25
|
var _this = this;
|
|
16
26
|
if (userNamespaced === void 0) { userNamespaced = false; }
|
|
27
|
+
if (timeoutMs === void 0) { timeoutMs = 1000; }
|
|
17
28
|
return new Promise(function (resolve, reject) {
|
|
18
29
|
var _a, _b;
|
|
19
30
|
if (userNamespaced && ((_a = _this.user) === null || _a === void 0 ? void 0 : _a.pubKey) === undefined) {
|
|
@@ -25,12 +36,25 @@ function toolDbQueryKeys(key, userNamespaced) {
|
|
|
25
36
|
console.log("QUERY > " + finalKey);
|
|
26
37
|
}
|
|
27
38
|
var msgId = (0, _1.textRandom)(10);
|
|
39
|
+
var foundKeys = [];
|
|
40
|
+
var timeout;
|
|
41
|
+
_this.store.query(finalKey).then(function (localKeys) {
|
|
42
|
+
foundKeys = __spreadArray(__spreadArray([], foundKeys, true), localKeys, true);
|
|
43
|
+
timeout = setTimeout(finishListening, timeoutMs);
|
|
44
|
+
});
|
|
45
|
+
var finishListening = function () {
|
|
46
|
+
resolve(lodash_1.default.uniq(foundKeys));
|
|
47
|
+
};
|
|
28
48
|
_this.addIdListener(msgId, function (msg) {
|
|
29
49
|
if (_this.options.debug) {
|
|
30
50
|
console.log("QUERY RECV > " + finalKey, msg);
|
|
31
51
|
}
|
|
32
52
|
if (msg.type === "queryAck") {
|
|
33
|
-
|
|
53
|
+
foundKeys = __spreadArray(__spreadArray([], foundKeys, true), msg.keys, true);
|
|
54
|
+
if (timeout) {
|
|
55
|
+
clearTimeout(timeout);
|
|
56
|
+
}
|
|
57
|
+
timeout = setTimeout(finishListening, timeoutMs);
|
|
34
58
|
}
|
|
35
59
|
});
|
|
36
60
|
// Do get
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"toolDbQueryKeys.js","sourceRoot":"","sources":["../src/toolDbQueryKeys.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"toolDbQueryKeys.js","sourceRoot":"","sources":["../src/toolDbQueryKeys.ts"],"names":[],"mappings":";;;;;;;;;;;;;;AAAA,kDAAuB;AACvB,sBAA+B;AAE/B,sEAAgD;AAEhD;;;;;GAKG;AACH,SAAwB,eAAe,CAErC,GAAW,EACX,cAAsB,EACtB,SAAgB;IAJlB,iBAmDC;IAhDC,+BAAA,EAAA,sBAAsB;IACtB,0BAAA,EAAA,gBAAgB;IAEhB,OAAO,IAAI,OAAO,CAAC,UAAC,OAAO,EAAE,MAAM;;QACjC,IAAI,cAAc,IAAI,CAAA,MAAA,KAAI,CAAC,IAAI,0CAAE,MAAM,MAAK,SAAS,EAAE;YACrD,MAAM,CAAC,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC,CAAC;YACjD,OAAO;SACR;QACD,IAAM,QAAQ,GAAG,cAAc,CAAC,CAAC,CAAC,OAAI,MAAA,KAAI,CAAC,IAAI,0CAAE,MAAM,UAAI,GAAK,CAAC,CAAC,CAAC,GAAG,CAAC;QACvE,IAAI,KAAI,CAAC,OAAO,CAAC,KAAK,EAAE;YACtB,OAAO,CAAC,GAAG,CAAC,UAAU,GAAG,QAAQ,CAAC,CAAC;SACpC;QAED,IAAM,KAAK,GAAG,IAAA,aAAU,EAAC,EAAE,CAAC,CAAC;QAC7B,IAAI,SAAS,GAAa,EAAE,CAAC;QAC7B,IAAI,OAAmC,CAAC;QAExC,KAAI,CAAC,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,UAAC,SAAS;YACxC,SAAS,mCAAO,SAAS,SAAK,SAAS,OAAC,CAAC;YACzC,OAAO,GAAG,UAAU,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;QACnD,CAAC,CAAC,CAAC;QAEH,IAAM,eAAe,GAAG;YACtB,OAAO,CAAC,gBAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;QAC7B,CAAC,CAAC;QAEF,KAAI,CAAC,aAAa,CAAC,KAAK,EAAE,UAAC,GAAG;YAC5B,IAAI,KAAI,CAAC,OAAO,CAAC,KAAK,EAAE;gBACtB,OAAO,CAAC,GAAG,CAAC,gBAAgB,GAAG,QAAQ,EAAE,GAAG,CAAC,CAAC;aAC/C;YACD,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE;gBAC3B,SAAS,mCAAO,SAAS,SAAK,GAAG,CAAC,IAAI,OAAC,CAAC;gBAExC,IAAI,OAAO,EAAE;oBACX,YAAY,CAAC,OAAO,CAAC,CAAC;iBACvB;gBACD,OAAO,GAAG,UAAU,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;aAClD;QACH,CAAC,CAAC,CAAC;QAEH,SAAS;QACT,KAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACnB,IAAI,EAAE,OAAO;YACb,EAAE,EAAE,KAAI,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,CAAC,sBAAY,CAAC;YACjD,GAAG,EAAE,QAAQ;YACb,EAAE,EAAE,KAAK;SACV,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAnDD,kCAmDC"}
|
package/dist/tooldb.d.ts
CHANGED
|
@@ -33,6 +33,7 @@ export default class ToolDb {
|
|
|
33
33
|
get subscriptions(): string[];
|
|
34
34
|
subscribeData: typeof toolDbSubscribe;
|
|
35
35
|
onDisconnect: () => void;
|
|
36
|
+
onConnect: () => void;
|
|
36
37
|
loadCrdtDocument: typeof loadCrdtDocument;
|
|
37
38
|
getData: typeof toolDbGet;
|
|
38
39
|
putData: typeof toolDbPut;
|
package/dist/tooldb.js
CHANGED
|
@@ -39,9 +39,14 @@ var ToolDb = /** @class */ (function () {
|
|
|
39
39
|
this.clientOnMessage = toolDbClientOnMessage_1.default;
|
|
40
40
|
this._subscriptions = [];
|
|
41
41
|
this.subscribeData = toolDbSubscribe_1.default;
|
|
42
|
+
// Emitted when there are no more server peers connected to
|
|
42
43
|
this.onDisconnect = function () {
|
|
43
44
|
//
|
|
44
45
|
};
|
|
46
|
+
// Emitted when a server peer responds with "pong"
|
|
47
|
+
this.onConnect = function () {
|
|
48
|
+
//
|
|
49
|
+
};
|
|
45
50
|
this.loadCrdtDocument = loadCrdtDocument_1.default;
|
|
46
51
|
this.getData = toolDbGet_1.default;
|
|
47
52
|
this.putData = toolDbPut_1.default;
|
|
@@ -84,9 +89,14 @@ var ToolDb = /** @class */ (function () {
|
|
|
84
89
|
_this._keyListeners[id] = null;
|
|
85
90
|
};
|
|
86
91
|
this.triggerKeyListener = function (key, message) {
|
|
92
|
+
// console.warn(`triggerKeyListener ${key}`);
|
|
87
93
|
_this._keyListeners.forEach(function (listener) {
|
|
88
94
|
if ((listener === null || listener === void 0 ? void 0 : listener.key) === key) {
|
|
89
|
-
|
|
95
|
+
// console.log(`TRIGGER OK`, message);
|
|
96
|
+
if (listener.timeout) {
|
|
97
|
+
clearTimeout(listener.timeout);
|
|
98
|
+
}
|
|
99
|
+
listener.timeout = setTimeout(function () { return listener.fn(message); }, _this._options.triggerDebouce);
|
|
90
100
|
}
|
|
91
101
|
});
|
|
92
102
|
};
|
|
@@ -110,6 +120,7 @@ var ToolDb = /** @class */ (function () {
|
|
|
110
120
|
db: "tooldb",
|
|
111
121
|
peers: [],
|
|
112
122
|
maxRetries: 5,
|
|
123
|
+
triggerDebouce: 100,
|
|
113
124
|
wait: 2000,
|
|
114
125
|
pow: 0,
|
|
115
126
|
server: false,
|
package/dist/tooldb.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tooldb.js","sourceRoot":"","sources":["../src/tooldb.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,8CAAwB;AAIxB,0DAAoC;AACpC,0DAAoC;AACpC,sEAAgD;AAChD,gEAA0C;AAC1C,wEAAkD;AAClD,gEAA0C;AAC1C,0FAAoE;AAEpE,kFAA4D;AAC5D,8DAAwC;AACxC,4DAAsC;AACtC,sBAOW;AACX,sEAAgD;AAChD,kEAA4C;AAE5C,wEAAkD;AAClD,wEAAkD;AAClD,sEAAgD;AAahD;
|
|
1
|
+
{"version":3,"file":"tooldb.js","sourceRoot":"","sources":["../src/tooldb.ts"],"names":[],"mappings":"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"}
|
package/dist/types/message.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
export declare enum VerifyResult {
|
|
2
|
-
CustomVerificationFailed =
|
|
3
|
-
InvalidData =
|
|
4
|
-
InvalidVerification =
|
|
5
|
-
InvalidTimestamp =
|
|
6
|
-
PubKeyMismatch =
|
|
7
|
-
NoProofOfWork =
|
|
8
|
-
InvalidHashNonce =
|
|
9
|
-
InvalidSignature =
|
|
10
|
-
Verified =
|
|
2
|
+
CustomVerificationFailed = "CustomVerificationFailed",
|
|
3
|
+
InvalidData = "InvalidData",
|
|
4
|
+
InvalidVerification = "InvalidVerification",
|
|
5
|
+
InvalidTimestamp = "InvalidTimestamp",
|
|
6
|
+
PubKeyMismatch = "PubKeyMismatch",
|
|
7
|
+
NoProofOfWork = "NoProofOfWork",
|
|
8
|
+
InvalidHashNonce = "InvalidHashNonce",
|
|
9
|
+
InvalidSignature = "InvalidSignature",
|
|
10
|
+
Verified = "Verified"
|
|
11
11
|
}
|
|
12
12
|
export interface VerificationData<T = any> {
|
|
13
13
|
k: string;
|
package/dist/types/message.js
CHANGED
|
@@ -3,14 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.VerifyResult = void 0;
|
|
4
4
|
var VerifyResult;
|
|
5
5
|
(function (VerifyResult) {
|
|
6
|
-
VerifyResult[
|
|
7
|
-
VerifyResult[
|
|
8
|
-
VerifyResult[
|
|
9
|
-
VerifyResult[
|
|
10
|
-
VerifyResult[
|
|
11
|
-
VerifyResult[
|
|
12
|
-
VerifyResult[
|
|
13
|
-
VerifyResult[
|
|
14
|
-
VerifyResult[
|
|
6
|
+
VerifyResult["CustomVerificationFailed"] = "CustomVerificationFailed";
|
|
7
|
+
VerifyResult["InvalidData"] = "InvalidData";
|
|
8
|
+
VerifyResult["InvalidVerification"] = "InvalidVerification";
|
|
9
|
+
VerifyResult["InvalidTimestamp"] = "InvalidTimestamp";
|
|
10
|
+
VerifyResult["PubKeyMismatch"] = "PubKeyMismatch";
|
|
11
|
+
VerifyResult["NoProofOfWork"] = "NoProofOfWork";
|
|
12
|
+
VerifyResult["InvalidHashNonce"] = "InvalidHashNonce";
|
|
13
|
+
VerifyResult["InvalidSignature"] = "InvalidSignature";
|
|
14
|
+
VerifyResult["Verified"] = "Verified";
|
|
15
15
|
})(VerifyResult = exports.VerifyResult || (exports.VerifyResult = {}));
|
|
16
16
|
//# sourceMappingURL=message.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/types/message.ts"],"names":[],"mappings":";;;AAAA,IAAY,YAUX;AAVD,WAAY,YAAY;IACtB,
|
|
1
|
+
{"version":3,"file":"message.js","sourceRoot":"","sources":["../../src/types/message.ts"],"names":[],"mappings":";;;AAAA,IAAY,YAUX;AAVD,WAAY,YAAY;IACtB,qEAAqD,CAAA;IACrD,2CAA2B,CAAA;IAC3B,2DAA2C,CAAA;IAC3C,qDAAqC,CAAA;IACrC,iDAAiC,CAAA;IACjC,+CAA+B,CAAA;IAC/B,qDAAqC,CAAA;IACrC,qDAAqC,CAAA;IACrC,qCAAqB,CAAA;AACvB,CAAC,EAVW,YAAY,GAAZ,oBAAY,KAAZ,oBAAY,QAUvB"}
|
package/dist/types/tooldb.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "tool-db",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.13",
|
|
4
4
|
"private": false,
|
|
5
5
|
"description": "A decentralized database model for federated p2p networks.",
|
|
6
6
|
"main": "dist/index.js",
|
|
@@ -19,7 +19,6 @@
|
|
|
19
19
|
"dependencies": {
|
|
20
20
|
"@peculiar/webcrypto": "^1.1.7",
|
|
21
21
|
"automerge": "^1.0.1-preview.4",
|
|
22
|
-
"axios": "^0.21.1",
|
|
23
22
|
"babel": "^6.23.0",
|
|
24
23
|
"buffer": "^6.0.3",
|
|
25
24
|
"crypto": "^1.0.1",
|