javonet-nodejs-sdk 2.5.17 → 2.5.18
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/dist/core/handler/AbstractHandler.cjs +23 -6
- package/dist/core/handler/ArrayGetItemHandler.cjs +4 -1
- package/dist/core/handler/ArrayGetRankHandler.cjs +3 -0
- package/dist/core/handler/ArrayGetSizeHandler.cjs +3 -0
- package/dist/core/handler/ArrayHandler.cjs +3 -0
- package/dist/core/handler/ArraySetItemHandler.cjs +4 -1
- package/dist/core/handler/CastingHandler.cjs +3 -1
- package/dist/core/handler/ConvertTypeHandler.cjs +4 -4
- package/dist/core/handler/CreateClassInstanceHandler.cjs +5 -2
- package/dist/core/handler/DestructReferenceHandler.cjs +3 -0
- package/dist/core/handler/EnableNamespaceHandler.cjs +3 -0
- package/dist/core/handler/EnableTypeHandler.cjs +3 -0
- package/dist/core/handler/GetGlobalStaticFieldHandler.cjs +3 -0
- package/dist/core/handler/GetInstanceFieldHandler.cjs +3 -0
- package/dist/core/handler/GetInstanceMethodAsDelegateHandler.cjs +15 -4
- package/dist/core/handler/GetStaticFieldHandler.cjs +4 -0
- package/dist/core/handler/GetStaticMethodAsDelegateHandler.cjs +8 -6
- package/dist/core/handler/GetTypeHandler.cjs +10 -2
- package/dist/core/handler/Handler.cjs +8 -11
- package/dist/core/handler/InvokeGlobalFunctionHandler.cjs +3 -0
- package/dist/core/handler/InvokeInstanceMethodHandler.cjs +3 -0
- package/dist/core/handler/InvokeStaticMethodHandler.cjs +3 -0
- package/dist/core/handler/LoadLibraryHandler.cjs +4 -0
- package/dist/core/handler/SetGlobalStaticFieldHandler.cjs +3 -0
- package/dist/core/handler/SetInstanceFieldHandler.cjs +3 -0
- package/dist/core/handler/SetStaticFieldHandler.cjs +3 -0
- package/dist/core/handler/ValueHandler.cjs +4 -0
- package/dist/core/interpreter/Interpreter.cjs +28 -12
- package/dist/core/namespaceCache/NamespaceCache.cjs +12 -0
- package/dist/core/protocol/CommandDeserializer.cjs +10 -2
- package/dist/core/protocol/CommandSerializer.cjs +24 -4
- package/dist/core/protocol/TypeDeserializer.cjs +35 -0
- package/dist/core/protocol/TypeSerializer.cjs +51 -7
- package/dist/core/receiver/Receiver.cjs +1 -1
- package/dist/core/receiver/ReceiverNative.cjs +6 -0
- package/dist/core/transmitter/Transmitter.cjs +18 -2
- package/dist/core/transmitter/TransmitterWebsocket.cjs +8 -5
- package/dist/core/transmitter/TransmitterWebsocketBrowser.cjs +1 -1
- package/dist/core/transmitter/TransmitterWrapper.cjs +25 -8
- package/dist/core/typeCache/TypeCache.cjs +8 -0
- package/dist/core/webSocketClient/WebSocketClient.cjs +22 -12
- package/dist/core/webSocketClient/WebSocketClientBrowser.cjs +2 -2
- package/dist/sdk/ConfigRuntimeFactory.cjs +60 -55
- package/dist/sdk/InvocationContext.cjs +81 -23
- package/dist/sdk/Javonet.cjs +14 -33
- package/dist/sdk/RuntimeContext.cjs +85 -30
- package/dist/sdk/RuntimeFactory.cjs +3 -0
- package/dist/sdk/tools/ActivationHelper.cjs +66 -0
- package/dist/sdk/tools/JsonResolver.cjs +214 -0
- package/dist/types/core/handler/AbstractHandler.d.ts +23 -4
- package/dist/types/core/handler/ArrayGetItemHandler.d.ts +8 -1
- package/dist/types/core/handler/ArrayGetRankHandler.d.ts +8 -1
- package/dist/types/core/handler/ArrayGetSizeHandler.d.ts +8 -1
- package/dist/types/core/handler/ArrayHandler.d.ts +8 -1
- package/dist/types/core/handler/ArraySetItemHandler.d.ts +8 -1
- package/dist/types/core/handler/CastingHandler.d.ts +4 -0
- package/dist/types/core/handler/ConvertTypeHandler.d.ts +8 -4
- package/dist/types/core/handler/CreateClassInstanceHandler.d.ts +8 -1
- package/dist/types/core/handler/DestructReferenceHandler.d.ts +8 -1
- package/dist/types/core/handler/EnableNamespaceHandler.d.ts +8 -1
- package/dist/types/core/handler/EnableTypeHandler.d.ts +8 -1
- package/dist/types/core/handler/GetGlobalStaticFieldHandler.d.ts +8 -1
- package/dist/types/core/handler/GetInstanceFieldHandler.d.ts +8 -1
- package/dist/types/core/handler/GetStaticFieldHandler.d.ts +9 -1
- package/dist/types/core/handler/GetStaticMethodAsDelegateHandler.d.ts +4 -3
- package/dist/types/core/handler/GetTypeHandler.d.ts +17 -8
- package/dist/types/core/handler/Handler.d.ts +8 -8
- package/dist/types/core/handler/InvokeDelegateHandler.d.ts +4 -0
- package/dist/types/core/handler/InvokeGlobalFunctionHandler.d.ts +8 -1
- package/dist/types/core/handler/InvokeInstanceMethodHandler.d.ts +8 -1
- package/dist/types/core/handler/InvokeStaticMethodHandler.d.ts +8 -1
- package/dist/types/core/handler/LoadLibraryHandler.d.ts +8 -3
- package/dist/types/core/handler/SetGlobalStaticFieldHandler.d.ts +4 -0
- package/dist/types/core/handler/SetInstanceFieldHandler.d.ts +8 -1
- package/dist/types/core/handler/SetStaticFieldHandler.d.ts +8 -1
- package/dist/types/core/handler/ValueHandler.d.ts +9 -1
- package/dist/types/core/interpreter/Interpreter.d.ts +11 -10
- package/dist/types/core/namespaceCache/NamespaceCache.d.ts +17 -5
- package/dist/types/core/protocol/CommandDeserializer.d.ts +10 -3
- package/dist/types/core/protocol/CommandSerializer.d.ts +19 -2
- package/dist/types/core/protocol/TypeDeserializer.d.ts +46 -11
- package/dist/types/core/protocol/TypeSerializer.d.ts +53 -13
- package/dist/types/core/receiver/Receiver.d.ts +2 -2
- package/dist/types/core/receiver/ReceiverNative.d.ts +8 -2
- package/dist/types/core/transmitter/Transmitter.d.ts +20 -4
- package/dist/types/core/transmitter/TransmitterWebsocket.d.ts +8 -4
- package/dist/types/core/transmitter/TransmitterWebsocketBrowser.d.ts +4 -7
- package/dist/types/core/transmitter/TransmitterWrapper.d.ts +12 -3
- package/dist/types/core/typeCache/TypeCache.d.ts +15 -5
- package/dist/types/core/webSocketClient/WebSocketClient.d.ts +17 -21
- package/dist/types/sdk/ConfigRuntimeFactory.d.ts +9 -6
- package/dist/types/sdk/InvocationContext.d.ts +38 -6
- package/dist/types/sdk/Javonet.d.ts +12 -7
- package/dist/types/sdk/RuntimeContext.d.ts +23 -7
- package/dist/types/sdk/RuntimeFactory.d.ts +9 -2
- package/dist/types/sdk/tools/ActivationHelper.d.ts +20 -0
- package/dist/types/sdk/tools/JsonResolver.d.ts +87 -0
- package/dist/types/utils/Command.d.ts +18 -14
- package/dist/types/utils/CustomError.d.ts +5 -1
- package/dist/types/utils/Runtime.d.ts +1 -2
- package/dist/types/utils/RuntimeNameHandler.d.ts +6 -2
- package/dist/types/utils/Type.d.ts +1 -0
- package/dist/types/utils/TypesHandler.d.ts +16 -0
- package/dist/types/utils/UtilsConst.d.ts +32 -0
- package/dist/types/utils/connectionData/IConnectionData.d.ts +16 -3
- package/dist/types/utils/connectionData/InMemoryConnectionData.d.ts +4 -3
- package/dist/types/utils/connectionData/WsConnectionData.d.ts +7 -10
- package/dist/types/utils/nodejs/connectionData/TcpConnectionData.d.ts +17 -10
- package/dist/utils/Command.cjs +9 -9
- package/dist/utils/CustomError.cjs +4 -0
- package/dist/utils/RuntimeNameHandler.cjs +1 -1
- package/dist/utils/Type.cjs +2 -1
- package/dist/utils/TypesHandler.cjs +55 -0
- package/dist/utils/UtilsConst.cjs +101 -0
- package/dist/utils/connectionData/IConnectionData.cjs +9 -0
- package/dist/utils/connectionData/InMemoryConnectionData.cjs +10 -0
- package/dist/utils/connectionData/WsConnectionData.cjs +4 -0
- package/dist/utils/nodejs/connectionData/TcpConnectionData.cjs +33 -3
- package/lib/core/delegatesCache/DelegatesCache.js +1 -0
- package/lib/core/handler/AbstractHandler.js +27 -9
- package/lib/core/handler/ArrayGetItemHandler.js +9 -1
- package/lib/core/handler/ArrayGetRankHandler.js +9 -0
- package/lib/core/handler/ArrayGetSizeHandler.js +8 -0
- package/lib/core/handler/ArrayHandler.js +8 -0
- package/lib/core/handler/ArraySetItemHandler.js +11 -1
- package/lib/core/handler/CastingHandler.js +8 -1
- package/lib/core/handler/ConvertTypeHandler.js +9 -4
- package/lib/core/handler/CreateClassInstanceHandler.js +10 -4
- package/lib/core/handler/DestructReferenceHandler.js +8 -0
- package/lib/core/handler/EnableNamespaceHandler.js +8 -0
- package/lib/core/handler/EnableTypeHandler.js +8 -0
- package/lib/core/handler/GetGlobalStaticFieldHandler.js +9 -0
- package/lib/core/handler/GetInstanceFieldHandler.js +8 -0
- package/lib/core/handler/GetInstanceMethodAsDelegateHandler.js +9 -4
- package/lib/core/handler/GetStaticFieldHandler.js +9 -0
- package/lib/core/handler/GetStaticMethodAsDelegateHandler.js +8 -7
- package/lib/core/handler/GetTypeHandler.js +15 -5
- package/lib/core/handler/Handler.js +13 -18
- package/lib/core/handler/InvokeDelegateHandler.js +5 -0
- package/lib/core/handler/InvokeGlobalFunctionHandler.js +11 -1
- package/lib/core/handler/InvokeInstanceMethodHandler.js +8 -0
- package/lib/core/handler/InvokeStaticMethodHandler.js +8 -0
- package/lib/core/handler/LoadLibraryHandler.js +11 -0
- package/lib/core/handler/SetGlobalStaticFieldHandler.js +10 -0
- package/lib/core/handler/SetInstanceFieldHandler.js +7 -0
- package/lib/core/handler/SetStaticFieldHandler.js +8 -0
- package/lib/core/handler/ValueHandler.js +9 -0
- package/lib/core/interpreter/Interpreter.js +42 -24
- package/lib/core/namespaceCache/NamespaceCache.js +14 -0
- package/lib/core/protocol/CommandDeserializer.js +11 -2
- package/lib/core/protocol/CommandSerializer.js +40 -9
- package/lib/core/protocol/TypeDeserializer.js +36 -0
- package/lib/core/protocol/TypeSerializer.js +62 -7
- package/lib/core/receiver/Receiver.js +3 -2
- package/lib/core/receiver/ReceiverNative.js +8 -0
- package/lib/core/transmitter/Transmitter.js +18 -1
- package/lib/core/transmitter/TransmitterWebsocket.js +12 -5
- package/lib/core/transmitter/TransmitterWebsocketBrowser.js +2 -4
- package/lib/core/transmitter/TransmitterWrapper.js +27 -6
- package/lib/core/typeCache/TypeCache.js +9 -0
- package/lib/core/webSocketClient/WebSocketClient.js +33 -30
- package/lib/core/webSocketClient/WebSocketClientBrowser.js +5 -6
- package/lib/sdk/ConfigRuntimeFactory.js +70 -68
- package/lib/sdk/InvocationContext.js +94 -26
- package/lib/sdk/Javonet.js +18 -36
- package/lib/sdk/RuntimeContext.js +109 -29
- package/lib/sdk/RuntimeFactory.js +7 -0
- package/lib/sdk/tools/ActivationHelper.js +51 -0
- package/lib/sdk/tools/JsonResolver.js +226 -0
- package/lib/types.d.ts +57 -0
- package/lib/utils/Command.js +14 -9
- package/lib/utils/CustomError.js +5 -0
- package/lib/utils/Runtime.js +1 -1
- package/lib/utils/RuntimeLogger.js +3 -0
- package/lib/utils/RuntimeNameHandler.js +6 -1
- package/lib/utils/Type.js +2 -1
- package/lib/utils/TypesHandler.js +35 -0
- package/lib/utils/UtilsConst.js +88 -0
- package/lib/utils/connectionData/IConnectionData.js +14 -0
- package/lib/utils/connectionData/InMemoryConnectionData.js +15 -0
- package/lib/utils/connectionData/WsConnectionData.js +9 -0
- package/lib/utils/nodejs/connectionData/TcpConnectionData.js +35 -5
- package/package.json +4 -3
- package/dist/sdk/tools/browser/ConfigSourceResolver.cjs +0 -153
- package/dist/sdk/tools/nodejs/JsonFileResolver.cjs +0 -120
- package/dist/types/sdk/tools/browser/ConfigSourceResolver.d.ts +0 -46
- package/dist/types/sdk/tools/nodejs/JsonFileResolver.d.ts +0 -13
- package/dist/types/utils/nodejs/TypesConverter.d.ts +0 -48
- package/dist/utils/nodejs/TypesConverter.cjs +0 -102
- package/lib/declarations.d.ts +0 -35
- package/lib/sdk/tools/browser/ConfigSourceResolver.js +0 -146
- package/lib/sdk/tools/nodejs/JsonFileResolver.js +0 -106
- package/lib/utils/nodejs/TypesConverter.js +0 -91
|
@@ -0,0 +1,66 @@
|
|
|
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
|
+
var ActivationHelper_exports = {};
|
|
20
|
+
__export(ActivationHelper_exports, {
|
|
21
|
+
ActivationHelper: () => ActivationHelper
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(ActivationHelper_exports);
|
|
24
|
+
var import_Runtime = require("../../utils/Runtime.cjs");
|
|
25
|
+
class ActivationHelper {
|
|
26
|
+
/** @type {string} */
|
|
27
|
+
static temporaryLicenseKey = "License key not set";
|
|
28
|
+
/**
|
|
29
|
+
* @param {string} value
|
|
30
|
+
*/
|
|
31
|
+
static setTemporaryLicenseKey(value) {
|
|
32
|
+
if (!value || value === "your-license-key") {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
ActivationHelper.temporaryLicenseKey = value;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* @returns {string}
|
|
39
|
+
*/
|
|
40
|
+
static getTemporaryLicenseKey() {
|
|
41
|
+
return ActivationHelper.temporaryLicenseKey;
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* @returns {Promise<string>}
|
|
45
|
+
*/
|
|
46
|
+
static async getLicenseKey() {
|
|
47
|
+
try {
|
|
48
|
+
return ActivationHelper._getLicenseKeyFromFile();
|
|
49
|
+
} catch {
|
|
50
|
+
return ActivationHelper.temporaryLicenseKey;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* @returns {string}
|
|
55
|
+
*/
|
|
56
|
+
static _getLicenseKeyFromFile() {
|
|
57
|
+
if (!(0, import_Runtime.isBrowserRuntime)()) {
|
|
58
|
+
throw new Error("ActivationHelper is not supported in the browser runtime.");
|
|
59
|
+
}
|
|
60
|
+
return "";
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
64
|
+
0 && (module.exports = {
|
|
65
|
+
ActivationHelper
|
|
66
|
+
});
|
|
@@ -0,0 +1,214 @@
|
|
|
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
|
+
var JsonResolver_exports = {};
|
|
20
|
+
__export(JsonResolver_exports, {
|
|
21
|
+
JsonResolver: () => JsonResolver
|
|
22
|
+
});
|
|
23
|
+
module.exports = __toCommonJS(JsonResolver_exports);
|
|
24
|
+
var import_Runtime = require("../../utils/Runtime.cjs");
|
|
25
|
+
const import_meta = {};
|
|
26
|
+
function isValidObject(param) {
|
|
27
|
+
return typeof param === "object" && param !== null && !Array.isArray(param);
|
|
28
|
+
}
|
|
29
|
+
function isValidJson(param) {
|
|
30
|
+
try {
|
|
31
|
+
if (typeof param === "string") {
|
|
32
|
+
const parsed = JSON.parse(param);
|
|
33
|
+
return typeof parsed === "object" && parsed !== null;
|
|
34
|
+
}
|
|
35
|
+
return false;
|
|
36
|
+
} catch (e) {
|
|
37
|
+
return false;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
const requireDynamic = (0, import_Runtime.getRequire)(import_meta.url);
|
|
41
|
+
let fs = null;
|
|
42
|
+
class JsonResolver {
|
|
43
|
+
/** @type {ConfigSource} */
|
|
44
|
+
jsonObject;
|
|
45
|
+
/** @type {string | ConfigSource} */
|
|
46
|
+
configSource;
|
|
47
|
+
/**
|
|
48
|
+
* @param {string | ConfigSource} configSource
|
|
49
|
+
*/
|
|
50
|
+
constructor(configSource) {
|
|
51
|
+
this.configSource = JSON.stringify(configSource);
|
|
52
|
+
this.jsonObject = this._getJsonObject(configSource);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* @returns {Partial<Runtimes>}
|
|
56
|
+
*/
|
|
57
|
+
get runtimes() {
|
|
58
|
+
return this.jsonObject?.runtimes || {};
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* @returns {string}
|
|
62
|
+
*/
|
|
63
|
+
get licenseKey() {
|
|
64
|
+
return this.jsonObject?.licenseKey || "your-license-key";
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* @returns {string}
|
|
68
|
+
*/
|
|
69
|
+
get workingDirectory() {
|
|
70
|
+
return this.jsonObject?.workingDirectory || "";
|
|
71
|
+
}
|
|
72
|
+
/**
|
|
73
|
+
* @returns {string}
|
|
74
|
+
*/
|
|
75
|
+
getLicenseKey() {
|
|
76
|
+
if (!this.licenseKey) {
|
|
77
|
+
throw new Error("License key not found in configuration source. Check your configuration source.");
|
|
78
|
+
}
|
|
79
|
+
return this.licenseKey;
|
|
80
|
+
}
|
|
81
|
+
/**
|
|
82
|
+
* @returns {string}
|
|
83
|
+
*/
|
|
84
|
+
getWorkingDirectory() {
|
|
85
|
+
return this.workingDirectory;
|
|
86
|
+
}
|
|
87
|
+
/**
|
|
88
|
+
* @param {RuntimeType} runtimeName
|
|
89
|
+
* @param {string} configName
|
|
90
|
+
* @returns {RuntimeChannelType}
|
|
91
|
+
*/
|
|
92
|
+
getChannelType(runtimeName, configName) {
|
|
93
|
+
const channel = this._getChannel(runtimeName, configName);
|
|
94
|
+
return channel.type;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* @param {RuntimeType} runtimeName
|
|
98
|
+
* @param {string} configName
|
|
99
|
+
* @returns {string}
|
|
100
|
+
*/
|
|
101
|
+
getChannelHost(runtimeName, configName) {
|
|
102
|
+
const channel = this._getChannel(runtimeName, configName);
|
|
103
|
+
if (channel.host === void 0) {
|
|
104
|
+
throw new Error(`Host not found for channel in runtime ${runtimeName}, config ${configName}`);
|
|
105
|
+
}
|
|
106
|
+
return channel.host;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* @param {RuntimeType} runtimeName
|
|
110
|
+
* @param {string} configName
|
|
111
|
+
* @returns {number|string}
|
|
112
|
+
*/
|
|
113
|
+
getChannelPort(runtimeName, configName) {
|
|
114
|
+
const channel = this._getChannel(runtimeName, configName);
|
|
115
|
+
if (channel.port === void 0) {
|
|
116
|
+
throw new Error(`Port not found for channel in runtime ${runtimeName}, config ${configName}`);
|
|
117
|
+
}
|
|
118
|
+
return channel.port;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* @param {RuntimeType} runtimeName
|
|
122
|
+
* @param {string} configName
|
|
123
|
+
* @returns {string}
|
|
124
|
+
*/
|
|
125
|
+
getModules(runtimeName, configName) {
|
|
126
|
+
const runtime = this._getRuntime(runtimeName, configName);
|
|
127
|
+
return runtime.modules || "";
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* @private
|
|
131
|
+
* @param {string | ConfigSource} configSource
|
|
132
|
+
* @returns {ConfigSource}
|
|
133
|
+
*/
|
|
134
|
+
_getJsonObject(configSource) {
|
|
135
|
+
if (isValidObject(configSource)) {
|
|
136
|
+
return (
|
|
137
|
+
/** @type {ConfigSource} */
|
|
138
|
+
configSource
|
|
139
|
+
);
|
|
140
|
+
}
|
|
141
|
+
if (typeof configSource === "string" && isValidJson(configSource)) {
|
|
142
|
+
const parsedJson = JSON.parse(configSource);
|
|
143
|
+
if (isValidObject(parsedJson)) {
|
|
144
|
+
return parsedJson;
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
if ((0, import_Runtime.isNodejsRuntime)()) {
|
|
148
|
+
if (!fs) {
|
|
149
|
+
fs = requireDynamic("fs");
|
|
150
|
+
}
|
|
151
|
+
if (fs?.existsSync(configSource)) {
|
|
152
|
+
const jsonText = fs.readFileSync(configSource, "utf8");
|
|
153
|
+
if (isValidJson(jsonText)) {
|
|
154
|
+
const parsedFromFile = JSON.parse(jsonText);
|
|
155
|
+
if (isValidObject(parsedFromFile)) {
|
|
156
|
+
return parsedFromFile;
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
}
|
|
160
|
+
}
|
|
161
|
+
throw new Error(
|
|
162
|
+
`Configuration source is not valid. Check your configuration:${String(this.configSource)}`
|
|
163
|
+
);
|
|
164
|
+
}
|
|
165
|
+
/**
|
|
166
|
+
* @private
|
|
167
|
+
* @param {RuntimeType} runtimeName
|
|
168
|
+
* @param {string} configName
|
|
169
|
+
* @returns {Runtime}
|
|
170
|
+
*/
|
|
171
|
+
_getRuntime(runtimeName, configName) {
|
|
172
|
+
const runtimeList = this.runtimes[runtimeName];
|
|
173
|
+
if (Array.isArray(runtimeList)) {
|
|
174
|
+
const runtime = runtimeList.find((item) => item.name === configName);
|
|
175
|
+
if (runtime) {
|
|
176
|
+
return runtime;
|
|
177
|
+
}
|
|
178
|
+
} else if (typeof runtimeList?.name === "string" && runtimeList?.name === configName) {
|
|
179
|
+
return runtimeList;
|
|
180
|
+
}
|
|
181
|
+
throw new Error(
|
|
182
|
+
`Runtime config '${configName}' not found in configuration source for runtime '${runtimeName}'. Check your configuration source.`
|
|
183
|
+
);
|
|
184
|
+
}
|
|
185
|
+
/**
|
|
186
|
+
* @private
|
|
187
|
+
* @param {RuntimeType} runtimeName
|
|
188
|
+
* @param {string} configName
|
|
189
|
+
* @returns {string}
|
|
190
|
+
*/
|
|
191
|
+
_getRuntimeName(runtimeName, configName) {
|
|
192
|
+
const runtime = this._getRuntime(runtimeName, configName);
|
|
193
|
+
return runtime.name;
|
|
194
|
+
}
|
|
195
|
+
/**
|
|
196
|
+
* @private
|
|
197
|
+
* @param {RuntimeType} runtimeName
|
|
198
|
+
* @param {string} configName
|
|
199
|
+
* @returns {RuntimeChannel}
|
|
200
|
+
*/
|
|
201
|
+
_getChannel(runtimeName, configName) {
|
|
202
|
+
const runtime = this._getRuntime(runtimeName, configName);
|
|
203
|
+
if (!runtime.channel) {
|
|
204
|
+
throw new Error(
|
|
205
|
+
`Channel not found for runtime config '${configName}' and runtime '${runtimeName}'. Check your configuration source.`
|
|
206
|
+
);
|
|
207
|
+
}
|
|
208
|
+
return runtime.channel;
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
212
|
+
0 && (module.exports = {
|
|
213
|
+
JsonResolver
|
|
214
|
+
});
|
|
@@ -1,7 +1,26 @@
|
|
|
1
1
|
export class AbstractHandler {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
2
|
+
/**
|
|
3
|
+
* @type {Record<number, AbstractHandler>}
|
|
4
|
+
*/
|
|
5
|
+
handlers: Record<number, AbstractHandler>;
|
|
6
|
+
/**
|
|
7
|
+
* @param {Command} command
|
|
8
|
+
*/
|
|
9
|
+
process(command: Command): void;
|
|
10
|
+
/**
|
|
11
|
+
* @param {Command} command
|
|
12
|
+
*/
|
|
13
|
+
handleCommand(command: Command): void;
|
|
14
|
+
/**
|
|
15
|
+
* @param {Command} command
|
|
16
|
+
*/
|
|
17
|
+
iterate(command: Command): void;
|
|
18
|
+
/**
|
|
19
|
+
*
|
|
20
|
+
* @param {*} error
|
|
21
|
+
* @param {*} class_name
|
|
22
|
+
* @returns
|
|
23
|
+
*/
|
|
6
24
|
process_stack_trace(error: any, class_name: any): any;
|
|
7
25
|
}
|
|
26
|
+
import { Command } from '../../utils/Command.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class ArrayGetItemHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): any;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class ArrayGetRankHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): number;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class ArrayGetSizeHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): number;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,4 +1,11 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class ArrayHandler extends AbstractHandler {
|
|
2
|
-
|
|
6
|
+
/**
|
|
7
|
+
* @param {Command} command
|
|
8
|
+
*/
|
|
9
|
+
process(command: Command): any;
|
|
3
10
|
}
|
|
4
11
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class ArraySetItemHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): number;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
/**
|
|
2
6
|
* ConvertTypeHandler class handles the conversion of JType to Type.
|
|
3
7
|
*/
|
|
@@ -9,14 +13,14 @@ export class ConvertTypeHandler extends AbstractHandler {
|
|
|
9
13
|
requiredParametersCount: number;
|
|
10
14
|
/**
|
|
11
15
|
* Processes the given command to convert JType to Type.
|
|
12
|
-
* @param {
|
|
16
|
+
* @param {Command} command - The command to process.
|
|
13
17
|
* @returns {any} The converted type.
|
|
14
18
|
*/
|
|
15
|
-
process(command:
|
|
19
|
+
process(command: Command): any;
|
|
16
20
|
/**
|
|
17
21
|
* Validates the command to ensure it has enough parameters.
|
|
18
|
-
* @param {
|
|
22
|
+
* @param {Command} command - The command to validate.
|
|
19
23
|
*/
|
|
20
|
-
validateCommand(command:
|
|
24
|
+
validateCommand(command: Command): void;
|
|
21
25
|
}
|
|
22
26
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class CreateClassInstanceHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): any;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,4 +1,11 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class DestructReferenceHandler extends AbstractHandler {
|
|
2
|
-
|
|
6
|
+
/**
|
|
7
|
+
* @param {Command} command
|
|
8
|
+
*/
|
|
9
|
+
process(command: Command): number;
|
|
3
10
|
}
|
|
4
11
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class EnableNamespaceHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): number;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class EnableTypeHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): number;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class GetGlobalStaticFieldHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): any;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class GetInstanceFieldHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): any;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,13 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class GetStaticFieldHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
* @returns {any}
|
|
10
|
+
*/
|
|
11
|
+
process(command: Command): any;
|
|
4
12
|
}
|
|
5
13
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
/**
|
|
2
6
|
* Handles retrieving a static method as a delegate.
|
|
3
7
|
*/
|
|
@@ -11,7 +15,6 @@ export class GetStaticMethodAsDelegateHandler extends AbstractHandler {
|
|
|
11
15
|
/**
|
|
12
16
|
* Processes a command to retrieve a static method as a delegate.
|
|
13
17
|
* @param {Command} command - The command containing payload data.
|
|
14
|
-
* @param {Array<*>} command.payload - The payload containing type, method name, and arguments.
|
|
15
18
|
* @returns {Function} The delegate for the static method.
|
|
16
19
|
* @throws {Error} If the parameters mismatch or the method cannot be found.
|
|
17
20
|
*/
|
|
@@ -20,8 +23,6 @@ export class GetStaticMethodAsDelegateHandler extends AbstractHandler {
|
|
|
20
23
|
* Retrieves the method from the type.
|
|
21
24
|
* @param {Object} type - The class or constructor to search for the method.
|
|
22
25
|
* @param {string} methodName - The name of the method.
|
|
23
|
-
* @param {Array<Function>} argsType - The argument types.
|
|
24
|
-
* @param {Object} modifier - Parameter modifier (not used in JS implementation).
|
|
25
26
|
* @returns {Function|null} The found method or null if not found.
|
|
26
27
|
*/
|
|
27
28
|
getMethod(type: Object, methodName: string): Function | null;
|
|
@@ -1,14 +1,23 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class GetTypeHandler extends AbstractHandler {
|
|
2
6
|
/** @type {number} */
|
|
3
7
|
requiredParametersCount: number;
|
|
4
|
-
/** @type {NamespaceCache
|
|
5
|
-
namespaceCache: NamespaceCache
|
|
6
|
-
/** @type {TypeCache
|
|
7
|
-
typeCache: TypeCache
|
|
8
|
-
/** @type {LoadLibraryHandler
|
|
9
|
-
loadLibaryHandler: LoadLibraryHandler
|
|
10
|
-
|
|
11
|
-
|
|
8
|
+
/** @type {NamespaceCache} */
|
|
9
|
+
namespaceCache: NamespaceCache;
|
|
10
|
+
/** @type {TypeCache} */
|
|
11
|
+
typeCache: TypeCache;
|
|
12
|
+
/** @type {LoadLibraryHandler} */
|
|
13
|
+
loadLibaryHandler: LoadLibraryHandler;
|
|
14
|
+
/**
|
|
15
|
+
*
|
|
16
|
+
* @param {Command} command
|
|
17
|
+
* @returns
|
|
18
|
+
*/
|
|
19
|
+
process(command: Command): any;
|
|
20
|
+
getAvailableTypes(): string[];
|
|
12
21
|
}
|
|
13
22
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
14
23
|
import { NamespaceCache } from '../namespaceCache/NamespaceCache.js';
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export type RuntimeName = import("../../types.d.ts").RuntimeName;
|
|
1
2
|
export class Handler {
|
|
2
3
|
/**
|
|
3
4
|
* @param {import('../interpreter/Interpreter.js').Interpreter} interpreter
|
|
@@ -5,20 +6,19 @@ export class Handler {
|
|
|
5
6
|
constructor(interpreter: import("../interpreter/Interpreter.js").Interpreter);
|
|
6
7
|
interpreter: import("../interpreter/Interpreter.js").Interpreter;
|
|
7
8
|
/**
|
|
8
|
-
* @param {
|
|
9
|
+
* @param {Command} command
|
|
9
10
|
*/
|
|
10
|
-
handleCommand(command:
|
|
11
|
-
commandType: number;
|
|
12
|
-
payload: any[];
|
|
13
|
-
runtimeName: number;
|
|
14
|
-
}): Command;
|
|
11
|
+
handleCommand(command: Command): Command;
|
|
15
12
|
/**
|
|
16
13
|
* @param {any} response
|
|
17
|
-
* @param {
|
|
14
|
+
* @param {RuntimeName} runtimeName
|
|
18
15
|
* @returns {Command}
|
|
19
16
|
*/
|
|
20
|
-
parseCommand(response: any, runtimeName:
|
|
17
|
+
parseCommand(response: any, runtimeName: RuntimeName): Command;
|
|
21
18
|
}
|
|
19
|
+
/**
|
|
20
|
+
* @typedef {import('../../types.d.ts').RuntimeName} RuntimeName
|
|
21
|
+
*/
|
|
22
22
|
/**
|
|
23
23
|
* @type {Record<number, AbstractHandler>}
|
|
24
24
|
*/
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class InvokeGlobalFunctionHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): any;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class InvokeInstanceMethodHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): any;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|
|
@@ -1,5 +1,12 @@
|
|
|
1
|
+
export type Command = import("../../utils/Command.js").Command;
|
|
2
|
+
/**
|
|
3
|
+
* @typedef {import('../../utils/Command.js').Command} Command
|
|
4
|
+
*/
|
|
1
5
|
export class InvokeStaticMethodHandler extends AbstractHandler {
|
|
2
6
|
requiredParametersCount: number;
|
|
3
|
-
|
|
7
|
+
/**
|
|
8
|
+
* @param {Command} command
|
|
9
|
+
*/
|
|
10
|
+
process(command: Command): any;
|
|
4
11
|
}
|
|
5
12
|
import { AbstractHandler } from './AbstractHandler.js';
|