@superdangerous/app-framework 4.9.0

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 (239) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +652 -0
  3. package/dist/api/logsRouter.d.ts +20 -0
  4. package/dist/api/logsRouter.d.ts.map +1 -0
  5. package/dist/api/logsRouter.js +515 -0
  6. package/dist/api/logsRouter.js.map +1 -0
  7. package/dist/cli/dev-server.d.ts +7 -0
  8. package/dist/cli/dev-server.d.ts.map +1 -0
  9. package/dist/cli/dev-server.js +640 -0
  10. package/dist/cli/dev-server.js.map +1 -0
  11. package/dist/cli/index.d.ts +7 -0
  12. package/dist/cli/index.d.ts.map +1 -0
  13. package/dist/cli/index.js +26 -0
  14. package/dist/cli/index.js.map +1 -0
  15. package/dist/core/StandardServer.d.ts +129 -0
  16. package/dist/core/StandardServer.d.ts.map +1 -0
  17. package/dist/core/StandardServer.js +453 -0
  18. package/dist/core/StandardServer.js.map +1 -0
  19. package/dist/core/apiResponse.d.ts +69 -0
  20. package/dist/core/apiResponse.d.ts.map +1 -0
  21. package/dist/core/apiResponse.js +127 -0
  22. package/dist/core/apiResponse.js.map +1 -0
  23. package/dist/core/healthCheck.d.ts +160 -0
  24. package/dist/core/healthCheck.d.ts.map +1 -0
  25. package/dist/core/healthCheck.js +398 -0
  26. package/dist/core/healthCheck.js.map +1 -0
  27. package/dist/core/index.d.ts +40 -0
  28. package/dist/core/index.d.ts.map +1 -0
  29. package/dist/core/index.js +40 -0
  30. package/dist/core/index.js.map +1 -0
  31. package/dist/core/logger.d.ts +117 -0
  32. package/dist/core/logger.d.ts.map +1 -0
  33. package/dist/core/logger.js +826 -0
  34. package/dist/core/logger.js.map +1 -0
  35. package/dist/core/portUtils.d.ts +71 -0
  36. package/dist/core/portUtils.d.ts.map +1 -0
  37. package/dist/core/portUtils.js +240 -0
  38. package/dist/core/portUtils.js.map +1 -0
  39. package/dist/core/storageService.d.ts +119 -0
  40. package/dist/core/storageService.d.ts.map +1 -0
  41. package/dist/core/storageService.js +405 -0
  42. package/dist/core/storageService.js.map +1 -0
  43. package/dist/desktop/bundler.d.ts +40 -0
  44. package/dist/desktop/bundler.d.ts.map +1 -0
  45. package/dist/desktop/bundler.js +176 -0
  46. package/dist/desktop/bundler.js.map +1 -0
  47. package/dist/desktop/index.d.ts +25 -0
  48. package/dist/desktop/index.d.ts.map +1 -0
  49. package/dist/desktop/index.js +15 -0
  50. package/dist/desktop/index.js.map +1 -0
  51. package/dist/desktop/native-modules.d.ts +66 -0
  52. package/dist/desktop/native-modules.d.ts.map +1 -0
  53. package/dist/desktop/native-modules.js +200 -0
  54. package/dist/desktop/native-modules.js.map +1 -0
  55. package/dist/index.d.ts +29 -0
  56. package/dist/index.d.ts.map +1 -0
  57. package/dist/index.js +39 -0
  58. package/dist/index.js.map +1 -0
  59. package/dist/logging/LogCategories.d.ts +87 -0
  60. package/dist/logging/LogCategories.d.ts.map +1 -0
  61. package/dist/logging/LogCategories.js +205 -0
  62. package/dist/logging/LogCategories.js.map +1 -0
  63. package/dist/middleware/aiErrorHandler.d.ts +31 -0
  64. package/dist/middleware/aiErrorHandler.d.ts.map +1 -0
  65. package/dist/middleware/aiErrorHandler.js +181 -0
  66. package/dist/middleware/aiErrorHandler.js.map +1 -0
  67. package/dist/middleware/auth.d.ts +101 -0
  68. package/dist/middleware/auth.d.ts.map +1 -0
  69. package/dist/middleware/auth.js +230 -0
  70. package/dist/middleware/auth.js.map +1 -0
  71. package/dist/middleware/cors.d.ts +56 -0
  72. package/dist/middleware/cors.d.ts.map +1 -0
  73. package/dist/middleware/cors.js +123 -0
  74. package/dist/middleware/cors.js.map +1 -0
  75. package/dist/middleware/errorHandler.d.ts +13 -0
  76. package/dist/middleware/errorHandler.d.ts.map +1 -0
  77. package/dist/middleware/errorHandler.js +85 -0
  78. package/dist/middleware/errorHandler.js.map +1 -0
  79. package/dist/middleware/fileUpload.d.ts +62 -0
  80. package/dist/middleware/fileUpload.d.ts.map +1 -0
  81. package/dist/middleware/fileUpload.js +175 -0
  82. package/dist/middleware/fileUpload.js.map +1 -0
  83. package/dist/middleware/health.d.ts +48 -0
  84. package/dist/middleware/health.d.ts.map +1 -0
  85. package/dist/middleware/health.js +143 -0
  86. package/dist/middleware/health.js.map +1 -0
  87. package/dist/middleware/index.d.ts +20 -0
  88. package/dist/middleware/index.d.ts.map +1 -0
  89. package/dist/middleware/index.js +18 -0
  90. package/dist/middleware/index.js.map +1 -0
  91. package/dist/middleware/openapi.d.ts +64 -0
  92. package/dist/middleware/openapi.d.ts.map +1 -0
  93. package/dist/middleware/openapi.js +258 -0
  94. package/dist/middleware/openapi.js.map +1 -0
  95. package/dist/middleware/requestLogging.d.ts +22 -0
  96. package/dist/middleware/requestLogging.d.ts.map +1 -0
  97. package/dist/middleware/requestLogging.js +61 -0
  98. package/dist/middleware/requestLogging.js.map +1 -0
  99. package/dist/middleware/session.d.ts +84 -0
  100. package/dist/middleware/session.d.ts.map +1 -0
  101. package/dist/middleware/session.js +189 -0
  102. package/dist/middleware/session.js.map +1 -0
  103. package/dist/middleware/validation.d.ts +1337 -0
  104. package/dist/middleware/validation.d.ts.map +1 -0
  105. package/dist/middleware/validation.js +483 -0
  106. package/dist/middleware/validation.js.map +1 -0
  107. package/dist/services/aiService.d.ts +180 -0
  108. package/dist/services/aiService.d.ts.map +1 -0
  109. package/dist/services/aiService.js +547 -0
  110. package/dist/services/aiService.js.map +1 -0
  111. package/dist/services/conversationStorage.d.ts +38 -0
  112. package/dist/services/conversationStorage.d.ts.map +1 -0
  113. package/dist/services/conversationStorage.js +158 -0
  114. package/dist/services/conversationStorage.js.map +1 -0
  115. package/dist/services/crossPlatformBuffer.d.ts +84 -0
  116. package/dist/services/crossPlatformBuffer.d.ts.map +1 -0
  117. package/dist/services/crossPlatformBuffer.js +246 -0
  118. package/dist/services/crossPlatformBuffer.js.map +1 -0
  119. package/dist/services/index.d.ts +17 -0
  120. package/dist/services/index.d.ts.map +1 -0
  121. package/dist/services/index.js +18 -0
  122. package/dist/services/index.js.map +1 -0
  123. package/dist/services/networkService.d.ts +81 -0
  124. package/dist/services/networkService.d.ts.map +1 -0
  125. package/dist/services/networkService.js +268 -0
  126. package/dist/services/networkService.js.map +1 -0
  127. package/dist/services/queueService.d.ts +112 -0
  128. package/dist/services/queueService.d.ts.map +1 -0
  129. package/dist/services/queueService.js +338 -0
  130. package/dist/services/queueService.js.map +1 -0
  131. package/dist/services/settingsService.d.ts +135 -0
  132. package/dist/services/settingsService.d.ts.map +1 -0
  133. package/dist/services/settingsService.js +425 -0
  134. package/dist/services/settingsService.js.map +1 -0
  135. package/dist/services/systemMonitor.d.ts +208 -0
  136. package/dist/services/systemMonitor.d.ts.map +1 -0
  137. package/dist/services/systemMonitor.js +693 -0
  138. package/dist/services/systemMonitor.js.map +1 -0
  139. package/dist/services/updateService.d.ts +78 -0
  140. package/dist/services/updateService.d.ts.map +1 -0
  141. package/dist/services/updateService.js +252 -0
  142. package/dist/services/updateService.js.map +1 -0
  143. package/dist/services/websocketEvents.d.ts +372 -0
  144. package/dist/services/websocketEvents.d.ts.map +1 -0
  145. package/dist/services/websocketEvents.js +338 -0
  146. package/dist/services/websocketEvents.js.map +1 -0
  147. package/dist/services/websocketServer.d.ts +80 -0
  148. package/dist/services/websocketServer.d.ts.map +1 -0
  149. package/dist/services/websocketServer.js +299 -0
  150. package/dist/services/websocketServer.js.map +1 -0
  151. package/dist/settings/SettingsSchema.d.ts +151 -0
  152. package/dist/settings/SettingsSchema.d.ts.map +1 -0
  153. package/dist/settings/SettingsSchema.js +424 -0
  154. package/dist/settings/SettingsSchema.js.map +1 -0
  155. package/dist/testing/TestServer.d.ts +69 -0
  156. package/dist/testing/TestServer.d.ts.map +1 -0
  157. package/dist/testing/TestServer.js +250 -0
  158. package/dist/testing/TestServer.js.map +1 -0
  159. package/dist/types/index.d.ts +137 -0
  160. package/dist/types/index.d.ts.map +1 -0
  161. package/dist/types/index.js +5 -0
  162. package/dist/types/index.js.map +1 -0
  163. package/dist/utils/appPaths.d.ts +74 -0
  164. package/dist/utils/appPaths.d.ts.map +1 -0
  165. package/dist/utils/appPaths.js +162 -0
  166. package/dist/utils/appPaths.js.map +1 -0
  167. package/dist/utils/fs-utils.d.ts +50 -0
  168. package/dist/utils/fs-utils.d.ts.map +1 -0
  169. package/dist/utils/fs-utils.js +114 -0
  170. package/dist/utils/fs-utils.js.map +1 -0
  171. package/dist/utils/index.d.ts +12 -0
  172. package/dist/utils/index.d.ts.map +1 -0
  173. package/dist/utils/index.js +10 -0
  174. package/dist/utils/index.js.map +1 -0
  175. package/dist/utils/standardConfig.d.ts +61 -0
  176. package/dist/utils/standardConfig.d.ts.map +1 -0
  177. package/dist/utils/standardConfig.js +109 -0
  178. package/dist/utils/standardConfig.js.map +1 -0
  179. package/dist/utils/startupBanner.d.ts +34 -0
  180. package/dist/utils/startupBanner.d.ts.map +1 -0
  181. package/dist/utils/startupBanner.js +169 -0
  182. package/dist/utils/startupBanner.js.map +1 -0
  183. package/dist/utils/startupLogger.d.ts +45 -0
  184. package/dist/utils/startupLogger.d.ts.map +1 -0
  185. package/dist/utils/startupLogger.js +200 -0
  186. package/dist/utils/startupLogger.js.map +1 -0
  187. package/package.json +151 -0
  188. package/src/api/logsRouter.ts +600 -0
  189. package/src/cli/dev-server.ts +803 -0
  190. package/src/cli/index.ts +31 -0
  191. package/src/core/StandardServer.ts +587 -0
  192. package/src/core/apiResponse.ts +202 -0
  193. package/src/core/healthCheck.ts +565 -0
  194. package/src/core/index.ts +80 -0
  195. package/src/core/logger.ts +1092 -0
  196. package/src/core/portUtils.ts +319 -0
  197. package/src/core/storageService.ts +595 -0
  198. package/src/desktop/bundler.ts +271 -0
  199. package/src/desktop/index.ts +18 -0
  200. package/src/desktop/native-modules.ts +289 -0
  201. package/src/index.ts +142 -0
  202. package/src/logging/LogCategories.ts +302 -0
  203. package/src/middleware/aiErrorHandler.ts +278 -0
  204. package/src/middleware/auth.ts +329 -0
  205. package/src/middleware/cors.ts +187 -0
  206. package/src/middleware/errorHandler.ts +103 -0
  207. package/src/middleware/fileUpload.ts +252 -0
  208. package/src/middleware/health.ts +206 -0
  209. package/src/middleware/index.ts +71 -0
  210. package/src/middleware/openapi.ts +305 -0
  211. package/src/middleware/requestLogging.ts +92 -0
  212. package/src/middleware/session.ts +238 -0
  213. package/src/middleware/validation.ts +603 -0
  214. package/src/services/aiService.ts +789 -0
  215. package/src/services/conversationStorage.ts +232 -0
  216. package/src/services/crossPlatformBuffer.ts +341 -0
  217. package/src/services/index.ts +47 -0
  218. package/src/services/networkService.ts +351 -0
  219. package/src/services/queueService.ts +446 -0
  220. package/src/services/settingsService.ts +549 -0
  221. package/src/services/systemMonitor.ts +936 -0
  222. package/src/services/updateService.ts +334 -0
  223. package/src/services/websocketEvents.ts +409 -0
  224. package/src/services/websocketServer.ts +394 -0
  225. package/src/settings/SettingsSchema.ts +664 -0
  226. package/src/testing/TestServer.ts +312 -0
  227. package/src/types/index.ts +154 -0
  228. package/src/utils/appPaths.ts +196 -0
  229. package/src/utils/fs-utils.ts +130 -0
  230. package/src/utils/index.ts +15 -0
  231. package/src/utils/standardConfig.ts +178 -0
  232. package/src/utils/startupBanner.ts +287 -0
  233. package/src/utils/startupLogger.ts +268 -0
  234. package/ui/dist/index.d.mts +1221 -0
  235. package/ui/dist/index.d.ts +1221 -0
  236. package/ui/dist/index.js +73 -0
  237. package/ui/dist/index.js.map +1 -0
  238. package/ui/dist/index.mjs +73 -0
  239. package/ui/dist/index.mjs.map +1 -0
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Desktop Module Exports
3
+ * Provides all desktop-related utilities for Electron integration
4
+ */
5
+ export * from "./bundler.js";
6
+ export * from "./native-modules.js";
7
+ import * as bundler from "./bundler.js";
8
+ import * as nativeModules from "./native-modules.js";
9
+ export declare const Desktop: {
10
+ copyNativeModules(config: nativeModules.NativeModuleConfig): Promise<void>;
11
+ rebuildNativeModules(targetDir: string, electronVersion?: string): Promise<void>;
12
+ createNativeModuleLoader(outputPath: string, nativeModules: string[]): Promise<void>;
13
+ isNativeModule(moduleName: string): Promise<boolean>;
14
+ detectNativeModules(projectDir: string): Promise<string[]>;
15
+ bundleWithNativeModules(options: nativeModules.BundleWithNativeModulesOptions): Promise<void>;
16
+ COMMON_NATIVE_MODULES: string[];
17
+ bundleBackend(options: bundler.BundleOptions): Promise<void>;
18
+ bundleDependencies(packageJsonPath: string, outDir: string): Promise<void>;
19
+ default: {
20
+ bundleBackend: typeof bundler.bundleBackend;
21
+ bundleDependencies: typeof bundler.bundleDependencies;
22
+ };
23
+ };
24
+ export default Desktop;
25
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/desktop/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AAGpC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC;AAErD,eAAO,MAAM,OAAO;;;;;;;;;;;;;;CAGnB,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Desktop Module Exports
3
+ * Provides all desktop-related utilities for Electron integration
4
+ */
5
+ export * from "./bundler.js";
6
+ export * from "./native-modules.js";
7
+ // Re-export as namespace for convenience
8
+ import * as bundler from "./bundler.js";
9
+ import * as nativeModules from "./native-modules.js";
10
+ export const Desktop = {
11
+ ...bundler,
12
+ ...nativeModules,
13
+ };
14
+ export default Desktop;
15
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/desktop/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,cAAc,cAAc,CAAC;AAC7B,cAAc,qBAAqB,CAAC;AAEpC,yCAAyC;AACzC,OAAO,KAAK,OAAO,MAAM,cAAc,CAAC;AACxC,OAAO,KAAK,aAAa,MAAM,qBAAqB,CAAC;AAErD,MAAM,CAAC,MAAM,OAAO,GAAG;IACrB,GAAG,OAAO;IACV,GAAG,aAAa;CACjB,CAAC;AAEF,eAAe,OAAO,CAAC"}
@@ -0,0 +1,66 @@
1
+ /**
2
+ * Native Module Handler for Desktop Bundling
3
+ * Manages native Node.js modules that can't be bundled
4
+ */
5
+ export interface NativeModuleConfig {
6
+ /**
7
+ * List of native modules to copy to resources
8
+ */
9
+ modules: string[];
10
+ /**
11
+ * Source node_modules directory
12
+ */
13
+ sourceDir: string;
14
+ /**
15
+ * Target resources directory
16
+ */
17
+ targetDir: string;
18
+ /**
19
+ * Whether to rebuild native modules for target platform
20
+ */
21
+ rebuild?: boolean;
22
+ /**
23
+ * Electron version (if rebuilding for Electron)
24
+ */
25
+ electronVersion?: string;
26
+ }
27
+ /**
28
+ * Default native modules that commonly need special handling
29
+ */
30
+ export declare const COMMON_NATIVE_MODULES: string[];
31
+ /**
32
+ * Copy native modules to resources directory
33
+ */
34
+ export declare function copyNativeModules(config: NativeModuleConfig): Promise<void>;
35
+ /**
36
+ * Rebuild native modules for target platform
37
+ */
38
+ export declare function rebuildNativeModules(targetDir: string, electronVersion?: string): Promise<void>;
39
+ /**
40
+ * Create a loader script that sets up paths for native modules
41
+ */
42
+ export declare function createNativeModuleLoader(outputPath: string, nativeModules: string[]): Promise<void>;
43
+ /**
44
+ * Check if a module is a native module
45
+ */
46
+ export declare function isNativeModule(moduleName: string): Promise<boolean>;
47
+ /**
48
+ * Detect all native modules in a project
49
+ */
50
+ export declare function detectNativeModules(projectDir: string): Promise<string[]>;
51
+ /**
52
+ * Bundle configuration that handles native modules
53
+ */
54
+ export interface BundleWithNativeModulesOptions {
55
+ entryPoint: string;
56
+ outputPath: string;
57
+ nativeModules?: string[];
58
+ autoDetect?: boolean;
59
+ rebuild?: boolean;
60
+ electronVersion?: string;
61
+ }
62
+ /**
63
+ * Create a bundle that properly handles native modules
64
+ */
65
+ export declare function bundleWithNativeModules(options: BundleWithNativeModulesOptions): Promise<void>;
66
+ //# sourceMappingURL=native-modules.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-modules.d.ts","sourceRoot":"","sources":["../../src/desktop/native-modules.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAgBH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,OAAO,EAAE,MAAM,EAAE,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;OAEG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,eAAO,MAAM,qBAAqB,UAWjC,CAAC;AAEF;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,kBAAkB,GACzB,OAAO,CAAC,IAAI,CAAC,CAiBf;AAED;;GAEG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,MAAM,EACjB,eAAe,CAAC,EAAE,MAAM,GACvB,OAAO,CAAC,IAAI,CAAC,CAyBf;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EAAE,GACtB,OAAO,CAAC,IAAI,CAAC,CAqCf;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAkBzE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,MAAM,EAAE,CAAC,CAoCnB;AAED;;GAEG;AACH,MAAM,WAAW,8BAA8B;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,OAAO,EAAE,8BAA8B,GACtC,OAAO,CAAC,IAAI,CAAC,CAyCf"}
@@ -0,0 +1,200 @@
1
+ /**
2
+ * Native Module Handler for Desktop Bundling
3
+ * Manages native Node.js modules that can't be bundled
4
+ */
5
+ import { ensureDir, pathExists, copy, writeFile, readFile, readdir, stat, } from "../utils/fs-utils.js";
6
+ import path from "path";
7
+ import { execSync } from "child_process";
8
+ import { createLogger } from "../core/logger.js";
9
+ const logger = createLogger("native-modules");
10
+ /**
11
+ * Default native modules that commonly need special handling
12
+ */
13
+ export const COMMON_NATIVE_MODULES = [
14
+ "serialport",
15
+ "@serialport/bindings-cpp",
16
+ "node-pty",
17
+ "bcrypt",
18
+ "better-sqlite3",
19
+ "canvas",
20
+ "sharp",
21
+ "fsevents",
22
+ "usb",
23
+ "node-hid",
24
+ ];
25
+ /**
26
+ * Copy native modules to resources directory
27
+ */
28
+ export async function copyNativeModules(config) {
29
+ const { modules, sourceDir, targetDir } = config;
30
+ // Ensure target directory exists
31
+ await ensureDir(path.join(targetDir, "node_modules"));
32
+ for (const moduleName of modules) {
33
+ const sourcePath = path.join(sourceDir, "node_modules", moduleName);
34
+ const targetPath = path.join(targetDir, "node_modules", moduleName);
35
+ if (await pathExists(sourcePath)) {
36
+ logger.info(`📦 Copying native module: ${moduleName}`);
37
+ await copy(sourcePath, targetPath);
38
+ }
39
+ else {
40
+ logger.warn(`⚠️ Native module not found: ${moduleName}`);
41
+ }
42
+ }
43
+ }
44
+ /**
45
+ * Rebuild native modules for target platform
46
+ */
47
+ export async function rebuildNativeModules(targetDir, electronVersion) {
48
+ logger.info("🔨 Rebuilding native modules...");
49
+ const cwd = targetDir;
50
+ if (electronVersion) {
51
+ // Rebuild for Electron
52
+ try {
53
+ execSync(`npx electron-rebuild -v ${electronVersion}`, {
54
+ cwd,
55
+ stdio: "inherit",
56
+ });
57
+ }
58
+ catch (_error) {
59
+ logger.error("Failed to rebuild for Electron:", _error);
60
+ throw _error;
61
+ }
62
+ }
63
+ else {
64
+ // Rebuild for Node.js
65
+ try {
66
+ execSync("npm rebuild", { cwd, stdio: "inherit" });
67
+ }
68
+ catch (_error) {
69
+ logger.error("Failed to rebuild native modules:", _error);
70
+ throw _error;
71
+ }
72
+ }
73
+ }
74
+ /**
75
+ * Create a loader script that sets up paths for native modules
76
+ */
77
+ export async function createNativeModuleLoader(outputPath, nativeModules) {
78
+ const loaderScript = `/**
79
+ * Native Module Loader
80
+ * Sets up require paths for native modules in desktop app
81
+ */
82
+
83
+ const path = require('path');
84
+ const Module = require('module');
85
+
86
+ // Add native modules directory to Node module paths
87
+ const nativeModulesPath = path.join(__dirname, 'node_modules');
88
+ Module.globalPaths.push(nativeModulesPath);
89
+
90
+ // Patch require to handle native modules
91
+ const originalRequire = Module.prototype.require;
92
+ const nativeModules = ${JSON.stringify(nativeModules)};
93
+
94
+ Module.prototype.require = function(id) {
95
+ // Check if this is a native module
96
+ if (nativeModules.includes(id) || nativeModules.some(m => id.startsWith(m + '/'))) {
97
+ try {
98
+ // Try to load from native modules directory
99
+ return originalRequire.apply(this, [path.join(nativeModulesPath, id)]);
100
+ } catch (_error) {
101
+ // Fall back to original require
102
+ return originalRequire.apply(this, arguments);
103
+ }
104
+ }
105
+
106
+ return originalRequire.apply(this, arguments);
107
+ };
108
+
109
+ // Export for use in main bundle
110
+ module.exports = { nativeModulesPath };
111
+ `;
112
+ await writeFile(outputPath, loaderScript, "utf8");
113
+ }
114
+ /**
115
+ * Check if a module is a native module
116
+ */
117
+ export async function isNativeModule(moduleName) {
118
+ try {
119
+ const packageJsonPath = require.resolve(`${moduleName}/package.json`);
120
+ const content = await readFile(packageJsonPath, "utf8");
121
+ const packageJson = JSON.parse(content);
122
+ // Check for common indicators of native modules
123
+ return !!(packageJson.gypfile ||
124
+ packageJson.binary ||
125
+ packageJson.scripts?.install ||
126
+ packageJson.scripts?.postinstall?.includes("node-gyp") ||
127
+ packageJson.dependencies?.["node-addon-api"] ||
128
+ packageJson.dependencies?.["nan"]);
129
+ }
130
+ catch {
131
+ return false;
132
+ }
133
+ }
134
+ /**
135
+ * Detect all native modules in a project
136
+ */
137
+ export async function detectNativeModules(projectDir) {
138
+ const nodeModulesDir = path.join(projectDir, "node_modules");
139
+ const nativeModules = [];
140
+ if (!(await pathExists(nodeModulesDir))) {
141
+ return nativeModules;
142
+ }
143
+ const modules = await readdir(nodeModulesDir);
144
+ for (const moduleName of modules) {
145
+ if (moduleName.startsWith("."))
146
+ continue;
147
+ const modulePath = path.join(nodeModulesDir, moduleName);
148
+ const stats = await stat(modulePath);
149
+ if (stats.isDirectory()) {
150
+ if (moduleName.startsWith("@")) {
151
+ // Scoped package
152
+ const scopedModules = await readdir(modulePath);
153
+ for (const scopedModule of scopedModules) {
154
+ const fullName = `${moduleName}/${scopedModule}`;
155
+ if (await isNativeModule(fullName)) {
156
+ nativeModules.push(fullName);
157
+ }
158
+ }
159
+ }
160
+ else {
161
+ // Regular package
162
+ if (await isNativeModule(moduleName)) {
163
+ nativeModules.push(moduleName);
164
+ }
165
+ }
166
+ }
167
+ }
168
+ return nativeModules;
169
+ }
170
+ /**
171
+ * Create a bundle that properly handles native modules
172
+ */
173
+ export async function bundleWithNativeModules(options) {
174
+ const { entryPoint, outputPath, autoDetect = true, rebuild = false, electronVersion, } = options;
175
+ const projectDir = path.dirname(entryPoint);
176
+ const outputDir = path.dirname(outputPath);
177
+ // Detect or use provided native modules
178
+ let nativeModules = options.nativeModules || [];
179
+ if (autoDetect) {
180
+ const detected = await detectNativeModules(projectDir);
181
+ nativeModules = [...new Set([...nativeModules, ...detected])];
182
+ logger.info(`🔍 Detected native modules: ${nativeModules.join(", ")}`);
183
+ }
184
+ // Copy native modules
185
+ if (nativeModules.length > 0) {
186
+ await copyNativeModules({
187
+ modules: nativeModules,
188
+ sourceDir: projectDir,
189
+ targetDir: outputDir,
190
+ });
191
+ // Create loader script
192
+ await createNativeModuleLoader(path.join(outputDir, "native-loader.js"), nativeModules);
193
+ // Rebuild if requested
194
+ if (rebuild) {
195
+ await rebuildNativeModules(outputDir, electronVersion);
196
+ }
197
+ }
198
+ logger.info("✅ Native modules prepared for bundling");
199
+ }
200
+ //# sourceMappingURL=native-modules.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"native-modules.js","sourceRoot":"","sources":["../../src/desktop/native-modules.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,29 @@
1
+ /**
2
+ * SuperDangerous App Framework
3
+ * Main entry point for the TypeScript framework
4
+ */
5
+ export * from "./core/index.js";
6
+ export { sendSuccess, sendError, sendValidationError, sendNotFound, sendUnauthorized, sendForbidden, sendBadRequest, sendCreated, sendNoContent, asyncHandler, apiErrorHandler, type ApiResponse, type ApiErrorResponse, type ApiSuccessResponse, } from "./core/apiResponse.js";
7
+ export * from "./services/index.js";
8
+ export * from "./middleware/index.js";
9
+ export * from "./middleware/auth.js";
10
+ export { configureSession, sessionUtils, createRedisStore, } from "./middleware/session.js";
11
+ export type { SessionConfig as FrameworkSessionConfig } from "./middleware/session.js";
12
+ export * from "./utils/index.js";
13
+ export { createLogger, type Logger, type LogLevel } from "./core/index.js";
14
+ export { StandardServer, createStandardServer } from "./core/StandardServer.js";
15
+ export type { StandardServerConfig } from "./core/StandardServer.js";
16
+ export { StorageService, getStorageService, SecureFileHandler, getSecureFileHandler, } from "./core/storageService.js";
17
+ export { createWebSocketServer, getWebSocketServer, } from "./services/websocketServer.js";
18
+ export { validate, schemas } from "./middleware/validation.js";
19
+ export { TestServer, createTestServer, setupTestServer, teardownTestServer, getTestServer, } from "./testing/TestServer.js";
20
+ export type { TestServerConfig } from "./testing/TestServer.js";
21
+ export { default as logsRouter } from "./api/logsRouter.js";
22
+ export type { LogEntry as RouterLogEntry, LogFile } from "./api/logsRouter.js";
23
+ export * from "./desktop/index.js";
24
+ export { getSystemMonitor } from "./services/systemMonitor.js";
25
+ export type { SystemHealth, CPUInfo, MemoryInfo, DiskInfo, SystemInfo, ProcessInfo, } from "./services/systemMonitor.js";
26
+ export { createHealthCheckRouter, getHealthCheckService, type SystemHealth as HealthStatus, type SystemMetrics, type HealthCheckOptions, type CustomHealthCheck, type HealthCheckResult, type DependencyHealth, } from "./core/healthCheck.js";
27
+ export { createSettingsSchema, flattenSettings, unflattenSettings, flattenSettingsValues, unflattenSettingsValues, getRestartRequiredSettings, validateSettings, validateSetting, validateAllSettings, getSettingByKey, getDefaultSettingsValues, evaluateFieldVisibility, groupFields, applyToStorageTransform, applyFromStorageTransform, createSettingsFormState, Validators, type SettingsSchema, type SettingsCategory, type SettingDefinition, type SettingOption, type SettingsFormState, type SettingsValidationResult, } from "./settings/SettingsSchema.js";
28
+ export { LogLevels, defaultLogViewerConfig, parseLogEntry, formatLogEntry, calculateLogStats, filterLogEntries, type LogCategory, type LogFilter, type LogViewerConfig, type LogEntry, type LogStats, } from "./logging/LogCategories.js";
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,cAAc,iBAAiB,CAAC;AAEhC,OAAO,EACL,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,WAAW,EACX,aAAa,EACb,YAAY,EACZ,eAAe,EACf,KAAK,WAAW,EAChB,KAAK,gBAAgB,EACrB,KAAK,kBAAkB,GACxB,MAAM,uBAAuB,CAAC;AAG/B,cAAc,qBAAqB,CAAC;AAGpC,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,aAAa,IAAI,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AAGvF,cAAc,kBAAkB,CAAC;AAGjC,OAAO,EAAE,YAAY,EAAE,KAAK,MAAM,EAAE,KAAK,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAChF,YAAY,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAG/D,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,aAAa,GACd,MAAM,yBAAyB,CAAC;AACjC,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAGhE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC5D,YAAY,EAAE,QAAQ,IAAI,cAAc,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAC;AAG/E,cAAc,oBAAoB,CAAC;AAGnC,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAC/D,YAAY,EACV,YAAY,EACZ,OAAO,EACP,UAAU,EACV,QAAQ,EACR,UAAU,EACV,WAAW,GACZ,MAAM,6BAA6B,CAAC;AAGrC,OAAO,EACL,uBAAuB,EACvB,qBAAqB,EACrB,KAAK,YAAY,IAAI,YAAY,EACjC,KAAK,aAAa,EAClB,KAAK,kBAAkB,EACvB,KAAK,iBAAiB,EACtB,KAAK,iBAAiB,EACtB,KAAK,gBAAgB,GACtB,MAAM,uBAAuB,CAAC;AAO/B,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uBAAuB,EACvB,WAAW,EACX,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,UAAU,EACV,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACtB,KAAK,wBAAwB,GAC9B,MAAM,8BAA8B,CAAC;AAGtC,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,gBAAgB,EAChB,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,eAAe,EACpB,KAAK,QAAQ,EACb,KAAK,QAAQ,GACd,MAAM,4BAA4B,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,39 @@
1
+ /**
2
+ * SuperDangerous App Framework
3
+ * Main entry point for the TypeScript framework
4
+ */
5
+ // Core exports
6
+ export * from "./core/index.js";
7
+ // API Response utilities are exported separately to avoid conflicts
8
+ export { sendSuccess, sendError, sendValidationError, sendNotFound, sendUnauthorized, sendForbidden, sendBadRequest, sendCreated, sendNoContent, asyncHandler, apiErrorHandler, } from "./core/apiResponse.js";
9
+ // Service exports
10
+ export * from "./services/index.js";
11
+ // Middleware exports
12
+ export * from "./middleware/index.js";
13
+ export * from "./middleware/auth.js";
14
+ export { configureSession, sessionUtils, createRedisStore, } from "./middleware/session.js";
15
+ // Utility exports
16
+ export * from "./utils/index.js";
17
+ // Re-export commonly used items at top level
18
+ export { createLogger } from "./core/index.js";
19
+ export { StandardServer, createStandardServer } from "./core/StandardServer.js";
20
+ export { StorageService, getStorageService, SecureFileHandler, getSecureFileHandler, } from "./core/storageService.js";
21
+ export { createWebSocketServer, getWebSocketServer, } from "./services/websocketServer.js";
22
+ export { validate, schemas } from "./middleware/validation.js";
23
+ // Testing utilities
24
+ export { TestServer, createTestServer, setupTestServer, teardownTestServer, getTestServer, } from "./testing/TestServer.js";
25
+ // Standardized API routers
26
+ export { default as logsRouter } from "./api/logsRouter.js";
27
+ // Desktop integration exports
28
+ export * from "./desktop/index.js";
29
+ // System monitoring exports
30
+ export { getSystemMonitor } from "./services/systemMonitor.js";
31
+ // Health check exports
32
+ export { createHealthCheckRouter, getHealthCheckService, } from "./core/healthCheck.js";
33
+ // WebSocket Manager exports
34
+ // Configuration management - use SettingsService instead
35
+ // Settings Schema exports - Consolidated implementation
36
+ export { createSettingsSchema, flattenSettings, unflattenSettings, flattenSettingsValues, unflattenSettingsValues, getRestartRequiredSettings, validateSettings, validateSetting, validateAllSettings, getSettingByKey, getDefaultSettingsValues, evaluateFieldVisibility, groupFields, applyToStorageTransform, applyFromStorageTransform, createSettingsFormState, Validators, } from "./settings/SettingsSchema.js";
37
+ // Log Categories exports
38
+ export { LogLevels, defaultLogViewerConfig, parseLogEntry, formatLogEntry, calculateLogStats, filterLogEntries, } from "./logging/LogCategories.js";
39
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,eAAe;AACf,cAAc,iBAAiB,CAAC;AAChC,oEAAoE;AACpE,OAAO,EACL,WAAW,EACX,SAAS,EACT,mBAAmB,EACnB,YAAY,EACZ,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,WAAW,EACX,aAAa,EACb,YAAY,EACZ,eAAe,GAIhB,MAAM,uBAAuB,CAAC;AAE/B,kBAAkB;AAClB,cAAc,qBAAqB,CAAC;AAEpC,qBAAqB;AACrB,cAAc,uBAAuB,CAAC;AACtC,cAAc,sBAAsB,CAAC;AACrC,OAAO,EACL,gBAAgB,EAChB,YAAY,EACZ,gBAAgB,GACjB,MAAM,yBAAyB,CAAC;AAGjC,kBAAkB;AAClB,cAAc,kBAAkB,CAAC;AAEjC,6CAA6C;AAC7C,OAAO,EAAE,YAAY,EAA8B,MAAM,iBAAiB,CAAC;AAC3E,OAAO,EAAE,cAAc,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAEhF,OAAO,EACL,cAAc,EACd,iBAAiB,EACjB,iBAAiB,EACjB,oBAAoB,GACrB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EACL,qBAAqB,EACrB,kBAAkB,GACnB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AAE/D,oBAAoB;AACpB,OAAO,EACL,UAAU,EACV,gBAAgB,EAChB,eAAe,EACf,kBAAkB,EAClB,aAAa,GACd,MAAM,yBAAyB,CAAC;AAGjC,2BAA2B;AAC3B,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAG5D,8BAA8B;AAC9B,cAAc,oBAAoB,CAAC;AAEnC,4BAA4B;AAC5B,OAAO,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AAU/D,uBAAuB;AACvB,OAAO,EACL,uBAAuB,EACvB,qBAAqB,GAOtB,MAAM,uBAAuB,CAAC;AAE/B,4BAA4B;AAE5B,yDAAyD;AAEzD,wDAAwD;AACxD,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,iBAAiB,EACjB,qBAAqB,EACrB,uBAAuB,EACvB,0BAA0B,EAC1B,gBAAgB,EAChB,eAAe,EACf,mBAAmB,EACnB,eAAe,EACf,wBAAwB,EACxB,uBAAuB,EACvB,WAAW,EACX,uBAAuB,EACvB,yBAAyB,EACzB,uBAAuB,EACvB,UAAU,GAOX,MAAM,8BAA8B,CAAC;AAEtC,yBAAyB;AACzB,OAAO,EACL,SAAS,EACT,sBAAsB,EACtB,aAAa,EACb,cAAc,EACd,iBAAiB,EACjB,gBAAgB,GAMjB,MAAM,4BAA4B,CAAC"}
@@ -0,0 +1,87 @@
1
+ /**
2
+ * Log Categories System
3
+ * Provides a declarative way to define log categories with automatic UI generation
4
+ */
5
+ export interface LogLevel {
6
+ name: "error" | "warn" | "info" | "debug" | "verbose";
7
+ color: string;
8
+ badge: string;
9
+ priority: number;
10
+ }
11
+ export declare const LogLevels: Record<string, LogLevel>;
12
+ export interface LogCategory {
13
+ id: string;
14
+ label: string;
15
+ description?: string;
16
+ color?: string;
17
+ icon?: string;
18
+ enabled?: boolean;
19
+ }
20
+ export interface LogFilter {
21
+ levels?: string[];
22
+ categories?: string[];
23
+ search?: string;
24
+ startDate?: Date;
25
+ endDate?: Date;
26
+ }
27
+ export interface LogViewerConfig {
28
+ categories: LogCategory[];
29
+ defaultLevel: string;
30
+ maxLogEntries: number;
31
+ enableRealtime: boolean;
32
+ enableExport: boolean;
33
+ enableArchives: boolean;
34
+ archiveRetentionDays: number;
35
+ horizontalScroll: boolean;
36
+ timestampFormat: string;
37
+ showCategories: boolean;
38
+ showMetadata: boolean;
39
+ theme?: "light" | "dark" | "system";
40
+ }
41
+ /**
42
+ * Default log viewer configuration
43
+ */
44
+ export declare const defaultLogViewerConfig: LogViewerConfig;
45
+ /**
46
+ * Log entry interface
47
+ */
48
+ export interface LogEntry {
49
+ id: string;
50
+ timestamp: string;
51
+ level: keyof typeof LogLevels;
52
+ category?: string;
53
+ message: string;
54
+ metadata?: Record<string, any>;
55
+ source?: string;
56
+ userId?: string;
57
+ sessionId?: string;
58
+ requestId?: string;
59
+ stack?: string;
60
+ }
61
+ /**
62
+ * Log aggregation for summary statistics
63
+ */
64
+ export interface LogStats {
65
+ total: number;
66
+ byLevel: Record<string, number>;
67
+ byCategory: Record<string, number>;
68
+ errorRate: number;
69
+ warnRate: number;
70
+ }
71
+ /**
72
+ * Helper to parse log entries from different formats
73
+ */
74
+ export declare function parseLogEntry(raw: string | object): LogEntry | null;
75
+ /**
76
+ * Helper to format log entries for display
77
+ */
78
+ export declare function formatLogEntry(entry: LogEntry, format?: "full" | "compact"): string;
79
+ /**
80
+ * Calculate log statistics
81
+ */
82
+ export declare function calculateLogStats(entries: LogEntry[]): LogStats;
83
+ /**
84
+ * Filter log entries
85
+ */
86
+ export declare function filterLogEntries(entries: LogEntry[], filter: LogFilter): LogEntry[];
87
+ //# sourceMappingURL=LogCategories.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LogCategories.d.ts","sourceRoot":"","sources":["../../src/logging/LogCategories.ts"],"names":[],"mappings":"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"}