@olane/o-core 0.6.13 → 0.7.2
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 +490 -140
- package/dist/src/connection/index.d.ts +8 -0
- package/dist/src/connection/index.d.ts.map +1 -0
- package/dist/src/connection/index.js +7 -0
- package/dist/src/connection/interfaces/connection-manager.config.d.ts +3 -0
- package/dist/src/connection/interfaces/connection-manager.config.d.ts.map +1 -0
- package/dist/src/connection/interfaces/connection-send-params.interface.d.ts.map +1 -0
- package/dist/src/connection/interfaces/connection.config.d.ts +7 -0
- package/dist/src/connection/interfaces/connection.config.d.ts.map +1 -0
- package/dist/src/connection/interfaces/index.d.ts +5 -0
- package/dist/src/connection/interfaces/index.d.ts.map +1 -0
- package/dist/src/connection/interfaces/index.js +4 -0
- package/dist/src/connection/interfaces/request-state.enum.d.ts +7 -0
- package/dist/src/connection/interfaces/request-state.enum.d.ts.map +1 -0
- package/dist/src/connection/interfaces/request-state.enum.js +7 -0
- package/dist/src/connection/o-connection-manager.d.ts +19 -0
- package/dist/src/connection/o-connection-manager.d.ts.map +1 -0
- package/dist/src/connection/o-connection-manager.js +27 -0
- package/dist/src/connection/o-connection.d.ts +20 -0
- package/dist/src/connection/o-connection.d.ts.map +1 -0
- package/dist/src/connection/o-connection.js +45 -0
- package/dist/src/{core/lib → connection}/o-request.d.ts +5 -1
- package/dist/src/connection/o-request.d.ts.map +1 -0
- package/dist/src/{core/lib → connection}/o-request.js +8 -1
- package/dist/src/connection/o-response.d.ts.map +1 -0
- package/dist/src/core/defaults/config.d.ts +1 -1
- package/dist/src/core/defaults/config.d.ts.map +1 -1
- package/dist/src/core/defaults/config.js +1 -1
- package/dist/src/core/graceful-shutdown.d.ts +1 -1
- package/dist/src/core/graceful-shutdown.d.ts.map +1 -1
- package/dist/src/core/graceful-shutdown.js +1 -1
- package/dist/src/core/index.d.ts +3 -5
- package/dist/src/core/index.d.ts.map +1 -1
- package/dist/src/core/index.js +3 -5
- package/dist/src/core/interfaces/index.d.ts +1 -2
- package/dist/src/core/interfaces/index.d.ts.map +1 -1
- package/dist/src/core/interfaces/index.js +1 -2
- package/dist/src/core/interfaces/{core-config.interface.d.ts → o-core.config.d.ts} +4 -5
- package/dist/src/core/interfaces/o-core.config.d.ts.map +1 -0
- package/dist/src/core/interfaces/o-core.interface.d.ts +18 -0
- package/dist/src/core/interfaces/o-core.interface.d.ts.map +1 -0
- package/dist/src/core/lib/index.d.ts +3 -7
- package/dist/src/core/lib/index.d.ts.map +1 -1
- package/dist/src/core/lib/index.js +3 -7
- package/dist/src/core/lib/o-hierarchy.manager.d.ts +24 -0
- package/dist/src/core/lib/o-hierarchy.manager.d.ts.map +1 -0
- package/dist/src/core/lib/o-hierarchy.manager.js +57 -0
- package/dist/src/core/lib/o-metrics.d.ts +5 -0
- package/dist/src/core/lib/o-metrics.d.ts.map +1 -0
- package/dist/src/core/lib/o-metrics.js +6 -0
- package/dist/src/core/lib/o-request.manager.d.ts +10 -0
- package/dist/src/core/lib/o-request.manager.d.ts.map +1 -0
- package/dist/src/core/lib/o-request.manager.js +18 -0
- package/dist/src/core/o-core.d.ts +190 -0
- package/dist/src/core/o-core.d.ts.map +1 -0
- package/dist/src/core/o-core.js +334 -0
- package/dist/src/core/o-object.d.ts +7 -0
- package/dist/src/core/o-object.d.ts.map +1 -0
- package/dist/src/core/o-object.js +10 -0
- package/dist/src/error/enums/codes.error.d.ts +16 -14
- package/dist/src/error/enums/codes.error.d.ts.map +1 -1
- package/dist/src/error/enums/codes.error.js +18 -16
- package/dist/src/error/index.d.ts +1 -1
- package/dist/src/error/index.d.ts.map +1 -1
- package/dist/src/error/index.js +1 -1
- package/dist/src/error/interfaces/o-error.interface.d.ts +6 -0
- package/dist/src/error/interfaces/o-error.interface.d.ts.map +1 -0
- package/dist/src/error/o-error.d.ts +15 -0
- package/dist/src/error/o-error.d.ts.map +1 -0
- package/dist/src/error/{tool.error.js → o-error.js} +4 -4
- package/dist/src/index.d.ts +3 -3
- package/dist/src/index.d.ts.map +1 -1
- package/dist/src/index.js +3 -3
- package/dist/src/router/enums/restricted-addresses.enum.d.ts +8 -0
- package/dist/src/router/enums/restricted-addresses.enum.d.ts.map +1 -0
- package/dist/src/router/enums/restricted-addresses.enum.js +13 -0
- package/dist/src/router/index.d.ts +9 -0
- package/dist/src/router/index.d.ts.map +1 -0
- package/dist/src/router/index.js +8 -0
- package/dist/src/router/interfaces/resolve.request.d.ts +10 -0
- package/dist/src/router/interfaces/resolve.request.d.ts.map +1 -0
- package/dist/src/router/interfaces/route.response.d.ts +8 -0
- package/dist/src/router/interfaces/route.response.d.ts.map +1 -0
- package/dist/src/router/o-address-resolution.d.ts +12 -0
- package/dist/src/router/o-address-resolution.d.ts.map +1 -0
- package/dist/src/router/o-address-resolution.js +42 -0
- package/dist/src/router/o-address-resolver.d.ts +14 -0
- package/dist/src/router/o-address-resolver.d.ts.map +1 -0
- package/dist/src/router/o-address-resolver.js +19 -0
- package/dist/src/router/o-address.d.ts +33 -0
- package/dist/src/router/o-address.d.ts.map +1 -0
- package/dist/src/router/o-address.js +101 -0
- package/dist/src/router/o-request.router.d.ts +18 -0
- package/dist/src/router/o-request.router.d.ts.map +1 -0
- package/dist/src/router/o-request.router.js +12 -0
- package/dist/src/router/o-router.d.ts +19 -0
- package/dist/src/router/o-router.d.ts.map +1 -0
- package/dist/src/router/o-router.js +14 -0
- package/dist/src/transports/custom.transport.d.ts +6 -0
- package/dist/src/transports/custom.transport.d.ts.map +1 -0
- package/dist/src/transports/custom.transport.js +10 -0
- package/dist/src/transports/index.d.ts +4 -0
- package/dist/src/transports/index.d.ts.map +1 -0
- package/dist/src/transports/index.js +3 -0
- package/dist/src/transports/interfaces/transport-type.enum.d.ts +5 -0
- package/dist/src/transports/interfaces/transport-type.enum.d.ts.map +1 -0
- package/dist/src/transports/interfaces/transport-type.enum.js +5 -0
- package/dist/src/transports/o-transport.d.ts +10 -0
- package/dist/src/transports/o-transport.d.ts.map +1 -0
- package/dist/src/transports/o-transport.js +16 -0
- package/dist/src/{core/utils → utils}/core.utils.d.ts +4 -3
- package/dist/src/utils/core.utils.d.ts.map +1 -0
- package/dist/src/{core/utils → utils}/core.utils.js +17 -2
- package/dist/src/utils/index.d.ts +2 -0
- package/dist/src/utils/index.d.ts.map +1 -1
- package/dist/src/utils/index.js +2 -0
- package/dist/src/{core/utils → utils}/logger.d.ts +1 -0
- package/dist/src/utils/logger.d.ts.map +1 -0
- package/dist/src/{core/utils → utils}/logger.js +4 -1
- package/dist/test/server/in-process.spec.js +2 -14
- package/package.json +3 -3
- package/dist/src/core/core.node.d.ts +0 -79
- package/dist/src/core/core.node.d.ts.map +0 -1
- package/dist/src/core/core.node.js +0 -304
- package/dist/src/core/interfaces/connection-manager.config.d.ts +0 -7
- package/dist/src/core/interfaces/connection-manager.config.d.ts.map +0 -1
- package/dist/src/core/interfaces/connection-send-params.interface.d.ts.map +0 -1
- package/dist/src/core/interfaces/core-config.interface.d.ts.map +0 -1
- package/dist/src/core/interfaces/restricted-addresses.enum.d.ts +0 -13
- package/dist/src/core/interfaces/restricted-addresses.enum.d.ts.map +0 -1
- package/dist/src/core/interfaces/restricted-addresses.enum.js +0 -18
- package/dist/src/core/lib/o-address-resolution.d.ts +0 -9
- package/dist/src/core/lib/o-address-resolution.d.ts.map +0 -1
- package/dist/src/core/lib/o-address-resolution.js +0 -24
- package/dist/src/core/lib/o-address-resolver.d.ts +0 -17
- package/dist/src/core/lib/o-address-resolver.d.ts.map +0 -1
- package/dist/src/core/lib/o-address-resolver.js +0 -36
- package/dist/src/core/lib/o-connection-manager.d.ts +0 -22
- package/dist/src/core/lib/o-connection-manager.d.ts.map +0 -1
- package/dist/src/core/lib/o-connection-manager.js +0 -65
- package/dist/src/core/lib/o-connection.d.ts +0 -27
- package/dist/src/core/lib/o-connection.d.ts.map +0 -1
- package/dist/src/core/lib/o-connection.js +0 -84
- package/dist/src/core/lib/o-request.d.ts.map +0 -1
- package/dist/src/core/lib/o-response.d.ts.map +0 -1
- package/dist/src/core/lib/resolvers/anything.resolver.d.ts +0 -8
- package/dist/src/core/lib/resolvers/anything.resolver.d.ts.map +0 -1
- package/dist/src/core/lib/resolvers/anything.resolver.js +0 -15
- package/dist/src/core/lib/resolvers/index.d.ts +0 -5
- package/dist/src/core/lib/resolvers/index.d.ts.map +0 -1
- package/dist/src/core/lib/resolvers/index.js +0 -4
- package/dist/src/core/lib/resolvers/method.resolver.d.ts +0 -8
- package/dist/src/core/lib/resolvers/method.resolver.d.ts.map +0 -1
- package/dist/src/core/lib/resolvers/method.resolver.js +0 -18
- package/dist/src/core/lib/resolvers/next-hop.resolver.d.ts +0 -10
- package/dist/src/core/lib/resolvers/next-hop.resolver.d.ts.map +0 -1
- package/dist/src/core/lib/resolvers/next-hop.resolver.js +0 -59
- package/dist/src/core/lib/resolvers/storage.resolver.d.ts +0 -6
- package/dist/src/core/lib/resolvers/storage.resolver.d.ts.map +0 -1
- package/dist/src/core/lib/resolvers/storage.resolver.js +0 -10
- package/dist/src/core/o-address.d.ts +0 -20
- package/dist/src/core/o-address.d.ts.map +0 -1
- package/dist/src/core/o-address.js +0 -47
- package/dist/src/core/utils/core.utils.d.ts.map +0 -1
- package/dist/src/core/utils/index.d.ts +0 -4
- package/dist/src/core/utils/index.d.ts.map +0 -1
- package/dist/src/core/utils/index.js +0 -3
- package/dist/src/core/utils/logger.d.ts.map +0 -1
- package/dist/src/core/utils/network.utils.d.ts +0 -16
- package/dist/src/core/utils/network.utils.d.ts.map +0 -1
- package/dist/src/core/utils/network.utils.js +0 -35
- package/dist/src/error/tool.error.d.ts +0 -19
- package/dist/src/error/tool.error.d.ts.map +0 -1
- package/dist/src/node/index.d.ts +0 -4
- package/dist/src/node/index.d.ts.map +0 -1
- package/dist/src/node/index.js +0 -3
- package/dist/src/node/interfaces/route.request.d.ts +0 -14
- package/dist/src/node/interfaces/route.request.d.ts.map +0 -1
- package/dist/src/node/lib/local-search.lib.d.ts +0 -6
- package/dist/src/node/lib/local-search.lib.d.ts.map +0 -1
- package/dist/src/node/lib/local-search.lib.js +0 -10
- package/dist/src/node/lib/network-activity.lib.d.ts +0 -12
- package/dist/src/node/lib/network-activity.lib.d.ts.map +0 -1
- package/dist/src/node/lib/network-activity.lib.js +0 -29
- package/dist/src/node/node.d.ts +0 -45
- package/dist/src/node/node.d.ts.map +0 -1
- package/dist/src/node/node.js +0 -359
- package/dist/src/node-virtual/index.d.ts +0 -2
- package/dist/src/node-virtual/index.d.ts.map +0 -1
- package/dist/src/node-virtual/index.js +0 -1
- package/dist/src/node-virtual/virtual.node.d.ts +0 -10
- package/dist/src/node-virtual/virtual.node.d.ts.map +0 -1
- package/dist/src/node-virtual/virtual.node.js +0 -12
- package/dist/src/plan/agent.plan.d.ts +0 -28
- package/dist/src/plan/agent.plan.d.ts.map +0 -1
- package/dist/src/plan/agent.plan.js +0 -187
- package/dist/src/plan/index.d.ts +0 -5
- package/dist/src/plan/index.d.ts.map +0 -1
- package/dist/src/plan/index.js +0 -4
- package/dist/src/plan/interfaces/configure.result.d.ts +0 -6
- package/dist/src/plan/interfaces/configure.result.d.ts.map +0 -1
- package/dist/src/plan/interfaces/handshake.result.d.ts +0 -14
- package/dist/src/plan/interfaces/handshake.result.d.ts.map +0 -1
- package/dist/src/plan/interfaces/plan-config.interface.d.ts +0 -16
- package/dist/src/plan/interfaces/plan-config.interface.d.ts.map +0 -1
- package/dist/src/plan/interfaces/plan-result.interface.d.ts +0 -6
- package/dist/src/plan/interfaces/plan-result.interface.d.ts.map +0 -1
- package/dist/src/plan/interfaces/plan-type.enum.d.ts +0 -8
- package/dist/src/plan/interfaces/plan-type.enum.d.ts.map +0 -1
- package/dist/src/plan/interfaces/plan-type.enum.js +0 -8
- package/dist/src/plan/interfaces/plan.result.d.ts +0 -15
- package/dist/src/plan/interfaces/plan.result.d.ts.map +0 -1
- package/dist/src/plan/interfaces/plan.result.js +0 -1
- package/dist/src/plan/interfaces/query.config.d.ts +0 -6
- package/dist/src/plan/interfaces/query.config.d.ts.map +0 -1
- package/dist/src/plan/interfaces/query.config.js +0 -1
- package/dist/src/plan/interfaces/task.config.d.ts +0 -10
- package/dist/src/plan/interfaces/task.config.d.ts.map +0 -1
- package/dist/src/plan/interfaces/task.config.js +0 -1
- package/dist/src/plan/o-plan.d.ts +0 -36
- package/dist/src/plan/o-plan.d.ts.map +0 -1
- package/dist/src/plan/o-plan.js +0 -202
- package/dist/src/plan/plan.context.d.ts +0 -10
- package/dist/src/plan/plan.context.d.ts.map +0 -1
- package/dist/src/plan/plan.context.js +0 -28
- package/dist/src/plan/prompts/agent.prompt.d.ts +0 -2
- package/dist/src/plan/prompts/agent.prompt.d.ts.map +0 -1
- package/dist/src/plan/prompts/agent.prompt.js +0 -112
- package/dist/src/plan/prompts/configure.prompt.d.ts +0 -2
- package/dist/src/plan/prompts/configure.prompt.d.ts.map +0 -1
- package/dist/src/plan/prompts/configure.prompt.js +0 -40
- package/dist/src/plan/prompts/custom.prompt.d.ts +0 -2
- package/dist/src/plan/prompts/custom.prompt.d.ts.map +0 -1
- package/dist/src/plan/prompts/custom.prompt.js +0 -80
- package/dist/src/plan/search/prompts/search-analysis.prompt.d.ts +0 -2
- package/dist/src/plan/search/prompts/search-analysis.prompt.d.ts.map +0 -1
- package/dist/src/plan/search/prompts/search-analysis.prompt.js +0 -14
- package/dist/src/plan/search/search.plan.d.ts +0 -21
- package/dist/src/plan/search/search.plan.d.ts.map +0 -1
- package/dist/src/plan/search/search.plan.js +0 -53
- package/dist/src/plan/use/index.d.ts +0 -2
- package/dist/src/plan/use/index.d.ts.map +0 -1
- package/dist/src/plan/use/index.js +0 -1
- package/dist/src/plan/use/use.plan.d.ts +0 -16
- package/dist/src/plan/use/use.plan.d.ts.map +0 -1
- package/dist/src/plan/use/use.plan.js +0 -149
- /package/dist/src/{core → connection}/interfaces/connection-manager.config.js +0 -0
- /package/dist/src/{core → connection}/interfaces/connection-send-params.interface.d.ts +0 -0
- /package/dist/src/{core → connection}/interfaces/connection-send-params.interface.js +0 -0
- /package/dist/src/{core/interfaces/core-config.interface.js → connection/interfaces/connection.config.js} +0 -0
- /package/dist/src/{core/lib → connection}/o-response.d.ts +0 -0
- /package/dist/src/{core/lib → connection}/o-response.js +0 -0
- /package/dist/src/{node/interfaces/route.request.js → core/interfaces/o-core.config.js} +0 -0
- /package/dist/src/{plan/interfaces/configure.result.js → core/interfaces/o-core.interface.js} +0 -0
- /package/dist/src/{plan/interfaces/handshake.result.js → error/interfaces/o-error.interface.js} +0 -0
- /package/dist/src/{plan/interfaces/plan-config.interface.js → router/interfaces/resolve.request.js} +0 -0
- /package/dist/src/{plan/interfaces/plan-result.interface.js → router/interfaces/route.response.js} +0 -0
|
@@ -1,65 +0,0 @@
|
|
|
1
|
-
import { oConnection } from './o-connection.js';
|
|
2
|
-
export class oConnectionManager {
|
|
3
|
-
constructor(config) {
|
|
4
|
-
this.cache = new Map();
|
|
5
|
-
this.logger = config.logger;
|
|
6
|
-
this.p2pNode = config.p2pNode;
|
|
7
|
-
}
|
|
8
|
-
/**
|
|
9
|
-
* Connect to a given address
|
|
10
|
-
* @param address - The address to connect to
|
|
11
|
-
* @returns The connection object
|
|
12
|
-
*/
|
|
13
|
-
async connect(config) {
|
|
14
|
-
const { address, nextHopAddress, callerAddress } = config;
|
|
15
|
-
// check if we already have a connection to this address
|
|
16
|
-
// TODO: how can we enable caching of connections & connection lifecycles
|
|
17
|
-
// if (this.isCached(nextHopAddress)) {
|
|
18
|
-
// const cachedConnection = this.getCachedConnection(nextHopAddress);
|
|
19
|
-
// if (cachedConnection) {
|
|
20
|
-
// this.logger.debug(
|
|
21
|
-
// 'Using cached connection for address: ' + address.toString(),
|
|
22
|
-
// );
|
|
23
|
-
// return cachedConnection;
|
|
24
|
-
// } else {
|
|
25
|
-
// // cached item is not valid, remove it
|
|
26
|
-
// this.cache.delete(nextHopAddress.toString());
|
|
27
|
-
// }
|
|
28
|
-
// }
|
|
29
|
-
// first time setup connection
|
|
30
|
-
try {
|
|
31
|
-
const p2pConnection = await this.p2pNode.dial(nextHopAddress.libp2pTransports);
|
|
32
|
-
const connection = new oConnection({
|
|
33
|
-
nextHopAddress: nextHopAddress,
|
|
34
|
-
address: address,
|
|
35
|
-
p2pConnection: p2pConnection,
|
|
36
|
-
callerAddress: callerAddress,
|
|
37
|
-
});
|
|
38
|
-
// this.cache.set(address.toString(), connection);
|
|
39
|
-
return connection;
|
|
40
|
-
}
|
|
41
|
-
catch (error) {
|
|
42
|
-
this.logger.error('Error connecting to address: ', error);
|
|
43
|
-
throw error;
|
|
44
|
-
}
|
|
45
|
-
}
|
|
46
|
-
isCached(address) {
|
|
47
|
-
return this.cache.has(address.toString());
|
|
48
|
-
}
|
|
49
|
-
getCachedConnection(address) {
|
|
50
|
-
const key = address.toString();
|
|
51
|
-
try {
|
|
52
|
-
const connection = this.cache.get(key);
|
|
53
|
-
if (!connection) {
|
|
54
|
-
throw new Error('Connection not found in cache');
|
|
55
|
-
}
|
|
56
|
-
connection.validate();
|
|
57
|
-
return connection;
|
|
58
|
-
}
|
|
59
|
-
catch (error) {
|
|
60
|
-
this.cache.delete(key);
|
|
61
|
-
this.logger.error('Error getting cached connection:', error);
|
|
62
|
-
}
|
|
63
|
-
return null;
|
|
64
|
-
}
|
|
65
|
-
}
|
|
@@ -1,27 +0,0 @@
|
|
|
1
|
-
import { Connection } from '@olane/o-config';
|
|
2
|
-
import { oAddress } from '../o-address.js';
|
|
3
|
-
import { oRequest } from './o-request.js';
|
|
4
|
-
import { oResponse } from './o-response.js';
|
|
5
|
-
import { ConnectionSendParams } from '../interfaces/connection-send-params.interface.js';
|
|
6
|
-
export declare class oConnection {
|
|
7
|
-
private readonly config;
|
|
8
|
-
readonly id: string;
|
|
9
|
-
private readonly logger;
|
|
10
|
-
private readonly p2pConnection;
|
|
11
|
-
private readonly address;
|
|
12
|
-
private readonly nextHopAddress;
|
|
13
|
-
private requestCounter;
|
|
14
|
-
constructor(config: {
|
|
15
|
-
nextHopAddress: oAddress;
|
|
16
|
-
callerAddress?: oAddress;
|
|
17
|
-
address: oAddress;
|
|
18
|
-
p2pConnection: Connection;
|
|
19
|
-
});
|
|
20
|
-
read(source: any): Promise<any>;
|
|
21
|
-
validate(): void;
|
|
22
|
-
createRequest(method: string, params: ConnectionSendParams): oRequest;
|
|
23
|
-
transmit(request: oRequest): Promise<oResponse>;
|
|
24
|
-
send(data: ConnectionSendParams): Promise<oResponse>;
|
|
25
|
-
close(): Promise<void>;
|
|
26
|
-
}
|
|
27
|
-
//# sourceMappingURL=o-connection.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"o-connection.d.ts","sourceRoot":"","sources":["../../../../src/core/lib/o-connection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAiC,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE1C,OAAO,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5C,OAAO,EAAE,oBAAoB,EAAE,MAAM,mDAAmD,CAAC;AAGzF,qBAAa,WAAW;IASpB,OAAO,CAAC,QAAQ,CAAC,MAAM;IARzB,SAAgB,EAAE,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAS;IAChC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAa;IAC3C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAW;IACnC,OAAO,CAAC,QAAQ,CAAC,cAAc,CAAW;IAC1C,OAAO,CAAC,cAAc,CAAa;gBAGhB,MAAM,EAAE;QACvB,cAAc,EAAE,QAAQ,CAAC;QACzB,aAAa,CAAC,EAAE,QAAQ,CAAC;QACzB,OAAO,EAAE,QAAQ,CAAC;QAClB,aAAa,EAAE,UAAU,CAAC;KAC3B;IAgBG,IAAI,CAAC,MAAM,EAAE,GAAG;IAUtB,QAAQ;IAOR,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,oBAAoB,GAAG,QAAQ;IAyB/D,QAAQ,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,CAAC;IAqB/C,IAAI,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,SAAS,CAAC;IAMpD,KAAK;CAKZ"}
|
|
@@ -1,84 +0,0 @@
|
|
|
1
|
-
import { Uint8ArrayList, pushable, all } from '@olane/o-config';
|
|
2
|
-
import { Logger } from '../utils/logger.js';
|
|
3
|
-
import { oRequest } from './o-request.js';
|
|
4
|
-
import { oProtocolMethods } from '@olane/o-protocol';
|
|
5
|
-
import { oResponse } from './o-response.js';
|
|
6
|
-
import { v4 as uuidv4 } from 'uuid';
|
|
7
|
-
export class oConnection {
|
|
8
|
-
constructor(config) {
|
|
9
|
-
this.config = config;
|
|
10
|
-
this.requestCounter = 0;
|
|
11
|
-
this.id = uuidv4();
|
|
12
|
-
this.address = config.address;
|
|
13
|
-
this.nextHopAddress = config.nextHopAddress;
|
|
14
|
-
this.logger = new Logger('Connection:[' +
|
|
15
|
-
(config.callerAddress?.value || 'unknown') +
|
|
16
|
-
']-->[' +
|
|
17
|
-
this.address.value +
|
|
18
|
-
']:' +
|
|
19
|
-
this.id);
|
|
20
|
-
this.p2pConnection = config.p2pConnection;
|
|
21
|
-
}
|
|
22
|
-
async read(source) {
|
|
23
|
-
const chunks = await all(source);
|
|
24
|
-
const data = new Uint8ArrayList(...chunks).slice();
|
|
25
|
-
if (!data || data.length === 0) {
|
|
26
|
-
throw new Error('No data received');
|
|
27
|
-
}
|
|
28
|
-
return JSON.parse(new TextDecoder().decode(data));
|
|
29
|
-
}
|
|
30
|
-
validate() {
|
|
31
|
-
if (this.config.p2pConnection.status !== 'open') {
|
|
32
|
-
throw new Error('Connection is not valid');
|
|
33
|
-
}
|
|
34
|
-
// do nothing
|
|
35
|
-
}
|
|
36
|
-
createRequest(method, params) {
|
|
37
|
-
return new oRequest({
|
|
38
|
-
method: method,
|
|
39
|
-
params: {
|
|
40
|
-
_connectionId: this.id,
|
|
41
|
-
_requestMethod: method,
|
|
42
|
-
...params,
|
|
43
|
-
},
|
|
44
|
-
id: params.id || uuidv4(),
|
|
45
|
-
});
|
|
46
|
-
}
|
|
47
|
-
// async start() {
|
|
48
|
-
// this.logger.debug('Starting handshake, address: ' + this.address.value);
|
|
49
|
-
// const params = this.createRequest(oProtocolMethods.ROUTE, {
|
|
50
|
-
// address: this.address.value,
|
|
51
|
-
// payload: {
|
|
52
|
-
// method: oProtocolMethods.HANDSHAKE,
|
|
53
|
-
// params: {},
|
|
54
|
-
// },
|
|
55
|
-
// });
|
|
56
|
-
// const request = new oRequest(params);
|
|
57
|
-
// return this.transmit(request);
|
|
58
|
-
// }
|
|
59
|
-
async transmit(request) {
|
|
60
|
-
const stream = await this.p2pConnection.newStream(this.nextHopAddress.protocol);
|
|
61
|
-
// Create a pushable stream
|
|
62
|
-
const pushableStream = pushable();
|
|
63
|
-
pushableStream.push(new TextEncoder().encode(request.toString()));
|
|
64
|
-
pushableStream.end();
|
|
65
|
-
// Send the data
|
|
66
|
-
await stream.sink(pushableStream);
|
|
67
|
-
const res = await this.read(stream.source);
|
|
68
|
-
// process the response
|
|
69
|
-
const response = new oResponse({
|
|
70
|
-
...res.result,
|
|
71
|
-
});
|
|
72
|
-
return response;
|
|
73
|
-
}
|
|
74
|
-
async send(data) {
|
|
75
|
-
// proxy through the router tool
|
|
76
|
-
const request = this.createRequest(oProtocolMethods.ROUTE, data);
|
|
77
|
-
return this.transmit(request);
|
|
78
|
-
}
|
|
79
|
-
async close() {
|
|
80
|
-
this.logger.debug('Closing connection');
|
|
81
|
-
await this.p2pConnection.close();
|
|
82
|
-
this.logger.debug('Connection closed');
|
|
83
|
-
}
|
|
84
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"o-request.d.ts","sourceRoot":"","sources":["../../../../src/core/lib/o-request.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,cAAc,EACd,OAAO,EACP,SAAS,EACT,aAAa,EACd,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,QAAS,YAAW,cAAc;IAC7C,OAAO,EAAE,OAAO,eAAe,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,aAAa,CAAC;IACtB,EAAE,EAAE,SAAS,CAAC;gBAEF,MAAM,EAAE,OAAO,GAAG;QAAE,EAAE,EAAE,SAAS,CAAA;KAAE;IAO/C,IAAI,YAAY,IAAI,MAAM,CAEzB;IAED,MAAM,IAAI,cAAc;IASxB,QAAQ;IAIR,MAAM,CAAC,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO;IAQ9C,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE;IAKhD,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG;QAAE,EAAE,EAAE,SAAS,CAAA;KAAE,GAAG,QAAQ;CAG7D"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"o-response.d.ts","sourceRoot":"","sources":["../../../../src/core/lib/o-response.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,eAAe,EACf,SAAS,EACT,SAAS,IAAI,QAAQ,EACrB,MAAM,EACP,MAAM,mBAAmB,CAAC;AAE3B,qBAAa,SAAU,YAAW,QAAQ;IACxC,OAAO,EAAE,OAAO,eAAe,CAAC;IAChC,EAAE,EAAE,SAAS,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;gBAEH,MAAM,EAAE,MAAM,GAAG;QAAE,EAAE,EAAE,SAAS,CAAA;KAAE;IAM9C,MAAM,IAAI,GAAG;IAQb,QAAQ,IAAI,MAAM;CAGnB"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { oNode } from '../../../node/index.js';
|
|
2
|
-
import { oAddress } from '../../o-address.js';
|
|
3
|
-
import { oAddressResolver } from '../o-address-resolver.js';
|
|
4
|
-
export declare abstract class oAnythingResolver extends oAddressResolver {
|
|
5
|
-
get transports(): string[];
|
|
6
|
-
resolve(address: oAddress, node: oNode): Promise<oAddress>;
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=anything.resolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"anything.resolver.d.ts","sourceRoot":"","sources":["../../../../../src/core/lib/resolvers/anything.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAE5D,8BAAsB,iBAAkB,SAAQ,gBAAgB;IAC9D,IAAI,UAAU,IAAI,MAAM,EAAE,CAEzB;IAEK,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC;CAYjE"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { oAddress } from '../../o-address.js';
|
|
2
|
-
import { oAddressResolver } from '../o-address-resolver.js';
|
|
3
|
-
export class oAnythingResolver extends oAddressResolver {
|
|
4
|
-
get transports() {
|
|
5
|
-
return ['/anything'];
|
|
6
|
-
}
|
|
7
|
-
async resolve(address, node) {
|
|
8
|
-
const nextHopAddress = this.determineNextHopAddress(address);
|
|
9
|
-
// at this point, the next-hop resolver did not work so we can trust that the
|
|
10
|
-
// next hop should be contained within the current node as an abstraction
|
|
11
|
-
this.logger.debug('Resolving anything address: ', address, this.transports);
|
|
12
|
-
// this ADDS the transport from the custom resolver to the address
|
|
13
|
-
return new oAddress(nextHopAddress.toString(), (address.transports || []).concat(this.transports));
|
|
14
|
-
}
|
|
15
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/lib/resolvers/index.ts"],"names":[],"mappings":"AAAA,cAAc,wBAAwB,CAAC;AACvC,cAAc,sBAAsB,CAAC;AACrC,cAAc,wBAAwB,CAAC;AACvC,cAAc,uBAAuB,CAAC"}
|
|
@@ -1,8 +0,0 @@
|
|
|
1
|
-
import { oNode } from '../../../node/index.js';
|
|
2
|
-
import { oAddress } from '../../o-address.js';
|
|
3
|
-
import { oAnythingResolver } from './anything.resolver.js';
|
|
4
|
-
export declare class oMethodResolver extends oAnythingResolver {
|
|
5
|
-
static get transports(): string[];
|
|
6
|
-
resolve(address: oAddress, node: oNode): Promise<oAddress>;
|
|
7
|
-
}
|
|
8
|
-
//# sourceMappingURL=method.resolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"method.resolver.d.ts","sourceRoot":"","sources":["../../../../../src/core/lib/resolvers/method.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,wBAAwB,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAE3D,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,MAAM,KAAK,UAAU,IAAI,MAAM,EAAE,CAEhC;IACK,OAAO,CAAC,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,GAAG,OAAO,CAAC,QAAQ,CAAC;CAcjE"}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
import { oAddress } from '../../o-address.js';
|
|
2
|
-
import { oAnythingResolver } from './anything.resolver.js';
|
|
3
|
-
export class oMethodResolver extends oAnythingResolver {
|
|
4
|
-
static get transports() {
|
|
5
|
-
return ['/method'];
|
|
6
|
-
}
|
|
7
|
-
async resolve(address, node) {
|
|
8
|
-
const nextHopAddress = await super.resolve(address, node);
|
|
9
|
-
const method = nextHopAddress.protocol.split('/').pop();
|
|
10
|
-
if (method) {
|
|
11
|
-
const methodName = node.myTools()[method];
|
|
12
|
-
if (methodName) {
|
|
13
|
-
return new oAddress(nextHopAddress.toString(), oMethodResolver.transports);
|
|
14
|
-
}
|
|
15
|
-
}
|
|
16
|
-
return address;
|
|
17
|
-
}
|
|
18
|
-
}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { Multiaddr } from '@olane/o-config';
|
|
2
|
-
import { oAddress } from '../../o-address.js';
|
|
3
|
-
import { oAddressResolver } from '../o-address-resolver.js';
|
|
4
|
-
export declare class NextHopResolver extends oAddressResolver {
|
|
5
|
-
resolveAddressToTransports(address: oAddress): Promise<Multiaddr[]>;
|
|
6
|
-
findProviderTransports(address: oAddress): Promise<Multiaddr[]>;
|
|
7
|
-
findNextHop(targetAddress: oAddress): Promise<oAddress>;
|
|
8
|
-
resolve(address: oAddress): Promise<oAddress>;
|
|
9
|
-
}
|
|
10
|
-
//# sourceMappingURL=next-hop.resolver.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"next-hop.resolver.d.ts","sourceRoot":"","sources":["../../../../../src/core/lib/resolvers/next-hop.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqB,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAG5D,qBAAa,eAAgB,SAAQ,gBAAgB;IAE7C,0BAA0B,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IAYnE,sBAAsB,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,SAAS,EAAE,CAAC;IA+B/D,WAAW,CAAC,aAAa,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAsBvD,OAAO,CAAC,OAAO,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;CAIpD"}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
import { multiaddr } from '@olane/o-config';
|
|
2
|
-
import { oAddress } from '../../o-address.js';
|
|
3
|
-
import { oAddressResolver } from '../o-address-resolver.js';
|
|
4
|
-
import { NetworkUtils } from '../../utils/network.utils.js';
|
|
5
|
-
export class NextHopResolver extends oAddressResolver {
|
|
6
|
-
// when we use the network to find the next hop, we need to make sure we are just searching for child addresses
|
|
7
|
-
async resolveAddressToTransports(address) {
|
|
8
|
-
try {
|
|
9
|
-
this.logger.debug('Finding node for address: ', address.toString());
|
|
10
|
-
const { transports } = await NetworkUtils.findNode(this.p2pNode, address);
|
|
11
|
-
this.logger.debug('Found node for address: ', transports);
|
|
12
|
-
return transports;
|
|
13
|
-
}
|
|
14
|
-
catch (e) {
|
|
15
|
-
this.logger.warn('No providers found', e);
|
|
16
|
-
return [];
|
|
17
|
-
}
|
|
18
|
-
}
|
|
19
|
-
async findProviderTransports(address) {
|
|
20
|
-
this.logger.debug('Finding provider transports for address: ', address.toString());
|
|
21
|
-
// let's default the static resolution to the p2p approach
|
|
22
|
-
if (this.isStaticAddress(address)) {
|
|
23
|
-
return this.resolveAddressToTransports(address);
|
|
24
|
-
}
|
|
25
|
-
const peers = await this.p2pNode.peerStore.all();
|
|
26
|
-
const peer = peers.find((p) => p.protocols.some((p) => p === address.protocol));
|
|
27
|
-
this.logger.debug('Found peer: ', peer);
|
|
28
|
-
if (!peer ||
|
|
29
|
-
!peer.addresses.length
|
|
30
|
-
// &&
|
|
31
|
-
// this.isHoppingDown(address) &&
|
|
32
|
-
// !this.isLeaderNextHop(address)
|
|
33
|
-
) {
|
|
34
|
-
return this.resolveAddressToTransports(address);
|
|
35
|
-
}
|
|
36
|
-
if (!peer) {
|
|
37
|
-
return [];
|
|
38
|
-
}
|
|
39
|
-
return peer.addresses.map((a) => multiaddr(a.multiaddr + '/p2p/' + peer.id.toString()));
|
|
40
|
-
}
|
|
41
|
-
async findNextHop(targetAddress) {
|
|
42
|
-
// check to see if we are at the destination
|
|
43
|
-
if (targetAddress.protocol === this.address.protocol) {
|
|
44
|
-
this.logger.debug('At destination, finding provider transports...');
|
|
45
|
-
const transports = await this.findProviderTransports(targetAddress);
|
|
46
|
-
return new oAddress(targetAddress.value, transports.map((t) => multiaddr(t)));
|
|
47
|
-
}
|
|
48
|
-
const nextHopAddress = this.determineNextHopAddress(targetAddress);
|
|
49
|
-
const transports = await this.findProviderTransports(nextHopAddress);
|
|
50
|
-
if (!transports.length) {
|
|
51
|
-
this.logger.warn('No transports found for next hop: ' + nextHopAddress.toString());
|
|
52
|
-
}
|
|
53
|
-
return new oAddress(nextHopAddress.toString(), transports);
|
|
54
|
-
}
|
|
55
|
-
async resolve(address) {
|
|
56
|
-
// return this.findNextHop(address);
|
|
57
|
-
return this.findNextHop(address);
|
|
58
|
-
}
|
|
59
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"storage.resolver.d.ts","sourceRoot":"","sources":["../../../../../src/core/lib/resolvers/storage.resolver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAI3D,qBAAa,eAAgB,SAAQ,iBAAiB;IACpD,IAAI,UAAU,IAAI,MAAM,EAAE,CAEzB;IACD,MAAM,KAAK,UAAU,IAAI,MAAM,EAAE,CAEhC;CACF"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
import { oAnythingResolver } from './anything.resolver.js';
|
|
2
|
-
const storageTransports = ['/store'];
|
|
3
|
-
export class StorageResolver extends oAnythingResolver {
|
|
4
|
-
get transports() {
|
|
5
|
-
return storageTransports;
|
|
6
|
-
}
|
|
7
|
-
static get transports() {
|
|
8
|
-
return storageTransports;
|
|
9
|
-
}
|
|
10
|
-
}
|
|
@@ -1,20 +0,0 @@
|
|
|
1
|
-
import { Multiaddr } from '@olane/o-config';
|
|
2
|
-
import { CID } from 'multiformats';
|
|
3
|
-
export declare class oAddress {
|
|
4
|
-
readonly value: string;
|
|
5
|
-
transports: Array<Multiaddr | string>;
|
|
6
|
-
constructor(value: string, transports?: Array<Multiaddr | string>);
|
|
7
|
-
setTransports(transports: Multiaddr[]): void;
|
|
8
|
-
get libp2pTransports(): Multiaddr[];
|
|
9
|
-
get customTransports(): string[];
|
|
10
|
-
validate(): boolean;
|
|
11
|
-
get paths(): string;
|
|
12
|
-
get protocol(): string;
|
|
13
|
-
get root(): string;
|
|
14
|
-
toString(): string;
|
|
15
|
-
toMultiaddr(): Multiaddr;
|
|
16
|
-
static fromMultiaddr(ma: Multiaddr): oAddress;
|
|
17
|
-
static equals(a: oAddress, b: oAddress): boolean;
|
|
18
|
-
toCID(): Promise<CID>;
|
|
19
|
-
}
|
|
20
|
-
//# sourceMappingURL=o-address.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"o-address.d.ts","sourceRoot":"","sources":["../../../src/core/o-address.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAa,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAGnC,qBAAa,QAAQ;aAED,KAAK,EAAE,MAAM;IACtB,UAAU,EAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAC;gBAD5B,KAAK,EAAE,MAAM,EACtB,UAAU,GAAE,KAAK,CAAC,SAAS,GAAG,MAAM,CAAM;IAGnD,aAAa,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI;IAI5C,IAAI,gBAAgB,IAAI,SAAS,EAAE,CAElC;IAED,IAAI,gBAAgB,IAAI,MAAM,EAAE,CAE/B;IAED,QAAQ,IAAI,OAAO;IAOnB,IAAI,KAAK,IAAI,MAAM,CAElB;IAED,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,IAAI,IAAI,MAAM,CAEjB;IAED,QAAQ,IAAI,MAAM;IAIlB,WAAW,IAAI,SAAS;IAIxB,MAAM,CAAC,aAAa,CAAC,EAAE,EAAE,SAAS,GAAG,QAAQ;IAI7C,MAAM,CAAC,MAAM,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,QAAQ,GAAG,OAAO;IAI1C,KAAK,IAAI,OAAO,CAAC,GAAG,CAAC;CAG5B"}
|
|
@@ -1,47 +0,0 @@
|
|
|
1
|
-
import { multiaddr } from '@olane/o-config';
|
|
2
|
-
import { CoreUtils } from './utils/core.utils.js';
|
|
3
|
-
export class oAddress {
|
|
4
|
-
constructor(value, transports = []) {
|
|
5
|
-
this.value = value;
|
|
6
|
-
this.transports = transports;
|
|
7
|
-
}
|
|
8
|
-
setTransports(transports) {
|
|
9
|
-
this.transports = transports;
|
|
10
|
-
}
|
|
11
|
-
get libp2pTransports() {
|
|
12
|
-
return this.transports.filter((t) => typeof t !== 'string');
|
|
13
|
-
}
|
|
14
|
-
get customTransports() {
|
|
15
|
-
return this.transports.filter((t) => typeof t === 'string');
|
|
16
|
-
}
|
|
17
|
-
validate() {
|
|
18
|
-
if (!this.value.startsWith('o://')) {
|
|
19
|
-
return false;
|
|
20
|
-
}
|
|
21
|
-
return true;
|
|
22
|
-
}
|
|
23
|
-
get paths() {
|
|
24
|
-
return this.value.replace('o://', '');
|
|
25
|
-
}
|
|
26
|
-
get protocol() {
|
|
27
|
-
return this.value.replace('o://', '/o/');
|
|
28
|
-
}
|
|
29
|
-
get root() {
|
|
30
|
-
return 'o://' + this.paths.split('/')[0];
|
|
31
|
-
}
|
|
32
|
-
toString() {
|
|
33
|
-
return this.value;
|
|
34
|
-
}
|
|
35
|
-
toMultiaddr() {
|
|
36
|
-
return multiaddr(this.protocol);
|
|
37
|
-
}
|
|
38
|
-
static fromMultiaddr(ma) {
|
|
39
|
-
return new oAddress(ma.toString().replace('/o/', 'o://'));
|
|
40
|
-
}
|
|
41
|
-
static equals(a, b) {
|
|
42
|
-
return a.value === b.value;
|
|
43
|
-
}
|
|
44
|
-
async toCID() {
|
|
45
|
-
return await CoreUtils.toCID({ address: this.toString() });
|
|
46
|
-
}
|
|
47
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"core.utils.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/core.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,MAAM,EAGP,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3C,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACjD,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAInC,qBAAa,SAAS;WACP,cAAc,IAAI,OAAO,CAAC,GAAG,CAAC;WAK9B,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAQ3D;;;;;;OAMG;WACW,iBAAiB,CAAC,MAAM,EAAE,MAAM,GAAG,UAAU;WAO7C,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;WAOpC,YAAY,CACxB,aAAa,EAAE,QAAQ,EACvB,YAAY,EAAE,QAAQ,GACrB,QAAQ;WAIS,YAAY,CAAC,QAAQ,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM;WAWhD,aAAa,CAAC,MAAM,EAAE,GAAG,GAAG,OAAO,CAAC,QAAQ,CAAC;WAc7C,KAAK,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;CAMnD"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,aAAa,CAAC;AAC5B,cAAc,oBAAoB,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/logger.ts"],"names":[],"mappings":"AAGA,qBAAa,MAAM;IAGL,OAAO,CAAC,QAAQ,CAAC,IAAI;IAFjC,OAAO,CAAC,GAAG,CAAW;gBAEO,IAAI,EAAE,MAAM;IAIzC,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;IAIpB,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;IAInB,IAAI,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;IAInB,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;IAIpB,KAAK,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE;CAGrB"}
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { Libp2p, Multiaddr } from '@olane/o-config';
|
|
2
|
-
import { oAddress } from '../o-address.js';
|
|
3
|
-
import { CID } from 'multiformats';
|
|
4
|
-
export declare class NetworkUtils {
|
|
5
|
-
static findProviders(p2pNode: Libp2p, cid: CID): Promise<{
|
|
6
|
-
transports: Multiaddr[];
|
|
7
|
-
staticAddress: string;
|
|
8
|
-
absoluteAddress: string;
|
|
9
|
-
}>;
|
|
10
|
-
static findNode(p2pNode: Libp2p, address: oAddress): Promise<{
|
|
11
|
-
transports: Multiaddr[];
|
|
12
|
-
staticAddress: string;
|
|
13
|
-
absoluteAddress: string;
|
|
14
|
-
}>;
|
|
15
|
-
}
|
|
16
|
-
//# sourceMappingURL=network.utils.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"network.utils.d.ts","sourceRoot":"","sources":["../../../../src/core/utils/network.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAE3C,OAAO,EAAE,GAAG,EAAE,MAAM,cAAc,CAAC;AAEnC,qBAAa,YAAY;WACH,aAAa,CAC/B,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,GAAG,GACP,OAAO,CAAC;QACT,UAAU,EAAE,SAAS,EAAE,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;WA4BkB,QAAQ,CAC1B,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,QAAQ,GAChB,OAAO,CAAC;QACT,UAAU,EAAE,SAAS,EAAE,CAAC;QACxB,aAAa,EAAE,MAAM,CAAC;QACtB,eAAe,EAAE,MAAM,CAAC;KACzB,CAAC;CAgBH"}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import { Logger } from '../index.js';
|
|
2
|
-
export class NetworkUtils {
|
|
3
|
-
static async findProviders(p2pNode, cid) {
|
|
4
|
-
const logger = new Logger('NetworkUtils');
|
|
5
|
-
let peer = null;
|
|
6
|
-
let multiaddrs = [];
|
|
7
|
-
for await (const event of p2pNode.services.dht.findProviders(cid)) {
|
|
8
|
-
// Look for events that contain actual provider information
|
|
9
|
-
if (event.name === 'PEER_RESPONSE') {
|
|
10
|
-
if (event.providers?.length === 0) {
|
|
11
|
-
logger.debug('No providers found');
|
|
12
|
-
break;
|
|
13
|
-
}
|
|
14
|
-
peer = event.providers[0].id;
|
|
15
|
-
multiaddrs = event.providers[0].multiaddrs;
|
|
16
|
-
break;
|
|
17
|
-
}
|
|
18
|
-
if (event.name === 'PATH_ENDED' || event.name === 'QUERY_ERROR') {
|
|
19
|
-
break;
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
return {
|
|
23
|
-
transports: multiaddrs,
|
|
24
|
-
staticAddress: '',
|
|
25
|
-
absoluteAddress: '',
|
|
26
|
-
};
|
|
27
|
-
}
|
|
28
|
-
static async findNode(p2pNode, address) {
|
|
29
|
-
const cid = await address.toCID();
|
|
30
|
-
return await Promise.race([
|
|
31
|
-
new Promise((_, reject) => setTimeout(() => reject(new Error('Content routing provide timeout')), 5000)),
|
|
32
|
-
this.findProviders(p2pNode, cid),
|
|
33
|
-
]);
|
|
34
|
-
}
|
|
35
|
-
}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
export interface oToolErrorInterface {
|
|
2
|
-
code: number;
|
|
3
|
-
message: string;
|
|
4
|
-
details?: any;
|
|
5
|
-
}
|
|
6
|
-
export declare class oToolError extends Error implements oToolErrorInterface {
|
|
7
|
-
code: number;
|
|
8
|
-
details?: any;
|
|
9
|
-
message: string;
|
|
10
|
-
constructor(code: number, message: string, details?: any);
|
|
11
|
-
toJSON(): {
|
|
12
|
-
code: number;
|
|
13
|
-
message: string;
|
|
14
|
-
details: any;
|
|
15
|
-
};
|
|
16
|
-
static fromJSON(json: any): oToolError;
|
|
17
|
-
toString(): string;
|
|
18
|
-
}
|
|
19
|
-
//# sourceMappingURL=tool.error.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"tool.error.d.ts","sourceRoot":"","sources":["../../../src/error/tool.error.ts"],"names":[],"mappings":"AACA,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,GAAG,CAAC;CACf;AAED,qBAAa,UAAW,SAAQ,KAAM,YAAW,mBAAmB;IAClE,IAAI,EAAE,MAAM,CAAK;IACjB,OAAO,CAAC,EAAE,GAAG,CAAC;IACd,OAAO,EAAE,MAAM,CAAM;gBAET,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,GAAG;IAOxD,MAAM;;;;;IAQN,MAAM,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG;IAOzB,QAAQ;CAGT"}
|
package/dist/src/node/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/node/index.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,2BAA2B,CAAC;AAC1C,cAAc,+BAA+B,CAAC"}
|
package/dist/src/node/index.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import { RequestParams } from '@olane/o-protocol';
|
|
2
|
-
import { oRequest } from '../../index.js';
|
|
3
|
-
import { Stream } from '@olane/o-config';
|
|
4
|
-
export interface RouteRequest extends oRequest {
|
|
5
|
-
stream: Stream;
|
|
6
|
-
params: RequestParams & {
|
|
7
|
-
address: string;
|
|
8
|
-
payload: {
|
|
9
|
-
method: string;
|
|
10
|
-
params: RequestParams;
|
|
11
|
-
};
|
|
12
|
-
};
|
|
13
|
-
}
|
|
14
|
-
//# sourceMappingURL=route.request.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"route.request.d.ts","sourceRoot":"","sources":["../../../../src/node/interfaces/route.request.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,iBAAiB,CAAC;AAEzC,MAAM,WAAW,YAAa,SAAQ,QAAQ;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,aAAa,GAAG;QACtB,OAAO,EAAE,MAAM,CAAC;QAChB,OAAO,EAAE;YACP,MAAM,EAAE,MAAM,CAAC;YACf,MAAM,EAAE,aAAa,CAAC;SACvB,CAAC;KACH,CAAC;CACH"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"local-search.lib.d.ts","sourceRoot":"","sources":["../../../../src/node/lib/local-search.lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AACnD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,qBAAa,WAAW;WACT,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC;CAWnE"}
|
|
@@ -1,10 +0,0 @@
|
|
|
1
|
-
export class LocalSearch {
|
|
2
|
-
static async search(node, query) {
|
|
3
|
-
const results = await node.myTools();
|
|
4
|
-
// utilize local rag
|
|
5
|
-
// utilize current tools to see if there is a match
|
|
6
|
-
// utilize children tools to see if there is a match
|
|
7
|
-
// nothing was found, try global search to remedy
|
|
8
|
-
throw new Error('No tool found for query');
|
|
9
|
-
}
|
|
10
|
-
}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import { Libp2p, Libp2pEvents, ServiceFactoryMap } from '@olane/o-config';
|
|
2
|
-
import { Logger } from '../../core/utils/logger.js';
|
|
3
|
-
export declare const NETWORK_ACTIVITY_EVENTS: NetworkActivityEvent[];
|
|
4
|
-
type NetworkActivityEvent = keyof Libp2pEvents<ServiceFactoryMap>;
|
|
5
|
-
export declare class NetworkActivity {
|
|
6
|
-
private readonly logger;
|
|
7
|
-
private readonly p2pNode;
|
|
8
|
-
constructor(logger: Logger, p2pNode: Libp2p);
|
|
9
|
-
setup(): void;
|
|
10
|
-
}
|
|
11
|
-
export {};
|
|
12
|
-
//# sourceMappingURL=network-activity.lib.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"network-activity.lib.d.ts","sourceRoot":"","sources":["../../../../src/node/lib/network-activity.lib.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC1E,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,eAAO,MAAM,uBAAuB,EAAE,oBAAoB,EAczD,CAAC;AAEF,KAAK,oBAAoB,GAAG,MAAM,YAAY,CAAC,iBAAiB,CAAC,CAAC;AAElE,qBAAa,eAAe;IAExB,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;gBADP,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM;IAKlC,KAAK;CAON"}
|