FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
import { resolveFilePath } from "../Paths/FilePath";
|
|
|
|
import { hasTextExtension } from "../Paths/TextFilePath";
|
|
|
|
import { hasScriptExtension } from "../Paths/ScriptFilePath";
|
2022-07-30 16:19:22 +02:00
|
|
|
import { GetServer } from "../Server/AllServers";
|
2022-08-10 23:22:03 +02:00
|
|
|
import {
|
|
|
|
RFAMessage,
|
|
|
|
FileData,
|
|
|
|
FileContent,
|
|
|
|
isFileServer,
|
|
|
|
isFileLocation,
|
|
|
|
FileLocation,
|
|
|
|
isFileData,
|
|
|
|
} from "./MessageDefinitions";
|
2022-08-23 23:50:31 +02:00
|
|
|
|
2022-07-30 16:19:22 +02:00
|
|
|
import libSource from "!!raw-loader!../ScriptEditor/NetscriptDefinitions.d.ts";
|
|
|
|
|
|
|
|
function error(errorMsg: string, { id }: RFAMessage): RFAMessage {
|
2022-08-10 23:22:03 +02:00
|
|
|
return new RFAMessage({ error: errorMsg, id: id });
|
2022-07-30 16:19:22 +02:00
|
|
|
}
|
|
|
|
|
|
|
|
export const RFARequestHandler: Record<string, (message: RFAMessage) => void | RFAMessage> = {
|
2022-08-10 23:22:03 +02:00
|
|
|
pushFile: function (msg: RFAMessage): RFAMessage {
|
|
|
|
if (!isFileData(msg.params)) return error("Misses parameters", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const fileData: FileData = msg.params;
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
const filePath = resolveFilePath(fileData.filename);
|
|
|
|
if (!filePath) return error("Invalid file path", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const server = GetServer(fileData.server);
|
|
|
|
if (!server) return error("Server hostname invalid", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
if (hasTextExtension(filePath) || hasScriptExtension(filePath)) {
|
|
|
|
server.writeToContentFile(filePath, fileData.content);
|
|
|
|
return new RFAMessage({ result: "OK", id: msg.id });
|
|
|
|
}
|
|
|
|
return error("Invalid file extension", msg);
|
2022-08-10 23:22:03 +02:00
|
|
|
},
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
getFile: function (msg: RFAMessage): RFAMessage {
|
|
|
|
if (!isFileLocation(msg.params)) return error("Message misses parameters", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const fileData: FileLocation = msg.params;
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
const filePath = resolveFilePath(fileData.filename);
|
|
|
|
if (!filePath) return error("Invalid file path", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const server = GetServer(fileData.server);
|
|
|
|
if (!server) return error("Server hostname invalid", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
if (!hasTextExtension(filePath) && !hasScriptExtension(filePath)) return error("Invalid file extension", msg);
|
|
|
|
const file = server.getContentFile(filePath);
|
|
|
|
if (!file) return error("File doesn't exist", msg);
|
|
|
|
return new RFAMessage({ result: file.content, id: msg.id });
|
2022-08-10 23:22:03 +02:00
|
|
|
},
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
deleteFile: function (msg: RFAMessage): RFAMessage {
|
|
|
|
if (!isFileLocation(msg.params)) return error("Message misses parameters", msg);
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const fileData: FileLocation = msg.params;
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
const filePath = resolveFilePath(fileData.filename);
|
|
|
|
if (!filePath) return error("Invalid filename", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const server = GetServer(fileData.server);
|
|
|
|
if (!server) return error("Server hostname invalid", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
const result = server.removeFile(filePath);
|
|
|
|
if (result.res) return new RFAMessage({ result: "OK", id: msg.id });
|
|
|
|
return error(result.msg ?? "Failed", msg);
|
2022-08-10 23:22:03 +02:00
|
|
|
},
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
getFileNames: function (msg: RFAMessage): RFAMessage {
|
|
|
|
if (!isFileServer(msg.params)) return error("Message misses parameters", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const server = GetServer(msg.params.server);
|
|
|
|
if (!server) return error("Server hostname invalid", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
const fileNameList: string[] = [...server.textFiles.keys(), ...server.scripts.keys()];
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-25 23:34:29 +02:00
|
|
|
return new RFAMessage({ result: fileNameList, id: msg.id });
|
2022-08-10 23:22:03 +02:00
|
|
|
},
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
getAllFiles: function (msg: RFAMessage): RFAMessage {
|
|
|
|
if (!isFileServer(msg.params)) return error("Message misses parameters", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const server = GetServer(msg.params.server);
|
|
|
|
if (!server) return error("Server hostname invalid", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
const fileList: FileContent[] = [...server.scripts, ...server.textFiles].map(([filename, file]) => ({
|
|
|
|
filename,
|
|
|
|
content: file.content,
|
|
|
|
}));
|
2022-08-25 23:34:29 +02:00
|
|
|
return new RFAMessage({ result: fileList, id: msg.id });
|
2022-08-10 23:22:03 +02:00
|
|
|
},
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
calculateRam: function (msg: RFAMessage): RFAMessage {
|
|
|
|
if (!isFileLocation(msg.params)) return error("Message misses parameters", msg);
|
|
|
|
const fileData: FileLocation = msg.params;
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
const filePath = resolveFilePath(fileData.filename);
|
|
|
|
if (!filePath) return error("Invalid filename", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
const server = GetServer(fileData.server);
|
|
|
|
if (!server) return error("Server hostname invalid", msg);
|
2022-07-30 16:19:22 +02:00
|
|
|
|
FILES: Path rework & typesafety (#479)
* Added new types for various file paths, all in the Paths folder.
* TypeSafety and other helper functions related to these types
* Added basic globbing support with * and ?. Currently only implemented for Script/Text, on nano and download terminal commands
* Enforcing the new types throughout the codebase, plus whatever rewrites happened along the way
* Server.textFiles is now a map
* TextFile no longer uses a fn property, now it is filename
* Added a shared ContentFile interface for shared functionality between TextFile and Script.
* related to ContentFile change above, the player is now allowed to move a text file to a script file and vice versa.
* File paths no longer conditionally start with slashes, and all directory names other than root have ending slashes. The player is still able to provide paths starting with / but this now indicates that the player is specifying an absolute path instead of one relative to root.
* Singularized the MessageFilename and LiteratureName enums
* Because they now only accept correct types, server.writeToXFile functions now always succeed (the only reasons they could fail before were invalid filepath).
* Fix several issues with tab completion, which included pretty much a complete rewrite
* Changed the autocomplete display options so there's less chance it clips outside the display area.
* Turned CompletedProgramName into an enum.
* Got rid of programsMetadata, and programs and DarkWebItems are now initialized immediately instead of relying on initializers called from the engine.
* For any executable (program, cct, or script file) pathing can be used directly to execute without using the run command (previously the command had to start with ./ and it wasn't actually using pathing).
2023-04-24 16:26:57 +02:00
|
|
|
if (!hasScriptExtension(filePath)) return error("Filename isn't a script filename", msg);
|
|
|
|
const script = server.scripts.get(filePath);
|
2022-08-10 23:22:03 +02:00
|
|
|
if (!script) return error("File doesn't exist", msg);
|
2023-03-06 04:39:42 +01:00
|
|
|
const ramUsage = script.getRamUsage(server.scripts);
|
|
|
|
if (!ramUsage) return error("Ram cost could not be calculated", msg);
|
2022-08-23 23:50:31 +02:00
|
|
|
return new RFAMessage({ result: ramUsage, id: msg.id });
|
2022-08-10 23:22:03 +02:00
|
|
|
},
|
2022-07-30 16:19:22 +02:00
|
|
|
|
2022-08-10 23:22:03 +02:00
|
|
|
getDefinitionFile: function (msg: RFAMessage): RFAMessage {
|
2022-08-28 22:39:01 +02:00
|
|
|
return new RFAMessage({ result: libSource + "", id: msg.id });
|
2022-08-10 23:22:03 +02:00
|
|
|
},
|
|
|
|
};
|