@zintrust/core 0.1.4 → 0.1.6

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 (321) hide show
  1. package/bin/z.d.ts +2 -2
  2. package/bin/z.d.ts.map +1 -1
  3. package/bin/z.js +3 -2
  4. package/bin/zin.d.ts +2 -2
  5. package/bin/zin.d.ts.map +1 -1
  6. package/bin/zin.js +3 -2
  7. package/bin/zintrust-main.d.ts +9 -0
  8. package/bin/zintrust-main.d.ts.map +1 -0
  9. package/bin/zintrust-main.js +101 -0
  10. package/bin/zintrust-microservices.js +7 -7
  11. package/bin/zintrust.d.ts +5 -4
  12. package/bin/zintrust.d.ts.map +1 -1
  13. package/bin/zintrust.js +7 -87
  14. package/bin/zt.d.ts +2 -2
  15. package/bin/zt.d.ts.map +1 -1
  16. package/bin/zt.js +3 -2
  17. package/package.json +13 -3
  18. package/public/index.html +4 -0
  19. package/src/boot/Application.js +13 -13
  20. package/src/boot/Server.d.ts.map +1 -1
  21. package/src/boot/Server.js +47 -39
  22. package/src/boot/bootstrap.js +71 -36
  23. package/src/builder/BundleOptimizer.js +3 -3
  24. package/src/cache/Cache.js +6 -6
  25. package/src/cache/drivers/KVDriver.js +2 -2
  26. package/src/cache/drivers/MongoDriver.js +3 -3
  27. package/src/cache/drivers/RedisDriver.js +3 -3
  28. package/src/cli/BaseCommand.d.ts +2 -0
  29. package/src/cli/BaseCommand.d.ts.map +1 -1
  30. package/src/cli/BaseCommand.js +12 -2
  31. package/src/cli/CLI.js +23 -23
  32. package/src/cli/ErrorHandler.d.ts.map +1 -1
  33. package/src/cli/ErrorHandler.js +14 -8
  34. package/src/cli/commands/AddCommand.js +15 -15
  35. package/src/cli/commands/ConfigCommand.js +6 -6
  36. package/src/cli/commands/D1MigrateCommand.js +6 -6
  37. package/src/cli/commands/DebugCommand.js +3 -3
  38. package/src/cli/commands/FixCommand.js +5 -5
  39. package/src/cli/commands/KeyGenerateCommand.js +5 -5
  40. package/src/cli/commands/LogsCleanupCommand.js +2 -2
  41. package/src/cli/commands/LogsCommand.js +6 -6
  42. package/src/cli/commands/MakeMailTemplateCommand.d.ts.map +1 -1
  43. package/src/cli/commands/MakeMailTemplateCommand.js +8 -7
  44. package/src/cli/commands/MakeNotificationTemplateCommand.d.ts.map +1 -1
  45. package/src/cli/commands/MakeNotificationTemplateCommand.js +8 -7
  46. package/src/cli/commands/MigrateCommand.js +2 -2
  47. package/src/cli/commands/NewCommand.js +11 -11
  48. package/src/cli/commands/PluginCommand.js +3 -3
  49. package/src/cli/commands/PrepareCommand.js +6 -6
  50. package/src/cli/commands/QACommand.js +8 -8
  51. package/src/cli/commands/SecretsCommand.js +3 -3
  52. package/src/cli/commands/SimulateCommand.js +6 -6
  53. package/src/cli/commands/StartCommand.js +7 -7
  54. package/src/cli/commands/TemplatesCommand.js +5 -5
  55. package/src/cli/commands/index.js +12 -12
  56. package/src/cli/config/ConfigManager.js +5 -5
  57. package/src/cli/config/ConfigValidator.js +1 -1
  58. package/src/cli/config/index.js +3 -3
  59. package/src/cli/debug/Dashboard.js +3 -3
  60. package/src/cli/index.js +10 -10
  61. package/src/cli/logger/Logger.js +2 -2
  62. package/src/cli/scaffolding/ControllerGenerator.d.ts.map +1 -1
  63. package/src/cli/scaffolding/ControllerGenerator.js +48 -64
  64. package/src/cli/scaffolding/FactoryGenerator.js +6 -6
  65. package/src/cli/scaffolding/FeatureScaffolder.js +8 -8
  66. package/src/cli/scaffolding/FileGenerator.js +4 -4
  67. package/src/cli/scaffolding/MigrationGenerator.js +4 -4
  68. package/src/cli/scaffolding/ModelGenerator.js +5 -5
  69. package/src/cli/scaffolding/ProjectScaffolder.d.ts.map +1 -1
  70. package/src/cli/scaffolding/ProjectScaffolder.js +78 -15
  71. package/src/cli/scaffolding/RequestFactoryGenerator.js +5 -5
  72. package/src/cli/scaffolding/ResponseFactoryGenerator.js +5 -5
  73. package/src/cli/scaffolding/RouteGenerator.js +4 -4
  74. package/src/cli/scaffolding/SeederGenerator.js +7 -7
  75. package/src/cli/scaffolding/ServiceIntegrationTestGenerator.js +5 -5
  76. package/src/cli/scaffolding/ServiceRequestFactoryGenerator.js +4 -4
  77. package/src/cli/scaffolding/ServiceScaffolder.d.ts.map +1 -1
  78. package/src/cli/scaffolding/ServiceScaffolder.js +24 -23
  79. package/src/cli/scaffolding/TemplateEngine.d.ts.map +1 -1
  80. package/src/cli/scaffolding/TemplateEngine.js +0 -2
  81. package/src/cli/scaffolding/TemplateGenerator.js +4 -4
  82. package/src/cli/scaffolding/WorkflowGenerator.js +4 -4
  83. package/src/cli/scaffolding/index.js +16 -16
  84. package/src/cli/utils/DistPackager.js +4 -4
  85. package/src/cli/utils/EnvFileLoader.js +2 -2
  86. package/src/cli/utils/spawn.d.ts.map +1 -1
  87. package/src/cli/utils/spawn.js +18 -7
  88. package/src/common/AwsSigV4.js +1 -1
  89. package/src/common/index.js +5 -5
  90. package/src/common/uuid.js +2 -2
  91. package/src/config/FileLogWriter.js +4 -4
  92. package/src/config/SecretsManager.d.ts +1 -42
  93. package/src/config/SecretsManager.d.ts.map +1 -1
  94. package/src/config/SecretsManager.js +2 -2
  95. package/src/config/StartupConfigValidator.d.ts +1 -9
  96. package/src/config/StartupConfigValidator.d.ts.map +1 -1
  97. package/src/config/StartupConfigValidator.js +115 -22
  98. package/src/config/app.d.ts +1 -1
  99. package/src/config/app.d.ts.map +1 -1
  100. package/src/config/app.js +1 -1
  101. package/src/config/broadcast.d.ts +1 -26
  102. package/src/config/broadcast.d.ts.map +1 -1
  103. package/src/config/broadcast.js +1 -1
  104. package/src/config/cache.d.ts +1 -22
  105. package/src/config/cache.d.ts.map +1 -1
  106. package/src/config/cache.js +1 -1
  107. package/src/config/cloudflare.d.ts +1 -13
  108. package/src/config/cloudflare.d.ts.map +1 -1
  109. package/src/config/database.d.ts +2 -47
  110. package/src/config/database.d.ts.map +1 -1
  111. package/src/config/database.js +1 -1
  112. package/src/config/env.d.ts.map +1 -1
  113. package/src/config/env.js +6 -2
  114. package/src/config/features.js +2 -2
  115. package/src/config/index.d.ts +10 -287
  116. package/src/config/index.d.ts.map +1 -1
  117. package/src/config/index.js +16 -16
  118. package/src/config/logger.d.ts.map +1 -1
  119. package/src/config/logger.js +10 -8
  120. package/src/config/logging/HttpLogger.js +4 -4
  121. package/src/config/logging/KvLogger.js +2 -2
  122. package/src/config/logging/SlackLogger.js +3 -3
  123. package/src/config/mail.d.ts +1 -27
  124. package/src/config/mail.d.ts.map +1 -1
  125. package/src/config/mail.js +1 -1
  126. package/src/config/microservices.js +1 -1
  127. package/src/config/middleware.d.ts +2 -6
  128. package/src/config/middleware.d.ts.map +1 -1
  129. package/src/config/middleware.js +5 -5
  130. package/src/config/notification.d.ts +0 -21
  131. package/src/config/notification.d.ts.map +1 -1
  132. package/src/config/notification.js +1 -1
  133. package/src/config/queue.d.ts +1 -39
  134. package/src/config/queue.d.ts.map +1 -1
  135. package/src/config/queue.js +1 -1
  136. package/src/config/security.d.ts +12 -0
  137. package/src/config/security.d.ts.map +1 -1
  138. package/src/config/security.js +17 -5
  139. package/src/config/startup.d.ts +2 -0
  140. package/src/config/startup.d.ts.map +1 -1
  141. package/src/config/startup.js +2 -1
  142. package/src/config/storage.d.ts +1 -48
  143. package/src/config/storage.d.ts.map +1 -1
  144. package/src/config/storage.js +1 -1
  145. package/src/config/type.d.ts +335 -0
  146. package/src/config/type.d.ts.map +1 -0
  147. package/src/config/type.js +1 -0
  148. package/src/container/ServiceContainer.js +1 -1
  149. package/src/exceptions/ZintrustError.js +1 -1
  150. package/src/features/Queue.js +2 -2
  151. package/src/functions/cloudflare.js +4 -4
  152. package/src/functions/deno.js +4 -4
  153. package/src/functions/lambda.js +4 -4
  154. package/src/health/RuntimeHealthProbes.js +3 -3
  155. package/src/health/StartupHealthChecks.js +9 -9
  156. package/src/http/Kernel.js +10 -10
  157. package/src/http/RequestContext.js +2 -2
  158. package/src/http/Response.js +1 -1
  159. package/src/index.d.ts +36 -1
  160. package/src/index.d.ts.map +1 -1
  161. package/src/index.js +69 -36
  162. package/src/microservices/MicroserviceBootstrap.js +5 -5
  163. package/src/microservices/MicroserviceGenerator.js +10 -10
  164. package/src/microservices/MicroserviceManager.js +4 -4
  165. package/src/microservices/PostgresAdapter.js +3 -3
  166. package/src/microservices/RequestTracingMiddleware.js +3 -3
  167. package/src/microservices/ServiceAuthMiddleware.js +3 -3
  168. package/src/microservices/ServiceBundler.js +3 -3
  169. package/src/microservices/ServiceHealthMonitor.js +2 -2
  170. package/src/middleware/CsrfMiddleware.js +3 -3
  171. package/src/middleware/ErrorHandlerMiddleware.js +4 -4
  172. package/src/middleware/LoggingMiddleware.js +3 -3
  173. package/src/middleware/RateLimiter.js +1 -1
  174. package/src/middleware/index.js +6 -6
  175. package/src/node-singletons/http.d.ts +2 -2
  176. package/src/node-singletons/http.d.ts.map +1 -1
  177. package/src/node-singletons/http.js +1 -1
  178. package/src/node-singletons/index.js +14 -14
  179. package/src/node-singletons/path.d.ts +1 -1
  180. package/src/node.d.ts +5 -0
  181. package/src/node.d.ts.map +1 -0
  182. package/src/node.js +4 -0
  183. package/src/orm/ConnectionManager.js +3 -3
  184. package/src/orm/Database.js +8 -8
  185. package/src/orm/Model.js +5 -5
  186. package/src/orm/QueryBuilder.js +1 -1
  187. package/src/orm/Relationships.js +1 -1
  188. package/src/orm/adapters/D1Adapter.js +5 -5
  189. package/src/orm/adapters/MySQLAdapter.d.ts.map +1 -1
  190. package/src/orm/adapters/MySQLAdapter.js +4 -6
  191. package/src/orm/adapters/PostgreSQLAdapter.d.ts.map +1 -1
  192. package/src/orm/adapters/PostgreSQLAdapter.js +4 -6
  193. package/src/orm/adapters/SQLServerAdapter.d.ts.map +1 -1
  194. package/src/orm/adapters/SQLServerAdapter.js +4 -6
  195. package/src/orm/adapters/SQLiteAdapter.d.ts.map +1 -1
  196. package/src/orm/adapters/SQLiteAdapter.js +5 -7
  197. package/src/performance/CodeGenerationBenchmark.js +5 -5
  198. package/src/performance/Optimizer.js +3 -3
  199. package/src/performance/establish-baseline.js +4 -4
  200. package/src/profiling/RequestProfiler.js +4 -4
  201. package/src/runtime/PluginManager.js +8 -8
  202. package/src/runtime/RuntimeDetector.d.ts.map +1 -1
  203. package/src/runtime/RuntimeDetector.js +22 -12
  204. package/src/runtime/adapters/CloudflareAdapter.js +3 -3
  205. package/src/runtime/adapters/DenoAdapter.js +2 -2
  206. package/src/runtime/adapters/FargateAdapter.js +4 -4
  207. package/src/runtime/adapters/LambdaAdapter.js +4 -4
  208. package/src/runtime/adapters/NodeServerAdapter.js +4 -4
  209. package/src/scheduler/ScheduleRunner.js +2 -2
  210. package/src/scheduler/index.js +1 -1
  211. package/src/schedules/index.js +1 -1
  212. package/src/schedules/log-cleanup.js +2 -2
  213. package/src/scripts/GenerateEnvArtifacts.js +4 -4
  214. package/src/scripts/TemplateSync.js +8 -6
  215. package/src/security/CsrfTokenManager.js +2 -2
  216. package/src/security/Encryptor.js +3 -3
  217. package/src/security/Hash.js +2 -2
  218. package/src/security/JwtManager.js +2 -2
  219. package/src/security/StartupSecretValidation.js +4 -4
  220. package/src/security/UrlValidator.js +1 -1
  221. package/src/security/Xss.js +1 -1
  222. package/src/security/XssProtection.d.ts.map +1 -1
  223. package/src/security/XssProtection.js +8 -3
  224. package/src/templates/adapters/MySQLAdapter.ts.tpl +0 -2
  225. package/src/templates/adapters/PostgreSQLAdapter.ts.tpl +0 -3
  226. package/src/templates/adapters/SQLServerAdapter.ts.tpl +0 -2
  227. package/src/templates/adapters/SQLiteAdapter.ts.tpl +0 -2
  228. package/src/templates/project/basic/.env.tpl +8 -1
  229. package/src/templates/project/basic/app/Controllers/UserController.ts.tpl +3 -2
  230. package/src/templates/project/basic/app/Middleware/ProfilerMiddleware.ts.tpl +3 -2
  231. package/src/templates/project/basic/app/Middleware/index.ts.tpl +8 -14
  232. package/src/templates/project/basic/app/Models/Post.ts.tpl +2 -1
  233. package/src/templates/project/basic/app/Models/User.ts.tpl +1 -1
  234. package/src/templates/project/basic/app/Toolkit/Broadcast/sendBroadcast.ts.tpl +1 -1
  235. package/src/templates/project/basic/app/Toolkit/Mail/sendWelcomeEmail.ts.tpl +1 -1
  236. package/src/templates/project/basic/app/Toolkit/Notification/sendSlackNotification.ts.tpl +1 -1
  237. package/src/templates/project/basic/app/Toolkit/Notification/sendSms.ts.tpl +1 -1
  238. package/src/templates/project/basic/config/FileLogWriter.ts.tpl +2 -4
  239. package/src/templates/project/basic/config/SecretsManager.ts.tpl +6 -39
  240. package/src/templates/project/basic/config/StartupConfigValidator.ts.tpl +154 -37
  241. package/src/templates/project/basic/config/app.ts.tpl +1 -5
  242. package/src/templates/project/basic/config/broadcast.ts.tpl +6 -36
  243. package/src/templates/project/basic/config/cache.ts.tpl +1 -42
  244. package/src/templates/project/basic/config/cloudflare.ts.tpl +1 -15
  245. package/src/templates/project/basic/config/database.ts.tpl +5 -51
  246. package/src/templates/project/basic/config/env.ts.tpl +6 -7
  247. package/src/templates/project/basic/config/features.ts.tpl +1 -1
  248. package/src/templates/project/basic/config/index.ts.tpl +1 -1
  249. package/src/templates/project/basic/config/logger.ts.tpl +3 -1
  250. package/src/templates/project/basic/config/logging/HttpLogger.ts.tpl +1 -1
  251. package/src/templates/project/basic/config/logging/KvLogger.ts.tpl +1 -1
  252. package/src/templates/project/basic/config/logging/SlackLogger.ts.tpl +1 -1
  253. package/src/templates/project/basic/config/mail.ts.tpl +1 -57
  254. package/src/templates/project/basic/config/microservices.ts.tpl +1 -1
  255. package/src/templates/project/basic/config/middleware.ts.tpl +2 -6
  256. package/src/templates/project/basic/config/notification.ts.tpl +1 -36
  257. package/src/templates/project/basic/config/queue.ts.tpl +1 -49
  258. package/src/templates/project/basic/config/security.ts.tpl +13 -1
  259. package/src/templates/project/basic/config/startup.ts.tpl +2 -0
  260. package/src/templates/project/basic/config/storage.ts.tpl +6 -54
  261. package/src/templates/project/basic/config/type.ts.tpl +414 -0
  262. package/src/templates/project/basic/package.json.tpl +1 -0
  263. package/src/templates/project/basic/routes/api.ts.tpl +1 -1
  264. package/src/templates/project/basic/routes/broadcast.ts.tpl +1 -1
  265. package/src/templates/project/basic/routes/health.ts.tpl +1 -1
  266. package/src/templates/project/basic/routes/storage.ts.tpl +1 -1
  267. package/src/templates/project/basic/src/index.ts.tpl +49 -41
  268. package/src/templates/project/basic/template.json +1 -1
  269. package/src/templates/project/basic/tsconfig.json.tpl +3 -1
  270. package/src/toolkit/Secrets/EnvFile.js +3 -3
  271. package/src/toolkit/Secrets/Manifest.js +3 -3
  272. package/src/toolkit/Secrets/index.js +5 -5
  273. package/src/toolkit/Secrets/providers/AwsSecretsManager.js +2 -2
  274. package/src/toolkit/Secrets/providers/CloudflareKv.js +1 -1
  275. package/src/tools/broadcast/Broadcast.js +6 -6
  276. package/src/tools/broadcast/drivers/BaseDriver.js +1 -1
  277. package/src/tools/broadcast/drivers/Pusher.d.ts +1 -1
  278. package/src/tools/broadcast/drivers/Pusher.d.ts.map +1 -1
  279. package/src/tools/broadcast/drivers/Pusher.js +2 -2
  280. package/src/tools/broadcast/drivers/Redis.js +1 -1
  281. package/src/tools/broadcast/drivers/RedisHttps.js +3 -3
  282. package/src/tools/broadcast/index.js +6 -6
  283. package/src/tools/http/Http.js +4 -4
  284. package/src/tools/http/HttpResponse.js +1 -1
  285. package/src/tools/http/index.js +2 -2
  286. package/src/tools/mail/Mail.js +8 -8
  287. package/src/tools/mail/attachments.js +1 -1
  288. package/src/tools/mail/drivers/BaseDriver.js +1 -1
  289. package/src/tools/mail/drivers/Mailgun.js +1 -1
  290. package/src/tools/mail/drivers/SendGrid.js +1 -1
  291. package/src/tools/mail/drivers/Ses.js +2 -2
  292. package/src/tools/mail/drivers/Smtp.js +4 -4
  293. package/src/tools/mail/templates/markdown/index.js +3 -3
  294. package/src/tools/mail/templates/markdown/registry.js +5 -5
  295. package/src/tools/mail/templates/markdown/validator.js +1 -1
  296. package/src/tools/mail/testing.js +1 -1
  297. package/src/tools/notification/Notification.js +1 -1
  298. package/src/tools/notification/Registry.js +3 -3
  299. package/src/tools/notification/Service.js +3 -3
  300. package/src/tools/notification/config.js +1 -1
  301. package/src/tools/notification/drivers/BaseDriver.js +1 -1
  302. package/src/tools/notification/drivers/Slack.js +1 -1
  303. package/src/tools/notification/drivers/Termii.js +1 -1
  304. package/src/tools/notification/drivers/Twilio.js +1 -1
  305. package/src/tools/notification/templates/markdown/index.js +3 -3
  306. package/src/tools/notification/templates/markdown/registry.js +5 -5
  307. package/src/tools/notification/testing.js +1 -1
  308. package/src/tools/notification/testingHelpers.js +2 -2
  309. package/src/tools/queue/Queue.js +1 -1
  310. package/src/tools/queue/drivers/InMemory.js +1 -1
  311. package/src/tools/queue/drivers/Redis.js +2 -2
  312. package/src/tools/storage/LocalSignedUrl.js +2 -2
  313. package/src/tools/storage/drivers/Gcs.js +1 -1
  314. package/src/tools/storage/drivers/Local.js +5 -5
  315. package/src/tools/storage/drivers/R2.js +2 -2
  316. package/src/tools/storage/drivers/S3.js +3 -3
  317. package/src/tools/storage/index.js +6 -6
  318. package/src/tools/storage/testing.js +1 -1
  319. package/src/tools/templates/MarkdownRenderer.js +2 -2
  320. package/src/tools/templates/index.js +1 -1
  321. package/src/validation/Validator.js +3 -3
@@ -1,7 +1,7 @@
1
- import { Application } from '../boot/Application';
2
- import { Logger } from '../config/logger';
3
- import { Kernel } from '../http/Kernel';
4
- import { LambdaAdapter } from '../runtime/adapters/LambdaAdapter';
1
+ import { Application } from '../boot/Application.js';
2
+ import { Logger } from '../config/logger.js';
3
+ import { Kernel } from '../http/Kernel.js';
4
+ import { LambdaAdapter } from '../runtime/adapters/LambdaAdapter.js';
5
5
  let kernel = null;
6
6
  async function initializeKernel() {
7
7
  if (kernel !== null) {
@@ -5,9 +5,9 @@
5
5
  *
6
6
  * NOTE: Startup probes are handled separately by StartupHealthChecks.
7
7
  */
8
- import { Cloudflare } from '../config/cloudflare';
9
- import { Env } from '../config/env';
10
- import { ErrorFactory } from '../exceptions/ZintrustError';
8
+ import { Cloudflare } from '../config/cloudflare.js';
9
+ import { Env } from '../config/env.js';
10
+ import { ErrorFactory } from '../exceptions/ZintrustError.js';
11
11
  const getCacheDriverName = () => {
12
12
  return Env.get('CACHE_DRIVER', 'memory');
13
13
  };
@@ -4,15 +4,15 @@
4
4
  * Lightweight boot-time checks that validate the runtime environment before
5
5
  * the server starts accepting requests.
6
6
  */
7
- import { Cache } from '../cache/Cache';
8
- import { generateUuid } from '../common/uuid';
9
- import { Env } from '../config/env';
10
- import { Logger } from '../config/logger';
11
- import { startupConfig } from '../config/startup';
12
- import { ErrorFactory } from '../exceptions/ZintrustError';
13
- import { Database } from '../orm/Database';
14
- import { QueryBuilder } from '../orm/QueryBuilder';
15
- import { StartupSecretValidation } from '../security/StartupSecretValidation';
7
+ import { Cache } from '../cache/Cache.js';
8
+ import { generateUuid } from '../common/uuid.js';
9
+ import { Env } from '../config/env.js';
10
+ import { Logger } from '../config/logger.js';
11
+ import { startupConfig } from '../config/startup.js';
12
+ import { ErrorFactory } from '../exceptions/ZintrustError.js';
13
+ import { Database } from '../orm/Database.js';
14
+ import { QueryBuilder } from '../orm/QueryBuilder.js';
15
+ import { StartupSecretValidation } from '../security/StartupSecretValidation.js';
16
16
  export const StartupHealthChecks = Object.freeze({
17
17
  async run() {
18
18
  if (!startupConfig.healthChecksEnabled) {
@@ -1,16 +1,16 @@
1
1
  /**
2
2
  * HTTP Kernel - Request handling and middleware pipeline
3
3
  */
4
- import { Logger } from '../config/logger';
5
- import { middlewareConfig } from '../config/middleware';
6
- import { ErrorResponse } from './ErrorResponse';
7
- import { Request } from './Request';
8
- import { RequestContext } from './RequestContext';
9
- import { Response } from './Response';
10
- import { MiddlewareStack } from '../middleware/MiddlewareStack';
11
- import { Router } from '../routing/Router';
12
- import { create as createScheduleRunner } from '../scheduler/ScheduleRunner';
13
- import { Env } from '../config/env';
4
+ import { Logger } from '../config/logger.js';
5
+ import { middlewareConfig } from '../config/middleware.js';
6
+ import { ErrorResponse } from './ErrorResponse.js';
7
+ import { Request } from './Request.js';
8
+ import { RequestContext } from './RequestContext.js';
9
+ import { Response } from './Response.js';
10
+ import { MiddlewareStack } from '../middleware/MiddlewareStack.js';
11
+ import { Router } from '../routing/Router.js';
12
+ import { create as createScheduleRunner } from '../scheduler/ScheduleRunner.js';
13
+ import { Env } from '../config/env.js';
14
14
  /**
15
15
  * Terminate request lifecycle
16
16
  */
@@ -1,4 +1,4 @@
1
- import { generateUuid } from '../common/uuid';
1
+ import { generateUuid } from '../common/uuid.js';
2
2
  const createFallbackStorage = () => {
3
3
  let store;
4
4
  return {
@@ -19,7 +19,7 @@ const createFallbackStorage = () => {
19
19
  };
20
20
  const resolveStorage = async () => {
21
21
  try {
22
- const mod = (await import('../node-singletons/async_hooks'));
22
+ const mod = (await import('../node-singletons/async_hooks.js'));
23
23
  return new mod.AsyncLocalStorage();
24
24
  }
25
25
  catch {
@@ -2,7 +2,7 @@
2
2
  * Response - HTTP Response wrapper
3
3
  * Wraps Node.js ServerResponse with additional utilities
4
4
  */
5
- import { HTTP_HEADERS, MIME_TYPES } from '../config/constants';
5
+ import { HTTP_HEADERS, MIME_TYPES } from '../config/constants.js';
6
6
  /**
7
7
  * Response - HTTP Response wrapper
8
8
  * Refactored to Functional Object pattern
package/src/index.d.ts CHANGED
@@ -11,8 +11,13 @@ export { Request } from './http/Request';
11
11
  export type { IRequest } from './http/Request';
12
12
  export { Response } from './http/Response';
13
13
  export type { IResponse } from './http/Response';
14
+ export { CsrfMiddleware } from './middleware/CsrfMiddleware';
15
+ export { ErrorHandlerMiddleware } from './middleware/ErrorHandlerMiddleware';
16
+ export { LoggingMiddleware } from './middleware/LoggingMiddleware';
14
17
  export { MiddlewareStack } from './middleware/MiddlewareStack';
15
18
  export type { Middleware } from './middleware/MiddlewareStack';
19
+ export { RateLimiter } from './middleware/RateLimiter';
20
+ export { SecurityMiddleware } from './middleware/SecurityMiddleware';
16
21
  export { MySQLAdapter } from './orm/adapters/MySQLAdapter';
17
22
  export { PostgreSQLAdapter } from './orm/adapters/PostgreSQLAdapter';
18
23
  export { SQLiteAdapter } from './orm/adapters/SQLiteAdapter';
@@ -46,11 +51,41 @@ export type { IJwtManager, JwtAlgorithm, JwtManagerType, JwtOptions, JwtPayload,
46
51
  export { Xss } from './security/Xss';
47
52
  export { XssProtection } from './security/XssProtection';
48
53
  export { ErrorFactory } from './exceptions/ZintrustError';
54
+ export { Env } from './config/env';
55
+ export { Logger } from './config/logger';
56
+ export { appConfig } from './config/app';
57
+ export type { AppConfig } from './config/app';
58
+ export { cacheConfig } from './config/cache';
59
+ export type { CacheConfig } from './config/cache';
60
+ export { databaseConfig } from './config/database';
61
+ export type { DatabaseConfig as DatabaseRuntimeConfig } from './config/database';
62
+ export { microservicesConfig } from './config/microservices';
63
+ export type { MicroservicesConfig } from './config/microservices';
64
+ export { middlewareConfig } from './config/middleware';
65
+ export type { MiddlewareConfigType } from './config/type';
66
+ export { queueConfig } from './config/queue';
67
+ export type { QueueConfig } from './config/queue';
68
+ export { securityConfig } from './config/security';
49
69
  export { mailConfig } from './config/mail';
50
- export type { MailConfig, MailDriverConfig, MailDriverName } from './config/mail';
70
+ export type { MailConfig } from './config/mail';
71
+ export { storageConfig } from './config/storage';
72
+ export type { StorageConfig } from './config/storage';
73
+ export { startupConfig } from './config/startup';
74
+ export type { StartupConfig } from './config/startup';
75
+ export { Constants, DEFAULTS, ENV_KEYS, HTTP_HEADERS, MIME_TYPES } from './config/constants';
76
+ export { FeatureFlags } from './config/features';
77
+ export { Cloudflare } from './config/cloudflare';
78
+ export { SecretsManager } from './config/SecretsManager';
79
+ export type { MailDriverConfig, MailDriverName, WorkersEnv } from './config/type';
51
80
  export { StartupConfigValidator } from './config/StartupConfigValidator';
52
81
  export { Mail } from './tools/mail/Mail';
53
82
  export type { SendMailInput, SendMailResult } from './tools/mail/Mail';
54
83
  export { SmtpDriver } from './tools/mail/drivers/Smtp';
55
84
  export type { SmtpConfig as SmtpDriverConfig } from './tools/mail/drivers/Smtp';
85
+ export { sendSlackWebhook } from './tools/notification/drivers/Slack';
86
+ export { sendSms } from './tools/notification/drivers/Twilio';
87
+ export { RuntimeHealthProbes } from './health/RuntimeHealthProbes';
88
+ export { Broadcast } from './tools/broadcast/Broadcast';
89
+ export { Storage } from './tools/storage/index';
90
+ export { LocalSignedUrl } from './tools/storage/LocalSignedUrl';
56
91
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
package/src/index.js CHANGED
@@ -2,46 +2,79 @@
2
2
  * Zintrust Framework - Production-Grade TypeScript Backend
3
3
  * Built for performance, type safety, and exceptional developer experience
4
4
  */
5
- export { Application } from './boot/Application';
6
- export { Server } from './boot/Server';
7
- export { ServiceContainer } from './container/ServiceContainer';
8
- export { Controller } from './http/Controller';
9
- export { Kernel } from './http/Kernel';
10
- export { Request } from './http/Request';
11
- export { Response } from './http/Response';
12
- export { MiddlewareStack } from './middleware/MiddlewareStack';
13
- export { MySQLAdapter } from './orm/adapters/MySQLAdapter';
14
- export { PostgreSQLAdapter } from './orm/adapters/PostgreSQLAdapter';
15
- export { SQLiteAdapter } from './orm/adapters/SQLiteAdapter';
16
- export { SQLServerAdapter } from './orm/adapters/SQLServerAdapter';
17
- export { Database, resetDatabase, useDatabase } from './orm/Database';
18
- export { Model } from './orm/Model';
19
- export { QueryBuilder } from './orm/QueryBuilder';
20
- export { Router } from './routing/Router';
5
+ export { Application } from './boot/Application.js';
6
+ export { Server } from './boot/Server.js';
7
+ export { ServiceContainer } from './container/ServiceContainer.js';
8
+ export { Controller } from './http/Controller.js';
9
+ export { Kernel } from './http/Kernel.js';
10
+ export { Request } from './http/Request.js';
11
+ export { Response } from './http/Response.js';
12
+ export { CsrfMiddleware } from './middleware/CsrfMiddleware.js';
13
+ export { ErrorHandlerMiddleware } from './middleware/ErrorHandlerMiddleware.js';
14
+ export { LoggingMiddleware } from './middleware/LoggingMiddleware.js';
15
+ export { MiddlewareStack } from './middleware/MiddlewareStack.js';
16
+ export { RateLimiter } from './middleware/RateLimiter.js';
17
+ export { SecurityMiddleware } from './middleware/SecurityMiddleware.js';
18
+ export { MySQLAdapter } from './orm/adapters/MySQLAdapter.js';
19
+ export { PostgreSQLAdapter } from './orm/adapters/PostgreSQLAdapter.js';
20
+ export { SQLiteAdapter } from './orm/adapters/SQLiteAdapter.js';
21
+ export { SQLServerAdapter } from './orm/adapters/SQLServerAdapter.js';
22
+ export { Database, resetDatabase, useDatabase } from './orm/Database.js';
23
+ export { Model } from './orm/Model.js';
24
+ export { QueryBuilder } from './orm/QueryBuilder.js';
25
+ export { Router } from './routing/Router.js';
21
26
  // Common
22
- export { delay, ensureDirSafe } from './common/index';
27
+ export { delay, ensureDirSafe } from './common/index.js';
23
28
  // HTTP Client
24
- export { HttpClient } from './tools/http/Http';
29
+ export { HttpClient } from './tools/http/Http.js';
25
30
  // Profiling
26
- export { MemoryProfiler } from './profiling/MemoryProfiler';
27
- export { N1Detector } from './profiling/N1Detector';
28
- export { QueryLogger } from './profiling/QueryLogger';
29
- export { RequestProfiler } from './profiling/RequestProfiler';
31
+ export { MemoryProfiler } from './profiling/MemoryProfiler.js';
32
+ export { N1Detector } from './profiling/N1Detector.js';
33
+ export { QueryLogger } from './profiling/QueryLogger.js';
34
+ export { RequestProfiler } from './profiling/RequestProfiler.js';
30
35
  // Validation
31
- export { ValidationError } from './validation/ValidationError';
32
- export { Schema, Validator } from './validation/Validator';
36
+ export { ValidationError } from './validation/ValidationError.js';
37
+ export { Schema, Validator } from './validation/Validator.js';
33
38
  // Security
34
- export { CsrfTokenManager } from './security/CsrfTokenManager';
35
- export { Encryptor } from './security/Encryptor';
36
- export { Hash } from './security/Hash';
37
- export { JwtManager } from './security/JwtManager';
38
- export { Xss } from './security/Xss';
39
- export { XssProtection } from './security/XssProtection';
39
+ export { CsrfTokenManager } from './security/CsrfTokenManager.js';
40
+ export { Encryptor } from './security/Encryptor.js';
41
+ export { Hash } from './security/Hash.js';
42
+ export { JwtManager } from './security/JwtManager.js';
43
+ export { Xss } from './security/Xss.js';
44
+ export { XssProtection } from './security/XssProtection.js';
40
45
  // Exceptions
41
- export { ErrorFactory } from './exceptions/ZintrustError';
42
- // Config
43
- export { mailConfig } from './config/mail';
44
- export { StartupConfigValidator } from './config/StartupConfigValidator';
46
+ export { ErrorFactory } from './exceptions/ZintrustError.js';
47
+ // Config (core-owned)
48
+ export { Env } from './config/env.js';
49
+ export { Logger } from './config/logger.js';
50
+ export { appConfig } from './config/app.js';
51
+ export { cacheConfig } from './config/cache.js';
52
+ export { databaseConfig } from './config/database.js';
53
+ export { microservicesConfig } from './config/microservices.js';
54
+ export { middlewareConfig } from './config/middleware.js';
55
+ export { queueConfig } from './config/queue.js';
56
+ export { securityConfig } from './config/security.js';
57
+ export { mailConfig } from './config/mail.js';
58
+ export { storageConfig } from './config/storage.js';
59
+ export { startupConfig } from './config/startup.js';
60
+ export { Constants, DEFAULTS, ENV_KEYS, HTTP_HEADERS, MIME_TYPES } from './config/constants.js';
61
+ export { FeatureFlags } from './config/features.js';
62
+ export { Cloudflare } from './config/cloudflare.js';
63
+ export { SecretsManager } from './config/SecretsManager.js';
64
+ // Config (validation)
65
+ export { StartupConfigValidator } from './config/StartupConfigValidator.js';
45
66
  // Mail
46
- export { Mail } from './tools/mail/Mail';
47
- export { SmtpDriver } from './tools/mail/drivers/Smtp';
67
+ export { Mail } from './tools/mail/Mail.js';
68
+ export { SmtpDriver } from './tools/mail/drivers/Smtp.js';
69
+ // Notifications
70
+ export { sendSlackWebhook } from './tools/notification/drivers/Slack.js';
71
+ export { sendSms } from './tools/notification/drivers/Twilio.js';
72
+ // Health & Runtime (for scaffolded routes and health checks)
73
+ export { RuntimeHealthProbes } from './health/RuntimeHealthProbes.js';
74
+ // Broadcast (for real-time features)
75
+ export { Broadcast } from './tools/broadcast/Broadcast.js';
76
+ // Storage (for file management and signed URLs)
77
+ export { Storage } from './tools/storage/index.js';
78
+ export { LocalSignedUrl } from './tools/storage/LocalSignedUrl.js';
79
+ // NOTE: Node-only exports (like FileLogWriter, process) are intentionally not
80
+ // exported from this root entrypoint. Use the '@zintrust/core/node' subpath.
@@ -1,8 +1,8 @@
1
- import { Env } from '../config/env';
2
- import { Logger } from '../config/logger';
3
- import { MicroserviceManager, getEnabledServices, isMicroservicesEnabled, } from './MicroserviceManager';
4
- import fs from '../node-singletons/fs';
5
- import * as path from '../node-singletons/path';
1
+ import { Env } from '../config/env.js';
2
+ import { Logger } from '../config/logger.js';
3
+ import { MicroserviceManager, getEnabledServices, isMicroservicesEnabled, } from './MicroserviceManager.js';
4
+ import fs from '../node-singletons/fs.js';
5
+ import * as path from '../node-singletons/path.js';
6
6
  /**
7
7
  * Discover services from filesystem
8
8
  */
@@ -3,9 +3,9 @@
3
3
  * Microservice generator - auto-creates microservice folder structure
4
4
  * Generates boilerplate code for domain-driven microservices
5
5
  */
6
- import { Logger } from '../config/logger';
7
- import fs from '../node-singletons/fs';
8
- import * as path from '../node-singletons/path';
6
+ import { Logger } from '../config/logger.js';
7
+ import fs from '../node-singletons/fs.js';
8
+ import * as path from '../node-singletons/path.js';
9
9
  /**
10
10
  * Microservice code generator
11
11
  */
@@ -109,7 +109,7 @@ DB_CONNECTION=postgresql
109
109
  Call another service:
110
110
 
111
111
  \`\`\`typescript
112
- import { MicroserviceManager } from './MicroserviceManager';
112
+ import { MicroserviceManager } from './MicroserviceManager.js';
113
113
 
114
114
  const manager = MicroserviceManager.getInstance();
115
115
  const response = await manager.callService('other-service', {
@@ -135,7 +135,7 @@ const generateServiceConfig = async (serviceDir, serviceName, port, version) =>
135
135
  };
136
136
  const generateServiceKernel = async (serviceDir, serviceName, domain) => {
137
137
  const code = `import { Application } from '@http/Application';
138
- import { Kernel, IKernel } from '../http/Kernel';
138
+ import { Kernel, IKernel } from '../http/Kernel.js';
139
139
 
140
140
  /**
141
141
  * ${serviceName} Microservice Kernel
@@ -157,7 +157,7 @@ export default ${pascalCase(serviceName)}Kernel.create(Application.create());
157
157
  fs.writeFileSync(path.join(serviceDir, 'src', 'Kernel.ts'), code);
158
158
  };
159
159
  const generateServiceRoutes = async (serviceDir, serviceName) => {
160
- const code = `import { IRouter } from '../routing/Router';
160
+ const code = `import { IRouter } from '../routing/Router.js';
161
161
 
162
162
  /**
163
163
  * ${serviceName} service routes
@@ -175,9 +175,9 @@ export default function routes(router: IRouter): void {
175
175
  fs.writeFileSync(path.join(serviceDir, 'src', 'routes', 'index.ts'), code);
176
176
  };
177
177
  const generateServiceController = async (serviceDir, serviceName) => {
178
- const code = `import { Controller, IController } from '../http/Controller';
179
- import { Request } from '../http/Request';
180
- import { Response } from '../http/Response';
178
+ const code = `import { Controller, IController } from '../http/Controller.js';
179
+ import { Request } from '../http/Request.js';
180
+ import { Response } from '../http/Response.js';
181
181
 
182
182
  /**
183
183
  * ${pascalCase(serviceName)} Controller
@@ -204,7 +204,7 @@ export const ${pascalCase(serviceName)}Controller = {
204
204
  };
205
205
  const generateServiceModel = async (serviceDir, serviceName) => {
206
206
  const modelName = pascalCase(serviceName.slice(0, -1)); // Remove 's'
207
- const code = `import { Model } from '../orm/Model';
207
+ const code = `import { Model } from '../orm/Model.js';
208
208
 
209
209
  /**
210
210
  * ${modelName} Model
@@ -2,10 +2,10 @@
2
2
  * Microservices Architecture for Zintrust Framework
3
3
  * Sealed namespace pattern with immutable microservice management
4
4
  */
5
- import { Env } from '../config/env';
6
- import { Logger } from '../config/logger';
7
- import { validateUrl } from '../security/UrlValidator';
8
- import { ErrorFactory } from '../exceptions/ZintrustError';
5
+ import { Env } from '../config/env.js';
6
+ import { Logger } from '../config/logger.js';
7
+ import { validateUrl } from '../security/UrlValidator.js';
8
+ import { ErrorFactory } from '../exceptions/ZintrustError.js';
9
9
  const services = new Map();
10
10
  let instance;
11
11
  let basePort = 3000;
@@ -1,6 +1,6 @@
1
- import { Logger } from '../config/logger';
2
- import { ErrorFactory } from '../exceptions/ZintrustError';
3
- import { QueryBuilder } from '../orm/QueryBuilder';
1
+ import { Logger } from '../config/logger.js';
2
+ import { ErrorFactory } from '../exceptions/ZintrustError.js';
3
+ import { QueryBuilder } from '../orm/QueryBuilder.js';
4
4
  const poolsByInstance = new WeakMap();
5
5
  const configByInstance = new WeakMap();
6
6
  function getAdapterConfig(adapter) {
@@ -1,6 +1,6 @@
1
- import { Env } from '../config/env';
2
- import { Logger } from '../config/logger';
3
- import * as crypto from '../node-singletons/crypto';
1
+ import { Env } from '../config/env.js';
2
+ import { Logger } from '../config/logger.js';
3
+ import * as crypto from '../node-singletons/crypto.js';
4
4
  /**
5
5
  * Trace logger for structured logging
6
6
  */
@@ -1,6 +1,6 @@
1
- import { Env } from '../config/env';
2
- import { Logger } from '../config/logger';
3
- import * as crypto from '../node-singletons/crypto';
1
+ import { Env } from '../config/env.js';
2
+ import { Logger } from '../config/logger.js';
3
+ import * as crypto from '../node-singletons/crypto.js';
4
4
  /**
5
5
  * API Key Authentication
6
6
  */
@@ -2,9 +2,9 @@
2
2
  * Service Bundler - Creates optimized, independent microservice packages
3
3
  * Target: Each service < 1MB for serverless deployment
4
4
  */
5
- import { Logger } from '../config/logger';
6
- import fs from '../node-singletons/fs';
7
- import * as path from '../node-singletons/path';
5
+ import { Logger } from '../config/logger.js';
6
+ import fs from '../node-singletons/fs.js';
7
+ import * as path from '../node-singletons/path.js';
8
8
  /**
9
9
  * Service bundler for independent deployment
10
10
  */
@@ -2,8 +2,8 @@
2
2
  * Service Health Check and Monitoring System
3
3
  * Provides per-service and aggregated health status with detailed diagnostics
4
4
  */
5
- import { Logger } from '../config/logger';
6
- import { validateUrl } from '../security/UrlValidator';
5
+ import { Logger } from '../config/logger.js';
6
+ import { validateUrl } from '../security/UrlValidator.js';
7
7
  /**
8
8
  * Health Check Endpoint Handler
9
9
  * Each service should expose this as GET /health
@@ -3,9 +3,9 @@
3
3
  * Protects against Cross-Site Request Forgery attacks
4
4
  * Uses CsrfTokenManager for token generation and validation
5
5
  */
6
- import { generateSecureJobId } from '../common/uuid';
7
- import { Logger } from '../config/logger';
8
- import { CsrfTokenManager } from '../security/CsrfTokenManager';
6
+ import { generateSecureJobId } from '../common/uuid.js';
7
+ import { Logger } from '../config/logger.js';
8
+ import { CsrfTokenManager } from '../security/CsrfTokenManager.js';
9
9
  const DEFAULT_OPTIONS = {
10
10
  cookieName: 'XSRF-TOKEN',
11
11
  headerName: 'X-CSRF-Token',
@@ -1,7 +1,7 @@
1
- import { Env } from '../config/env';
2
- import { Logger } from '../config/logger';
3
- import { ErrorResponse } from '../http/ErrorResponse';
4
- import { RequestContext } from '../http/RequestContext';
1
+ import { Env } from '../config/env.js';
2
+ import { Logger } from '../config/logger.js';
3
+ import { ErrorResponse } from '../http/ErrorResponse.js';
4
+ import { RequestContext } from '../http/RequestContext.js';
5
5
  const isWritableEnded = (res) => {
6
6
  if (typeof res.getRaw !== 'function')
7
7
  return false;
@@ -1,6 +1,6 @@
1
- import { Env } from '../config/env';
2
- import { Logger } from '../config/logger';
3
- import { RequestContext } from '../http/RequestContext';
1
+ import { Env } from '../config/env.js';
2
+ import { Logger } from '../config/logger.js';
3
+ import { RequestContext } from '../http/RequestContext.js';
4
4
  const getStatusSafe = (res) => {
5
5
  const anyRes = res;
6
6
  if (typeof anyRes.getStatus === 'function')
@@ -3,7 +3,7 @@
3
3
  * Token bucket implementation for request rate limiting
4
4
  * Zero-dependency implementation
5
5
  */
6
- import { Logger } from '../config/logger';
6
+ import { Logger } from '../config/logger.js';
7
7
  const DEFAULT_OPTIONS = {
8
8
  windowMs: 60 * 1000, // 1 minute
9
9
  max: 100, // 100 requests per minute
@@ -2,9 +2,9 @@
2
2
  * Middleware Exports
3
3
  * Central export point for all framework middleware
4
4
  */
5
- export * from './CsrfMiddleware';
6
- export * from './ErrorHandlerMiddleware';
7
- export * from './LoggingMiddleware';
8
- export * from './MiddlewareStack';
9
- export * from './RateLimiter';
10
- export * from './SecurityMiddleware';
5
+ export * from './CsrfMiddleware.js';
6
+ export * from './ErrorHandlerMiddleware.js';
7
+ export * from './LoggingMiddleware.js';
8
+ export * from './MiddlewareStack.js';
9
+ export * from './RateLimiter.js';
10
+ export * from './SecurityMiddleware.js';
@@ -3,6 +3,6 @@
3
3
  * Safe to import in both API and CLI code
4
4
  * Exported from node:http built-in
5
5
  */
6
- export { createServer, IncomingMessage, OutgoingHttpHeader, OutgoingHttpHeaders, ServerResponse, } from 'node:http';
7
- export type { IncomingHttpHeaders, Server } from 'node:http';
6
+ export { createServer, IncomingMessage, ServerResponse } from 'node:http';
7
+ export type { IncomingHttpHeaders, OutgoingHttpHeader, OutgoingHttpHeaders, Server, } from 'node:http';
8
8
  //# sourceMappingURL=http.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/node-singletons/http.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EACL,YAAY,EACZ,eAAe,EACf,kBAAkB,EAClB,mBAAmB,EACnB,cAAc,GACf,MAAM,WAAW,CAAC;AACnB,YAAY,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/node-singletons/http.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC1E,YAAY,EACV,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,MAAM,GACP,MAAM,WAAW,CAAC"}
@@ -3,4 +3,4 @@
3
3
  * Safe to import in both API and CLI code
4
4
  * Exported from node:http built-in
5
5
  */
6
- export { createServer, IncomingMessage, ServerResponse, } from 'node:http';
6
+ export { createServer, IncomingMessage, ServerResponse } from 'node:http';
@@ -18,18 +18,18 @@
18
18
  * - readline
19
19
  */
20
20
  // Safe for all runtimes
21
- export * from './async_hooks';
22
- export * from './crypto';
23
- export * from './events';
24
- export * from './http';
25
- export * from './perf-hooks';
26
- export * as process from './process';
21
+ export * from './async_hooks.js';
22
+ export * from './crypto.js';
23
+ export * from './events.js';
24
+ export * from './http.js';
25
+ export * from './perf-hooks.js';
26
+ export * as process from './process.js';
27
27
  // CLI-only (should not be imported in API code)
28
- export * as childProcess from './child-process';
29
- export * as fs from './fs';
30
- export * as net from './net';
31
- export * as os from './os';
32
- export * as path from './path';
33
- export * as readline from './readline';
34
- export * as tls from './tls';
35
- export * as url from './url';
28
+ export * as childProcess from './child-process.js';
29
+ export * as fs from './fs.js';
30
+ export * as net from './net.js';
31
+ export * as os from './os.js';
32
+ export * as path from './path.js';
33
+ export * as readline from './readline.js';
34
+ export * as tls from './tls.js';
35
+ export * as url from './url.js';
@@ -4,6 +4,6 @@
4
4
  * Exported from node:path built-in
5
5
  */
6
6
  import * as path from 'node:path';
7
- export declare const basename: typeof path.basename, delimiter: ";" | ":", dirname: typeof path.dirname, extname: typeof path.extname, join: typeof path.join, relative: typeof path.relative, resolve: typeof path.resolve, sep: "\\" | "/";
7
+ export declare const basename: typeof path.basename, delimiter: ";" | ":", dirname: typeof path.dirname, extname: typeof path.extname, join: typeof path.join, relative: typeof path.relative, resolve: typeof path.resolve, sep: "/" | "\\";
8
8
  export default path;
9
9
  //# sourceMappingURL=path.d.ts.map
package/src/node.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ import process from './node-singletons/process';
2
+ export { FileLogWriter } from './config/FileLogWriter';
3
+ export { process };
4
+ export default process;
5
+ //# sourceMappingURL=node.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"node.d.ts","sourceRoot":"","sources":["../../src/node.ts"],"names":[],"mappings":"AAAA,OAAO,OAAO,MAAM,0BAA0B,CAAC;AAE/C,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAEtD,OAAO,EAAE,OAAO,EAAE,CAAC;AACnB,eAAe,OAAO,CAAC"}
package/src/node.js ADDED
@@ -0,0 +1,4 @@
1
+ import process from './node-singletons/process.js';
2
+ export { FileLogWriter } from './config/FileLogWriter.js';
3
+ export { process };
4
+ export default process;
@@ -5,9 +5,9 @@
5
5
  * Handles database connections across different runtime environments
6
6
  * Supports: PostgreSQL, MySQL, SQL Server with connection pooling for Lambda
7
7
  */
8
- import { Env } from '../config/env';
9
- import { Logger } from '../config/logger';
10
- import { ErrorFactory } from '../exceptions/ZintrustError';
8
+ import { Env } from '../config/env.js';
9
+ import { Logger } from '../config/logger.js';
10
+ import { ErrorFactory } from '../exceptions/ZintrustError.js';
11
11
  let instance;
12
12
  /**
13
13
  * Close a specific connection