Initial commit
This commit is contained in:
commit
5271331179
12
.github/FUNDING.yml
vendored
Normal file
12
.github/FUNDING.yml
vendored
Normal file
@ -0,0 +1,12 @@
|
|||||||
|
# These are supported funding model platforms
|
||||||
|
|
||||||
|
github: shalithasuranga
|
||||||
|
patreon: shalithasuranga
|
||||||
|
open_collective: # Replace with a single Open Collective username
|
||||||
|
ko_fi: # Replace with a single Ko-fi username
|
||||||
|
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel
|
||||||
|
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry
|
||||||
|
liberapay: # Replace with a single Liberapay username
|
||||||
|
issuehunt: # Replace with a single IssueHunt username
|
||||||
|
otechie: # Replace with a single Otechie username
|
||||||
|
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2']
|
13
.gitignore
vendored
Normal file
13
.gitignore
vendored
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
# Developer tools' files
|
||||||
|
.lite_workspace.lua
|
||||||
|
|
||||||
|
# Neutralinojs binaries and builds
|
||||||
|
/bin
|
||||||
|
/dist
|
||||||
|
|
||||||
|
# Neutralinojs client (minified)
|
||||||
|
neutralino.js
|
||||||
|
|
||||||
|
# Neutralinojs related files
|
||||||
|
.storage
|
||||||
|
*.log
|
8
.idea/.gitignore
generated
vendored
Normal file
8
.idea/.gitignore
generated
vendored
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
# Default ignored files
|
||||||
|
/shelf/
|
||||||
|
/workspace.xml
|
||||||
|
# Editor-based HTTP Client requests
|
||||||
|
/httpRequests/
|
||||||
|
# Datasource local storage ignored files
|
||||||
|
/dataSources/
|
||||||
|
/dataSources.local.xml
|
9
.idea/clearapp.iml
generated
Normal file
9
.idea/clearapp.iml
generated
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module type="JAVA_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||||
|
<exclude-output />
|
||||||
|
<content url="file://$MODULE_DIR$" />
|
||||||
|
<orderEntry type="inheritedJdk" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
</component>
|
||||||
|
</module>
|
6
.idea/misc.xml
generated
Normal file
6
.idea/misc.xml
generated
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_21" default="true" project-jdk-name="corretto-21" project-jdk-type="JavaSDK">
|
||||||
|
<output url="file://$PROJECT_DIR$/out" />
|
||||||
|
</component>
|
||||||
|
</project>
|
8
.idea/modules.xml
generated
Normal file
8
.idea/modules.xml
generated
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/.idea/clearapp.iml" filepath="$PROJECT_DIR$/.idea/clearapp.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
6
.idea/vcs.xml
generated
Normal file
6
.idea/vcs.xml
generated
Normal file
@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="$PROJECT_DIR$" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
1
.tmp/window_state.config.json
Normal file
1
.tmp/window_state.config.json
Normal file
@ -0,0 +1 @@
|
|||||||
|
{"height":500,"maxHeight":-1,"maxWidth":-1,"maximize":false,"minHeight":200,"minWidth":400,"resizable":true,"width":800,"x":781,"y":427}
|
21
LICENSE
Normal file
21
LICENSE
Normal file
@ -0,0 +1,21 @@
|
|||||||
|
MIT License
|
||||||
|
|
||||||
|
Copyright (c) 2021 Neutralinojs and contributors
|
||||||
|
|
||||||
|
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
of this software and associated documentation files (the "Software"), to deal
|
||||||
|
in the Software without restriction, including without limitation the rights
|
||||||
|
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
copies of the Software, and to permit persons to whom the Software is
|
||||||
|
furnished to do so, subject to the following conditions:
|
||||||
|
|
||||||
|
The above copyright notice and this permission notice shall be included in all
|
||||||
|
copies or substantial portions of the Software.
|
||||||
|
|
||||||
|
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
SOFTWARE.
|
15
README.md
Normal file
15
README.md
Normal file
@ -0,0 +1,15 @@
|
|||||||
|
# neutralinojs-minimal
|
||||||
|
|
||||||
|
The default template for a Neutralinojs app. It's possible to use your favorite frontend framework by using [these steps](https://neutralino.js.org/docs/getting-started/using-frontend-libraries).
|
||||||
|
|
||||||
|
## Contributors
|
||||||
|
|
||||||
|
[](https://github.com/neutralinojs/neutralinojs-minimal/graphs/contributors)
|
||||||
|
|
||||||
|
## License
|
||||||
|
|
||||||
|
[MIT](LICENSE)
|
||||||
|
|
||||||
|
## Icon credits
|
||||||
|
|
||||||
|
- `trayIcon.png` - Made by [Freepik](https://www.freepik.com) and downloaded from [Flaticon](https://www.flaticon.com)
|
83
neutralino.config.json
Normal file
83
neutralino.config.json
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
{
|
||||||
|
"$schema": "https://raw.githubusercontent.com/neutralinojs/neutralinojs/main/schemas/neutralino.config.schema.json",
|
||||||
|
"applicationId": "js.neutralino.sample",
|
||||||
|
"version": "1.0.0",
|
||||||
|
"defaultMode": "window",
|
||||||
|
"port": 0,
|
||||||
|
"documentRoot": "/resources/",
|
||||||
|
"url": "/",
|
||||||
|
"enableServer": true,
|
||||||
|
"enableNativeAPI": true,
|
||||||
|
"tokenSecurity": "one-time",
|
||||||
|
"logging": {
|
||||||
|
"enabled": true,
|
||||||
|
"writeToLogFile": true
|
||||||
|
},
|
||||||
|
"nativeAllowList": [
|
||||||
|
"app.*",
|
||||||
|
"os.*",
|
||||||
|
"debug.log"
|
||||||
|
],
|
||||||
|
"globalVariables": {
|
||||||
|
"TEST1": "Hello",
|
||||||
|
"TEST2": [
|
||||||
|
2,
|
||||||
|
4,
|
||||||
|
5
|
||||||
|
],
|
||||||
|
"TEST3": {
|
||||||
|
"value1": 10,
|
||||||
|
"value2": {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"modes": {
|
||||||
|
"window": {
|
||||||
|
"title": "clearapp",
|
||||||
|
"width": 800,
|
||||||
|
"height": 500,
|
||||||
|
"minWidth": 400,
|
||||||
|
"minHeight": 200,
|
||||||
|
"center": true,
|
||||||
|
"fullScreen": false,
|
||||||
|
"alwaysOnTop": false,
|
||||||
|
"icon": "/resources/icons/appIcon.png",
|
||||||
|
"enableInspector": true,
|
||||||
|
"borderless": false,
|
||||||
|
"maximize": false,
|
||||||
|
"hidden": false,
|
||||||
|
"resizable": true,
|
||||||
|
"exitProcessOnClose": false
|
||||||
|
},
|
||||||
|
"browser": {
|
||||||
|
"globalVariables": {
|
||||||
|
"TEST": "Test value browser"
|
||||||
|
},
|
||||||
|
"nativeBlockList": [
|
||||||
|
"filesystem.*"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"cloud": {
|
||||||
|
"url": "/resources/#cloud",
|
||||||
|
"nativeAllowList": [
|
||||||
|
"app.*"
|
||||||
|
]
|
||||||
|
},
|
||||||
|
"chrome": {
|
||||||
|
"width": 800,
|
||||||
|
"height": 500,
|
||||||
|
"args": "--user-agent=\"Neutralinojs chrome mode\"",
|
||||||
|
"nativeBlockList": [
|
||||||
|
"filesystem.*",
|
||||||
|
"os.*"
|
||||||
|
]
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"cli": {
|
||||||
|
"binaryName": "clearapp",
|
||||||
|
"resourcesPath": "/resources/",
|
||||||
|
"extensionsPath": "/extensions/",
|
||||||
|
"clientLibrary": "/resources/js/neutralino.js",
|
||||||
|
"binaryVersion": "5.1.0",
|
||||||
|
"clientVersion": "5.1.0"
|
||||||
|
}
|
||||||
|
}
|
BIN
resources/icons/appIcon.png
Normal file
BIN
resources/icons/appIcon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 16 KiB |
BIN
resources/icons/logo.gif
Normal file
BIN
resources/icons/logo.gif
Normal file
Binary file not shown.
After Width: | Height: | Size: 232 KiB |
BIN
resources/icons/trayIcon.png
Normal file
BIN
resources/icons/trayIcon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 965 B |
27
resources/index.html
Normal file
27
resources/index.html
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
<!DOCTYPE html>
|
||||||
|
<html>
|
||||||
|
<head>
|
||||||
|
<meta charset="UTF-8">
|
||||||
|
<title>NeutralinoJs sample app</title>
|
||||||
|
<link rel="stylesheet" href="styles.css">
|
||||||
|
</head>
|
||||||
|
<body>
|
||||||
|
<div id="neutralinoapp">
|
||||||
|
<h1>NeutralinoJs</h1>
|
||||||
|
<div id="info"></div>
|
||||||
|
<br/>
|
||||||
|
<img src="./icons/logo.gif" alt="Neutralinojs" />
|
||||||
|
<div>
|
||||||
|
<a href="#" onclick="openDocs();">Docs</a> ·
|
||||||
|
<a href="#" onclick="openTutorial();">Video tutorial</a>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<!-- Neutralino.js client. This file is gitignored,
|
||||||
|
because `neu update` typically downloads it.
|
||||||
|
Avoid copy-pasting it.
|
||||||
|
-->
|
||||||
|
<script src="js/neutralino.js"></script>
|
||||||
|
<!-- Your app's source files -->
|
||||||
|
<script src="js/main.js"></script>
|
||||||
|
</body>
|
||||||
|
</html>
|
99
resources/js/main.js
Normal file
99
resources/js/main.js
Normal file
@ -0,0 +1,99 @@
|
|||||||
|
// This is just a sample app. You can structure your Neutralinojs app code as you wish.
|
||||||
|
// This example app is written with vanilla JavaScript and HTML.
|
||||||
|
// Feel free to use any frontend framework you like :)
|
||||||
|
// See more details: https://neutralino.js.org/docs/how-to/use-a-frontend-library
|
||||||
|
|
||||||
|
/*
|
||||||
|
Function to display information about the Neutralino app.
|
||||||
|
This function updates the content of the 'info' element in the HTML
|
||||||
|
with details regarding the running Neutralino application, including
|
||||||
|
its ID, port, operating system, and version information.
|
||||||
|
*/
|
||||||
|
function showInfo() {
|
||||||
|
document.getElementById('info').innerHTML = `
|
||||||
|
${NL_APPID} is running on port ${NL_PORT} inside ${NL_OS}
|
||||||
|
<br/><br/>
|
||||||
|
<span>server: v${NL_VERSION} . client: v${NL_CVERSION}</span>
|
||||||
|
`;
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Function to open the official Neutralino documentation in the default web browser.
|
||||||
|
*/
|
||||||
|
function openDocs() {
|
||||||
|
Neutralino.os.open("https://neutralino.js.org/docs");
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Function to open a tutorial video on Neutralino's official YouTube channel in the default web browser.
|
||||||
|
*/
|
||||||
|
function openTutorial() {
|
||||||
|
Neutralino.os.open("https://www.youtube.com/c/CodeZri");
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Function to set up a system tray menu with options specific to the window mode.
|
||||||
|
This function checks if the application is running in window mode, and if so,
|
||||||
|
it defines the tray menu items and sets up the tray accordingly.
|
||||||
|
*/
|
||||||
|
function setTray() {
|
||||||
|
// Tray menu is only available in window mode
|
||||||
|
if(NL_MODE != "window") {
|
||||||
|
console.log("INFO: Tray menu is only available in the window mode.");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Define tray menu items
|
||||||
|
let tray = {
|
||||||
|
icon: "/resources/icons/trayIcon.png",
|
||||||
|
menuItems: [
|
||||||
|
{id: "VERSION", text: "Get version"},
|
||||||
|
{id: "SEP", text: "-"},
|
||||||
|
{id: "QUIT", text: "Quit"}
|
||||||
|
]
|
||||||
|
};
|
||||||
|
|
||||||
|
// Set the tray menu
|
||||||
|
Neutralino.os.setTray(tray);
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Function to handle click events on the tray menu items.
|
||||||
|
This function performs different actions based on the clicked item's ID,
|
||||||
|
such as displaying version information or exiting the application.
|
||||||
|
*/
|
||||||
|
function onTrayMenuItemClicked(event) {
|
||||||
|
switch(event.detail.id) {
|
||||||
|
case "VERSION":
|
||||||
|
// Display version information
|
||||||
|
Neutralino.os.showMessageBox("Version information",
|
||||||
|
`Neutralinojs server: v${NL_VERSION} | Neutralinojs client: v${NL_CVERSION}`);
|
||||||
|
break;
|
||||||
|
case "QUIT":
|
||||||
|
// Exit the application
|
||||||
|
Neutralino.app.exit();
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/*
|
||||||
|
Function to handle the window close event by gracefully exiting the Neutralino application.
|
||||||
|
*/
|
||||||
|
function onWindowClose() {
|
||||||
|
Neutralino.app.exit();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Initialize Neutralino
|
||||||
|
Neutralino.init();
|
||||||
|
|
||||||
|
// Register event listeners
|
||||||
|
Neutralino.events.on("trayMenuItemClicked", onTrayMenuItemClicked);
|
||||||
|
Neutralino.events.on("windowClose", onWindowClose);
|
||||||
|
|
||||||
|
// Conditional initialization: Set up system tray if not running on macOS
|
||||||
|
if(NL_OS != "Darwin") { // TODO: Fix https://github.com/neutralinojs/neutralinojs/issues/615
|
||||||
|
setTray();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Display app information
|
||||||
|
showInfo();
|
746
resources/js/neutralino.d.ts
vendored
Normal file
746
resources/js/neutralino.d.ts
vendored
Normal file
@ -0,0 +1,746 @@
|
|||||||
|
// Type definitions for Neutralino 5.1.0
|
||||||
|
// Project: https://github.com/neutralinojs
|
||||||
|
// Definitions project: https://github.com/neutralinojs/neutralino.js
|
||||||
|
|
||||||
|
declare namespace Neutralino {
|
||||||
|
|
||||||
|
namespace filesystem {
|
||||||
|
interface DirectoryEntry {
|
||||||
|
entry: string;
|
||||||
|
path: string;
|
||||||
|
type: string;
|
||||||
|
}
|
||||||
|
interface FileReaderOptions {
|
||||||
|
pos: number;
|
||||||
|
size: number;
|
||||||
|
}
|
||||||
|
interface DirectoryReaderOptions {
|
||||||
|
recursive: boolean;
|
||||||
|
}
|
||||||
|
interface OpenedFile {
|
||||||
|
id: number;
|
||||||
|
eof: boolean;
|
||||||
|
pos: number;
|
||||||
|
lastRead: number;
|
||||||
|
}
|
||||||
|
interface Stats {
|
||||||
|
size: number;
|
||||||
|
isFile: boolean;
|
||||||
|
isDirectory: boolean;
|
||||||
|
createdAt: number;
|
||||||
|
modifiedAt: number;
|
||||||
|
}
|
||||||
|
interface Watcher {
|
||||||
|
id: number;
|
||||||
|
path: string;
|
||||||
|
}
|
||||||
|
function createDirectory(path: string): Promise<void>;
|
||||||
|
function remove(path: string): Promise<void>;
|
||||||
|
function writeFile(path: string, data: string): Promise<void>;
|
||||||
|
function appendFile(path: string, data: string): Promise<void>;
|
||||||
|
function writeBinaryFile(path: string, data: ArrayBuffer): Promise<void>;
|
||||||
|
function appendBinaryFile(path: string, data: ArrayBuffer): Promise<void>;
|
||||||
|
function readFile(path: string, options?: FileReaderOptions): Promise<string>;
|
||||||
|
function readBinaryFile(path: string, options?: FileReaderOptions): Promise<ArrayBuffer>;
|
||||||
|
function openFile(path: string): Promise<number>;
|
||||||
|
function createWatcher(path: string): Promise<number>;
|
||||||
|
function removeWatcher(id: number): Promise<number>;
|
||||||
|
function getWatchers(): Promise<Watcher[]>;
|
||||||
|
function updateOpenedFile(id: number, event: string, data?: any): Promise<void>;
|
||||||
|
function getOpenedFileInfo(id: number): Promise<OpenedFile>;
|
||||||
|
function readDirectory(path: string, options?: DirectoryReaderOptions): Promise<DirectoryEntry[]>;
|
||||||
|
function copy(source: string, destination: string): Promise<void>;
|
||||||
|
function move(source: string, destination: string): Promise<void>;
|
||||||
|
function getStats(path: string): Promise<Stats>;
|
||||||
|
}
|
||||||
|
namespace os {
|
||||||
|
// debug
|
||||||
|
enum LoggerType {
|
||||||
|
WARNING = "WARNING",
|
||||||
|
ERROR = "ERROR",
|
||||||
|
INFO = "INFO"
|
||||||
|
}
|
||||||
|
// os
|
||||||
|
enum Icon {
|
||||||
|
WARNING = "WARNING",
|
||||||
|
ERROR = "ERROR",
|
||||||
|
INFO = "INFO",
|
||||||
|
QUESTION = "QUESTION"
|
||||||
|
}
|
||||||
|
enum MessageBoxChoice {
|
||||||
|
OK = "OK",
|
||||||
|
OK_CANCEL = "OK_CANCEL",
|
||||||
|
YES_NO = "YES_NO",
|
||||||
|
YES_NO_CANCEL = "YES_NO_CANCEL",
|
||||||
|
RETRY_CANCEL = "RETRY_CANCEL",
|
||||||
|
ABORT_RETRY_IGNORE = "ABORT_RETRY_IGNORE"
|
||||||
|
}
|
||||||
|
//clipboard
|
||||||
|
enum ClipboardFormat {
|
||||||
|
unknown = 0,
|
||||||
|
text = 1,
|
||||||
|
image = 2
|
||||||
|
}
|
||||||
|
// NL_GLOBALS
|
||||||
|
enum Mode {
|
||||||
|
window = 0,
|
||||||
|
browser = 1,
|
||||||
|
cloud = 2,
|
||||||
|
chrome = 3
|
||||||
|
}
|
||||||
|
enum OperatingSystem {
|
||||||
|
Linux = 0,
|
||||||
|
Windows = 1,
|
||||||
|
Darwin = 2,
|
||||||
|
FreeBSD = 3,
|
||||||
|
Unknown = 4
|
||||||
|
}
|
||||||
|
enum Architecture {
|
||||||
|
x64 = 0,
|
||||||
|
arm = 1,
|
||||||
|
itanium = 2,
|
||||||
|
ia32 = 3,
|
||||||
|
unknown = 4
|
||||||
|
}
|
||||||
|
interface ExecCommandOptions {
|
||||||
|
stdIn?: string;
|
||||||
|
background?: boolean;
|
||||||
|
cwd?: string;
|
||||||
|
}
|
||||||
|
interface ExecCommandResult {
|
||||||
|
pid: number;
|
||||||
|
stdOut: string;
|
||||||
|
stdErr: string;
|
||||||
|
exitCode: number;
|
||||||
|
}
|
||||||
|
interface SpawnedProcess {
|
||||||
|
id: number;
|
||||||
|
pid: number;
|
||||||
|
}
|
||||||
|
interface Envs {
|
||||||
|
[key: string]: string;
|
||||||
|
}
|
||||||
|
interface OpenDialogOptions {
|
||||||
|
multiSelections?: boolean;
|
||||||
|
filters?: Filter[];
|
||||||
|
defaultPath?: string;
|
||||||
|
}
|
||||||
|
interface FolderDialogOptions {
|
||||||
|
defaultPath?: string;
|
||||||
|
}
|
||||||
|
interface SaveDialogOptions {
|
||||||
|
forceOverwrite?: boolean;
|
||||||
|
filters?: Filter[];
|
||||||
|
defaultPath?: string;
|
||||||
|
}
|
||||||
|
interface Filter {
|
||||||
|
name: string;
|
||||||
|
extensions: string[];
|
||||||
|
}
|
||||||
|
interface TrayOptions {
|
||||||
|
icon: string;
|
||||||
|
menuItems: TrayMenuItem[];
|
||||||
|
}
|
||||||
|
interface TrayMenuItem {
|
||||||
|
id?: string;
|
||||||
|
text: string;
|
||||||
|
isDisabled?: boolean;
|
||||||
|
isChecked?: boolean;
|
||||||
|
}
|
||||||
|
type KnownPath = "config" | "data" | "cache" | "documents" | "pictures" | "music" | "video" | "downloads" | "savedGames1" | "savedGames2";
|
||||||
|
function execCommand(command: string, options?: ExecCommandOptions): Promise<ExecCommandResult>;
|
||||||
|
function spawnProcess(command: string, cwd?: string): Promise<SpawnedProcess>;
|
||||||
|
function updateSpawnedProcess(id: number, event: string, data?: any): Promise<void>;
|
||||||
|
function getSpawnedProcesses(): Promise<SpawnedProcess[]>;
|
||||||
|
function getEnv(key: string): Promise<string>;
|
||||||
|
function getEnvs(): Promise<Envs>;
|
||||||
|
function showOpenDialog(title?: string, options?: OpenDialogOptions): Promise<string[]>;
|
||||||
|
function showFolderDialog(title?: string, options?: FolderDialogOptions): Promise<string>;
|
||||||
|
function showSaveDialog(title?: string, options?: SaveDialogOptions): Promise<string>;
|
||||||
|
function showNotification(title: string, content: string, icon?: Icon): Promise<void>;
|
||||||
|
function showMessageBox(title: string, content: string, choice?: MessageBoxChoice, icon?: Icon): Promise<string>;
|
||||||
|
function setTray(options: TrayOptions): Promise<void>;
|
||||||
|
function open(url: string): Promise<void>;
|
||||||
|
function getPath(name: KnownPath): Promise<string>;
|
||||||
|
}
|
||||||
|
namespace computer {
|
||||||
|
interface MemoryInfo {
|
||||||
|
physical: {
|
||||||
|
total: number;
|
||||||
|
available: number;
|
||||||
|
};
|
||||||
|
virtual: {
|
||||||
|
total: number;
|
||||||
|
available: number;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
interface KernelInfo {
|
||||||
|
variant: string;
|
||||||
|
version: string;
|
||||||
|
}
|
||||||
|
interface OSInfo {
|
||||||
|
name: string;
|
||||||
|
description: string;
|
||||||
|
version: string;
|
||||||
|
}
|
||||||
|
interface CPUInfo {
|
||||||
|
vendor: string;
|
||||||
|
model: string;
|
||||||
|
frequency: number;
|
||||||
|
architecture: string;
|
||||||
|
logicalThreads: number;
|
||||||
|
physicalCores: number;
|
||||||
|
physicalUnits: number;
|
||||||
|
}
|
||||||
|
interface Display {
|
||||||
|
id: number;
|
||||||
|
resolution: Resolution;
|
||||||
|
dpi: number;
|
||||||
|
bpp: number;
|
||||||
|
refreshRate: number;
|
||||||
|
}
|
||||||
|
interface Resolution {
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
}
|
||||||
|
interface MousePosition {
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
}
|
||||||
|
function getMemoryInfo(): Promise<MemoryInfo>;
|
||||||
|
function getArch(): Promise<string>;
|
||||||
|
function getKernelInfo(): Promise<KernelInfo>;
|
||||||
|
function getOSInfo(): Promise<OSInfo>;
|
||||||
|
function getCPUInfo(): Promise<CPUInfo>;
|
||||||
|
function getDisplays(): Promise<Display[]>;
|
||||||
|
function getMousePosition(): Promise<MousePosition>;
|
||||||
|
}
|
||||||
|
namespace storage {
|
||||||
|
function setData(key: string, data: string): Promise<void>;
|
||||||
|
function getData(key: string): Promise<string>;
|
||||||
|
function getKeys(): Promise<string[]>;
|
||||||
|
}
|
||||||
|
namespace debug {
|
||||||
|
// debug
|
||||||
|
enum LoggerType {
|
||||||
|
WARNING = "WARNING",
|
||||||
|
ERROR = "ERROR",
|
||||||
|
INFO = "INFO"
|
||||||
|
}
|
||||||
|
// os
|
||||||
|
enum Icon {
|
||||||
|
WARNING = "WARNING",
|
||||||
|
ERROR = "ERROR",
|
||||||
|
INFO = "INFO",
|
||||||
|
QUESTION = "QUESTION"
|
||||||
|
}
|
||||||
|
enum MessageBoxChoice {
|
||||||
|
OK = "OK",
|
||||||
|
OK_CANCEL = "OK_CANCEL",
|
||||||
|
YES_NO = "YES_NO",
|
||||||
|
YES_NO_CANCEL = "YES_NO_CANCEL",
|
||||||
|
RETRY_CANCEL = "RETRY_CANCEL",
|
||||||
|
ABORT_RETRY_IGNORE = "ABORT_RETRY_IGNORE"
|
||||||
|
}
|
||||||
|
//clipboard
|
||||||
|
enum ClipboardFormat {
|
||||||
|
unknown = 0,
|
||||||
|
text = 1,
|
||||||
|
image = 2
|
||||||
|
}
|
||||||
|
// NL_GLOBALS
|
||||||
|
enum Mode {
|
||||||
|
window = 0,
|
||||||
|
browser = 1,
|
||||||
|
cloud = 2,
|
||||||
|
chrome = 3
|
||||||
|
}
|
||||||
|
enum OperatingSystem {
|
||||||
|
Linux = 0,
|
||||||
|
Windows = 1,
|
||||||
|
Darwin = 2,
|
||||||
|
FreeBSD = 3,
|
||||||
|
Unknown = 4
|
||||||
|
}
|
||||||
|
enum Architecture {
|
||||||
|
x64 = 0,
|
||||||
|
arm = 1,
|
||||||
|
itanium = 2,
|
||||||
|
ia32 = 3,
|
||||||
|
unknown = 4
|
||||||
|
}
|
||||||
|
function log(message: string, type?: LoggerType): Promise<void>;
|
||||||
|
}
|
||||||
|
namespace app {
|
||||||
|
interface OpenActionOptions {
|
||||||
|
url: string;
|
||||||
|
}
|
||||||
|
interface RestartOptions {
|
||||||
|
args: string;
|
||||||
|
}
|
||||||
|
function exit(code?: number): Promise<void>;
|
||||||
|
function killProcess(): Promise<void>;
|
||||||
|
function restartProcess(options?: RestartOptions): Promise<void>;
|
||||||
|
function getConfig(): Promise<any>;
|
||||||
|
function broadcast(event: string, data?: any): Promise<void>;
|
||||||
|
function readProcessInput(readAll?: boolean): Promise<string>;
|
||||||
|
function writeProcessOutput(data: string): Promise<void>;
|
||||||
|
function writeProcessError(data: string): Promise<void>;
|
||||||
|
}
|
||||||
|
namespace window {
|
||||||
|
interface WindowOptions extends WindowSizeOptions, WindowPosOptions {
|
||||||
|
title?: string;
|
||||||
|
icon?: string;
|
||||||
|
fullScreen?: boolean;
|
||||||
|
alwaysOnTop?: boolean;
|
||||||
|
enableInspector?: boolean;
|
||||||
|
borderless?: boolean;
|
||||||
|
maximize?: boolean;
|
||||||
|
hidden?: boolean;
|
||||||
|
maximizable?: boolean;
|
||||||
|
useSavedState?: boolean;
|
||||||
|
exitProcessOnClose?: boolean;
|
||||||
|
extendUserAgentWith?: string;
|
||||||
|
processArgs?: string;
|
||||||
|
}
|
||||||
|
interface WindowSizeOptions {
|
||||||
|
width?: number;
|
||||||
|
height?: number;
|
||||||
|
minWidth?: number;
|
||||||
|
minHeight?: number;
|
||||||
|
maxWidth?: number;
|
||||||
|
maxHeight?: number;
|
||||||
|
resizable?: boolean;
|
||||||
|
}
|
||||||
|
interface WindowPosOptions {
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
}
|
||||||
|
function setTitle(title: string): Promise<void>;
|
||||||
|
function getTitle(): Promise<string>;
|
||||||
|
function maximize(): Promise<void>;
|
||||||
|
function unmaximize(): Promise<void>;
|
||||||
|
function isMaximized(): Promise<boolean>;
|
||||||
|
function minimize(): Promise<void>;
|
||||||
|
function setFullScreen(): Promise<void>;
|
||||||
|
function exitFullScreen(): Promise<void>;
|
||||||
|
function isFullScreen(): Promise<boolean>;
|
||||||
|
function show(): Promise<void>;
|
||||||
|
function hide(): Promise<void>;
|
||||||
|
function isVisible(): Promise<boolean>;
|
||||||
|
function focus(): Promise<void>;
|
||||||
|
function setIcon(icon: string): Promise<void>;
|
||||||
|
function move(x: number, y: number): Promise<void>;
|
||||||
|
function center(): Promise<void>;
|
||||||
|
function setDraggableRegion(domElementOrId: string | HTMLElement): Promise<void>;
|
||||||
|
function unsetDraggableRegion(domElementOrId: string | HTMLElement): Promise<void>;
|
||||||
|
function setSize(options: WindowSizeOptions): Promise<void>;
|
||||||
|
function getSize(): Promise<WindowSizeOptions>;
|
||||||
|
function getPosition(): Promise<WindowPosOptions>;
|
||||||
|
function setAlwaysOnTop(onTop: boolean): Promise<void>;
|
||||||
|
function create(url: string, options?: WindowOptions): Promise<void>;
|
||||||
|
}
|
||||||
|
namespace events {
|
||||||
|
interface Response {
|
||||||
|
success: boolean;
|
||||||
|
message: string;
|
||||||
|
}
|
||||||
|
type Builtin = "ready" | "trayMenuItemClicked" | "windowClose" | "serverOffline" | "clientConnect" | "clientDisconnect" | "appClientConnect" | "appClientDisconnect" | "extClientConnect" | "extClientDisconnect" | "extensionReady" | "neuDev_reloadApp";
|
||||||
|
function on(event: string, handler: (ev: CustomEvent) => void): Promise<Response>;
|
||||||
|
function off(event: string, handler: (ev: CustomEvent) => void): Promise<Response>;
|
||||||
|
function dispatch(event: string, data?: any): Promise<Response>;
|
||||||
|
function broadcast(event: string, data?: any): Promise<void>;
|
||||||
|
}
|
||||||
|
namespace extensions {
|
||||||
|
interface ExtensionStats {
|
||||||
|
loaded: string[];
|
||||||
|
connected: string[];
|
||||||
|
}
|
||||||
|
function dispatch(extensionId: string, event: string, data?: any): Promise<void>;
|
||||||
|
function broadcast(event: string, data?: any): Promise<void>;
|
||||||
|
function getStats(): Promise<ExtensionStats>;
|
||||||
|
}
|
||||||
|
namespace updater {
|
||||||
|
interface Manifest {
|
||||||
|
applicationId: string;
|
||||||
|
version: string;
|
||||||
|
resourcesURL: string;
|
||||||
|
}
|
||||||
|
function checkForUpdates(url: string): Promise<Manifest>;
|
||||||
|
function install(): Promise<void>;
|
||||||
|
}
|
||||||
|
namespace clipboard {
|
||||||
|
interface ClipboardImage {
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
bpp: number;
|
||||||
|
bpr: number;
|
||||||
|
redMask: number;
|
||||||
|
greenMask: number;
|
||||||
|
blueMask: number;
|
||||||
|
redShift: number;
|
||||||
|
greenShift: number;
|
||||||
|
blueShift: number;
|
||||||
|
data: ArrayBuffer;
|
||||||
|
}
|
||||||
|
// debug
|
||||||
|
enum LoggerType {
|
||||||
|
WARNING = "WARNING",
|
||||||
|
ERROR = "ERROR",
|
||||||
|
INFO = "INFO"
|
||||||
|
}
|
||||||
|
// os
|
||||||
|
enum Icon {
|
||||||
|
WARNING = "WARNING",
|
||||||
|
ERROR = "ERROR",
|
||||||
|
INFO = "INFO",
|
||||||
|
QUESTION = "QUESTION"
|
||||||
|
}
|
||||||
|
enum MessageBoxChoice {
|
||||||
|
OK = "OK",
|
||||||
|
OK_CANCEL = "OK_CANCEL",
|
||||||
|
YES_NO = "YES_NO",
|
||||||
|
YES_NO_CANCEL = "YES_NO_CANCEL",
|
||||||
|
RETRY_CANCEL = "RETRY_CANCEL",
|
||||||
|
ABORT_RETRY_IGNORE = "ABORT_RETRY_IGNORE"
|
||||||
|
}
|
||||||
|
//clipboard
|
||||||
|
enum ClipboardFormat {
|
||||||
|
unknown = 0,
|
||||||
|
text = 1,
|
||||||
|
image = 2
|
||||||
|
}
|
||||||
|
// NL_GLOBALS
|
||||||
|
enum Mode {
|
||||||
|
window = 0,
|
||||||
|
browser = 1,
|
||||||
|
cloud = 2,
|
||||||
|
chrome = 3
|
||||||
|
}
|
||||||
|
enum OperatingSystem {
|
||||||
|
Linux = 0,
|
||||||
|
Windows = 1,
|
||||||
|
Darwin = 2,
|
||||||
|
FreeBSD = 3,
|
||||||
|
Unknown = 4
|
||||||
|
}
|
||||||
|
enum Architecture {
|
||||||
|
x64 = 0,
|
||||||
|
arm = 1,
|
||||||
|
itanium = 2,
|
||||||
|
ia32 = 3,
|
||||||
|
unknown = 4
|
||||||
|
}
|
||||||
|
function getFormat(): Promise<ClipboardFormat>;
|
||||||
|
function readText(): Promise<string>;
|
||||||
|
function readImage(): Promise<ClipboardImage | null>;
|
||||||
|
function writeText(data: string): Promise<void>;
|
||||||
|
function writeImage(image: ClipboardImage): Promise<void>;
|
||||||
|
function clear(): Promise<void>;
|
||||||
|
}
|
||||||
|
namespace custom {
|
||||||
|
function getMethods(): Promise<string[]>;
|
||||||
|
}
|
||||||
|
interface InitOptions {
|
||||||
|
exportCustomMethods?: boolean;
|
||||||
|
}
|
||||||
|
function init(options?: InitOptions): void;
|
||||||
|
type ErrorCode = "NE_FS_DIRCRER" | "NE_FS_RMDIRER" | "NE_FS_FILRDER" | "NE_FS_FILWRER" | "NE_FS_FILRMER" | "NE_FS_NOPATHE" | "NE_FS_COPYFER" | "NE_FS_MOVEFER" | "NE_OS_INVMSGA" | "NE_OS_INVKNPT" | "NE_ST_INVSTKY" | "NE_ST_STKEYWE" | "NE_RT_INVTOKN" | "NE_RT_NATPRME" | "NE_RT_APIPRME" | "NE_RT_NATRTER" | "NE_RT_NATNTIM" | "NE_CL_NSEROFF" | "NE_EX_EXTNOTC" | "NE_UP_CUPDMER" | "NE_UP_CUPDERR" | "NE_UP_UPDNOUF" | "NE_UP_UPDINER";
|
||||||
|
interface Error {
|
||||||
|
code: ErrorCode;
|
||||||
|
message: string;
|
||||||
|
}
|
||||||
|
interface OpenActionOptions {
|
||||||
|
url: string;
|
||||||
|
}
|
||||||
|
interface RestartOptions {
|
||||||
|
args: string;
|
||||||
|
}
|
||||||
|
interface MemoryInfo {
|
||||||
|
physical: {
|
||||||
|
total: number;
|
||||||
|
available: number;
|
||||||
|
};
|
||||||
|
virtual: {
|
||||||
|
total: number;
|
||||||
|
available: number;
|
||||||
|
};
|
||||||
|
}
|
||||||
|
interface KernelInfo {
|
||||||
|
variant: string;
|
||||||
|
version: string;
|
||||||
|
}
|
||||||
|
interface OSInfo {
|
||||||
|
name: string;
|
||||||
|
description: string;
|
||||||
|
version: string;
|
||||||
|
}
|
||||||
|
interface CPUInfo {
|
||||||
|
vendor: string;
|
||||||
|
model: string;
|
||||||
|
frequency: number;
|
||||||
|
architecture: string;
|
||||||
|
logicalThreads: number;
|
||||||
|
physicalCores: number;
|
||||||
|
physicalUnits: number;
|
||||||
|
}
|
||||||
|
interface Display {
|
||||||
|
id: number;
|
||||||
|
resolution: Resolution;
|
||||||
|
dpi: number;
|
||||||
|
bpp: number;
|
||||||
|
refreshRate: number;
|
||||||
|
}
|
||||||
|
interface Resolution {
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
}
|
||||||
|
interface MousePosition {
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
}
|
||||||
|
interface ClipboardImage {
|
||||||
|
width: number;
|
||||||
|
height: number;
|
||||||
|
bpp: number;
|
||||||
|
bpr: number;
|
||||||
|
redMask: number;
|
||||||
|
greenMask: number;
|
||||||
|
blueMask: number;
|
||||||
|
redShift: number;
|
||||||
|
greenShift: number;
|
||||||
|
blueShift: number;
|
||||||
|
data: ArrayBuffer;
|
||||||
|
}
|
||||||
|
interface ExtensionStats {
|
||||||
|
loaded: string[];
|
||||||
|
connected: string[];
|
||||||
|
}
|
||||||
|
interface DirectoryEntry {
|
||||||
|
entry: string;
|
||||||
|
path: string;
|
||||||
|
type: string;
|
||||||
|
}
|
||||||
|
interface FileReaderOptions {
|
||||||
|
pos: number;
|
||||||
|
size: number;
|
||||||
|
}
|
||||||
|
interface DirectoryReaderOptions {
|
||||||
|
recursive: boolean;
|
||||||
|
}
|
||||||
|
interface OpenedFile {
|
||||||
|
id: number;
|
||||||
|
eof: boolean;
|
||||||
|
pos: number;
|
||||||
|
lastRead: number;
|
||||||
|
}
|
||||||
|
interface Stats {
|
||||||
|
size: number;
|
||||||
|
isFile: boolean;
|
||||||
|
isDirectory: boolean;
|
||||||
|
createdAt: number;
|
||||||
|
modifiedAt: number;
|
||||||
|
}
|
||||||
|
interface Watcher {
|
||||||
|
id: number;
|
||||||
|
path: string;
|
||||||
|
}
|
||||||
|
interface ExecCommandOptions {
|
||||||
|
stdIn?: string;
|
||||||
|
background?: boolean;
|
||||||
|
cwd?: string;
|
||||||
|
}
|
||||||
|
interface ExecCommandResult {
|
||||||
|
pid: number;
|
||||||
|
stdOut: string;
|
||||||
|
stdErr: string;
|
||||||
|
exitCode: number;
|
||||||
|
}
|
||||||
|
interface SpawnedProcess {
|
||||||
|
id: number;
|
||||||
|
pid: number;
|
||||||
|
}
|
||||||
|
interface Envs {
|
||||||
|
[key: string]: string;
|
||||||
|
}
|
||||||
|
interface OpenDialogOptions {
|
||||||
|
multiSelections?: boolean;
|
||||||
|
filters?: Filter[];
|
||||||
|
defaultPath?: string;
|
||||||
|
}
|
||||||
|
interface FolderDialogOptions {
|
||||||
|
defaultPath?: string;
|
||||||
|
}
|
||||||
|
interface SaveDialogOptions {
|
||||||
|
forceOverwrite?: boolean;
|
||||||
|
filters?: Filter[];
|
||||||
|
defaultPath?: string;
|
||||||
|
}
|
||||||
|
interface Filter {
|
||||||
|
name: string;
|
||||||
|
extensions: string[];
|
||||||
|
}
|
||||||
|
interface TrayOptions {
|
||||||
|
icon: string;
|
||||||
|
menuItems: TrayMenuItem[];
|
||||||
|
}
|
||||||
|
interface TrayMenuItem {
|
||||||
|
id?: string;
|
||||||
|
text: string;
|
||||||
|
isDisabled?: boolean;
|
||||||
|
isChecked?: boolean;
|
||||||
|
}
|
||||||
|
type KnownPath = "config" | "data" | "cache" | "documents" | "pictures" | "music" | "video" | "downloads" | "savedGames1" | "savedGames2";
|
||||||
|
interface Manifest {
|
||||||
|
applicationId: string;
|
||||||
|
version: string;
|
||||||
|
resourcesURL: string;
|
||||||
|
}
|
||||||
|
interface WindowOptions extends WindowSizeOptions, WindowPosOptions {
|
||||||
|
title?: string;
|
||||||
|
icon?: string;
|
||||||
|
fullScreen?: boolean;
|
||||||
|
alwaysOnTop?: boolean;
|
||||||
|
enableInspector?: boolean;
|
||||||
|
borderless?: boolean;
|
||||||
|
maximize?: boolean;
|
||||||
|
hidden?: boolean;
|
||||||
|
maximizable?: boolean;
|
||||||
|
useSavedState?: boolean;
|
||||||
|
exitProcessOnClose?: boolean;
|
||||||
|
extendUserAgentWith?: string;
|
||||||
|
processArgs?: string;
|
||||||
|
}
|
||||||
|
interface WindowSizeOptions {
|
||||||
|
width?: number;
|
||||||
|
height?: number;
|
||||||
|
minWidth?: number;
|
||||||
|
minHeight?: number;
|
||||||
|
maxWidth?: number;
|
||||||
|
maxHeight?: number;
|
||||||
|
resizable?: boolean;
|
||||||
|
}
|
||||||
|
interface WindowPosOptions {
|
||||||
|
x: number;
|
||||||
|
y: number;
|
||||||
|
}
|
||||||
|
interface Response {
|
||||||
|
success: boolean;
|
||||||
|
message: string;
|
||||||
|
}
|
||||||
|
type Builtin = "ready" | "trayMenuItemClicked" | "windowClose" | "serverOffline" | "clientConnect" | "clientDisconnect" | "appClientConnect" | "appClientDisconnect" | "extClientConnect" | "extClientDisconnect" | "extensionReady" | "neuDev_reloadApp";
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// debug
|
||||||
|
export enum LoggerType {
|
||||||
|
WARNING = 'WARNING',
|
||||||
|
ERROR = 'ERROR',
|
||||||
|
INFO = 'INFO'
|
||||||
|
}
|
||||||
|
|
||||||
|
// os
|
||||||
|
export enum Icon {
|
||||||
|
WARNING = 'WARNING',
|
||||||
|
ERROR = 'ERROR',
|
||||||
|
INFO = 'INFO',
|
||||||
|
QUESTION = 'QUESTION'
|
||||||
|
}
|
||||||
|
|
||||||
|
export enum MessageBoxChoice {
|
||||||
|
OK = 'OK',
|
||||||
|
OK_CANCEL = 'OK_CANCEL',
|
||||||
|
YES_NO = 'YES_NO',
|
||||||
|
YES_NO_CANCEL = 'YES_NO_CANCEL',
|
||||||
|
RETRY_CANCEL = 'RETRY_CANCEL',
|
||||||
|
ABORT_RETRY_IGNORE = 'ABORT_RETRY_IGNORE'
|
||||||
|
}
|
||||||
|
|
||||||
|
//clipboard
|
||||||
|
export enum ClipboardFormat {
|
||||||
|
unknown,
|
||||||
|
text,
|
||||||
|
image
|
||||||
|
}
|
||||||
|
|
||||||
|
// NL_GLOBALS
|
||||||
|
export enum Mode {
|
||||||
|
window,
|
||||||
|
browser,
|
||||||
|
cloud,
|
||||||
|
chrome
|
||||||
|
}
|
||||||
|
|
||||||
|
export enum OperatingSystem {
|
||||||
|
Linux,
|
||||||
|
Windows,
|
||||||
|
Darwin,
|
||||||
|
FreeBSD,
|
||||||
|
Unknown
|
||||||
|
}
|
||||||
|
|
||||||
|
export enum Architecture {
|
||||||
|
x64,
|
||||||
|
arm,
|
||||||
|
itanium,
|
||||||
|
ia32,
|
||||||
|
unknown
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export interface Response {
|
||||||
|
success: boolean;
|
||||||
|
message: string;
|
||||||
|
}
|
||||||
|
|
||||||
|
export type Builtin =
|
||||||
|
'ready' |
|
||||||
|
'trayMenuItemClicked' |
|
||||||
|
'windowClose' |
|
||||||
|
'serverOffline' |
|
||||||
|
'clientConnect' |
|
||||||
|
'clientDisconnect' |
|
||||||
|
'appClientConnect' |
|
||||||
|
'appClientDisconnect' |
|
||||||
|
'extClientConnect' |
|
||||||
|
'extClientDisconnect' |
|
||||||
|
'extensionReady' |
|
||||||
|
'neuDev_reloadApp'
|
||||||
|
|
||||||
|
|
||||||
|
// --- globals ---
|
||||||
|
/** Mode of the application: window, browser, cloud, or chrome */
|
||||||
|
declare const NL_MODE: Mode;
|
||||||
|
/** Application port */
|
||||||
|
declare const NL_PORT: number;
|
||||||
|
/** Command-line arguments */
|
||||||
|
declare const NL_ARGS: string[];
|
||||||
|
/** Basic authentication token */
|
||||||
|
declare const NL_TOKEN: string;
|
||||||
|
/** Neutralinojs client version */
|
||||||
|
declare const NL_CVERSION: string;
|
||||||
|
/** Application identifier */
|
||||||
|
declare const NL_APPID: string;
|
||||||
|
/** Application version */
|
||||||
|
declare const NL_APPVERSION: string;
|
||||||
|
/** Application path */
|
||||||
|
declare const NL_PATH: string;
|
||||||
|
/** Returns true if extensions are enabled */
|
||||||
|
declare const NL_EXTENABLED: boolean;
|
||||||
|
/** Operating system name: Linux, Windows, Darwin, FreeBSD, or Uknown */
|
||||||
|
declare const NL_OS: OperatingSystem;
|
||||||
|
/** CPU architecture: x64, arm, itanium, ia32, or unknown */
|
||||||
|
declare const NL_ARCH: Architecture;
|
||||||
|
/** Neutralinojs server version */
|
||||||
|
declare const NL_VERSION: string;
|
||||||
|
/** Current working directory */
|
||||||
|
declare const NL_CWD: string;
|
||||||
|
/** Identifier of the current process */
|
||||||
|
declare const NL_PID: string;
|
||||||
|
/** Source of application resources: bundle or directory */
|
||||||
|
declare const NL_RESMODE: string;
|
||||||
|
/** Release commit of the client library */
|
||||||
|
declare const NL_CCOMMIT: string;
|
||||||
|
/** An array of custom methods */
|
||||||
|
declare const NL_CMETHODS: string[];
|
||||||
|
|
20
resources/styles.css
Normal file
20
resources/styles.css
Normal file
@ -0,0 +1,20 @@
|
|||||||
|
body {
|
||||||
|
background-color: white;
|
||||||
|
}
|
||||||
|
|
||||||
|
#neutralinoapp {
|
||||||
|
text-align: center;
|
||||||
|
-webkit-user-select: none;
|
||||||
|
user-select: none;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
#neutralinoapp h1{
|
||||||
|
font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
|
||||||
|
font-size: 20px;
|
||||||
|
}
|
||||||
|
|
||||||
|
#neutralinoapp > div {
|
||||||
|
font-size: 16px;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
Loading…
x
Reference in New Issue
Block a user