xypriss 9.7.6 → 9.7.8

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.
Files changed (35) hide show
  1. package/README.md +22 -0
  2. package/dist/cjs/src/plugins/api/PluginAPI.js +136 -81
  3. package/dist/cjs/src/plugins/api/PluginAPI.js.map +1 -1
  4. package/dist/cjs/src/server/FastServer/index.js +4 -4
  5. package/dist/cjs/src/server/FastServer/index.js.map +1 -1
  6. package/dist/cjs/src/server/components/fastapi/console/ConsoleInterceptor.js +365 -14
  7. package/dist/cjs/src/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -1
  8. package/dist/cjs/src/server/components/fastapi/console/types.js +6 -0
  9. package/dist/cjs/src/server/components/fastapi/console/types.js.map +1 -1
  10. package/dist/cjs/src/server/core/XyLifecycleManager.js +4 -1
  11. package/dist/cjs/src/server/core/XyLifecycleManager.js.map +1 -1
  12. package/dist/cjs/src/server/utils/internalFlagsFunctions.js +26 -10
  13. package/dist/cjs/src/server/utils/internalFlagsFunctions.js.map +1 -1
  14. package/dist/cjs/src/xhsc/OSApi.js +4 -0
  15. package/dist/cjs/src/xhsc/OSApi.js.map +1 -1
  16. package/dist/cjs/src/xhsc/fs/FSExtended.js +13 -0
  17. package/dist/cjs/src/xhsc/fs/FSExtended.js.map +1 -1
  18. package/dist/esm/src/plugins/api/PluginAPI.js +136 -81
  19. package/dist/esm/src/plugins/api/PluginAPI.js.map +1 -1
  20. package/dist/esm/src/server/FastServer/index.js +4 -4
  21. package/dist/esm/src/server/FastServer/index.js.map +1 -1
  22. package/dist/esm/src/server/components/fastapi/console/ConsoleInterceptor.js +365 -14
  23. package/dist/esm/src/server/components/fastapi/console/ConsoleInterceptor.js.map +1 -1
  24. package/dist/esm/src/server/components/fastapi/console/types.js +6 -0
  25. package/dist/esm/src/server/components/fastapi/console/types.js.map +1 -1
  26. package/dist/esm/src/server/core/XyLifecycleManager.js +4 -1
  27. package/dist/esm/src/server/core/XyLifecycleManager.js.map +1 -1
  28. package/dist/esm/src/server/utils/internalFlagsFunctions.js +26 -10
  29. package/dist/esm/src/server/utils/internalFlagsFunctions.js.map +1 -1
  30. package/dist/esm/src/xhsc/OSApi.js +4 -0
  31. package/dist/esm/src/xhsc/OSApi.js.map +1 -1
  32. package/dist/esm/src/xhsc/fs/FSExtended.js +13 -0
  33. package/dist/esm/src/xhsc/fs/FSExtended.js.map +1 -1
  34. package/dist/index.d.ts +122 -40
  35. package/package.json +74 -74
package/README.md CHANGED
@@ -95,6 +95,28 @@ xfpm install xypriss-security
95
95
 
96
96
  ---
97
97
 
98
+ ## Requirements
99
+
100
+ Before running a XyPriss project, make sure the following two tools are installed on your system. They are **mandatory** — using another package manager (npm, yarn, pnpm, etc.) or JavaScript runtime will break the framework's security chain and native integration.
101
+
102
+ | Requirement | Purpose | Install |
103
+ | ----------- | ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------- |
104
+ | **XFPM** | Package manager for the XyPriss ecosystem. Only manager supported for install/run/build. | [Installation Guide](https://xypriss.nehonix.com/docs/installation) |
105
+ | **Bun** | JavaScript runtime used to execute XyPriss projects and scripts. | [bun.sh](https://bun.sh) |
106
+
107
+ ```bash
108
+ # Install Bun (if not already installed)
109
+ curl -fsSL https://bun.sh/install | bash
110
+
111
+ # Install XFPM
112
+ curl -sL https://xypriss.nehonix.com/install.js | node
113
+ ```
114
+
115
+ > [!CAUTION]
116
+ > Using `npm run`, `node`, or another runtime to start a XyPriss server is not supported and will produce undefined behavior. Always use `xfpm run` or `bun` to execute scripts and entry points.
117
+
118
+ ---
119
+
98
120
  ## Quick Start
99
121
 
100
122
  ### Using CLI
@@ -4,35 +4,68 @@
4
4
  * Plugin API
5
5
  * Public API for plugin management as documented in PLUGIN_SYSTEM_GUIDE.md
6
6
  */
7
+ // ─── Internal State ──────────────────────────────────────────────────────────
8
+ // ─── Blocked / Private members ───────────────────────────────────────────────
7
9
  /**
8
- * Global plugin manager instance
9
- * This will be set by the server when it's created
10
+ * Methods that must never be accessible from outside the module.
11
+ * The Proxy intercepts any access to these keys and throws immediately.
10
12
  */
11
- /**
12
- * Plugin API
13
- * Provides imperative methods for plugin management
14
- */
15
- const Plugin = {
13
+ const PRIVATE_MEMBERS = new Set(["register"]);
14
+ // ─── Internal helpers ─────────────────────────────────────────────────────────
15
+ function assertNonEmptyString(value, errorMessage) {
16
+ if (typeof value !== "string" || !value.trim()) {
17
+ throw new Error(errorMessage);
18
+ }
19
+ }
20
+ function resolvePluginRoot(rootOrSys) {
21
+ const root = typeof rootOrSys === "string" ? rootOrSys : rootOrSys?.__root__;
22
+ if (!root || typeof root !== "string" || !root.trim()) {
23
+ throw new Error("XyPriss Security Error: The provided root or '__sys__' instance is invalid or lacks a captured project root.");
24
+ }
25
+ return root;
26
+ }
27
+ // ─── PluginAPI class ─────────────────────────────────────────────────────────
28
+ class PluginAPI {
16
29
  /**
17
- * Register a plugin imperatively
18
- * @param plugin - Plugin instance or creator function
19
- * @param config - Optional configuration
30
+ * Reads and returns the project manifest (`package.json`) associated with the provided system core.
31
+ *
32
+ * This method is cryptographically and logically bound to the system instance to ensure
33
+ * that plugins only access the metadata of their authorized environment.
34
+ *
35
+ * @template T - The expected structure of the manifest file.
36
+ * @param sys - The XyPriss Hyper-System Core (`__sys__`) instance.
37
+ * @returns The parsed JSON content of the `package.json` file.
38
+ * @throws {Error} If the system instance is invalid, lacks a root path, or the manifest cannot be read.
20
39
  *
21
40
  * @example
22
41
  * ```typescript
23
- * Plugin.register({
24
- * name: "my-plugin",
25
- * version: "1.0.0",
26
- * onServerStart: () => console.log("Started!")
27
- * });
42
+ * const pkg = Plugin.manifest<MyPackageJson>(__sys__);
43
+ * console.log(`Running in ${pkg.name}@${pkg.version}`);
28
44
  * ```
29
45
  */
46
+ manifest(sys) {
47
+ if (!sys || !sys.__root__) {
48
+ throw new Error("XyPriss Security Error: The provided system core instance is invalid or lacks an authorized project root association.");
49
+ }
50
+ const manifestPath = sys.fs.join(sys.__root__, "package.json");
51
+ if (!sys.path.exists(manifestPath)) {
52
+ throw new Error(`XyPriss I/O Error: Unable to access project manifest at "${manifestPath}". Verify that the file exists and is readable.`);
53
+ }
54
+ try {
55
+ return sys.fs.readJsonSync(manifestPath);
56
+ }
57
+ catch (err) {
58
+ throw new Error(`XyPriss I/O Error: Unable to access project manifest at "${manifestPath}". Verify that the file exists and is readable.`);
59
+ }
60
+ }
61
+ /**
62
+ * @private — Internal registration. Never call this directly.
63
+ * Use `exec()` instead.
64
+ */
30
65
  register(plugin, config) {
31
- },
66
+ }
32
67
  /**
33
- * Register a plugin imperatively - alias for register
34
- * @param plugin - Plugin instance or creator function
35
- * @param config - Optional configuration
68
+ * Register a plugin the sole public entry point for plugin registration.
36
69
  *
37
70
  * @example
38
71
  * ```typescript
@@ -40,18 +73,16 @@ const Plugin = {
40
73
  * name: "test",
41
74
  * version: "1.0.0",
42
75
  * onServerStart(server) {
43
- * console.log("Server started");
76
+ * console.log("Server started");
44
77
  * },
45
- * });
78
+ * }, __sys__.__root__));
46
79
  * ```
47
80
  */
48
- exec(...p) {
49
- this.register(...p);
50
- },
81
+ exec(plugin, config) {
82
+ this.register(plugin, config);
83
+ }
51
84
  /**
52
- * Get a registered plugin by name
53
- * @param name - Plugin name
54
- * @returns Plugin instance or undefined if not found
85
+ * Get a registered plugin by name.
55
86
  *
56
87
  * @example
57
88
  * ```typescript
@@ -65,101 +96,125 @@ const Plugin = {
65
96
  {
66
97
  throw new Error("Plugin system not initialized. Create a server instance first.");
67
98
  }
68
- },
99
+ }
69
100
  /**
70
- * Create a plugin (helper method)
71
- * This is just a type-safe identity function that helps with TypeScript inference
72
- * @param plugin - Plugin definition
73
- * @returns The same plugin instance
101
+ * Create a type-safe plugin instance with a validated root.
74
102
  *
75
103
  * @example
76
104
  * ```typescript
77
105
  * const myPlugin = Plugin.create({
78
106
  * name: "my-plugin",
79
107
  * version: "1.0.0",
80
- * onServerStart: (server) => {
81
- * console.log("Plugin started!");
82
- * }
83
- * });
108
+ * onServerStart: (server) => console.log("Plugin started!"),
109
+ * }, __sys__.__root__);
84
110
  * ```
85
111
  */
86
112
  create(plugin, Sys) {
87
- if (!Sys) {
88
- throw new Error("XyPriss Initialization Error: To create a plugin, you MUST provide the plugin's root path or its '__sys__' instance as the second argument to Plugin.create().\n" +
89
- "Example: return Plugin.create({ ... }, __sys__.__root__);");
90
- }
91
- if (typeof Sys !== "string") {
92
- throw new Error("XyPriss Initialization Error: To create a plugin, you MUST provide the plugin's root path or its '__sys__' instance as the second argument to Plugin.create().\n" +
93
- "Example: return Plugin.create({ ... }, __sys__.__root__);");
94
- }
95
- const pluginRoot = Sys;
96
- if (!pluginRoot) {
97
- throw new Error("XyPriss Security Error: The provided root or '__sys__' instance is invalid or lacks a captured project root.");
98
- }
99
- // Explicitly trust the root provided by the developer
100
- plugin.__root__ = pluginRoot;
113
+ assertNonEmptyString(Sys, "XyPriss Initialization Error: To create a plugin, you MUST provide the plugin's root path or its '__sys__' instance as the second argument to Plugin.create().\n" +
114
+ "Example: return Plugin.create({ ... }, __sys__.__root__);");
115
+ plugin.__root__ = Sys;
101
116
  return plugin;
102
- },
117
+ }
118
+ /**
119
+ * Create a typed plugin factory with a pre-assigned root.
120
+ *
121
+ * @example
122
+ * ```typescript
123
+ * const myFactory = Plugin.factory(
124
+ * (config: MyConfig) => ({ name: "my-plugin", version: "1.0.0" }),
125
+ * __sys__.__root__
126
+ * );
127
+ * ```
128
+ */
103
129
  factory(creator, rootOrSys) {
104
130
  if (!rootOrSys) {
105
- throw new Error("XyPriss Initialization Error: Plugin.factory() now requires the plugin's root path or '__sys__' instance as the second argument.");
106
- }
107
- const pluginRoot = typeof rootOrSys === "string" ? rootOrSys : rootOrSys.__root__;
108
- if (!pluginRoot) {
109
- throw new Error("XyPriss Security Error: The provided root or '__sys__' instance is invalid for this factory.");
131
+ throw new Error("XyPriss Initialization Error: Plugin.factory() requires the plugin's root path or '__sys__' instance as the second argument.");
110
132
  }
133
+ const pluginRoot = resolvePluginRoot(rootOrSys);
111
134
  return ((config) => {
112
135
  const plugin = creator(config);
113
136
  plugin.__root__ = pluginRoot;
114
137
  return plugin;
115
138
  });
116
- },
139
+ }
117
140
  // /**
118
141
  // * Get statistics for all registered plugins
119
142
  // * Requires MANAGE_PLUGINS permission
120
143
  // */
121
144
  // getStats(): import("../types/PluginTypes").PluginStats[] {
122
- // const manager = getGlobalPluginManager();
145
+ // const manager = globalPluginManager;
123
146
  // if (!manager) return [];
124
147
  // return manager.getPluginStats();
125
- // },
148
+ // }
126
149
  // /**
127
150
  // * Set permission for a plugin hook
128
151
  // * Requires MANAGE_PLUGINS permission
129
152
  // */
130
- // setPermission(
131
- // pluginName: string,
132
- // hookId: string,
133
- // allowed: boolean,
134
- // by?: string
135
- // ): void {
136
- // const manager = getGlobalPluginManager();
137
- // if (manager) {
138
- // manager.setPluginPermission(pluginName, hookId, allowed, by);
139
- // }
140
- // },
153
+ // setPermission(pluginName: string, hookId: string, allowed: boolean, by?: string): void {
154
+ // globalPluginManager?.setPluginPermission(pluginName, hookId, allowed, by);
155
+ // }
141
156
  // /**
142
157
  // * Toggle plugin enabled/disabled state
143
158
  // * Requires MANAGE_PLUGINS permission
144
159
  // */
145
160
  // toggle(pluginName: string, enabled: boolean, by?: string): void {
146
- // const manager = getGlobalPluginManager();
147
- // if (manager) {
148
- // manager.togglePlugin(pluginName, enabled, by);
149
- // }
150
- // },
161
+ // globalPluginManager?.togglePlugin(pluginName, enabled, by);
162
+ // }
151
163
  /**
152
- * Create an empty plugin that does nothing.
153
- * Useful for placeholder plugins or testing.
154
- * @returns A do-nothing plugin instance
164
+ * Create a no-op placeholder plugin.
165
+ * Useful for testing or conditional plugin slots.
155
166
  */
156
167
  void() {
157
168
  return {
158
- name: "void-plugin-" + Math.random().toString(36).substring(7),
169
+ name: `void-plugin-${Math.random().toString(36).slice(2, 9)}`,
159
170
  version: "1.0.0",
160
171
  };
161
- },
162
- };
172
+ }
173
+ }
174
+ // ─── Proxy Shield ─────────────────────────────────────────────────────────────
175
+ /**
176
+ * Wraps the PluginAPI instance in a Proxy that:
177
+ * 1. Blocks direct access to private members (e.g. `register`).
178
+ * 2. Prevents any mutation of the instance from outside.
179
+ * 3. Prevents prototype inspection / tampering.
180
+ */
181
+ function createSecurePluginAPI(instance) {
182
+ return new Proxy(instance, {
183
+ get(target, prop) {
184
+ // Block private members by name
185
+ if (typeof prop === "string" && PRIVATE_MEMBERS.has(prop)) {
186
+ throw new TypeError(`XyPriss Security Error: '${prop}' is a private method and cannot be accessed externally.`);
187
+ }
188
+ const value = Reflect.get(target, prop, target);
189
+ // Bind methods so `this` always refers to the real instance, not the proxy
190
+ if (typeof value === "function") {
191
+ return value.bind(target);
192
+ }
193
+ return value;
194
+ },
195
+ // Prevent property assignment from outside
196
+ set(_target, prop) {
197
+ throw new TypeError(`XyPriss Security Error: Cannot assign to '${String(prop)}' — the Plugin API is read-only.`);
198
+ },
199
+ // Prevent property deletion
200
+ deleteProperty(_target, prop) {
201
+ throw new TypeError(`XyPriss Security Error: Cannot delete '${String(prop)}' — the Plugin API is immutable.`);
202
+ },
203
+ // Prevent defineProperty overrides
204
+ defineProperty(_target, prop) {
205
+ throw new TypeError(`XyPriss Security Error: Cannot redefine '${String(prop)}' on the Plugin API.`);
206
+ },
207
+ // Prevent prototype chain inspection / hijacking
208
+ getPrototypeOf() {
209
+ return null;
210
+ },
211
+ // Prevent setPrototypeOf
212
+ setPrototypeOf() {
213
+ throw new TypeError("XyPriss Security Error: Cannot modify the prototype of the Plugin API.");
214
+ },
215
+ });
216
+ }
217
+ const Plugin = createSecurePluginAPI(new PluginAPI());
163
218
 
164
219
  exports.Plugin = Plugin;
165
220
  //# sourceMappingURL=PluginAPI.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"PluginAPI.js","sources":["../../../../../src/plugins/api/PluginAPI.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;AAGG;AAQH;;;AAGG;AAqCH;;;AAGG;AACI,MAAM,MAAM,GAAG;AAClB;;;;;;;;;;;;;AAaG;IACH,QAAQ,CAAC,MAAqC,EAAE,MAAY,EAAA;IAU5D,CAAC;AACD;;;;;;;;;;;;;;;AAeG;IACH,IAAI,CAAC,GAAG,CAAmC,EAAA;AACvC,QAAA,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACvB,CAAC;AAED;;;;;;;;;;;;AAYG;AACH,IAAA,GAAG,CAAC,IAAY,EAAA;QAGE;AACV,YAAA,MAAM,IAAI,KAAK,CACX,gEAAgE,CACnE;QACL;IAGJ,CAAC;AAED;;;;;;;;;;;;;;;;AAgBG;IACH,MAAM,CAAC,MAAqB,EAAE,GAAW,EAAA;QACrC,IAAI,CAAC,GAAG,EAAE;YACN,MAAM,IAAI,KAAK,CACX,kKAAkK;AAC9J,gBAAA,2DAA2D,CAClE;QACL;AAEA,QAAA,IAAI,OAAO,GAAG,KAAK,QAAQ,EAAE;YACzB,MAAM,IAAI,KAAK,CACX,kKAAkK;AAC9J,gBAAA,2DAA2D,CAClE;QACL;QACA,MAAM,UAAU,GAAG,GAAG;QAEtB,IAAI,CAAC,UAAU,EAAE;AACb,YAAA,MAAM,IAAI,KAAK,CACX,8GAA8G,CACjH;QACL;;AAGA,QAAA,MAAM,CAAC,QAAQ,GAAG,UAAU;AAE5B,QAAA,OAAO,MAAM;IACjB,CAAC;IAED,OAAO,CACH,OAA2C,EAC3C,SAAc,EAAA;QAEd,IAAI,CAAC,SAAS,EAAE;AACZ,YAAA,MAAM,IAAI,KAAK,CACX,kIAAkI,CACrI;QACL;AAEA,QAAA,MAAM,UAAU,GACZ,OAAO,SAAS,KAAK,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAC,QAAQ;QAElE,IAAI,CAAC,UAAU,EAAE;AACb,YAAA,MAAM,IAAI,KAAK,CACX,8FAA8F,CACjG;QACL;AAEA,QAAA,QAAQ,CAAC,MAAe,KAAI;AACxB,YAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;AAC9B,YAAA,MAAM,CAAC,QAAQ,GAAG,UAAU;AAC5B,YAAA,OAAO,MAAM;AACjB,QAAA,CAAC;IACL,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsCD;;;;AAIG;IACH,IAAI,GAAA;QACA,OAAO;AACH,YAAA,IAAI,EAAE,cAAc,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;AAC9D,YAAA,OAAO,EAAE,OAAO;SACnB;IACL,CAAC;;;;;"}
1
+ {"version":3,"file":"PluginAPI.js","sources":["../../../../../src/plugins/api/PluginAPI.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;AAGG;AAMH;AASA;AAEA;;;AAGG;AACH,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS,CAAC,UAAU,CAAC,CAAC;AAErD;AAEA,SAAS,oBAAoB,CACzB,KAAc,EACd,YAAoB,EAAA;IAEpB,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE;AAC5C,QAAA,MAAM,IAAI,KAAK,CAAC,YAAY,CAAC;IACjC;AACJ;AAEA,SAAS,iBAAiB,CAAC,SAAwC,EAAA;AAC/D,IAAA,MAAM,IAAI,GACN,OAAO,SAAS,KAAK,QAAQ,GAAG,SAAS,GAAG,SAAS,EAAE,QAAQ;AACnE,IAAA,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE;AACnD,QAAA,MAAM,IAAI,KAAK,CACX,8GAA8G,CACjH;IACL;AACA,IAAA,OAAO,IAAI;AACf;AA4BA;AAEA,MAAM,SAAS,CAAA;AACX;;;;;;;;;;;;;;;;AAgBG;AACI,IAAA,QAAQ,CAAI,GAAgB,EAAA;QAC/B,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE;AACvB,YAAA,MAAM,IAAI,KAAK,CACX,uHAAuH,CAC1H;QACL;AAEA,QAAA,MAAM,YAAY,GAAG,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,cAAc,CAAC;QAC9D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE;AAChC,YAAA,MAAM,IAAI,KAAK,CACX,4DAA4D,YAAY,CAAA,+CAAA,CAAiD,CAC5H;QACL;AACA,QAAA,IAAI;YACA,OAAO,GAAG,CAAC,EAAE,CAAC,YAAY,CAAC,YAAY,CAAM;QACjD;QAAE,OAAO,GAAG,EAAE;AACV,YAAA,MAAM,IAAI,KAAK,CACX,4DAA4D,YAAY,CAAA,+CAAA,CAAiD,CAC5H;QACL;IACJ;AAEA;;;AAGG;IACK,QAAQ,CACZ,MAAqC,EACrC,MAAY,EAAA;IAShB;AAEA;;;;;;;;;;;;;AAaG;IACH,IAAI,CAAC,MAAqC,EAAE,MAAY,EAAA;AACpD,QAAA,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACjC;AAEA;;;;;;;;;;AAUG;AACH,IAAA,GAAG,CAAC,IAAY,EAAA;QASE;AACV,YAAA,MAAM,IAAI,KAAK,CACX,gEAAgE,CACnE;QACL;IAYJ;AAEA;;;;;;;;;;;AAWG;IACH,MAAM,CAAC,MAAqB,EAAE,GAAW,EAAA;QACrC,oBAAoB,CAChB,GAAG,EACH,kKAAkK;AAC9J,YAAA,2DAA2D,CAClE;AAED,QAAA,MAAM,CAAC,QAAQ,GAAG,GAAG;AACrB,QAAA,OAAO,MAAM;IACjB;AAEA;;;;;;;;;;AAUG;IACH,OAAO,CACH,OAA2C,EAC3C,SAAwC,EAAA;QAExC,IAAI,CAAC,SAAS,EAAE;AACZ,YAAA,MAAM,IAAI,KAAK,CACX,8HAA8H,CACjI;QACL;AAEA,QAAA,MAAM,UAAU,GAAG,iBAAiB,CAAC,SAAS,CAAC;AAE/C,QAAA,QAAQ,CAAC,MAAe,KAAI;AACxB,YAAA,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;AAC9B,YAAA,MAAM,CAAC,QAAQ,GAAG,UAAU;AAC5B,YAAA,OAAO,MAAM;AACjB,QAAA,CAAC;IACL;;;;;;;;;;;;;;;;;;;;;;;;AA4BA;;;AAGG;IACH,IAAI,GAAA;QACA,OAAO;AACH,YAAA,IAAI,EAAE,CAAA,YAAA,EAAe,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAA,CAAE;AAC7D,YAAA,OAAO,EAAE,OAAO;SACnB;IACL;AACH;AAED;AAEA;;;;;AAKG;AACH,SAAS,qBAAqB,CAC1B,QAAmB,EAAA;AAEnB,IAAA,OAAO,IAAI,KAAK,CAAC,QAAQ,EAAE;QACvB,GAAG,CAAC,MAAM,EAAE,IAAqB,EAAA;;AAE7B,YAAA,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;AACvD,gBAAA,MAAM,IAAI,SAAS,CACf,4BAA4B,IAAI,CAAA,wDAAA,CAA0D,CAC7F;YACL;AAEA,YAAA,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC;;AAG/C,YAAA,IAAI,OAAO,KAAK,KAAK,UAAU,EAAE;AAC7B,gBAAA,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC;YAC7B;AAEA,YAAA,OAAO,KAAK;QAChB,CAAC;;QAGD,GAAG,CAAC,OAAO,EAAE,IAAqB,EAAA;YAC9B,MAAM,IAAI,SAAS,CACf,CAAA,0CAAA,EAA6C,MAAM,CAAC,IAAI,CAAC,CAAA,gCAAA,CAAkC,CAC9F;QACL,CAAC;;QAGD,cAAc,CAAC,OAAO,EAAE,IAAqB,EAAA;YACzC,MAAM,IAAI,SAAS,CACf,CAAA,uCAAA,EAA0C,MAAM,CAAC,IAAI,CAAC,CAAA,gCAAA,CAAkC,CAC3F;QACL,CAAC;;QAGD,cAAc,CAAC,OAAO,EAAE,IAAqB,EAAA;YACzC,MAAM,IAAI,SAAS,CACf,CAAA,yCAAA,EAA4C,MAAM,CAAC,IAAI,CAAC,CAAA,oBAAA,CAAsB,CACjF;QACL,CAAC;;QAGD,cAAc,GAAA;AACV,YAAA,OAAO,IAAI;QACf,CAAC;;QAGD,cAAc,GAAA;AACV,YAAA,MAAM,IAAI,SAAS,CACf,wEAAwE,CAC3E;QACL,CAAC;AACJ,KAAA,CAA0C;AAC/C;AAEO,MAAM,MAAM,GAAG,qBAAqB,CAAC,IAAI,SAAS,EAAE;;;;"}
@@ -32,16 +32,16 @@ class XyPrissServer {
32
32
  this.logger = Logger.initializeLogger(this.options.logging).child("server", {
33
33
  instanceName: instanceName,
34
34
  });
35
- if (!this.options.isAuxiliary) {
36
- this.logger.startup("server", `Creating XyPriss Server for '${instanceName}'...`);
37
- }
38
35
  if (this.options.logging?.consoleInterception?.enabled) {
39
- this.consoleInterceptor = new ConsoleInterceptor.ConsoleInterceptor(this.logger, this.options.logging);
36
+ this.consoleInterceptor = ConsoleInterceptor.ConsoleInterceptor.getInstance(this.logger);
40
37
  this.consoleInterceptor.start().catch((err) => {
41
38
  this.logger.error("server", `Failed to start console interceptor: ${err.message}`);
42
39
  });
43
40
  this.logger.debug("server", "Console interceptor initialization triggered");
44
41
  }
42
+ if (!this.options.isAuxiliary) {
43
+ this.logger.startup("server", `Creating XyPriss Server for '${instanceName}'...`);
44
+ }
45
45
  this.app = new XyprissApp.XyprissApp(this.logger, this.options);
46
46
  this.app.logger = this.logger;
47
47
  this.app.server = this;
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../../src/server/FastServer/index.ts"],"sourcesContent":[null],"names":["Configs","initializeLogger","ConsoleInterceptor","XyprissApp","XyRequestManager","MiddlewareManager","ShutdownManager","ComponentManager","UploadManager","LogTracingMethods","SecurityMiddleware","xemsSession","DEFAULT_OPTIONS","ServerPluginManager","Port","generateXUserTmpDir","localSysApi"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../../src/server/FastServer/index.ts"],"sourcesContent":[null],"names":["Configs","initializeLogger","ConsoleInterceptor","XyprissApp","XyRequestManager","MiddlewareManager","ShutdownManager","ComponentManager","UploadManager","LogTracingMethods","SecurityMiddleware","xemsSession","DEFAULT_OPTIONS","ServerPluginManager","Port","generateXUserTmpDir","localSysApi"],"mappings":"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"}