@trufnetwork/sdk-js 0.0.0-dev-20241126103246

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.
Files changed (140) hide show
  1. package/LICENSE.md +13 -0
  2. package/README.md +95 -0
  3. package/dist/cjs/client/browserClient.cjs +39 -0
  4. package/dist/cjs/client/browserClient.cjs.map +7 -0
  5. package/dist/cjs/client/client.cjs +200 -0
  6. package/dist/cjs/client/client.cjs.map +7 -0
  7. package/dist/cjs/client/client.test.cjs +32 -0
  8. package/dist/cjs/client/client.test.cjs.map +7 -0
  9. package/dist/cjs/client/listAllStreams.cjs +51 -0
  10. package/dist/cjs/client/listAllStreams.cjs.map +7 -0
  11. package/dist/cjs/client/nodeClient.cjs +39 -0
  12. package/dist/cjs/client/nodeClient.cjs.map +7 -0
  13. package/dist/cjs/contracts/composed_stream_template.json +1638 -0
  14. package/dist/cjs/contracts/contractsContent.cjs +53 -0
  15. package/dist/cjs/contracts/contractsContent.cjs.map +7 -0
  16. package/dist/cjs/contracts/primitive_stream_template.json +952 -0
  17. package/dist/cjs/contracts-api/composedStream.cjs +137 -0
  18. package/dist/cjs/contracts-api/composedStream.cjs.map +7 -0
  19. package/dist/cjs/contracts-api/contractValues.cjs +66 -0
  20. package/dist/cjs/contracts-api/contractValues.cjs.map +7 -0
  21. package/dist/cjs/contracts-api/deployStream.cjs +55 -0
  22. package/dist/cjs/contracts-api/deployStream.cjs.map +7 -0
  23. package/dist/cjs/contracts-api/destroyStream.cjs +45 -0
  24. package/dist/cjs/contracts-api/destroyStream.cjs.map +7 -0
  25. package/dist/cjs/contracts-api/primitiveStream.cjs +86 -0
  26. package/dist/cjs/contracts-api/primitiveStream.cjs.map +7 -0
  27. package/dist/cjs/contracts-api/stream.cjs +379 -0
  28. package/dist/cjs/contracts-api/stream.cjs.map +7 -0
  29. package/dist/cjs/index.browser.cjs +29 -0
  30. package/dist/cjs/index.browser.cjs.map +7 -0
  31. package/dist/cjs/index.cjs +31 -0
  32. package/dist/cjs/index.cjs.map +7 -0
  33. package/dist/cjs/index.common.cjs +39 -0
  34. package/dist/cjs/index.common.cjs.map +7 -0
  35. package/dist/cjs/index.node.cjs +29 -0
  36. package/dist/cjs/index.node.cjs.map +7 -0
  37. package/dist/cjs/types/other.cjs +19 -0
  38. package/dist/cjs/types/other.cjs.map +7 -0
  39. package/dist/cjs/types/stream.cjs +19 -0
  40. package/dist/cjs/types/stream.cjs.map +7 -0
  41. package/dist/cjs/util/EthereumAddress.cjs +108 -0
  42. package/dist/cjs/util/EthereumAddress.cjs.map +7 -0
  43. package/dist/cjs/util/StreamId.cjs +77 -0
  44. package/dist/cjs/util/StreamId.cjs.map +7 -0
  45. package/dist/cjs/util/head.cjs +30 -0
  46. package/dist/cjs/util/head.cjs.map +7 -0
  47. package/dist/cjs/util/visibility.cjs +42 -0
  48. package/dist/cjs/util/visibility.cjs.map +7 -0
  49. package/dist/esm/client/browserClient.mjs +18 -0
  50. package/dist/esm/client/browserClient.mjs.map +7 -0
  51. package/dist/esm/client/client.mjs +183 -0
  52. package/dist/esm/client/client.mjs.map +7 -0
  53. package/dist/esm/client/client.test.mjs +30 -0
  54. package/dist/esm/client/client.test.mjs.map +7 -0
  55. package/dist/esm/client/listAllStreams.mjs +30 -0
  56. package/dist/esm/client/listAllStreams.mjs.map +7 -0
  57. package/dist/esm/client/nodeClient.mjs +18 -0
  58. package/dist/esm/client/nodeClient.mjs.map +7 -0
  59. package/dist/esm/contracts/composed_stream_template.json +1638 -0
  60. package/dist/esm/contracts/contractsContent.mjs +21 -0
  61. package/dist/esm/contracts/contractsContent.mjs.map +7 -0
  62. package/dist/esm/contracts/primitive_stream_template.json +952 -0
  63. package/dist/esm/contracts-api/composedStream.mjs +116 -0
  64. package/dist/esm/contracts-api/composedStream.mjs.map +7 -0
  65. package/dist/esm/contracts-api/contractValues.mjs +45 -0
  66. package/dist/esm/contracts-api/contractValues.mjs.map +7 -0
  67. package/dist/esm/contracts-api/deployStream.mjs +37 -0
  68. package/dist/esm/contracts-api/deployStream.mjs.map +7 -0
  69. package/dist/esm/contracts-api/destroyStream.mjs +24 -0
  70. package/dist/esm/contracts-api/destroyStream.mjs.map +7 -0
  71. package/dist/esm/contracts-api/primitiveStream.mjs +65 -0
  72. package/dist/esm/contracts-api/primitiveStream.mjs.map +7 -0
  73. package/dist/esm/contracts-api/stream.mjs +367 -0
  74. package/dist/esm/contracts-api/stream.mjs.map +7 -0
  75. package/dist/esm/index.browser.mjs +7 -0
  76. package/dist/esm/index.browser.mjs.map +7 -0
  77. package/dist/esm/index.common.mjs +18 -0
  78. package/dist/esm/index.common.mjs.map +7 -0
  79. package/dist/esm/index.mjs +9 -0
  80. package/dist/esm/index.mjs.map +7 -0
  81. package/dist/esm/index.node.mjs +7 -0
  82. package/dist/esm/index.node.mjs.map +7 -0
  83. package/dist/esm/types/other.mjs +1 -0
  84. package/dist/esm/types/other.mjs.map +7 -0
  85. package/dist/esm/types/stream.mjs +1 -0
  86. package/dist/esm/types/stream.mjs.map +7 -0
  87. package/dist/esm/util/EthereumAddress.mjs +90 -0
  88. package/dist/esm/util/EthereumAddress.mjs.map +7 -0
  89. package/dist/esm/util/StreamId.mjs +59 -0
  90. package/dist/esm/util/StreamId.mjs.map +7 -0
  91. package/dist/esm/util/head.mjs +9 -0
  92. package/dist/esm/util/head.mjs.map +7 -0
  93. package/dist/esm/util/visibility.mjs +21 -0
  94. package/dist/esm/util/visibility.mjs.map +7 -0
  95. package/dist/tsconfig.build.tsbuildinfo +1 -0
  96. package/dist/types/client/browserClient.d.ts +7 -0
  97. package/dist/types/client/browserClient.d.ts.map +1 -0
  98. package/dist/types/client/client.d.ts +103 -0
  99. package/dist/types/client/client.d.ts.map +1 -0
  100. package/dist/types/client/client.test.d.ts +2 -0
  101. package/dist/types/client/client.test.d.ts.map +1 -0
  102. package/dist/types/client/listAllStreams.d.ts +14 -0
  103. package/dist/types/client/listAllStreams.d.ts.map +1 -0
  104. package/dist/types/client/nodeClient.d.ts +7 -0
  105. package/dist/types/client/nodeClient.d.ts.map +1 -0
  106. package/dist/types/contracts/contractsContent.d.ts +4 -0
  107. package/dist/types/contracts/contractsContent.d.ts.map +1 -0
  108. package/dist/types/contracts-api/composedStream.d.ts +57 -0
  109. package/dist/types/contracts-api/composedStream.d.ts.map +1 -0
  110. package/dist/types/contracts-api/contractValues.d.ts +49 -0
  111. package/dist/types/contracts-api/contractValues.d.ts.map +1 -0
  112. package/dist/types/contracts-api/deployStream.d.ts +23 -0
  113. package/dist/types/contracts-api/deployStream.d.ts.map +1 -0
  114. package/dist/types/contracts-api/destroyStream.d.ts +27 -0
  115. package/dist/types/contracts-api/destroyStream.d.ts.map +1 -0
  116. package/dist/types/contracts-api/primitiveStream.d.ts +39 -0
  117. package/dist/types/contracts-api/primitiveStream.d.ts.map +1 -0
  118. package/dist/types/contracts-api/stream.d.ts +135 -0
  119. package/dist/types/contracts-api/stream.d.ts.map +1 -0
  120. package/dist/types/index.browser.d.ts +3 -0
  121. package/dist/types/index.browser.d.ts.map +1 -0
  122. package/dist/types/index.common.d.ts +16 -0
  123. package/dist/types/index.common.d.ts.map +1 -0
  124. package/dist/types/index.d.ts +4 -0
  125. package/dist/types/index.d.ts.map +1 -0
  126. package/dist/types/index.node.d.ts +3 -0
  127. package/dist/types/index.node.d.ts.map +1 -0
  128. package/dist/types/types/other.d.ts +2 -0
  129. package/dist/types/types/other.d.ts.map +1 -0
  130. package/dist/types/types/stream.d.ts +13 -0
  131. package/dist/types/types/stream.d.ts.map +1 -0
  132. package/dist/types/util/EthereumAddress.d.ts +14 -0
  133. package/dist/types/util/EthereumAddress.d.ts.map +1 -0
  134. package/dist/types/util/StreamId.d.ts +13 -0
  135. package/dist/types/util/StreamId.d.ts.map +1 -0
  136. package/dist/types/util/head.d.ts +3 -0
  137. package/dist/types/util/head.d.ts.map +1 -0
  138. package/dist/types/util/visibility.d.ts +10 -0
  139. package/dist/types/util/visibility.d.ts.map +1 -0
  140. package/package.json +82 -0
package/LICENSE.md ADDED
@@ -0,0 +1,13 @@
1
+ Copyright 2024 Tru Labs Inc.
2
+
3
+ Licensed under the Apache License, Version 2.0 (the "License");
4
+ you may not use this file except in compliance with the License.
5
+ You may obtain a copy of the License at
6
+
7
+ http://www.apache.org/licenses/LICENSE-2.0
8
+
9
+ Unless required by applicable law or agreed to in writing, software
10
+ distributed under the License is distributed on an "AS IS" BASIS,
11
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ See the License for the specific language governing permissions and
13
+ limitations under the License.
package/README.md ADDED
@@ -0,0 +1,95 @@
1
+ # TN SDK JS
2
+
3
+ The TN SDK provides developers with tools to interact with the Truf Network, a decentralized platform for publishing, composing, and consuming economic data streams.
4
+
5
+ ## Quick Start
6
+
7
+ ### Prerequisites
8
+ - Node.js 18 or later
9
+
10
+ ### Installation
11
+ ```bash
12
+ npm install @trufnetwork/sdk-js
13
+ # or your preferred package manager
14
+ ```
15
+
16
+ ### Environment-specific Usage
17
+
18
+ ```ts
19
+ // For Node.js applications
20
+ import { NodeTNClient } from "@trufnetwork/sdk-js";
21
+
22
+ // For browser applications
23
+ import { BrowserTNClient } from "@trufnetwork/sdk-js";
24
+ ```
25
+
26
+ ### Example Usage
27
+
28
+ ```ts
29
+ import { NodeTNClient, StreamId } from "@trufnetwork/sdk-js";
30
+
31
+ // Initialize client
32
+ const client = new NodeTNClient({
33
+ endpoint: "https://staging.tsn.truflation.com",
34
+ signerInfo: {
35
+ address: wallet.address,
36
+ signer: wallet, // Any object that implements signMessage
37
+ },
38
+ chainId: "tsn-1", // or use NodeTNClient.getDefaultChainId()
39
+ });
40
+
41
+ // Deploy and initialize a stream
42
+ const streamId = await StreamId.generate("my-data-stream");
43
+ await client.deployStream(streamId, "primitive", true);
44
+
45
+ const stream = client.loadPrimitiveStream({
46
+ streamId,
47
+ dataProvider: client.address(),
48
+ });
49
+
50
+ // here simplified, you might need to wait for the tx using client.waitForTx
51
+ await stream.initializeStream();
52
+
53
+ // Insert data, simplified
54
+ await stream.insertRecords([
55
+ { dateValue: "2024-01-01", value: "100.5" }
56
+ ]);
57
+
58
+ // Read data
59
+ const data = await stream.getRecord({
60
+ dateFrom: "2024-01-01",
61
+ dateTo: "2024-01-01",
62
+ });
63
+ ```
64
+
65
+ For a complete working example:
66
+ - Check our [TN SDK Demo Repository](https://github.com/truflation/tsn-sdk-demo)
67
+ - Try the [Live Demo on CodeSandbox](https://codesandbox.io/p/devbox/m2r3tt?file=%2Fsrc%2Froutes%2F%2Bpage.svelte)
68
+ - Try reading from [a Truflation Stream on CodeSandbox with NodeJS](https://codesandbox.io/p/devbox/rtm7mn?file=%2Findex.ts%3A22%2C11)
69
+
70
+ ## Stream Types
71
+
72
+ TN supports two main types of streams:
73
+
74
+ - **Primitive Streams**: Direct data sources from providers
75
+ - **Composed Streams**: Aggregate data from multiple streams using weights
76
+
77
+ More information about TN components can be found in the [Js TN-SDK Documentation](https://github.com/trufnetwork/sdk-js/blob/main/docs/api-reference.md).
78
+
79
+ ## Documentation
80
+
81
+ - [Getting Started](./docs/getting-started.md)
82
+ - [Core Concepts](./docs/core-concepts.md)
83
+ - [API Reference](./docs/api-reference.md)
84
+
85
+ ## Staging Network
86
+
87
+ A staging network is available at https://staging.tsn.truflation.com for testing and experimentation.
88
+
89
+ ## Support
90
+
91
+ For support, please [open an issue](https://github.com/trufnetwork/sdk-js/issues).
92
+
93
+ ## License
94
+
95
+ Licensed under the Apache License, Version 2.0. See [LICENSE](LICENSE.md) for details.
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/client/browserClient.ts
21
+ var browserClient_exports = {};
22
+ __export(browserClient_exports, {
23
+ BrowserTNClient: () => BrowserTNClient,
24
+ default: () => browserClient_default
25
+ });
26
+ module.exports = __toCommonJS(browserClient_exports);
27
+ var import_kwil_js = require("@kwilteam/kwil-js");
28
+ var import_client = require("./client.cjs");
29
+ var BrowserTNClient = class extends import_client.BaseTNClient {
30
+ constructor(options) {
31
+ super(options);
32
+ this.kwilClient = new import_kwil_js.WebKwil({
33
+ ...options,
34
+ kwilProvider: options.endpoint
35
+ });
36
+ }
37
+ };
38
+ var browserClient_default = BrowserTNClient;
39
+ //# sourceMappingURL=browserClient.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/client/browserClient.ts"],
4
+ "sourcesContent": ["import { EnvironmentType } from \"@kwilteam/kwil-js/dist/core/enums\";\nimport { WebKwil } from \"@kwilteam/kwil-js\";\nimport { BaseTNClient, TNClientOptions } from \"./client\";\n\nexport class BrowserTNClient extends BaseTNClient<EnvironmentType.BROWSER> {\n constructor(options: TNClientOptions) {\n super(options);\n this.kwilClient = new WebKwil({\n ...options,\n kwilProvider: options.endpoint,\n });\n }\n}\n\nexport default BrowserTNClient;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,qBAAwB;AACxB,oBAA8C;AAEvC,IAAM,kBAAN,cAA8B,2BAAsC;AAAA,EACzE,YAAY,SAA0B;AACpC,UAAM,OAAO;AACb,SAAK,aAAa,IAAI,uBAAQ;AAAA,MAC5B,GAAG;AAAA,MACH,cAAc,QAAQ;AAAA,IACxB,CAAC;AAAA,EACH;AACF;AAEA,IAAO,wBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,200 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/client/client.ts
21
+ var client_exports = {};
22
+ __export(client_exports, {
23
+ BaseTNClient: () => BaseTNClient
24
+ });
25
+ module.exports = __toCommonJS(client_exports);
26
+ var import_kwil_js = require("@kwilteam/kwil-js");
27
+ var import_composedStream = require("../contracts-api/composedStream.cjs");
28
+ var import_deployStream = require("../contracts-api/deployStream.cjs");
29
+ var import_destroyStream = require("../contracts-api/destroyStream.cjs");
30
+ var import_primitiveStream = require("../contracts-api/primitiveStream.cjs");
31
+ var import_stream = require("../contracts-api/stream.cjs");
32
+ var import_EthereumAddress = require("../util/EthereumAddress.cjs");
33
+ var import_listAllStreams = require("./listAllStreams.cjs");
34
+ var BaseTNClient = class {
35
+ kwilClient;
36
+ signerInfo;
37
+ constructor(options) {
38
+ this.signerInfo = options.signerInfo;
39
+ }
40
+ /**
41
+ * Waits for a transaction to be mined by TN.
42
+ * @param txHash - The transaction hash to wait for.
43
+ * @param timeout - The timeout in milliseconds.
44
+ * @returns A promise that resolves to the transaction info receipt.
45
+ */
46
+ async waitForTx(txHash, timeout = 12e3) {
47
+ return new Promise(async (resolve, reject) => {
48
+ const interval = setInterval(async () => {
49
+ const receipt = await this.getKwilClient()["txInfoClient"](txHash).catch(() => ({ data: void 0, status: void 0 }));
50
+ switch (receipt.status) {
51
+ case 200:
52
+ if (receipt.data?.tx_result.log === "success") {
53
+ resolve(receipt.data);
54
+ } else {
55
+ reject(
56
+ new Error(
57
+ `Transaction failed: status ${receipt.status} : log message ${receipt.data?.tx_result.log}`
58
+ )
59
+ );
60
+ }
61
+ break;
62
+ case void 0:
63
+ break;
64
+ default:
65
+ reject(
66
+ new Error(
67
+ `Transaction failed: status ${receipt.status} : log message ${receipt.data?.tx_result.log}`
68
+ )
69
+ );
70
+ }
71
+ }, 1e3);
72
+ setTimeout(() => {
73
+ clearInterval(interval);
74
+ reject(new Error("Transaction failed: Timeout"));
75
+ }, timeout);
76
+ });
77
+ }
78
+ /**
79
+ * Returns the Kwil signer used by the client.
80
+ * @returns An instance of KwilSigner.
81
+ */
82
+ getKwilSigner() {
83
+ return new import_kwil_js.KwilSigner(
84
+ this.signerInfo.signer,
85
+ this.address().getAddress()
86
+ );
87
+ }
88
+ /**
89
+ * Returns the Kwil client used by the client.
90
+ * @returns An instance of Kwil.
91
+ * @throws If the Kwil client is not initialized.
92
+ */
93
+ getKwilClient() {
94
+ if (!this.kwilClient) {
95
+ throw new Error("Kwil client not initialized");
96
+ }
97
+ return this.kwilClient;
98
+ }
99
+ /**
100
+ * Deploys a new stream.
101
+ * @param streamId - The ID of the stream to deploy.
102
+ * @param streamType - The type of the stream.
103
+ * @param synchronous - Whether the deployment should be synchronous.
104
+ * @returns A promise that resolves to a generic response containing the transaction receipt.
105
+ */
106
+ async deployStream(streamId, streamType, synchronous) {
107
+ return await (0, import_deployStream.deployStream)({
108
+ streamId,
109
+ streamType,
110
+ synchronous,
111
+ kwilClient: this.getKwilClient(),
112
+ kwilSigner: this.getKwilSigner()
113
+ });
114
+ }
115
+ /**
116
+ * Destroys a stream.
117
+ * @param streamId - The ID of the stream to destroy.
118
+ * @param synchronous - Whether the destruction should be synchronous.
119
+ * @returns A promise that resolves to a generic response containing the transaction receipt.
120
+ */
121
+ async destroyStream(streamId, synchronous) {
122
+ return await (0, import_destroyStream.destroyStream)({
123
+ streamId,
124
+ synchronous,
125
+ kwilClient: this.getKwilClient(),
126
+ kwilSigner: this.getKwilSigner()
127
+ });
128
+ }
129
+ /**
130
+ * Loads an already deployed stream, permitting its API usage.
131
+ * @param stream - The locator of the stream to load.
132
+ * @returns An instance of IStream.
133
+ */
134
+ loadStream(stream) {
135
+ return new import_stream.Stream(
136
+ this.getKwilClient(),
137
+ this.getKwilSigner(),
138
+ stream
139
+ );
140
+ }
141
+ /**
142
+ * Loads a primitive stream.
143
+ * @param stream - The locator of the primitive stream to load.
144
+ * @returns An instance of IPrimitiveStream.
145
+ */
146
+ loadPrimitiveStream(stream) {
147
+ return import_primitiveStream.PrimitiveStream.fromStream(this.loadStream(stream));
148
+ }
149
+ /**
150
+ * Loads a composed stream.
151
+ * @param stream - The locator of the composed stream to load.
152
+ * @returns An instance of IComposedStream.
153
+ */
154
+ loadComposedStream(stream) {
155
+ return new import_composedStream.ComposedStream(
156
+ this.getKwilClient(),
157
+ this.getKwilSigner(),
158
+ stream
159
+ );
160
+ }
161
+ /**
162
+ * Creates a new stream locator.
163
+ * @param streamId - The ID of the stream.
164
+ * @returns A StreamLocator object.
165
+ */
166
+ ownStreamLocator(streamId) {
167
+ return {
168
+ streamId,
169
+ dataProvider: this.address()
170
+ };
171
+ }
172
+ /**
173
+ * Returns the address of the signer used by the client.
174
+ * @returns An instance of EthereumAddress.
175
+ */
176
+ address() {
177
+ return new import_EthereumAddress.EthereumAddress(this.signerInfo.address);
178
+ }
179
+ /**
180
+ * Returns all streams from the TN network.
181
+ * @param owner - The owner of the streams. If not provided, all streams will be returned.
182
+ * @returns A promise that resolves to a list of stream locators.
183
+ */
184
+ async getAllStreams(owner) {
185
+ return (0, import_listAllStreams.listAllStreams)(this.getKwilClient(), owner);
186
+ }
187
+ /**
188
+ * Get the default chain id for a provider. Use with caution, as this decreases the security of the TN.
189
+ * @param provider - The provider URL.
190
+ * @returns A promise that resolves to the chain ID.
191
+ */
192
+ static async getDefaultChainId(provider) {
193
+ const kwilClient = new import_kwil_js.Client({
194
+ kwilProvider: provider
195
+ });
196
+ const chainInfo = await kwilClient["chainInfoClient"]();
197
+ return chainInfo.data?.chain_id;
198
+ }
199
+ };
200
+ //# sourceMappingURL=client.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/client/client.ts"],
4
+ "sourcesContent": ["import { Client, KwilSigner, NodeKwil, WebKwil } from \"@kwilteam/kwil-js\";\nimport { KwilConfig } from \"@kwilteam/kwil-js/dist/api_client/config\";\nimport { Kwil } from \"@kwilteam/kwil-js/dist/client/kwil\";\nimport { EthSigner } from \"@kwilteam/kwil-js/dist/core/builders\";\nimport { EnvironmentType } from \"@kwilteam/kwil-js/dist/core/enums\";\nimport { GenericResponse } from \"@kwilteam/kwil-js/dist/core/resreq\";\nimport { TxReceipt } from \"@kwilteam/kwil-js/dist/core/tx\";\nimport { TxInfoReceipt } from \"@kwilteam/kwil-js/dist/core/txQuery\";\nimport { ComposedStream } from \"../contracts-api/composedStream\";\nimport { deployStream } from \"../contracts-api/deployStream\";\nimport { destroyStream } from \"../contracts-api/destroyStream\";\nimport { PrimitiveStream } from \"../contracts-api/primitiveStream\";\nimport { Stream } from \"../contracts-api/stream\";\nimport { StreamType } from \"../contracts-api/contractValues\";\nimport { StreamLocator } from \"../types/stream\";\nimport { EthereumAddress } from \"../util/EthereumAddress\";\nimport { StreamId } from \"../util/StreamId\";\nimport { listAllStreams } from \"./listAllStreams\";\n\nexport interface SignerInfo {\n // we need to have the address upfront to create the KwilSigner, instead of relying on the signer to return it asynchronously\n address: string;\n signer: EthSigner;\n}\n\nexport type TNClientOptions = {\n endpoint: string;\n signerInfo: SignerInfo;\n} & Omit<KwilConfig, \"kwilProvider\">;\n\nexport abstract class BaseTNClient<T extends EnvironmentType> {\n protected kwilClient: Kwil<T> | undefined;\n protected signerInfo: SignerInfo;\n\n protected constructor(options: TNClientOptions) {\n this.signerInfo = options.signerInfo;\n }\n\n /**\n * Waits for a transaction to be mined by TN.\n * @param txHash - The transaction hash to wait for.\n * @param timeout - The timeout in milliseconds.\n * @returns A promise that resolves to the transaction info receipt.\n */\n async waitForTx(txHash: string, timeout = 12000): Promise<TxInfoReceipt> {\n return new Promise<TxInfoReceipt>(async (resolve, reject) => {\n const interval = setInterval(async () => {\n const receipt = await this.getKwilClient()\n [\"txInfoClient\"](txHash)\n .catch(() => ({ data: undefined, status: undefined }));\n switch (receipt.status) {\n case 200:\n if (receipt.data?.tx_result.log === \"success\") {\n resolve(receipt.data);\n } else {\n reject(\n new Error(\n `Transaction failed: status ${receipt.status} : log message ${receipt.data?.tx_result.log}`,\n ),\n );\n }\n break;\n case undefined:\n break;\n default:\n reject(\n new Error(\n `Transaction failed: status ${receipt.status} : log message ${receipt.data?.tx_result.log}`,\n ),\n );\n }\n }, 1000);\n setTimeout(() => {\n clearInterval(interval);\n reject(new Error(\"Transaction failed: Timeout\"));\n }, timeout);\n });\n }\n\n /**\n * Returns the Kwil signer used by the client.\n * @returns An instance of KwilSigner.\n */\n getKwilSigner(): KwilSigner {\n return new KwilSigner(\n this.signerInfo.signer,\n this.address().getAddress(),\n );\n }\n\n /**\n * Returns the Kwil client used by the client.\n * @returns An instance of Kwil.\n * @throws If the Kwil client is not initialized.\n */\n getKwilClient(): Kwil<EnvironmentType> {\n if (!this.kwilClient) {\n throw new Error(\"Kwil client not initialized\");\n }\n return this.kwilClient;\n }\n\n /**\n * Deploys a new stream.\n * @param streamId - The ID of the stream to deploy.\n * @param streamType - The type of the stream.\n * @param synchronous - Whether the deployment should be synchronous.\n * @returns A promise that resolves to a generic response containing the transaction receipt.\n */\n async deployStream(\n streamId: StreamId,\n streamType: StreamType,\n synchronous?: boolean,\n ): Promise<GenericResponse<TxReceipt>> {\n return await deployStream({\n streamId,\n streamType,\n synchronous,\n kwilClient: this.getKwilClient(),\n kwilSigner: this.getKwilSigner(),\n });\n }\n\n /**\n * Destroys a stream.\n * @param streamId - The ID of the stream to destroy.\n * @param synchronous - Whether the destruction should be synchronous.\n * @returns A promise that resolves to a generic response containing the transaction receipt.\n */\n async destroyStream(\n streamId: StreamId,\n synchronous?: boolean,\n ): Promise<GenericResponse<TxReceipt>> {\n return await destroyStream({\n streamId,\n synchronous,\n kwilClient: this.getKwilClient(),\n kwilSigner: this.getKwilSigner(),\n });\n }\n\n /**\n * Loads an already deployed stream, permitting its API usage.\n * @param stream - The locator of the stream to load.\n * @returns An instance of IStream.\n */\n loadStream(stream: StreamLocator): Stream {\n return new Stream(\n this.getKwilClient() as WebKwil | NodeKwil,\n this.getKwilSigner(),\n stream,\n );\n }\n\n /**\n * Loads a primitive stream.\n * @param stream - The locator of the primitive stream to load.\n * @returns An instance of IPrimitiveStream.\n */\n loadPrimitiveStream(stream: StreamLocator): PrimitiveStream {\n return PrimitiveStream.fromStream(this.loadStream(stream));\n }\n\n /**\n * Loads a composed stream.\n * @param stream - The locator of the composed stream to load.\n * @returns An instance of IComposedStream.\n */\n loadComposedStream(stream: StreamLocator): ComposedStream {\n return new ComposedStream(\n this.getKwilClient() as WebKwil | NodeKwil,\n this.getKwilSigner(),\n stream,\n );\n }\n\n /**\n * Creates a new stream locator.\n * @param streamId - The ID of the stream.\n * @returns A StreamLocator object.\n */\n ownStreamLocator(streamId: StreamId): StreamLocator {\n return {\n streamId,\n dataProvider: this.address(),\n };\n }\n\n /**\n * Returns the address of the signer used by the client.\n * @returns An instance of EthereumAddress.\n */\n address(): EthereumAddress {\n return new EthereumAddress(this.signerInfo.address);\n }\n\n /**\n * Returns all streams from the TN network.\n * @param owner - The owner of the streams. If not provided, all streams will be returned.\n * @returns A promise that resolves to a list of stream locators.\n */\n async getAllStreams(owner?: EthereumAddress): Promise<StreamLocator[]> {\n return listAllStreams(this.getKwilClient(), owner);\n }\n\n /**\n * Get the default chain id for a provider. Use with caution, as this decreases the security of the TN.\n * @param provider - The provider URL.\n * @returns A promise that resolves to the chain ID.\n */\n public static async getDefaultChainId(provider: string) {\n const kwilClient = new Client({\n kwilProvider: provider,\n });\n const chainInfo = await kwilClient[\"chainInfoClient\"]();\n return chainInfo.data?.chain_id;\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -0,0 +1,32 @@
1
+ "use strict";
2
+
3
+ // src/client/client.test.ts
4
+ var import_vitest = require("vitest");
5
+ var import_ethers = require("ethers");
6
+ var import_nodeClient = require("./nodeClient.cjs");
7
+ import_vitest.describe.sequential("Client", { timeout: 3e4 }, () => {
8
+ import_vitest.it.skipIf(process.env.CI);
9
+ const wallet = new import_ethers.ethers.Wallet(
10
+ "0x0000000000000000000000000000000000000000000000000000000000000001"
11
+ );
12
+ (0, import_vitest.it)("should create a client", async () => {
13
+ const chainId = await import_nodeClient.NodeTNClient.getDefaultChainId(
14
+ "http://localhost:8484"
15
+ );
16
+ if (!chainId) {
17
+ throw new Error("Chain id not found");
18
+ }
19
+ const client = new import_nodeClient.NodeTNClient({
20
+ endpoint: "http://localhost:8484",
21
+ signerInfo: {
22
+ address: wallet.address,
23
+ signer: wallet
24
+ },
25
+ chainId
26
+ });
27
+ const kwilClient = client.getKwilClient();
28
+ const chainInfo = await kwilClient.chainInfo();
29
+ (0, import_vitest.expect)(chainInfo.data?.chain_id).toBeDefined();
30
+ });
31
+ });
32
+ //# sourceMappingURL=client.test.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/client/client.test.ts"],
4
+ "sourcesContent": ["import { describe, expect, it } from \"vitest\";\nimport { ethers } from \"ethers\";\nimport { NodeTNClient } from \"./nodeClient\";\n\ndescribe.sequential(\"Client\", { timeout: 30000 }, () => {\n // Skip in CI, because it needs a local node\n it.skipIf(process.env.CI);\n\n const wallet = new ethers.Wallet(\n \"0x0000000000000000000000000000000000000000000000000000000000000001\",\n );\n it(\"should create a client\", async () => {\n const chainId = await NodeTNClient.getDefaultChainId(\n \"http://localhost:8484\",\n );\n if (!chainId) {\n throw new Error(\"Chain id not found\");\n }\n const client = new NodeTNClient({\n endpoint: \"http://localhost:8484\",\n signerInfo: {\n address: wallet.address,\n signer: wallet,\n },\n chainId,\n });\n const kwilClient = client.getKwilClient();\n const chainInfo = await kwilClient.chainInfo();\n expect(chainInfo.data?.chain_id).toBeDefined();\n });\n});\n"],
5
+ "mappings": ";;;AAAA,oBAAqC;AACrC,oBAAuB;AACvB,wBAA6B;AAE7B,uBAAS,WAAW,UAAU,EAAE,SAAS,IAAM,GAAG,MAAM;AAEtD,mBAAG,OAAO,QAAQ,IAAI,EAAE;AAExB,QAAM,SAAS,IAAI,qBAAO;AAAA,IACxB;AAAA,EACF;AACA,wBAAG,0BAA0B,YAAY;AACvC,UAAM,UAAU,MAAM,+BAAa;AAAA,MACjC;AAAA,IACF;AACA,QAAI,CAAC,SAAS;AACZ,YAAM,IAAI,MAAM,oBAAoB;AAAA,IACtC;AACA,UAAM,SAAS,IAAI,+BAAa;AAAA,MAC9B,UAAU;AAAA,MACV,YAAY;AAAA,QACV,SAAS,OAAO;AAAA,QAChB,QAAQ;AAAA,MACV;AAAA,MACA;AAAA,IACF,CAAC;AACD,UAAM,aAAa,OAAO,cAAc;AACxC,UAAM,YAAY,MAAM,WAAW,UAAU;AAC7C,8BAAO,UAAU,MAAM,QAAQ,EAAE,YAAY;AAAA,EAC/C,CAAC;AACH,CAAC;",
6
+ "names": []
7
+ }
@@ -0,0 +1,51 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/client/listAllStreams.ts
21
+ var listAllStreams_exports = {};
22
+ __export(listAllStreams_exports, {
23
+ isStream: () => isStream,
24
+ listAllStreams: () => listAllStreams
25
+ });
26
+ module.exports = __toCommonJS(listAllStreams_exports);
27
+ var import_EthereumAddress = require("../util/EthereumAddress.cjs");
28
+ var import_StreamId = require("../util/StreamId.cjs");
29
+ async function listAllStreams(kwilClient, owner) {
30
+ const databases = await kwilClient.listDatabases(owner?.getAddress());
31
+ const schemas = await Promise.all(
32
+ databases.data?.map(async (database) => {
33
+ const schema = await kwilClient.getSchema(database.dbid);
34
+ if (schema.status === 200 && schema.data && isStream(schema.data)) {
35
+ return schema.data;
36
+ }
37
+ return void 0;
38
+ }) ?? []
39
+ );
40
+ return schemas.filter((schema) => schema !== void 0).map((schema) => ({
41
+ streamId: import_StreamId.StreamId.fromString(schema.name).throw(),
42
+ dataProvider: import_EthereumAddress.EthereumAddress.fromBytes(schema.owner).throw()
43
+ }));
44
+ }
45
+ var isStream = (schema) => {
46
+ const requiredProcedures = ["get_index", "get_record", "get_metadata"];
47
+ return requiredProcedures.every(
48
+ (procedure) => schema.procedures.some((p) => p.name === procedure)
49
+ );
50
+ };
51
+ //# sourceMappingURL=listAllStreams.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/client/listAllStreams.ts"],
4
+ "sourcesContent": ["import { Kwil } from \"@kwilteam/kwil-js/dist/client/kwil\";\nimport { EnvironmentType } from \"@kwilteam/kwil-js/dist/core/enums\";\nimport { StreamLocator } from \"../types/stream\";\nimport { EthereumAddress } from \"../util/EthereumAddress\";\nimport { StreamId } from \"../util/StreamId\";\nimport { Database } from \"@kwilteam/kwil-js/dist/core/database\";\n\n/**\n * List all streams from the TN network.\n * @param kwilClient - The Kwil client.\n * @param owner - The owner of the streams. If not provided, all streams will be returned.\n * @returns A list of stream locators.\n */\nexport async function listAllStreams(\n kwilClient: Kwil<EnvironmentType>,\n owner?: EthereumAddress,\n): Promise<StreamLocator[]> {\n const databases = await kwilClient.listDatabases(owner?.getAddress());\n const schemas = await Promise.all(\n databases.data?.map(async (database) => {\n const schema = await kwilClient.getSchema(database.dbid);\n if (schema.status === 200 && schema.data && isStream(schema.data)) {\n return schema.data;\n }\n return undefined;\n }) ?? [],\n );\n return schemas\n .filter((schema) => schema !== undefined)\n .map((schema) => ({\n streamId: StreamId.fromString(schema.name).throw(),\n dataProvider: EthereumAddress.fromBytes(schema.owner).throw(),\n }));\n}\n\nexport const isStream = (schema: Database) => {\n const requiredProcedures = [\"get_index\", \"get_record\", \"get_metadata\"];\n return requiredProcedures.every((procedure) =>\n schema.procedures.some((p) => p.name === procedure),\n );\n};\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,6BAAgC;AAChC,sBAAyB;AASzB,eAAsB,eACpB,YACA,OAC0B;AAC1B,QAAM,YAAY,MAAM,WAAW,cAAc,OAAO,WAAW,CAAC;AACpE,QAAM,UAAU,MAAM,QAAQ;AAAA,IAC5B,UAAU,MAAM,IAAI,OAAO,aAAa;AACtC,YAAM,SAAS,MAAM,WAAW,UAAU,SAAS,IAAI;AACvD,UAAI,OAAO,WAAW,OAAO,OAAO,QAAQ,SAAS,OAAO,IAAI,GAAG;AACjE,eAAO,OAAO;AAAA,MAChB;AACA,aAAO;AAAA,IACT,CAAC,KAAK,CAAC;AAAA,EACT;AACA,SAAO,QACJ,OAAO,CAAC,WAAW,WAAW,MAAS,EACvC,IAAI,CAAC,YAAY;AAAA,IAChB,UAAU,yBAAS,WAAW,OAAO,IAAI,EAAE,MAAM;AAAA,IACjD,cAAc,uCAAgB,UAAU,OAAO,KAAK,EAAE,MAAM;AAAA,EAC9D,EAAE;AACN;AAEO,IAAM,WAAW,CAAC,WAAqB;AAC5C,QAAM,qBAAqB,CAAC,aAAa,cAAc,cAAc;AACrE,SAAO,mBAAmB;AAAA,IAAM,CAAC,cAC/B,OAAO,WAAW,KAAK,CAAC,MAAM,EAAE,SAAS,SAAS;AAAA,EACpD;AACF;",
6
+ "names": []
7
+ }
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __export = (target, all) => {
7
+ for (var name in all)
8
+ __defProp(target, name, { get: all[name], enumerable: true });
9
+ };
10
+ var __copyProps = (to, from, except, desc) => {
11
+ if (from && typeof from === "object" || typeof from === "function") {
12
+ for (let key of __getOwnPropNames(from))
13
+ if (!__hasOwnProp.call(to, key) && key !== except)
14
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
15
+ }
16
+ return to;
17
+ };
18
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
19
+
20
+ // src/client/nodeClient.ts
21
+ var nodeClient_exports = {};
22
+ __export(nodeClient_exports, {
23
+ NodeTNClient: () => NodeTNClient,
24
+ default: () => nodeClient_default
25
+ });
26
+ module.exports = __toCommonJS(nodeClient_exports);
27
+ var import_kwil_js = require("@kwilteam/kwil-js");
28
+ var import_client = require("./client.cjs");
29
+ var NodeTNClient = class extends import_client.BaseTNClient {
30
+ constructor(options) {
31
+ super(options);
32
+ this.kwilClient = new import_kwil_js.NodeKwil({
33
+ ...options,
34
+ kwilProvider: options.endpoint
35
+ });
36
+ }
37
+ };
38
+ var nodeClient_default = NodeTNClient;
39
+ //# sourceMappingURL=nodeClient.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../src/client/nodeClient.ts"],
4
+ "sourcesContent": ["import { EnvironmentType } from \"@kwilteam/kwil-js/dist/core/enums\";\nimport { NodeKwil } from \"@kwilteam/kwil-js\";\nimport { BaseTNClient, TNClientOptions } from \"./client\";\n\nexport class NodeTNClient extends BaseTNClient<EnvironmentType.NODE> {\n constructor(options: TNClientOptions) {\n super(options);\n this.kwilClient = new NodeKwil({\n ...options,\n kwilProvider: options.endpoint,\n });\n }\n}\n\nexport default NodeTNClient;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,qBAAyB;AACzB,oBAA8C;AAEvC,IAAM,eAAN,cAA2B,2BAAmC;AAAA,EACnE,YAAY,SAA0B;AACpC,UAAM,OAAO;AACb,SAAK,aAAa,IAAI,wBAAS;AAAA,MAC7B,GAAG;AAAA,MACH,cAAc,QAAQ;AAAA,IACxB,CAAC;AAAA,EACH;AACF;AAEA,IAAO,qBAAQ;",
6
+ "names": []
7
+ }