@ecmaos/types 0.1.1 → 0.1.3
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/.turbo/turbo-build.log +1 -1
- package/CHANGELOG.md +12 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/kernel.d.ts +44 -1
- package/dist/kernel.d.ts.map +1 -1
- package/dist/kernel.js.map +1 -1
- package/dist/modules.d.ts +20 -0
- package/dist/modules.d.ts.map +1 -0
- package/dist/modules.js +2 -0
- package/dist/modules.js.map +1 -0
- package/dist/wasm.d.ts +8 -0
- package/dist/wasm.d.ts.map +1 -1
- package/index.ts +1 -0
- package/kernel.ts +4 -0
- package/modules.ts +12 -0
- package/package.json +3 -2
- package/wasm.ts +7 -1
package/.turbo/turbo-build.log
CHANGED
package/CHANGELOG.md
CHANGED
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
package/dist/index.js
CHANGED
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,cAAc,WAAW,CAAA;AACzB,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,iBAAiB,CAAA;AAC/B,cAAc,WAAW,CAAA;AACzB,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,aAAa,CAAA;AAC3B,cAAc,UAAU,CAAA;AACxB,cAAc,aAAa,CAAA;AAC3B,cAAc,cAAc,CAAA;AAC5B,cAAc,gBAAgB,CAAA;AAC9B,cAAc,eAAe,CAAA;AAC7B,cAAc,cAAc,CAAA;AAC5B,cAAc,YAAY,CAAA;AAC1B,cAAc,cAAc,CAAA;AAC5B,cAAc,eAAe,CAAA;AAC7B,cAAc,YAAY,CAAA;AAC1B,cAAc,WAAW,CAAA;AACzB,cAAc,cAAc,CAAA;AAC5B,cAAc,cAAc,CAAA"}
|
package/dist/kernel.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import type { DeviceDriver } from '@zenfs/core';
|
|
|
6
6
|
import type { InitOptions } from 'i18next';
|
|
7
7
|
import type { Notyf } from 'notyf';
|
|
8
8
|
import type Module from 'node:module';
|
|
9
|
-
import type { Auth, Components, Dom, DomOptions, KernelDevice, EventCallback, Events, Filesystem, FilesystemConfigMounts, FilesystemOptions, I18n, Intervals, Keyboard, Log, LogOptions, Memory, ProcessManager, Protocol, Service, ServiceOptions, Shell, StorageProvider, Terminal, Users, Wasm, Windows, Workers } from './index.ts';
|
|
9
|
+
import type { Auth, Components, Dom, DomOptions, KernelDevice, EventCallback, Events, Filesystem, FilesystemConfigMounts, FilesystemOptions, I18n, Intervals, KernelModules, Keyboard, Log, LogOptions, Memory, ProcessManager, Protocol, Service, ServiceOptions, Shell, StorageProvider, Terminal, Users, Wasm, Windows, Workers } from './index.ts';
|
|
10
10
|
/**
|
|
11
11
|
* @alpha
|
|
12
12
|
* @author Jay Mathis <code@mathis.network> (https://github.com/mathiscode)
|
|
@@ -17,54 +17,97 @@ import type { Auth, Components, Dom, DomOptions, KernelDevice, EventCallback, Ev
|
|
|
17
17
|
*
|
|
18
18
|
*/
|
|
19
19
|
export interface Kernel {
|
|
20
|
+
/** Unique identifier for this kernel instance */
|
|
20
21
|
readonly id: string;
|
|
22
|
+
/** Name of the kernel */
|
|
21
23
|
readonly name: string;
|
|
24
|
+
/** Version string of the kernel */
|
|
22
25
|
readonly version: string;
|
|
26
|
+
/** Current state of the kernel */
|
|
23
27
|
readonly state: KernelState;
|
|
28
|
+
/** Configuration options passed to the kernel */
|
|
24
29
|
readonly options: KernelOptions;
|
|
30
|
+
/** Terminal interface for user interaction */
|
|
25
31
|
readonly terminal: Terminal;
|
|
32
|
+
/** Shell for command interpretation and execution */
|
|
26
33
|
readonly shell: Shell;
|
|
34
|
+
/** Logging system, null if disabled */
|
|
27
35
|
readonly log: Log | null;
|
|
36
|
+
/** Authentication and authorization service */
|
|
28
37
|
readonly auth: Auth;
|
|
38
|
+
/** BIOS module providing low-level functionality */
|
|
29
39
|
bios?: BIOSModule;
|
|
40
|
+
/** Broadcast channel for inter-kernel communication */
|
|
30
41
|
readonly channel: BroadcastChannel;
|
|
42
|
+
/** Web Components manager */
|
|
31
43
|
readonly components: Components;
|
|
44
|
+
/** DOM manipulation service */
|
|
32
45
|
readonly dom: Dom;
|
|
46
|
+
/** Map of registered devices and their drivers */
|
|
33
47
|
readonly devices: Map<string, {
|
|
34
48
|
device: KernelDevice;
|
|
35
49
|
drivers?: DeviceDriver[];
|
|
36
50
|
}>;
|
|
51
|
+
/** Event management system */
|
|
37
52
|
readonly events: Events;
|
|
53
|
+
/** Virtual filesystem */
|
|
38
54
|
readonly filesystem: Filesystem;
|
|
55
|
+
/** Internationalization service */
|
|
39
56
|
readonly i18n: I18n;
|
|
57
|
+
/** Interval management service */
|
|
40
58
|
readonly intervals: Intervals;
|
|
59
|
+
/** Keyboard interface */
|
|
41
60
|
readonly keyboard: Keyboard;
|
|
61
|
+
/** Memory management service */
|
|
42
62
|
readonly memory: Memory;
|
|
63
|
+
/** Module management service */
|
|
64
|
+
readonly modules: KernelModules;
|
|
65
|
+
/** Map of loaded packages */
|
|
43
66
|
readonly packages: Map<string, Module>;
|
|
67
|
+
/** Process management service */
|
|
44
68
|
readonly processes: ProcessManager;
|
|
69
|
+
/** Protocol handler service */
|
|
45
70
|
readonly protocol: Protocol;
|
|
71
|
+
/** Map of available screensavers */
|
|
46
72
|
readonly screensavers: Map<string, {
|
|
47
73
|
default: (options: {
|
|
48
74
|
terminal: Terminal;
|
|
49
75
|
}) => Promise<void>;
|
|
50
76
|
exit: () => Promise<void>;
|
|
51
77
|
}>;
|
|
78
|
+
/** Service management system */
|
|
52
79
|
readonly service: Service;
|
|
80
|
+
/** Storage provider interface */
|
|
53
81
|
readonly storage: StorageProvider;
|
|
82
|
+
/** Toast notification service */
|
|
54
83
|
readonly toast: Notyf;
|
|
84
|
+
/** User management service */
|
|
55
85
|
readonly users: Users;
|
|
86
|
+
/** WebAssembly service */
|
|
56
87
|
readonly wasm: Wasm;
|
|
88
|
+
/** Window management service */
|
|
57
89
|
readonly windows: Windows;
|
|
90
|
+
/** Web Worker management service */
|
|
58
91
|
readonly workers: Workers;
|
|
92
|
+
/** Add an event listener */
|
|
59
93
|
addEventListener: (event: KernelEvents, listener: EventCallback) => void;
|
|
94
|
+
/** Remove an event listener */
|
|
60
95
|
removeEventListener: (event: KernelEvents, listener: EventCallback) => void;
|
|
96
|
+
/** Boot the kernel with optional configuration */
|
|
61
97
|
boot(options?: BootOptions): Promise<void>;
|
|
98
|
+
/** Configure kernel options */
|
|
62
99
|
configure(options: KernelOptions): Promise<void>;
|
|
100
|
+
/** Execute a command or program */
|
|
63
101
|
execute(options: KernelExecuteOptions): Promise<number>;
|
|
102
|
+
/** Show a system notification */
|
|
64
103
|
notify(title: string, options?: object): Promise<Notification | void>;
|
|
104
|
+
/** Add an event listener */
|
|
65
105
|
on(event: KernelEvents, listener: EventCallback): void;
|
|
106
|
+
/** Remove an event listener */
|
|
66
107
|
off(event: KernelEvents, listener: EventCallback): void;
|
|
108
|
+
/** Reboot the kernel */
|
|
67
109
|
reboot(): Promise<void>;
|
|
110
|
+
/** Shutdown the kernel */
|
|
68
111
|
shutdown(): Promise<void>;
|
|
69
112
|
}
|
|
70
113
|
/**
|
package/dist/kernel.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../kernel.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAA;AAC9C,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAC1C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAClC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,OAAO,KAAK,EACV,IAAI,EACJ,UAAU,EACV,GAAG,EACH,UAAU,EACV,YAAY,EACZ,aAAa,EACb,MAAM,EACN,UAAU,EACV,sBAAsB,EACtB,iBAAiB,EACjB,IAAI,EACJ,SAAS,EACT,QAAQ,EACR,GAAG,EACH,UAAU,EACV,MAAM,EACN,cAAc,EACd,QAAQ,EACR,OAAO,EACP,cAAc,EACd,KAAK,EACL,eAAe,EACf,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,OAAO,EACP,OAAO,EACR,MAAM,YAAY,CAAA;AAEnB;;;;;;;;GAQG;AACH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAA;
|
|
1
|
+
{"version":3,"file":"kernel.d.ts","sourceRoot":"","sources":["../kernel.ts"],"names":[],"mappings":"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"}
|
package/dist/kernel.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../kernel.ts"],"names":[],"mappings":"AAAA;;GAEG;
|
|
1
|
+
{"version":3,"file":"kernel.js","sourceRoot":"","sources":["../kernel.ts"],"names":[],"mappings":"AAAA;;GAEG;AAyLH;;GAEG;AACH,MAAM,CAAN,IAAY,YAOX;AAPD,WAAY,YAAY;IACtB,oCAAoB,CAAA;IACpB,0CAA0B,CAAA;IAC1B,sCAAsB,CAAA;IACtB,wCAAwB,CAAA;IACxB,4CAA4B,CAAA;IAC5B,wCAAwB,CAAA;AAC1B,CAAC,EAPW,YAAY,KAAZ,YAAY,QAOvB;AAED;;GAEG;AACH,MAAM,CAAN,IAAY,WAKX;AALD,WAAY,WAAW;IACrB,kCAAmB,CAAA;IACnB,8BAAe,CAAA;IACf,kCAAmB,CAAA;IACnB,oCAAqB,CAAA;AACvB,CAAC,EALW,WAAW,KAAX,WAAW,QAKtB"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export type KernelModules = Map<string, KernelModule>;
|
|
2
|
+
export interface KernelModule {
|
|
3
|
+
author: {
|
|
4
|
+
value: string;
|
|
5
|
+
};
|
|
6
|
+
cleanup(): number;
|
|
7
|
+
description: {
|
|
8
|
+
value: string;
|
|
9
|
+
};
|
|
10
|
+
disable(): number;
|
|
11
|
+
enable(): number;
|
|
12
|
+
init(kernelId: string): number;
|
|
13
|
+
name: {
|
|
14
|
+
value: string;
|
|
15
|
+
};
|
|
16
|
+
version: {
|
|
17
|
+
value: string;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=modules.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modules.d.ts","sourceRoot":"","sources":["../modules.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAA;AAErD,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IACzB,OAAO,IAAI,MAAM,CAAA;IACjB,WAAW,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IAC9B,OAAO,IAAI,MAAM,CAAA;IACjB,MAAM,IAAI,MAAM,CAAA;IAChB,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAA;IAC9B,IAAI,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;IACvB,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAC3B"}
|
package/dist/modules.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"modules.js","sourceRoot":"","sources":["../modules.ts"],"names":[],"mappings":""}
|
package/dist/wasm.d.ts
CHANGED
|
@@ -18,5 +18,13 @@ export interface Wasm {
|
|
|
18
18
|
* @param path - Path to the emscripten JS file
|
|
19
19
|
*/
|
|
20
20
|
loadEmscripten(path: string): Promise<void>;
|
|
21
|
+
/**
|
|
22
|
+
* Load a WebAssembly module
|
|
23
|
+
* @param path - Path to the WebAssembly module
|
|
24
|
+
*/
|
|
25
|
+
loadWasm(path: string): Promise<{
|
|
26
|
+
module: WebAssembly.Module;
|
|
27
|
+
instance: WebAssembly.Instance;
|
|
28
|
+
}>;
|
|
21
29
|
}
|
|
22
30
|
//# sourceMappingURL=wasm.d.ts.map
|
package/dist/wasm.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wasm.d.ts","sourceRoot":"","sources":["../wasm.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;
|
|
1
|
+
{"version":3,"file":"wasm.d.ts","sourceRoot":"","sources":["../wasm.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEzC;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAA;CACf;AAED;;GAEG;AACH,MAAM,WAAW,IAAI;IACnB;;;OAGG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAA;IAE3C;;;OAGG;IACH,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,MAAM,EAAE,WAAW,CAAC,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAA;KAAE,CAAC,CAAA;CAChG"}
|
package/index.ts
CHANGED
package/kernel.ts
CHANGED
|
@@ -21,6 +21,7 @@ import type {
|
|
|
21
21
|
FilesystemOptions,
|
|
22
22
|
I18n,
|
|
23
23
|
Intervals,
|
|
24
|
+
KernelModules,
|
|
24
25
|
Keyboard,
|
|
25
26
|
Log,
|
|
26
27
|
LogOptions,
|
|
@@ -110,6 +111,9 @@ export interface Kernel {
|
|
|
110
111
|
/** Memory management service */
|
|
111
112
|
readonly memory: Memory
|
|
112
113
|
|
|
114
|
+
/** Module management service */
|
|
115
|
+
readonly modules: KernelModules
|
|
116
|
+
|
|
113
117
|
/** Map of loaded packages */
|
|
114
118
|
readonly packages: Map<string, Module>
|
|
115
119
|
|
package/modules.ts
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export type KernelModules = Map<string, KernelModule>
|
|
2
|
+
|
|
3
|
+
export interface KernelModule {
|
|
4
|
+
author: { value: string }
|
|
5
|
+
cleanup(): number
|
|
6
|
+
description: { value: string }
|
|
7
|
+
disable(): number
|
|
8
|
+
enable(): number
|
|
9
|
+
init(kernelId: string): number
|
|
10
|
+
name: { value: string }
|
|
11
|
+
version: { value: string }
|
|
12
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@ecmaos/types",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.3",
|
|
4
4
|
"description": "Type definitions for ecmaOS",
|
|
5
5
|
"author": "Jay Mathis",
|
|
6
6
|
"license": "MIT",
|
|
@@ -31,6 +31,7 @@
|
|
|
31
31
|
"access": "public"
|
|
32
32
|
},
|
|
33
33
|
"scripts": {
|
|
34
|
-
"build": "tsc"
|
|
34
|
+
"build": "tsc",
|
|
35
|
+
"dev": "tsc --watch"
|
|
35
36
|
}
|
|
36
37
|
}
|
package/wasm.ts
CHANGED
|
@@ -21,4 +21,10 @@ export interface Wasm {
|
|
|
21
21
|
* @param path - Path to the emscripten JS file
|
|
22
22
|
*/
|
|
23
23
|
loadEmscripten(path: string): Promise<void>
|
|
24
|
-
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Load a WebAssembly module
|
|
27
|
+
* @param path - Path to the WebAssembly module
|
|
28
|
+
*/
|
|
29
|
+
loadWasm(path: string): Promise<{ module: WebAssembly.Module; instance: WebAssembly.Instance }>
|
|
30
|
+
}
|