@engjts/nexus 0.1.8 → 0.1.10

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 (221) hide show
  1. package/dist/advanced/playground/playground.js.map +1 -1
  2. package/dist/advanced/static/generateDirectoryListing.d.ts +1 -1
  3. package/dist/advanced/static/generateDirectoryListing.d.ts.map +1 -1
  4. package/dist/advanced/static/generateDirectoryListing.js +12 -6
  5. package/dist/advanced/static/generateDirectoryListing.js.map +1 -1
  6. package/dist/advanced/static/index.d.ts +2 -0
  7. package/dist/advanced/static/index.d.ts.map +1 -1
  8. package/dist/advanced/static/index.js +4 -1
  9. package/dist/advanced/static/index.js.map +1 -1
  10. package/dist/advanced/static/serveStatic.d.ts.map +1 -1
  11. package/dist/advanced/static/serveStatic.js +7 -1
  12. package/dist/advanced/static/serveStatic.js.map +1 -1
  13. package/dist/index.d.ts +1 -1
  14. package/dist/index.d.ts.map +1 -1
  15. package/dist/index.js +3 -1
  16. package/dist/index.js.map +1 -1
  17. package/package.json +1 -1
  18. package/BENCHMARK_REPORT.md +0 -343
  19. package/documentation/01-getting-started.md +0 -240
  20. package/documentation/02-context.md +0 -335
  21. package/documentation/03-routing.md +0 -397
  22. package/documentation/04-middleware.md +0 -483
  23. package/documentation/05-validation.md +0 -514
  24. package/documentation/06-error-handling.md +0 -465
  25. package/documentation/07-performance.md +0 -364
  26. package/documentation/08-adapters.md +0 -470
  27. package/documentation/09-api-reference.md +0 -548
  28. package/documentation/10-examples.md +0 -582
  29. package/documentation/11-deployment.md +0 -477
  30. package/documentation/12-sentry.md +0 -620
  31. package/documentation/13-sentry-data-storage.md +0 -996
  32. package/documentation/14-sentry-data-reference.md +0 -457
  33. package/documentation/15-sentry-summary.md +0 -409
  34. package/documentation/16-alerts-system.md +0 -745
  35. package/documentation/17-alert-adapters.md +0 -696
  36. package/documentation/18-alerts-implementation-summary.md +0 -385
  37. package/documentation/19-class-based-routing.md +0 -840
  38. package/documentation/20-websocket-realtime.md +0 -813
  39. package/documentation/21-cache-system.md +0 -510
  40. package/documentation/22-job-queue.md +0 -772
  41. package/documentation/23-sentry-plugin.md +0 -551
  42. package/documentation/24-testing-utilities.md +0 -1287
  43. package/documentation/25-api-versioning.md +0 -533
  44. package/documentation/26-context-store.md +0 -607
  45. package/documentation/27-dependency-injection.md +0 -329
  46. package/documentation/28-lifecycle-hooks.md +0 -521
  47. package/documentation/29-package-structure.md +0 -196
  48. package/documentation/30-plugin-system.md +0 -414
  49. package/documentation/31-jwt-authentication.md +0 -597
  50. package/documentation/32-cli.md +0 -268
  51. package/documentation/ALERTS-COMPLETE-SUMMARY.md +0 -429
  52. package/documentation/ALERTS-INDEX.md +0 -330
  53. package/documentation/ALERTS-QUICK-REFERENCE.md +0 -286
  54. package/documentation/README.md +0 -178
  55. package/documentation/index.html +0 -34
  56. package/modern_framework_paper.md +0 -1870
  57. package/public/css/style.css +0 -87
  58. package/public/index.html +0 -34
  59. package/public/js/app.js +0 -27
  60. package/src/advanced/cache/InMemoryCacheStore.ts +0 -68
  61. package/src/advanced/cache/MultiTierCache.ts +0 -194
  62. package/src/advanced/cache/RedisCacheStore.ts +0 -341
  63. package/src/advanced/cache/index.ts +0 -5
  64. package/src/advanced/cache/types.ts +0 -40
  65. package/src/advanced/graphql/SimpleDataLoader.ts +0 -42
  66. package/src/advanced/graphql/index.ts +0 -22
  67. package/src/advanced/graphql/server.ts +0 -252
  68. package/src/advanced/graphql/types.ts +0 -42
  69. package/src/advanced/jobs/InMemoryQueueStore.ts +0 -68
  70. package/src/advanced/jobs/JobQueue.ts +0 -556
  71. package/src/advanced/jobs/RedisQueueStore.ts +0 -367
  72. package/src/advanced/jobs/index.ts +0 -5
  73. package/src/advanced/jobs/types.ts +0 -70
  74. package/src/advanced/observability/APMManager.ts +0 -163
  75. package/src/advanced/observability/AlertManager.ts +0 -109
  76. package/src/advanced/observability/MetricRegistry.ts +0 -151
  77. package/src/advanced/observability/ObservabilityCenter.ts +0 -304
  78. package/src/advanced/observability/StructuredLogger.ts +0 -154
  79. package/src/advanced/observability/TracingManager.ts +0 -117
  80. package/src/advanced/observability/adapters.ts +0 -304
  81. package/src/advanced/observability/createObservabilityMiddleware.ts +0 -63
  82. package/src/advanced/observability/index.ts +0 -11
  83. package/src/advanced/observability/types.ts +0 -174
  84. package/src/advanced/playground/extractPathParams.ts +0 -6
  85. package/src/advanced/playground/generateFieldExample.ts +0 -31
  86. package/src/advanced/playground/generatePlaygroundHTML.ts +0 -1956
  87. package/src/advanced/playground/generateSummary.ts +0 -19
  88. package/src/advanced/playground/getTagFromPath.ts +0 -9
  89. package/src/advanced/playground/index.ts +0 -8
  90. package/src/advanced/playground/playground.ts +0 -250
  91. package/src/advanced/playground/types.ts +0 -49
  92. package/src/advanced/playground/zodToExample.ts +0 -16
  93. package/src/advanced/playground/zodToParams.ts +0 -15
  94. package/src/advanced/postman/buildAuth.ts +0 -31
  95. package/src/advanced/postman/buildBody.ts +0 -15
  96. package/src/advanced/postman/buildQueryParams.ts +0 -27
  97. package/src/advanced/postman/buildRequestItem.ts +0 -36
  98. package/src/advanced/postman/buildResponses.ts +0 -11
  99. package/src/advanced/postman/buildUrl.ts +0 -33
  100. package/src/advanced/postman/capitalize.ts +0 -4
  101. package/src/advanced/postman/generateCollection.ts +0 -59
  102. package/src/advanced/postman/generateEnvironment.ts +0 -34
  103. package/src/advanced/postman/generateExampleFromZod.ts +0 -21
  104. package/src/advanced/postman/generateFieldExample.ts +0 -45
  105. package/src/advanced/postman/generateName.ts +0 -20
  106. package/src/advanced/postman/generateUUID.ts +0 -11
  107. package/src/advanced/postman/getTagFromPath.ts +0 -10
  108. package/src/advanced/postman/index.ts +0 -28
  109. package/src/advanced/postman/postman.ts +0 -156
  110. package/src/advanced/postman/slugify.ts +0 -7
  111. package/src/advanced/postman/types.ts +0 -140
  112. package/src/advanced/realtime/index.ts +0 -18
  113. package/src/advanced/realtime/websocket.ts +0 -231
  114. package/src/advanced/sentry/index.ts +0 -1236
  115. package/src/advanced/sentry/types.ts +0 -355
  116. package/src/advanced/static/generateDirectoryListing.ts +0 -47
  117. package/src/advanced/static/generateETag.ts +0 -7
  118. package/src/advanced/static/getMimeType.ts +0 -9
  119. package/src/advanced/static/index.ts +0 -32
  120. package/src/advanced/static/isSafePath.ts +0 -13
  121. package/src/advanced/static/publicDir.ts +0 -21
  122. package/src/advanced/static/serveStatic.ts +0 -225
  123. package/src/advanced/static/spa.ts +0 -24
  124. package/src/advanced/static/types.ts +0 -159
  125. package/src/advanced/swagger/SwaggerGenerator.ts +0 -66
  126. package/src/advanced/swagger/buildOperation.ts +0 -61
  127. package/src/advanced/swagger/buildParameters.ts +0 -61
  128. package/src/advanced/swagger/buildRequestBody.ts +0 -21
  129. package/src/advanced/swagger/buildResponses.ts +0 -54
  130. package/src/advanced/swagger/capitalize.ts +0 -5
  131. package/src/advanced/swagger/convertPath.ts +0 -9
  132. package/src/advanced/swagger/createSwagger.ts +0 -12
  133. package/src/advanced/swagger/generateOperationId.ts +0 -21
  134. package/src/advanced/swagger/generateSpec.ts +0 -105
  135. package/src/advanced/swagger/generateSummary.ts +0 -24
  136. package/src/advanced/swagger/generateSwaggerUI.ts +0 -70
  137. package/src/advanced/swagger/generateThemeCss.ts +0 -53
  138. package/src/advanced/swagger/index.ts +0 -25
  139. package/src/advanced/swagger/swagger.ts +0 -237
  140. package/src/advanced/swagger/types.ts +0 -206
  141. package/src/advanced/swagger/zodFieldToOpenAPI.ts +0 -94
  142. package/src/advanced/swagger/zodSchemaToOpenAPI.ts +0 -50
  143. package/src/advanced/swagger/zodToOpenAPI.ts +0 -22
  144. package/src/advanced/testing/factory.ts +0 -509
  145. package/src/advanced/testing/harness.ts +0 -612
  146. package/src/advanced/testing/index.ts +0 -430
  147. package/src/advanced/testing/load-test.ts +0 -618
  148. package/src/advanced/testing/mock-server.ts +0 -498
  149. package/src/advanced/testing/mock.ts +0 -670
  150. package/src/cli/bin.ts +0 -9
  151. package/src/cli/cli.ts +0 -158
  152. package/src/cli/commands/add.ts +0 -178
  153. package/src/cli/commands/build.ts +0 -73
  154. package/src/cli/commands/create.ts +0 -166
  155. package/src/cli/commands/dev.ts +0 -85
  156. package/src/cli/commands/generate.ts +0 -99
  157. package/src/cli/commands/help.ts +0 -95
  158. package/src/cli/commands/init.ts +0 -91
  159. package/src/cli/commands/version.ts +0 -38
  160. package/src/cli/index.ts +0 -6
  161. package/src/cli/templates/generators.ts +0 -359
  162. package/src/cli/templates/index.ts +0 -680
  163. package/src/cli/utils/exec.ts +0 -52
  164. package/src/cli/utils/file-system.ts +0 -78
  165. package/src/cli/utils/logger.ts +0 -111
  166. package/src/core/adapter.ts +0 -88
  167. package/src/core/application.ts +0 -1453
  168. package/src/core/context-pool.ts +0 -79
  169. package/src/core/context.ts +0 -856
  170. package/src/core/index.ts +0 -94
  171. package/src/core/middleware.ts +0 -272
  172. package/src/core/performance/buffer-pool.ts +0 -108
  173. package/src/core/performance/middleware-optimizer.ts +0 -162
  174. package/src/core/plugin/PluginManager.ts +0 -435
  175. package/src/core/plugin/builder.ts +0 -358
  176. package/src/core/plugin/index.ts +0 -50
  177. package/src/core/plugin/types.ts +0 -214
  178. package/src/core/router/file-router.ts +0 -623
  179. package/src/core/router/index.ts +0 -260
  180. package/src/core/router/radix-tree.ts +0 -242
  181. package/src/core/serializer.ts +0 -397
  182. package/src/core/store/index.ts +0 -30
  183. package/src/core/store/registry.ts +0 -178
  184. package/src/core/store/request-store.ts +0 -240
  185. package/src/core/store/types.ts +0 -233
  186. package/src/core/types.ts +0 -616
  187. package/src/database/adapter.ts +0 -35
  188. package/src/database/adapters/index.ts +0 -1
  189. package/src/database/adapters/mysql.ts +0 -669
  190. package/src/database/database.ts +0 -70
  191. package/src/database/dialect.ts +0 -388
  192. package/src/database/index.ts +0 -12
  193. package/src/database/migrations.ts +0 -86
  194. package/src/database/optimizer.ts +0 -125
  195. package/src/database/query-builder.ts +0 -404
  196. package/src/database/realtime.ts +0 -53
  197. package/src/database/schema.ts +0 -71
  198. package/src/database/transactions.ts +0 -56
  199. package/src/database/types.ts +0 -87
  200. package/src/deployment/cluster.ts +0 -471
  201. package/src/deployment/config.ts +0 -454
  202. package/src/deployment/docker.ts +0 -599
  203. package/src/deployment/graceful-shutdown.ts +0 -373
  204. package/src/deployment/index.ts +0 -56
  205. package/src/index.ts +0 -281
  206. package/src/security/adapter.ts +0 -318
  207. package/src/security/auth/JWTPlugin.ts +0 -234
  208. package/src/security/auth/JWTProvider.ts +0 -316
  209. package/src/security/auth/adapter.ts +0 -12
  210. package/src/security/auth/jwt.ts +0 -234
  211. package/src/security/auth/middleware.ts +0 -188
  212. package/src/security/csrf.ts +0 -220
  213. package/src/security/headers.ts +0 -108
  214. package/src/security/index.ts +0 -60
  215. package/src/security/rate-limit/adapter.ts +0 -7
  216. package/src/security/rate-limit/memory.ts +0 -108
  217. package/src/security/rate-limit/middleware.ts +0 -181
  218. package/src/security/sanitization.ts +0 -75
  219. package/src/security/types.ts +0 -240
  220. package/src/security/utils.ts +0 -52
  221. package/tsconfig.json +0 -39
@@ -1 +1 @@
1
- {"version":3,"file":"playground.js","sourceRoot":"","sources":["../../../src/advanced/playground/playground.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"playground.js","sourceRoot":"","sources":["../../../src/advanced/playground/playground.ts"],"names":[],"mappings":";;AA8BA,gCA0KC;AAxMD,2DAAwD;AACxD,+CAA4C;AAC5C,iDAA8C;AAC9C,qDAAkD;AAClD,uDAAoD;AACpD,qEAAkE;AAMlE;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAgB,UAAU,CAAC,SAA2B,EAAE;IACtD,MAAM,cAAc,GAAqB;QACvC,IAAI,EAAE,aAAa;QACnB,KAAK,EAAE,gBAAgB;QACvB,KAAK,EAAE,MAAM;QACb,aAAa,EAAE,IAAI;QACnB,UAAU,EAAE,EAAE;QACd,eAAe,EAAE,IAAI;QACrB,eAAe,EAAE,IAAI;QACrB,cAAc,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;QACtD,SAAS,EAAE,EAAE,OAAO,EAAE,uBAAuB,EAAE,KAAK,EAAE,EAAE,EAAE;QAC1D,GAAG,MAAM;KACV,CAAC;IAEF,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,IAAI,eAAe,GAAG,EAAE,CAAC;IACzB,IAAI,WAAW,GAAuB,IAAI,CAAC;IAE3C,OAAO;QACL,IAAI,EAAE,YAAY;QAClB,OAAO,EAAE,OAAO;QAEhB,OAAO,CAAC,GAAgB;YACtB,uDAAuD;YACvD,IAAI,cAAc,CAAC,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,EAAE,CAAC;gBAC5E,OAAO,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAC;gBAClE,OAAO;YACT,CAAC;YAED,WAAW,GAAG,GAAG,CAAC;YAClB,MAAM,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC1C,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,YAAY,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACxC,MAAM,WAAW,GAAG,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACtC,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAC5C,MAAM,aAAa,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE1C,GAAG,CAAC,KAAK,GAAG,UAAU,WAAwB;gBAC5C,MAAM,CAAC,IAAI,CAAC;oBACV,MAAM,EAAE,WAAW,CAAC,MAAM;oBAC1B,IAAI,EAAE,WAAW,CAAC,IAAI;oBACtB,MAAM,EAAE,WAAW,CAAC,MAAM;oBAC1B,IAAI,EAAE,WAAW,CAAC,IAAI;iBACvB,CAAC,CAAC;gBACH,OAAO,aAAa,CAAC,WAAW,CAAC,CAAC;YACpC,CAAC,CAAC;YAEF,MAAM,UAAU,GAAG,CAAC,MAAkB,EAAE,QAAkB,EAAE,EAAE;gBAC5D,OAAO,UAAU,WAAyB,EAAE,eAAqB;oBAC/D,sBAAsB;oBACtB,IAAI,OAAO,WAAW,KAAK,QAAQ,IAAI,UAAU,IAAI,WAAW,EAAE,CAAC;wBACjE,MAAM,KAAK,GAAG,WAAW,CAAC;wBAC1B,MAAM,CAAC,IAAI,CAAC;4BACV,MAAM;4BACN,IAAI,EAAE,KAAK,CAAC,QAAQ;4BACpB,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EAAE;4BACxB,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,EAAE;yBACrB,CAAC,CAAC;wBACH,OAAO,QAAQ,CAAC,WAAW,CAAC,CAAC;oBAC/B,CAAC;oBAED,MAAM,IAAI,GAAG,WAAW,CAAC;oBACzB,IAAI,OAAO,eAAe,KAAK,UAAU,IAAI,eAAe,EAAE,CAAC;wBAC7D,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,eAAe,CAAC,MAAM,EAAE,IAAI,EAAE,eAAe,CAAC,IAAI,EAAE,CAAC,CAAC;oBAC5F,CAAC;yBAAM,CAAC;wBACN,MAAM,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;oBAChC,CAAC;oBACD,OAAO,QAAQ,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;gBACzC,CAAC,CAAC;YACJ,CAAC,CAAC;YAEF,GAAG,CAAC,GAAG,GAAG,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACzC,GAAG,CAAC,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YAC5C,GAAG,CAAC,GAAG,GAAG,UAAU,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;YACzC,GAAG,CAAC,MAAM,GAAG,UAAU,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;YAClD,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YAE/C,MAAM,QAAQ,GAAG,cAAc,CAAC,IAAK,CAAC;YAEtC;;;eAGG;YACH,MAAM,cAAc,GAAG,CAAC,GAAQ,EAAE,EAAE;gBAClC,IAAI,CAAC,cAAc,CAAC,IAAI,EAAE,CAAC;oBACzB,OAAO,IAAI,CAAC,CAAC,mBAAmB;gBAClC,CAAC;gBAED,MAAM,UAAU,GAAG,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,aAAa,IAAI,GAAG,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,eAAe,CAAC,CAAC;gBAE/F,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,IAAI,CAAC;oBACH,MAAM,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;oBAClD,MAAM,WAAW,GAAG,MAAM,CAAC,IAAI,CAAC,iBAAiB,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;oBAC/E,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBAEpD,OAAO,CACL,QAAQ,KAAK,cAAc,CAAC,IAAI,CAAC,QAAQ;wBACzC,QAAQ,KAAK,cAAc,CAAC,IAAI,CAAC,QAAQ,CAC1C,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,KAAK,CAAC;gBACf,CAAC;YACH,CAAC,CAAC;YAEF;;;eAGG;YACH,MAAM,oBAAoB,GAAG,GAAG,EAAE;gBAChC,OAAO;oBACL,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE;wBACP,kBAAkB,EAAE,8BAA8B;wBAClD,cAAc,EAAE,YAAY;qBAC7B;oBACD,IAAI,EAAE,cAAc;iBACrB,CAAC;YACJ,CAAC,CAAC;YAEF,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,GAAQ,EAAE,EAAE;gBACvC,uBAAuB;gBACvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,OAAO,oBAAoB,EAAE,CAAC;gBAChC,CAAC;gBAED,IAAI,CAAC,eAAe,IAAI,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC;oBACrC,MAAM,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;oBACxB,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,mBAAmB,CAAC,IAAI,MAAM,CAAC;oBAC5D,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,IAAI,gBAAgB,CAAC;oBAClD,eAAe,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;gBAC5C,CAAC;gBACD,OAAO;oBACL,UAAU,EAAE,GAAG;oBACf,OAAO,EAAE,EAAE,cAAc,EAAE,0BAA0B,EAAE;oBACvD,IAAI,EAAE,IAAA,+CAAsB,EAAC,cAAc,EAAE,eAAe,CAAC;iBAC9D,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,WAAW,CAAC,QAAQ,GAAG,aAAa,EAAE,KAAK,EAAE,GAAY,EAAE,EAAE;gBAC3D,uBAAuB;gBACvB,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,EAAE,CAAC;oBACzB,OAAO,oBAAoB,EAAE,CAAC;gBAChC,CAAC;gBAED,8EAA8E;gBAC9E,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,CAAC,CAAC;gBAE9D,MAAM,UAAU,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;oBACrC,MAAM,EAAE,CAAC,CAAC,MAAM;oBAChB,IAAI,EAAE,CAAC,CAAC,IAAI;oBACZ,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,IAAI,IAAA,iCAAe,EAAC,CAAC,CAAC,MAAoB,EAAE,CAAC,CAAC,IAAI,CAAC;oBAC3E,WAAW,EAAE,CAAC,CAAC,IAAI,EAAE,WAAW;oBAChC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,IAAI,IAAI,CAAC,IAAA,+BAAc,EAAC,CAAC,CAAC,IAAI,CAAC,CAAC;oBAC9C,UAAU,EAAE,CAAC,CAAC,IAAI,EAAE,UAAU;oBAC9B,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,SAAS;oBAC5B,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO;oBACxB,MAAM,EAAE;wBACN,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC,IAAA,2BAAY,EAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI;wBACzD,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAC,IAAA,yBAAW,EAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI;wBAC3D,MAAM,EAAE,IAAA,qCAAiB,EAAC,CAAC,CAAC,IAAI,CAAC;qBAClC;iBACF,CAAC,CAAC,CAAC;gBACJ,OAAO,GAAG,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9B,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC;AACJ,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CACnB,iBAAgC,EAChC,GAAuB,EACvB,QAAgB;IAEhB,6DAA6D;IAC7D,MAAM,WAAW,GAAG,IAAI,GAAG,CACzB,iBAAiB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CACpD,CAAC;IAEF,2CAA2C;IAC3C,MAAM,SAAS,GAAkB,iBAAiB,CAAC,MAAM,CACvD,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAClC,CAAC;IAEF,sDAAsD;IACtD,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,YAAY,GAAG,GAAG,CAAC,SAAS,EAKhC,CAAC;QAEH,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;YACjC,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC;YAE5C,iDAAiD;YACjD,IAAI,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;gBAC5D,SAAS;YACX,CAAC;YAED,SAAS,CAAC,IAAI,CAAC;gBACb,MAAM,EAAE,KAAK,CAAC,MAAoB;gBAClC,IAAI,EAAE,KAAK,CAAC,IAAI;gBAChB,MAAM,EAAE,KAAK,CAAC,MAAM;gBACpB,IAAI,EAAE,KAAK,CAAC,IAAI;aACjB,CAAC,CAAC;QACL,CAAC;IACH,CAAC;IAED,8CAA8C;IAC9C,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;AAChE,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Generate HTML for directory listing
3
3
  */
4
- export declare function generateDirectoryListing(dirPath: string, urlPath: string): Promise<string>;
4
+ export declare function generateDirectoryListing(dirPath: string, urlPath: string, prefix?: string): Promise<string>;
5
5
  //# sourceMappingURL=generateDirectoryListing.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"generateDirectoryListing.d.ts","sourceRoot":"","sources":["../../../src/advanced/static/generateDirectoryListing.ts"],"names":[],"mappings":"AAGA;;GAEG;AAEH,wBAAsB,wBAAwB,CAC1C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC,MAAM,CAAC,CAoCjB"}
1
+ {"version":3,"file":"generateDirectoryListing.d.ts","sourceRoot":"","sources":["../../../src/advanced/static/generateDirectoryListing.ts"],"names":[],"mappings":"AAEA;;GAEG;AAEH,wBAAsB,wBAAwB,CAC1C,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,MAAW,GACpB,OAAO,CAAC,MAAM,CAAC,CA6CjB"}
@@ -2,28 +2,34 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.generateDirectoryListing = generateDirectoryListing;
4
4
  const promises_1 = require("fs/promises");
5
- const posix_1 = require("path/posix");
6
5
  /**
7
6
  * Generate HTML for directory listing
8
7
  */
9
- async function generateDirectoryListing(dirPath, urlPath) {
8
+ async function generateDirectoryListing(dirPath, urlPath, prefix = '') {
10
9
  const entries = await (0, promises_1.readdir)(dirPath, { withFileTypes: true });
10
+ // Build full URL path with prefix
11
+ const fullUrlPath = `${prefix}${urlPath}`.replace(/\/+/g, '/') || '/';
12
+ const basePath = fullUrlPath.endsWith('/') ? fullUrlPath : `${fullUrlPath}/`;
11
13
  const items = entries
12
14
  .filter(e => !e.name.startsWith('.'))
13
15
  .map(entry => {
14
16
  const isDir = entry.isDirectory();
15
17
  const name = isDir ? `${entry.name}/` : entry.name;
16
- const href = (0, posix_1.join)(urlPath, entry.name);
18
+ const href = `${basePath}${entry.name}`.replace(/\/+/g, '/');
17
19
  const icon = isDir ? '📁' : '📄';
18
20
  return `<li><a href="${href}">${icon} ${name}</a></li>`;
19
21
  })
20
22
  .join('\n');
23
+ // Parent directory href (with prefix)
24
+ const parentHref = fullUrlPath === '/' || fullUrlPath === prefix
25
+ ? null
26
+ : fullUrlPath.replace(/\/[^/]*\/?$/, '') || '/';
21
27
  return `<!DOCTYPE html>
22
28
  <html lang="en">
23
29
  <head>
24
30
  <meta charset="UTF-8">
25
31
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
26
- <title>Index of ${urlPath}</title>
32
+ <title>Index of ${fullUrlPath}</title>
27
33
  <style>
28
34
  body { font-family: system-ui, sans-serif; max-width: 800px; margin: 40px auto; padding: 20px; }
29
35
  h1 { color: #333; border-bottom: 1px solid #eee; padding-bottom: 10px; }
@@ -35,8 +41,8 @@ async function generateDirectoryListing(dirPath, urlPath) {
35
41
  </style>
36
42
  </head>
37
43
  <body>
38
- <h1>Index of ${urlPath}</h1>
39
- ${urlPath !== '/' ? `<div class="parent"><a href="${(0, posix_1.join)(urlPath, '..')}">📁 ..</a></div>` : ''}
44
+ <h1>Index of ${fullUrlPath}</h1>
45
+ ${parentHref ? `<div class="parent"><a href="${parentHref}">📁 ..</a></div>` : ''}
40
46
  <ul>${items}</ul>
41
47
  </body>
42
48
  </html>`;
@@ -1 +1 @@
1
- {"version":3,"file":"generateDirectoryListing.js","sourceRoot":"","sources":["../../../src/advanced/static/generateDirectoryListing.ts"],"names":[],"mappings":";;AAOA,4DAuCC;AA9CD,0CAAsC;AACtC,sCAAkC;AAElC;;GAEG;AAEI,KAAK,UAAU,wBAAwB,CAC1C,OAAe,EACf,OAAe;IAEf,MAAM,OAAO,GAAG,MAAM,IAAA,kBAAO,EAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhE,MAAM,KAAK,GAAG,OAAO;SAChB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SACpC,GAAG,CAAC,KAAK,CAAC,EAAE;QACT,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QACnD,MAAM,IAAI,GAAG,IAAA,YAAI,EAAC,OAAO,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;QACvC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACjC,OAAO,gBAAgB,IAAI,KAAK,IAAI,IAAI,IAAI,WAAW,CAAC;IAC5D,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhB,OAAO;;;;;sBAKW,OAAO;;;;;;;;;;;;mBAYV,OAAO;MACpB,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,gCAAgC,IAAA,YAAI,EAAC,OAAO,EAAE,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,EAAE;UACzF,KAAK;;QAEP,CAAC;AACT,CAAC"}
1
+ {"version":3,"file":"generateDirectoryListing.js","sourceRoot":"","sources":["../../../src/advanced/static/generateDirectoryListing.ts"],"names":[],"mappings":";;AAMA,4DAiDC;AAvDD,0CAAsC;AAEtC;;GAEG;AAEI,KAAK,UAAU,wBAAwB,CAC1C,OAAe,EACf,OAAe,EACf,SAAiB,EAAE;IAEnB,MAAM,OAAO,GAAG,MAAM,IAAA,kBAAO,EAAC,OAAO,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhE,kCAAkC;IAClC,MAAM,WAAW,GAAG,GAAG,MAAM,GAAG,OAAO,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,GAAG,CAAC;IACtE,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,GAAG,WAAW,GAAG,CAAC;IAE7E,MAAM,KAAK,GAAG,OAAO;SAChB,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;SACpC,GAAG,CAAC,KAAK,CAAC,EAAE;QACT,MAAM,KAAK,GAAG,KAAK,CAAC,WAAW,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC;QACnD,MAAM,IAAI,GAAG,GAAG,QAAQ,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7D,MAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;QACjC,OAAO,gBAAgB,IAAI,KAAK,IAAI,IAAI,IAAI,WAAW,CAAC;IAC5D,CAAC,CAAC;SACD,IAAI,CAAC,IAAI,CAAC,CAAC;IAEhB,sCAAsC;IACtC,MAAM,UAAU,GAAG,WAAW,KAAK,GAAG,IAAI,WAAW,KAAK,MAAM;QAC5D,CAAC,CAAC,IAAI;QACN,CAAC,CAAC,WAAW,CAAC,OAAO,CAAC,aAAa,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC;IAEpD,OAAO;;;;;sBAKW,WAAW;;;;;;;;;;;;mBAYd,WAAW;MACxB,UAAU,CAAC,CAAC,CAAC,gCAAgC,UAAU,mBAAmB,CAAC,CAAC,CAAC,EAAE;UAC3E,KAAK;;QAEP,CAAC;AACT,CAAC"}
@@ -23,8 +23,10 @@
23
23
  * ```
24
24
  */
25
25
  import { serveStatic } from './serveStatic';
26
+ import { publicDir } from './publicDir';
26
27
  /**
27
28
  * Alias for serveStatic
28
29
  */
29
30
  export declare const staticFiles: typeof serveStatic;
31
+ export { serveStatic, publicDir };
30
32
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/advanced/static/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C;;GAEG;AACH,eAAO,MAAM,WAAW,oBAAc,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/advanced/static/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;GAEG;AACH,eAAO,MAAM,WAAW,oBAAc,CAAC;AAEvC,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,CAAC"}
@@ -24,8 +24,11 @@
24
24
  * ```
25
25
  */
26
26
  Object.defineProperty(exports, "__esModule", { value: true });
27
- exports.staticFiles = void 0;
27
+ exports.publicDir = exports.serveStatic = exports.staticFiles = void 0;
28
28
  const serveStatic_1 = require("./serveStatic");
29
+ Object.defineProperty(exports, "serveStatic", { enumerable: true, get: function () { return serveStatic_1.serveStatic; } });
30
+ const publicDir_1 = require("./publicDir");
31
+ Object.defineProperty(exports, "publicDir", { enumerable: true, get: function () { return publicDir_1.publicDir; } });
29
32
  /**
30
33
  * Alias for serveStatic
31
34
  */
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/advanced/static/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;AAEH,+CAA4C;AAE5C;;GAEG;AACU,QAAA,WAAW,GAAG,yBAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/advanced/static/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;;;AAEH,+CAA4C;AAQnC,4FARA,yBAAW,OAQA;AAPpB,2CAAwC;AAOlB,0FAPb,qBAAS,OAOa;AAL/B;;GAEG;AACU,QAAA,WAAW,GAAG,yBAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"serveStatic.d.ts","sourceRoot":"","sources":["../../../src/advanced/static/serveStatic.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAqB,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;GAEG;AAEH,wBAAgB,WAAW,CAAC,MAAM,GAAE,YAAiB,GAAG,MAAM,CAmN7D"}
1
+ {"version":3,"file":"serveStatic.d.ts","sourceRoot":"","sources":["../../../src/advanced/static/serveStatic.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,MAAM,EAAqB,MAAM,kBAAkB,CAAC;AAC7D,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;GAEG;AAEH,wBAAgB,WAAW,CAAC,MAAM,GAAE,YAAiB,GAAG,MAAM,CA0N7D"}
@@ -21,6 +21,9 @@ function serveStatic(config = {}) {
21
21
  // Create the static file handler
22
22
  const staticHandler = async (ctx) => {
23
23
  let requestPath = ctx.path;
24
+ if (app.config?.debug) {
25
+ console.log(`📁 Static request: ${requestPath}`);
26
+ }
24
27
  // Remove prefix if set
25
28
  if (normalizedPrefix && requestPath.startsWith(normalizedPrefix)) {
26
29
  requestPath = requestPath.slice(normalizedPrefix.length) || '/';
@@ -55,6 +58,9 @@ function serveStatic(config = {}) {
55
58
  }
56
59
  // Check if file/directory exists
57
60
  if (!(0, fs_1.existsSync)(filePath)) {
61
+ if (app.config?.debug) {
62
+ console.log(`📁 Static: File not found: ${filePath}`);
63
+ }
58
64
  // Try fallback for SPA
59
65
  if (fallback) {
60
66
  const fallbackPath = (0, posix_1.join)(rootPath, fallback);
@@ -79,7 +85,7 @@ function serveStatic(config = {}) {
79
85
  }
80
86
  // Directory listing
81
87
  if (directory) {
82
- const html = await (0, generateDirectoryListing_1.generateDirectoryListing)(filePath, requestPath);
88
+ const html = await (0, generateDirectoryListing_1.generateDirectoryListing)(filePath, requestPath, normalizedPrefix);
83
89
  return {
84
90
  statusCode: 200,
85
91
  headers: { 'Content-Type': 'text/html; charset=utf-8' },
@@ -1 +1 @@
1
- {"version":3,"file":"serveStatic.js","sourceRoot":"","sources":["../../../src/advanced/static/serveStatic.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"serveStatic.js","sourceRoot":"","sources":["../../../src/advanced/static/serveStatic.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -33,7 +33,7 @@ export type { PostmanConfig, PostmanAuth, PostmanCollection, PostmanEnvironment
33
33
  export { postman } from './advanced/postman/postman';
34
34
  export { playground, type PlaygroundConfig } from './advanced/playground';
35
35
  export { TestClient } from './advanced/testing/harness';
36
- export { staticFiles } from './advanced/static';
36
+ export { staticFiles, publicDir, serveStatic } from './advanced/static';
37
37
  export { WebSocketGateway, type WebSocketContext, type WebSocketRoute, type WebSocketRouteConfig } from './advanced/realtime/websocket';
38
38
  export { MultiTierCache, InMemoryCacheStore, RedisCacheStore, createRedisCache, type CacheStore, type CacheEntry, type CacheSetOptions, type CacheTierConfig, type CacheWrapOptions, type MemoizeOptions, type RedisCacheConfig, type RedisClientLike } from './advanced/cache';
39
39
  export { z } from 'zod';
@@ -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/dist/index.js CHANGED
@@ -20,7 +20,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
20
20
  };
21
21
  Object.defineProperty(exports, "__esModule", { value: true });
22
22
  exports.createGracefulShutdown = exports.GracefulShutdownManager = exports.withSpan = exports.setExtra = exports.setTag = exports.setUser = exports.addBreadcrumb = exports.captureMessage = exports.captureException = exports.createSentryErrorHandler = exports.createSentryMiddleware = exports.getSentry = exports.initSentry = exports.SentryClient = exports.createObservabilityMiddleware = exports.ObservabilityCenter = exports.CommonSchemas = exports.SerializerRegistry = exports.serializerRegistry = exports.serialize = exports.createArraySerializer = exports.createSerializer = exports.PerformanceMonitor = exports.MiddlewareOptimizer = exports.StreamUtils = exports.BufferPool = exports.AdapterRegistry = exports.createPlugin = exports.definePlugin = exports.PluginBuilder = exports.PluginManager = exports.createStoreRegistry = exports.RequestStoreRegistry = exports.StoreRegistry = exports.RequestStore = exports.ContextStore = exports.ContextPool = exports.parseBody = exports.ContextImpl = exports.errorHandler = exports.cors = exports.logger = exports.MiddlewareExecutor = exports.useFileRoutes = exports.createFileRouter = exports.FileRouter = exports.Router = exports.createApp = exports.Nexus = exports.Application = void 0;
23
- exports.z = exports.createRedisCache = exports.RedisCacheStore = exports.InMemoryCacheStore = exports.MultiTierCache = exports.WebSocketGateway = exports.staticFiles = exports.TestClient = exports.playground = exports.postman = exports.createSwagger = exports.SwaggerGenerator = exports.swagger = exports.generateDockerFiles = exports.createDocker = exports.DockerGenerator = exports.requireEnv = exports.env = exports.defineConfig = exports.ConfigManager = exports.runClustered = exports.createCluster = exports.ClusterManager = void 0;
23
+ exports.z = exports.createRedisCache = exports.RedisCacheStore = exports.InMemoryCacheStore = exports.MultiTierCache = exports.WebSocketGateway = exports.serveStatic = exports.publicDir = exports.staticFiles = exports.TestClient = exports.playground = exports.postman = exports.createSwagger = exports.SwaggerGenerator = exports.swagger = exports.generateDockerFiles = exports.createDocker = exports.DockerGenerator = exports.requireEnv = exports.env = exports.defineConfig = exports.ConfigManager = exports.runClustered = exports.createCluster = exports.ClusterManager = void 0;
24
24
  // =============================================================================
25
25
  // CORE
26
26
  // =============================================================================
@@ -167,6 +167,8 @@ Object.defineProperty(exports, "TestClient", { enumerable: true, get: function (
167
167
  // Static File Serving
168
168
  var static_1 = require("./advanced/static");
169
169
  Object.defineProperty(exports, "staticFiles", { enumerable: true, get: function () { return static_1.staticFiles; } });
170
+ Object.defineProperty(exports, "publicDir", { enumerable: true, get: function () { return static_1.publicDir; } });
171
+ Object.defineProperty(exports, "serveStatic", { enumerable: true, get: function () { return static_1.serveStatic; } });
170
172
  // WebSocket / Realtime
171
173
  var websocket_1 = require("./advanced/realtime/websocket");
172
174
  Object.defineProperty(exports, "WebSocketGateway", { enumerable: true, get: function () { return websocket_1.WebSocketGateway; } });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@engjts/nexus",
3
- "version": "0.1.8",
3
+ "version": "0.1.10",
4
4
  "description": "Nexus framework async-first web framework with type-safety and security built-in",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -1,343 +0,0 @@
1
- # 📊 Benchmark Report: Nexus vs Express vs Fastify
2
-
3
- **Tanggal Test:** 7 Desember 2025
4
- **Environment:** macOS
5
- **Node.js Runtime:** tsx (TypeScript execution)
6
-
7
- ---
8
-
9
- ## ⚙️ Konfigurasi Benchmark
10
-
11
- | Parameter | Value |
12
- |-----------|-------|
13
- | Duration | 10 detik per test |
14
- | Connections | 100 concurrent |
15
- | Pipelining | 10 requests per connection |
16
- | Tool | autocannon v7.15.0 |
17
-
18
- ---
19
-
20
- ## 🏆 Hasil Overall
21
-
22
- | Rank | Server | Avg Req/sec | Avg Latency | Total Errors |
23
- |------|--------|-------------|-------------|--------------|
24
- | 🥇 | **Fastify** | 71,578 | 16.5 ms | 0 |
25
- | 🥈 | **Nexus** | 49,313 | 19.2 ms | 910 |
26
- | 🥉 | **Express** | 20,277 | 51.6 ms | 0 |
27
-
28
- ---
29
-
30
- ## 📌 Hasil Per Endpoint
31
-
32
- ### 1. Simple JSON Response (`GET /json`)
33
-
34
- Response: `{ "message": "Hello, World!" }`
35
-
36
- | Server | Req/sec | Latency (avg) | Latency (p99) | Throughput |
37
- |--------|---------|---------------|---------------|------------|
38
- | **Fastify** | 98,004 | 9.69 ms | 16 ms | 18.51 MB/s |
39
- | **Nexus** | 96,131 | 9.99 ms | 15 ms | 16.69 MB/s |
40
- | Express | 27,071 | 36.42 ms | 74 ms | 6.76 MB/s |
41
-
42
- **🏆 Winner:** Fastify (+1.9% vs Nexus)
43
-
44
- > ✅ **Nexus sangat kompetitif!** Hanya 1.9% lebih lambat dari Fastify untuk simple JSON.
45
-
46
- ---
47
-
48
- ### 2. Echo with Query Parameter (`GET /echo?name=Benchmark`)
49
-
50
- Response: `{ "echo": "Hello, Benchmark!" }`
51
-
52
- | Server | Req/sec | Latency (avg) | Latency (p99) | Throughput |
53
- |--------|---------|---------------|---------------|------------|
54
- | **Fastify** | 92,023 | 10.44 ms | 19 ms | 17.47 MB/s |
55
- | **Nexus** | 71,066 | 13.70 ms | 23 ms | 12.40 MB/s |
56
- | Express | 22,747 | 43.39 ms | 87 ms | 5.71 MB/s |
57
-
58
- **🏆 Winner:** Fastify (+29.5% vs Nexus)
59
-
60
- > ⚠️ **Gap mulai terlihat** saat ada query parameter parsing.
61
-
62
- ---
63
-
64
- ### 3. Large Array Response (`GET /users`)
65
-
66
- Response: Array of 100 user objects
67
-
68
- | Server | Req/sec | Latency (avg) | Latency (p99) | Throughput |
69
- |--------|---------|---------------|---------------|------------|
70
- | **Fastify** | 31,896 | 30.83 ms | 54 ms | 218.99 MB/s |
71
- | **Nexus** | 30,047 | 32.75 ms | 68 ms | 205.84 MB/s |
72
- | Express | 15,349 | 64.47 ms | 127 ms | 106.37 MB/s |
73
-
74
- **🏆 Winner:** Fastify (+6.2% vs Nexus)
75
-
76
- > ✅ **Nexus performs well** untuk payload besar, hanya 6% lebih lambat.
77
-
78
- ---
79
-
80
- ### 4. POST with JSON Body (`POST /data`)
81
-
82
- Request Body: `{ "test": "data", "numbers": [1,2,3,4,5] }`
83
-
84
- | Server | Req/sec | Latency (avg) | Latency (p99) | Errors |
85
- |--------|---------|---------------|---------------|--------|
86
- | **Fastify** | 64,388 | 15.03 ms | 28 ms | 0 |
87
- | Express | 15,941 | 62.10 ms | 103 ms | 0 |
88
- | Nexus | 8 | 20.44 ms | 27 ms | **910** |
89
-
90
- **🏆 Winner:** Fastify
91
-
92
- > 🚨 **CRITICAL ISSUE:** Nexus mengalami 910 timeout errors dan hanya mampu handle 8 req/sec!
93
-
94
- ---
95
-
96
- ## 🐛 Issue Analysis: Nexus POST Body Parsing
97
-
98
- ### Problem yang Ditemukan
99
-
100
- Saat benchmark POST endpoint, Nexus mengalami:
101
- - **910 timeout errors**
102
- - **0 successful 2xx responses** (82 non-2xx responses)
103
- - Throughput drop dari ~70k req/s ke **8 req/s**
104
-
105
- ### Root Cause Analysis
106
-
107
- Berdasarkan kode server Nexus yang kita gunakan:
108
-
109
- ```typescript
110
- app.post('/data', async (ctx) => {
111
- const body = await ctx.body(); // ← Potential bottleneck
112
- return ctx.json({ received: body, processed: true });
113
- });
114
- ```
115
-
116
- **Kemungkinan penyebab:**
117
-
118
- 1. **Async Body Parsing Bottleneck**
119
- - `ctx.body()` mungkin tidak di-optimize untuk high concurrency
120
- - Setiap request harus wait untuk body stream selesai di-parse
121
- - Dengan 100 connections × 10 pipelining = 1000 concurrent requests, ini bisa cause blocking
122
-
123
- 2. **Stream Handling Issue**
124
- - Body parsing mungkin tidak properly buffer incoming data
125
- - Potential memory pressure saat banyak request bersamaan
126
-
127
- 3. **Missing Content-Type Handling**
128
- - Mungkin perlu explicit JSON parser middleware
129
-
130
- 4. **Connection Pool Exhaustion**
131
- - Async operations yang pending bisa exhaust available resources
132
-
133
- ### Rekomendasi untuk Nexus
134
-
135
- ```typescript
136
- // Option 1: Pre-parse body dengan middleware
137
- app.use(async (ctx, next) => {
138
- if (ctx.method === 'POST' || ctx.method === 'PUT') {
139
- ctx.parsedBody = await ctx.body();
140
- }
141
- return next();
142
- });
143
-
144
- // Option 2: Gunakan built-in JSON middleware jika ada
145
- app.use(nexus.json()); // seperti express.json()
146
-
147
- // Option 3: Batasi concurrent body parsing
148
- import { Semaphore } from 'async-mutex';
149
- const bodySemaphore = new Semaphore(50);
150
-
151
- app.post('/data', async (ctx) => {
152
- const [, release] = await bodySemaphore.acquire();
153
- try {
154
- const body = await ctx.body();
155
- return ctx.json({ received: body, processed: true });
156
- } finally {
157
- release();
158
- }
159
- });
160
- ```
161
-
162
- ---
163
-
164
- ## 📈 Performance Gap Analysis: Mengapa Nexus Kalah dari Fastify?
165
-
166
- ### 1. JSON Serialization
167
-
168
- **Fastify** menggunakan `fast-json-stringify` yang pre-compile JSON schema:
169
-
170
- ```javascript
171
- // Fastify internal - schema-based serialization
172
- const stringify = fastJson({
173
- type: 'object',
174
- properties: {
175
- message: { type: 'string' }
176
- }
177
- });
178
- // Output langsung tanpa JSON.stringify overhead
179
- ```
180
-
181
- **Improvement untuk Nexus:**
182
- - Implement schema-based JSON serialization
183
- - Cache stringify functions per route
184
- - Gunakan library seperti `fast-json-stringify` atau `@msgpack/msgpack`
185
-
186
- ---
187
-
188
- ### 2. Router Performance
189
-
190
- **Fastify** menggunakan `find-my-way`, radix tree-based router yang O(log n):
191
-
192
- ```
193
- /users/:id → Radix tree lookup (sangat cepat)
194
- ```
195
-
196
- **Improvement untuk Nexus:**
197
- - Evaluate current router implementation
198
- - Consider menggunakan `find-my-way` atau `trek-router`
199
- - Implement route caching untuk static routes
200
- - Pre-compile regex patterns saat startup
201
-
202
- ---
203
-
204
- ### 3. Request/Response Object Overhead
205
-
206
- **Fastify** minimize object creation dan property access:
207
-
208
- ```javascript
209
- // Fastify - minimal wrapper
210
- reply.send({ data }); // Direct write ke socket
211
- ```
212
-
213
- **Improvement untuk Nexus:**
214
- - Reduce Context object properties
215
- - Lazy-load properties yang jarang dipakai
216
- - Pool dan reuse context objects
217
- - Avoid spread operators di hot paths
218
-
219
- ---
220
-
221
- ### 4. Body Parsing Strategy
222
-
223
- **Fastify** parse body secara lazy dan streaming:
224
-
225
- ```javascript
226
- // Hanya parse jika diperlukan
227
- fastify.addContentTypeParser('application/json',
228
- { parseAs: 'buffer' },
229
- (req, body, done) => {
230
- // Efficient buffer-based parsing
231
- }
232
- );
233
- ```
234
-
235
- **Improvement untuk Nexus:**
236
- - Implement streaming body parser
237
- - Add body size limits untuk prevent DoS
238
- - Cache parsed bodies
239
- - Support different content types efficiently
240
-
241
- ---
242
-
243
- ### 5. Middleware Chain Optimization
244
-
245
- **Improvement untuk Nexus:**
246
- ```typescript
247
- // Instead of array-based middleware
248
- // Use compiled function chain
249
- const compiledHandler = compileMiddleware([
250
- middleware1,
251
- middleware2,
252
- routeHandler
253
- ]);
254
-
255
- function compileMiddleware(middlewares) {
256
- return middlewares.reduceRight(
257
- (next, mw) => (ctx) => mw(ctx, next),
258
- (ctx) => ctx
259
- );
260
- }
261
- ```
262
-
263
- ---
264
-
265
- ### 6. HTTP Header Handling
266
-
267
- **Improvement untuk Nexus:**
268
- - Pre-allocate common headers
269
- - Use header caching
270
- - Minimize header parsing overhead
271
-
272
- ```typescript
273
- // Cache static headers
274
- const COMMON_HEADERS = {
275
- 'content-type': 'application/json; charset=utf-8',
276
- 'x-powered-by': 'Nexus'
277
- };
278
-
279
- // Apply once, not per-request
280
- response.writeHead(200, COMMON_HEADERS);
281
- ```
282
-
283
- ---
284
-
285
- ## 🎯 Priority Improvements untuk Nexus
286
-
287
- ### High Priority (Impact Besar)
288
-
289
- | # | Improvement | Expected Gain | Effort |
290
- |---|-------------|---------------|--------|
291
- | 1 | Fix POST body parsing | +10,000% untuk POST | Medium |
292
- | 2 | Schema-based JSON stringify | +15-25% | Medium |
293
- | 3 | Optimize router | +10-20% | High |
294
-
295
- ### Medium Priority
296
-
297
- | # | Improvement | Expected Gain | Effort |
298
- |---|-------------|---------------|--------|
299
- | 4 | Query string parser optimization | +5-15% | Low |
300
- | 5 | Context object pooling | +5-10% | Medium |
301
- | 6 | Header caching | +3-5% | Low |
302
-
303
- ### Low Priority (Nice to Have)
304
-
305
- | # | Improvement | Expected Gain | Effort |
306
- |---|-------------|---------------|--------|
307
- | 7 | HTTP/2 support | Varies | High |
308
- | 8 | Cluster mode built-in | Linear scaling | Medium |
309
- | 9 | Native addon for hot paths | +20-30% | Very High |
310
-
311
- ---
312
-
313
- ## 📋 Summary
314
-
315
- ### Kelebihan Nexus Saat Ini
316
- - ✅ Performa GET request sangat bagus (hampir setara Fastify)
317
- - ✅ Simple JSON response hanya 1.9% lebih lambat dari Fastify
318
- - ✅ Large payload handling bagus (6% gap)
319
- - ✅ Developer Experience yang baik
320
-
321
- ### Area yang Perlu Diperbaiki
322
- - 🔴 **CRITICAL:** POST body parsing broken under load
323
- - 🟡 Query parameter parsing bisa lebih cepat (+29% gap)
324
- - 🟡 JSON serialization bisa di-optimize
325
-
326
- ### Rekomendasi Utama
327
- 1. **Immediate:** Fix body parsing untuk POST/PUT requests
328
- 2. **Short-term:** Implement schema-based JSON serialization
329
- 3. **Medium-term:** Optimize router dengan radix tree
330
- 4. **Long-term:** Consider V8 fast-path optimizations
331
-
332
- ---
333
-
334
- ## 🔗 Resources
335
-
336
- - [Fastify Benchmarks](https://fastify.dev/benchmarks/)
337
- - [fast-json-stringify](https://github.com/fastify/fast-json-stringify)
338
- - [find-my-way Router](https://github.com/delvedor/find-my-way)
339
- - [Node.js Performance Best Practices](https://nodejs.org/en/docs/guides/dont-block-the-event-loop/)
340
-
341
- ---
342
-
343
- *Report generated by benchmark suite on December 7, 2025*