alepha 0.14.2 → 0.14.4

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 (405) hide show
  1. package/README.md +1 -1
  2. package/dist/api/audits/index.browser.js +5 -5
  3. package/dist/api/audits/index.browser.js.map +1 -1
  4. package/dist/api/audits/index.d.ts +706 -785
  5. package/dist/api/audits/index.d.ts.map +1 -1
  6. package/dist/api/audits/index.js +13 -13
  7. package/dist/api/audits/index.js.map +1 -1
  8. package/dist/api/files/index.browser.js +5 -5
  9. package/dist/api/files/index.browser.js.map +1 -1
  10. package/dist/api/files/index.d.ts +58 -137
  11. package/dist/api/files/index.d.ts.map +1 -1
  12. package/dist/api/files/index.js +71 -71
  13. package/dist/api/files/index.js.map +1 -1
  14. package/dist/api/jobs/index.browser.js +5 -5
  15. package/dist/api/jobs/index.browser.js.map +1 -1
  16. package/dist/api/jobs/index.d.ts +29 -108
  17. package/dist/api/jobs/index.d.ts.map +1 -1
  18. package/dist/api/jobs/index.js +10 -10
  19. package/dist/api/jobs/index.js.map +1 -1
  20. package/dist/api/notifications/index.browser.js +10 -10
  21. package/dist/api/notifications/index.browser.js.map +1 -1
  22. package/dist/api/notifications/index.d.ts +504 -171
  23. package/dist/api/notifications/index.d.ts.map +1 -1
  24. package/dist/api/notifications/index.js +12 -12
  25. package/dist/api/notifications/index.js.map +1 -1
  26. package/dist/api/parameters/index.browser.js +163 -10
  27. package/dist/api/parameters/index.browser.js.map +1 -1
  28. package/dist/api/parameters/index.d.ts +277 -351
  29. package/dist/api/parameters/index.d.ts.map +1 -1
  30. package/dist/api/parameters/index.js +196 -91
  31. package/dist/api/parameters/index.js.map +1 -1
  32. package/dist/api/users/index.browser.js +19 -19
  33. package/dist/api/users/index.browser.js.map +1 -1
  34. package/dist/api/users/index.d.ts +787 -852
  35. package/dist/api/users/index.d.ts.map +1 -1
  36. package/dist/api/users/index.js +827 -596
  37. package/dist/api/users/index.js.map +1 -1
  38. package/dist/api/verifications/index.browser.js +6 -6
  39. package/dist/api/verifications/index.browser.js.map +1 -1
  40. package/dist/api/verifications/index.d.ts +128 -128
  41. package/dist/api/verifications/index.d.ts.map +1 -1
  42. package/dist/api/verifications/index.js +6 -6
  43. package/dist/api/verifications/index.js.map +1 -1
  44. package/dist/bin/index.d.ts +1 -2
  45. package/dist/bin/index.js +0 -1
  46. package/dist/bin/index.js.map +1 -1
  47. package/dist/cli/index.d.ts +252 -131
  48. package/dist/cli/index.d.ts.map +1 -1
  49. package/dist/cli/index.js +595 -395
  50. package/dist/cli/index.js.map +1 -1
  51. package/dist/command/index.d.ts +46 -11
  52. package/dist/command/index.d.ts.map +1 -1
  53. package/dist/command/index.js +99 -19
  54. package/dist/command/index.js.map +1 -1
  55. package/dist/core/index.browser.js +40 -22
  56. package/dist/core/index.browser.js.map +1 -1
  57. package/dist/core/index.d.ts +45 -1
  58. package/dist/core/index.d.ts.map +1 -1
  59. package/dist/core/index.js +40 -22
  60. package/dist/core/index.js.map +1 -1
  61. package/dist/core/index.native.js +40 -22
  62. package/dist/core/index.native.js.map +1 -1
  63. package/dist/fake/index.js +195 -168
  64. package/dist/fake/index.js.map +1 -1
  65. package/dist/file/index.d.ts +8 -0
  66. package/dist/file/index.d.ts.map +1 -1
  67. package/dist/file/index.js +3 -0
  68. package/dist/file/index.js.map +1 -1
  69. package/dist/logger/index.d.ts +1 -1
  70. package/dist/logger/index.d.ts.map +1 -1
  71. package/dist/logger/index.js +12 -2
  72. package/dist/logger/index.js.map +1 -1
  73. package/dist/mcp/index.js +1 -1
  74. package/dist/mcp/index.js.map +1 -1
  75. package/dist/orm/index.d.ts +59 -195
  76. package/dist/orm/index.d.ts.map +1 -1
  77. package/dist/orm/index.js +201 -430
  78. package/dist/orm/index.js.map +1 -1
  79. package/dist/security/index.d.ts +1 -1
  80. package/dist/security/index.d.ts.map +1 -1
  81. package/dist/security/index.js +1 -1
  82. package/dist/security/index.js.map +1 -1
  83. package/dist/server/auth/index.d.ts +171 -155
  84. package/dist/server/auth/index.d.ts.map +1 -1
  85. package/dist/server/auth/index.js +0 -1
  86. package/dist/server/auth/index.js.map +1 -1
  87. package/dist/server/cache/index.d.ts +12 -0
  88. package/dist/server/cache/index.d.ts.map +1 -1
  89. package/dist/server/cache/index.js +55 -2
  90. package/dist/server/cache/index.js.map +1 -1
  91. package/dist/server/compress/index.d.ts +6 -0
  92. package/dist/server/compress/index.d.ts.map +1 -1
  93. package/dist/server/compress/index.js +38 -1
  94. package/dist/server/compress/index.js.map +1 -1
  95. package/dist/server/core/index.browser.js +2 -2
  96. package/dist/server/core/index.browser.js.map +1 -1
  97. package/dist/server/core/index.d.ts +10 -10
  98. package/dist/server/core/index.d.ts.map +1 -1
  99. package/dist/server/core/index.js +7 -4
  100. package/dist/server/core/index.js.map +1 -1
  101. package/dist/server/links/index.browser.js +22 -6
  102. package/dist/server/links/index.browser.js.map +1 -1
  103. package/dist/server/links/index.d.ts +46 -44
  104. package/dist/server/links/index.d.ts.map +1 -1
  105. package/dist/server/links/index.js +24 -41
  106. package/dist/server/links/index.js.map +1 -1
  107. package/dist/server/static/index.d.ts.map +1 -1
  108. package/dist/server/static/index.js +4 -0
  109. package/dist/server/static/index.js.map +1 -1
  110. package/dist/server/swagger/index.d.ts +2 -1
  111. package/dist/server/swagger/index.d.ts.map +1 -1
  112. package/dist/server/swagger/index.js +9 -5
  113. package/dist/server/swagger/index.js.map +1 -1
  114. package/dist/vite/index.d.ts +101 -106
  115. package/dist/vite/index.d.ts.map +1 -1
  116. package/dist/vite/index.js +574 -503
  117. package/dist/vite/index.js.map +1 -1
  118. package/dist/websocket/index.d.ts +7 -7
  119. package/package.json +7 -7
  120. package/src/api/audits/controllers/{AuditController.ts → AdminAuditController.ts} +5 -6
  121. package/src/api/audits/entities/audits.ts +5 -5
  122. package/src/api/audits/index.browser.ts +1 -1
  123. package/src/api/audits/index.ts +3 -3
  124. package/src/api/audits/primitives/$audit.spec.ts +276 -0
  125. package/src/api/audits/services/AuditService.spec.ts +495 -0
  126. package/src/api/files/__tests__/$bucket.spec.ts +91 -0
  127. package/src/api/files/controllers/AdminFileStatsController.spec.ts +166 -0
  128. package/src/api/files/controllers/{StorageStatsController.ts → AdminFileStatsController.ts} +2 -2
  129. package/src/api/files/controllers/FileController.spec.ts +558 -0
  130. package/src/api/files/controllers/FileController.ts +4 -5
  131. package/src/api/files/entities/files.ts +5 -5
  132. package/src/api/files/index.browser.ts +1 -1
  133. package/src/api/files/index.ts +4 -4
  134. package/src/api/files/jobs/FileJobs.spec.ts +52 -0
  135. package/src/api/files/services/FileService.spec.ts +109 -0
  136. package/src/api/jobs/__tests__/JobController.spec.ts +343 -0
  137. package/src/api/jobs/controllers/{JobController.ts → AdminJobController.ts} +2 -2
  138. package/src/api/jobs/entities/jobExecutions.ts +5 -5
  139. package/src/api/jobs/index.ts +3 -3
  140. package/src/api/jobs/primitives/$job.spec.ts +476 -0
  141. package/src/api/notifications/controllers/{NotificationController.ts → AdminNotificationController.ts} +4 -5
  142. package/src/api/notifications/entities/notifications.ts +5 -5
  143. package/src/api/notifications/index.browser.ts +1 -1
  144. package/src/api/notifications/index.ts +4 -4
  145. package/src/api/parameters/controllers/{ConfigController.ts → AdminConfigController.ts} +46 -107
  146. package/src/api/parameters/entities/parameters.ts +7 -17
  147. package/src/api/parameters/index.ts +3 -3
  148. package/src/api/parameters/primitives/$config.spec.ts +356 -0
  149. package/src/api/parameters/schemas/activateConfigBodySchema.ts +12 -0
  150. package/src/api/parameters/schemas/checkScheduledResponseSchema.ts +8 -0
  151. package/src/api/parameters/schemas/configCurrentResponseSchema.ts +13 -0
  152. package/src/api/parameters/schemas/configHistoryResponseSchema.ts +9 -0
  153. package/src/api/parameters/schemas/configNameParamSchema.ts +10 -0
  154. package/src/api/parameters/schemas/configNamesResponseSchema.ts +8 -0
  155. package/src/api/parameters/schemas/configTreeNodeSchema.ts +13 -0
  156. package/src/api/parameters/schemas/configVersionParamSchema.ts +9 -0
  157. package/src/api/parameters/schemas/configVersionResponseSchema.ts +9 -0
  158. package/src/api/parameters/schemas/configsByStatusResponseSchema.ts +9 -0
  159. package/src/api/parameters/schemas/createConfigVersionBodySchema.ts +24 -0
  160. package/src/api/parameters/schemas/index.ts +15 -0
  161. package/src/api/parameters/schemas/parameterResponseSchema.ts +26 -0
  162. package/src/api/parameters/schemas/parameterStatusSchema.ts +13 -0
  163. package/src/api/parameters/schemas/rollbackConfigBodySchema.ts +15 -0
  164. package/src/api/parameters/schemas/statusParamSchema.ts +9 -0
  165. package/src/api/users/__tests__/EmailVerification.spec.ts +369 -0
  166. package/src/api/users/__tests__/PasswordReset.spec.ts +550 -0
  167. package/src/api/users/controllers/AdminIdentityController.spec.ts +365 -0
  168. package/src/api/users/controllers/{IdentityController.ts → AdminIdentityController.ts} +3 -4
  169. package/src/api/users/controllers/AdminSessionController.spec.ts +274 -0
  170. package/src/api/users/controllers/{SessionController.ts → AdminSessionController.ts} +3 -4
  171. package/src/api/users/controllers/AdminUserController.spec.ts +372 -0
  172. package/src/api/users/controllers/AdminUserController.ts +116 -0
  173. package/src/api/users/controllers/UserController.ts +4 -107
  174. package/src/api/users/controllers/UserRealmController.ts +3 -0
  175. package/src/api/users/entities/identities.ts +6 -6
  176. package/src/api/users/entities/sessions.ts +6 -6
  177. package/src/api/users/entities/users.ts +9 -9
  178. package/src/api/users/index.ts +9 -6
  179. package/src/api/users/primitives/$userRealm.ts +13 -8
  180. package/src/api/users/services/CredentialService.spec.ts +509 -0
  181. package/src/api/users/services/CredentialService.ts +46 -0
  182. package/src/api/users/services/IdentityService.ts +15 -0
  183. package/src/api/users/services/RegistrationService.spec.ts +630 -0
  184. package/src/api/users/services/RegistrationService.ts +18 -0
  185. package/src/api/users/services/SessionService.spec.ts +301 -0
  186. package/src/api/users/services/SessionService.ts +110 -1
  187. package/src/api/users/services/UserService.ts +67 -2
  188. package/src/api/verifications/__tests__/CodeVerification.spec.ts +318 -0
  189. package/src/api/verifications/__tests__/LinkVerification.spec.ts +279 -0
  190. package/src/api/verifications/entities/verifications.ts +6 -6
  191. package/src/api/verifications/jobs/VerificationJobs.spec.ts +50 -0
  192. package/src/batch/__tests__/startup-buffering.spec.ts +458 -0
  193. package/src/batch/primitives/$batch.spec.ts +766 -0
  194. package/src/batch/providers/BatchProvider.spec.ts +786 -0
  195. package/src/bin/index.ts +0 -1
  196. package/src/bucket/__tests__/shared.ts +194 -0
  197. package/src/bucket/primitives/$bucket.spec.ts +104 -0
  198. package/src/bucket/providers/FileStorageProvider.spec.ts +13 -0
  199. package/src/bucket/providers/LocalFileStorageProvider.spec.ts +77 -0
  200. package/src/bucket/providers/MemoryFileStorageProvider.spec.ts +82 -0
  201. package/src/cache/core/__tests__/shared.ts +377 -0
  202. package/src/cache/core/primitives/$cache.spec.ts +111 -0
  203. package/src/cache/redis/__tests__/cache-redis.spec.ts +70 -0
  204. package/src/cli/apps/AlephaCli.ts +25 -6
  205. package/src/cli/atoms/buildOptions.ts +88 -0
  206. package/src/cli/commands/build.ts +32 -69
  207. package/src/cli/commands/db.ts +0 -4
  208. package/src/cli/commands/dev.ts +34 -10
  209. package/src/cli/commands/gen/changelog.spec.ts +315 -0
  210. package/src/cli/commands/{changelog.ts → gen/changelog.ts} +9 -9
  211. package/src/cli/commands/gen/env.ts +53 -0
  212. package/src/cli/commands/gen/openapi.ts +71 -0
  213. package/src/cli/commands/gen/resource.ts +15 -0
  214. package/src/cli/commands/gen.ts +24 -0
  215. package/src/cli/commands/init.ts +2 -1
  216. package/src/cli/commands/root.ts +12 -3
  217. package/src/cli/commands/test.ts +0 -1
  218. package/src/cli/commands/typecheck.ts +5 -0
  219. package/src/cli/commands/verify.ts +1 -1
  220. package/src/cli/defineConfig.ts +49 -7
  221. package/src/cli/index.ts +2 -2
  222. package/src/cli/services/AlephaCliUtils.ts +105 -55
  223. package/src/cli/services/GitMessageParser.ts +1 -1
  224. package/src/command/helpers/Asker.spec.ts +127 -0
  225. package/src/command/helpers/Runner.spec.ts +126 -0
  226. package/src/command/helpers/Runner.ts +1 -1
  227. package/src/command/primitives/$command.spec.ts +1588 -0
  228. package/src/command/primitives/$command.ts +0 -6
  229. package/src/command/providers/CliProvider.ts +75 -27
  230. package/src/core/Alepha.ts +87 -0
  231. package/src/core/__tests__/Alepha-emit.spec.ts +22 -0
  232. package/src/core/__tests__/Alepha-graph.spec.ts +93 -0
  233. package/src/core/__tests__/Alepha-has.spec.ts +41 -0
  234. package/src/core/__tests__/Alepha-inject.spec.ts +93 -0
  235. package/src/core/__tests__/Alepha-register.spec.ts +81 -0
  236. package/src/core/__tests__/Alepha-start.spec.ts +176 -0
  237. package/src/core/__tests__/Alepha-with.spec.ts +14 -0
  238. package/src/core/__tests__/TypeBox-usecases.spec.ts +35 -0
  239. package/src/core/__tests__/TypeBoxLocale.spec.ts +15 -0
  240. package/src/core/__tests__/descriptor.spec.ts +34 -0
  241. package/src/core/__tests__/fixtures/A.ts +5 -0
  242. package/src/core/__tests__/pagination.spec.ts +77 -0
  243. package/src/core/helpers/jsonSchemaToTypeBox.ts +2 -2
  244. package/src/core/primitives/$atom.spec.ts +43 -0
  245. package/src/core/primitives/$hook.spec.ts +130 -0
  246. package/src/core/primitives/$inject.spec.ts +175 -0
  247. package/src/core/primitives/$module.spec.ts +115 -0
  248. package/src/core/providers/CodecManager.spec.ts +740 -0
  249. package/src/core/providers/EventManager.spec.ts +762 -0
  250. package/src/core/providers/EventManager.ts +4 -0
  251. package/src/core/providers/StateManager.spec.ts +365 -0
  252. package/src/core/providers/TypeProvider.spec.ts +1607 -0
  253. package/src/core/providers/TypeProvider.ts +20 -26
  254. package/src/datetime/primitives/$interval.spec.ts +103 -0
  255. package/src/datetime/providers/DateTimeProvider.spec.ts +86 -0
  256. package/src/email/primitives/$email.spec.ts +175 -0
  257. package/src/email/providers/LocalEmailProvider.spec.ts +341 -0
  258. package/src/fake/__tests__/keyName.example.ts +40 -0
  259. package/src/fake/__tests__/keyName.spec.ts +152 -0
  260. package/src/fake/__tests__/module.example.ts +32 -0
  261. package/src/fake/providers/FakeProvider.spec.ts +438 -0
  262. package/src/file/providers/FileSystemProvider.ts +8 -0
  263. package/src/file/providers/NodeFileSystemProvider.spec.ts +418 -0
  264. package/src/file/providers/NodeFileSystemProvider.ts +5 -0
  265. package/src/file/services/FileDetector.spec.ts +591 -0
  266. package/src/lock/core/__tests__/shared.ts +190 -0
  267. package/src/lock/core/providers/MemoryLockProvider.spec.ts +25 -0
  268. package/src/lock/redis/providers/RedisLockProvider.spec.ts +25 -0
  269. package/src/logger/__tests__/SimpleFormatterProvider.spec.ts +109 -0
  270. package/src/logger/index.ts +15 -3
  271. package/src/logger/primitives/$logger.spec.ts +108 -0
  272. package/src/logger/services/Logger.spec.ts +295 -0
  273. package/src/mcp/__tests__/errors.spec.ts +175 -0
  274. package/src/mcp/__tests__/integration.spec.ts +450 -0
  275. package/src/mcp/helpers/jsonrpc.spec.ts +380 -0
  276. package/src/mcp/primitives/$prompt.spec.ts +468 -0
  277. package/src/mcp/primitives/$resource.spec.ts +390 -0
  278. package/src/mcp/primitives/$tool.spec.ts +406 -0
  279. package/src/mcp/providers/McpServerProvider.spec.ts +797 -0
  280. package/src/mcp/transports/StdioMcpTransport.ts +1 -1
  281. package/src/orm/__tests__/$repository-crud.spec.ts +276 -0
  282. package/src/orm/__tests__/$repository-hooks.spec.ts +325 -0
  283. package/src/orm/__tests__/$repository-orderBy.spec.ts +128 -0
  284. package/src/orm/__tests__/$repository-pagination-sort.spec.ts +149 -0
  285. package/src/orm/__tests__/$repository-save.spec.ts +37 -0
  286. package/src/orm/__tests__/ModelBuilder-integration.spec.ts +490 -0
  287. package/src/orm/__tests__/ModelBuilder-types.spec.ts +186 -0
  288. package/src/orm/__tests__/PostgresProvider.spec.ts +46 -0
  289. package/src/orm/__tests__/delete-returning.spec.ts +256 -0
  290. package/src/orm/__tests__/deletedAt.spec.ts +80 -0
  291. package/src/orm/__tests__/enums.spec.ts +315 -0
  292. package/src/orm/__tests__/execute.spec.ts +72 -0
  293. package/src/orm/__tests__/fixtures/bigEntitySchema.ts +65 -0
  294. package/src/orm/__tests__/fixtures/userEntitySchema.ts +27 -0
  295. package/src/orm/__tests__/joins.spec.ts +1114 -0
  296. package/src/orm/__tests__/page.spec.ts +287 -0
  297. package/src/orm/__tests__/primaryKey.spec.ts +87 -0
  298. package/src/orm/__tests__/query-date-encoding.spec.ts +402 -0
  299. package/src/orm/__tests__/ref-auto-onDelete.spec.ts +156 -0
  300. package/src/orm/__tests__/references.spec.ts +102 -0
  301. package/src/orm/__tests__/security.spec.ts +710 -0
  302. package/src/orm/__tests__/sqlite.spec.ts +111 -0
  303. package/src/orm/__tests__/string-operators.spec.ts +429 -0
  304. package/src/orm/__tests__/timestamps.spec.ts +388 -0
  305. package/src/orm/__tests__/validation.spec.ts +183 -0
  306. package/src/orm/__tests__/version.spec.ts +64 -0
  307. package/src/orm/helpers/parseQueryString.spec.ts +196 -0
  308. package/src/orm/index.ts +2 -8
  309. package/src/orm/primitives/$repository.spec.ts +137 -0
  310. package/src/orm/primitives/$sequence.spec.ts +29 -0
  311. package/src/orm/primitives/$transaction.spec.ts +82 -0
  312. package/src/orm/providers/drivers/BunPostgresProvider.ts +3 -3
  313. package/src/orm/providers/drivers/BunSqliteProvider.ts +1 -1
  314. package/src/orm/providers/drivers/CloudflareD1Provider.ts +1 -1
  315. package/src/orm/providers/drivers/DatabaseProvider.ts +1 -1
  316. package/src/orm/providers/drivers/NodePostgresProvider.ts +3 -3
  317. package/src/orm/providers/drivers/NodeSqliteProvider.ts +1 -1
  318. package/src/orm/providers/drivers/PglitePostgresProvider.ts +2 -2
  319. package/src/orm/services/ModelBuilder.spec.ts +575 -0
  320. package/src/orm/services/Repository.spec.ts +137 -0
  321. package/src/queue/core/__tests__/shared.ts +143 -0
  322. package/src/queue/core/providers/MemoryQueueProvider.spec.ts +23 -0
  323. package/src/queue/core/providers/WorkerProvider.spec.ts +394 -0
  324. package/src/queue/redis/providers/RedisQueueProvider.spec.ts +23 -0
  325. package/src/redis/__tests__/redis.spec.ts +58 -0
  326. package/src/retry/primitives/$retry.spec.ts +234 -0
  327. package/src/retry/providers/RetryProvider.spec.ts +438 -0
  328. package/src/router/__tests__/match.spec.ts +252 -0
  329. package/src/router/providers/RouterProvider.spec.ts +197 -0
  330. package/src/scheduler/__tests__/$scheduler-cron.spec.ts +25 -0
  331. package/src/scheduler/__tests__/$scheduler-interval.spec.ts +25 -0
  332. package/src/scheduler/__tests__/shared.ts +77 -0
  333. package/src/security/__tests__/bug-1-wildcard-after-start.spec.ts +229 -0
  334. package/src/security/__tests__/bug-2-password-validation.spec.ts +245 -0
  335. package/src/security/__tests__/bug-3-regex-vulnerability.spec.ts +407 -0
  336. package/src/security/__tests__/bug-4-oauth2-validation.spec.ts +439 -0
  337. package/src/security/__tests__/multi-layer-permissions.spec.ts +522 -0
  338. package/src/security/primitives/$permission.spec.ts +30 -0
  339. package/src/security/primitives/$permission.ts +2 -2
  340. package/src/security/primitives/$realm.spec.ts +101 -0
  341. package/src/security/primitives/$role.spec.ts +52 -0
  342. package/src/security/primitives/$serviceAccount.spec.ts +61 -0
  343. package/src/security/providers/SecurityProvider.spec.ts +350 -0
  344. package/src/server/auth/providers/ServerAuthProvider.ts +0 -2
  345. package/src/server/cache/providers/ServerCacheProvider.spec.ts +1125 -0
  346. package/src/server/cache/providers/ServerCacheProvider.ts +94 -9
  347. package/src/server/compress/providers/ServerCompressProvider.spec.ts +31 -0
  348. package/src/server/compress/providers/ServerCompressProvider.ts +63 -2
  349. package/src/server/cookies/providers/ServerCookiesProvider.spec.ts +253 -0
  350. package/src/server/core/__tests__/ServerRouterProvider-getRoutes.spec.ts +334 -0
  351. package/src/server/core/__tests__/ServerRouterProvider-requestId.spec.ts +129 -0
  352. package/src/server/core/helpers/ServerReply.ts +2 -2
  353. package/src/server/core/primitives/$action.spec.ts +191 -0
  354. package/src/server/core/primitives/$route.spec.ts +65 -0
  355. package/src/server/core/providers/ServerBodyParserProvider.spec.ts +93 -0
  356. package/src/server/core/providers/ServerLoggerProvider.spec.ts +100 -0
  357. package/src/server/core/providers/ServerProvider.ts +14 -2
  358. package/src/server/core/services/HttpClient.spec.ts +123 -0
  359. package/src/server/core/services/UserAgentParser.spec.ts +111 -0
  360. package/src/server/cors/providers/ServerCorsProvider.spec.ts +481 -0
  361. package/src/server/health/providers/ServerHealthProvider.spec.ts +22 -0
  362. package/src/server/helmet/providers/ServerHelmetProvider.spec.ts +105 -0
  363. package/src/server/links/__tests__/$action.spec.ts +238 -0
  364. package/src/server/links/__tests__/fixtures/CrudApp.ts +122 -0
  365. package/src/server/links/__tests__/requestId.spec.ts +120 -0
  366. package/src/server/links/primitives/$remote.spec.ts +228 -0
  367. package/src/server/links/providers/LinkProvider.spec.ts +54 -0
  368. package/src/server/links/providers/LinkProvider.ts +49 -3
  369. package/src/server/links/providers/ServerLinksProvider.ts +1 -53
  370. package/src/server/links/schemas/apiLinksResponseSchema.ts +7 -0
  371. package/src/server/metrics/providers/ServerMetricsProvider.spec.ts +25 -0
  372. package/src/server/multipart/providers/ServerMultipartProvider.spec.ts +528 -0
  373. package/src/server/proxy/primitives/$proxy.spec.ts +87 -0
  374. package/src/server/rate-limit/__tests__/ActionRateLimit.spec.ts +211 -0
  375. package/src/server/rate-limit/providers/ServerRateLimitProvider.spec.ts +344 -0
  376. package/src/server/security/__tests__/BasicAuth.spec.ts +684 -0
  377. package/src/server/security/__tests__/ServerSecurityProvider-realm.spec.ts +388 -0
  378. package/src/server/security/providers/ServerSecurityProvider.spec.ts +123 -0
  379. package/src/server/static/primitives/$serve.spec.ts +193 -0
  380. package/src/server/static/providers/ServerStaticProvider.ts +10 -0
  381. package/src/server/swagger/__tests__/ui.spec.ts +52 -0
  382. package/src/server/swagger/primitives/$swagger.spec.ts +193 -0
  383. package/src/server/swagger/providers/ServerSwaggerProvider.ts +19 -12
  384. package/src/sms/primitives/$sms.spec.ts +165 -0
  385. package/src/sms/providers/LocalSmsProvider.spec.ts +224 -0
  386. package/src/sms/providers/MemorySmsProvider.spec.ts +193 -0
  387. package/src/thread/primitives/$thread.spec.ts +186 -0
  388. package/src/topic/core/__tests__/shared.ts +144 -0
  389. package/src/topic/core/providers/MemoryTopicProvider.spec.ts +23 -0
  390. package/src/topic/redis/providers/RedisTopicProvider.spec.ts +23 -0
  391. package/src/vite/helpers/importViteReact.ts +13 -0
  392. package/src/vite/index.ts +1 -21
  393. package/src/vite/plugins/viteAlephaDev.ts +32 -5
  394. package/src/vite/plugins/viteAlephaSsrPreload.ts +222 -0
  395. package/src/vite/tasks/buildClient.ts +11 -0
  396. package/src/vite/tasks/buildServer.ts +47 -3
  397. package/src/vite/tasks/devServer.ts +69 -0
  398. package/src/vite/tasks/index.ts +2 -1
  399. package/src/vite/tasks/runAlepha.ts +7 -1
  400. package/src/websocket/__tests__/$websocket-new.spec.ts +195 -0
  401. package/src/websocket/primitives/$channel.spec.ts +30 -0
  402. package/src/cli/assets/viteConfigTs.ts +0 -14
  403. package/src/cli/commands/run.ts +0 -24
  404. package/src/vite/plugins/viteAlepha.ts +0 -37
  405. package/src/vite/plugins/viteAlephaBuild.ts +0 -281
@@ -1,34 +1,30 @@
1
1
  import * as alepha160 from "alepha";
2
2
  import { Alepha, FileLike, Static, TNull, TObject, TOptional, TSchema, TUnion } from "alepha";
3
3
  import { BucketPrimitive } from "alepha/bucket";
4
- import * as alepha_orm64 from "alepha/orm";
5
- import { Page } from "alepha/orm";
4
+ import "alepha/server/security";
6
5
  import * as alepha_server0 from "alepha/server";
7
6
  import { Ok } from "alepha/server";
8
7
  import { DateTime, DateTimeProvider, DurationLike } from "alepha/datetime";
9
8
  import * as alepha_logger0 from "alepha/logger";
10
- import "alepha/server/security";
9
+ import * as alepha_orm16 from "alepha/orm";
10
+ import { Page } from "alepha/orm";
11
11
  import * as alepha_scheduler0 from "alepha/scheduler";
12
- import "bun";
13
- import "bun:sqlite";
14
- import "drizzle-orm/bun-sql";
15
- import "drizzle-orm/bun-sqlite";
16
12
  import "drizzle-orm/d1";
17
13
  import { UserAccountToken } from "alepha/security";
18
14
  import { BuildExtraConfigColumns, SQL } from "drizzle-orm";
19
15
  import { PgColumnBuilderBase, PgSequenceOptions, PgTableExtraConfigValue, UpdateDeleteAction } from "drizzle-orm/pg-core";
20
16
  import "alepha/retry";
21
- import "alepha/lock";
22
17
  import "drizzle-orm/sqlite-core";
18
+ import "alepha/lock";
23
19
  import "drizzle-orm/postgres-js";
24
20
  import "postgres";
25
21
 
26
22
  //#region ../../src/api/files/entities/files.d.ts
27
- declare const files: alepha_orm64.EntityPrimitive<alepha160.TObject<{
28
- id: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_PRIMARY_KEY>, typeof alepha_orm64.PG_DEFAULT>;
29
- version: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TInteger, typeof alepha_orm64.PG_VERSION>, typeof alepha_orm64.PG_DEFAULT>;
30
- createdAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_CREATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
31
- updatedAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_UPDATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
23
+ declare const files: alepha_orm16.EntityPrimitive<alepha160.TObject<{
24
+ id: alepha_orm16.PgAttr<alepha_orm16.PgAttr<alepha160.TString, typeof alepha_orm16.PG_PRIMARY_KEY>, typeof alepha_orm16.PG_DEFAULT>;
25
+ version: alepha_orm16.PgAttr<alepha_orm16.PgAttr<alepha160.TInteger, typeof alepha_orm16.PG_VERSION>, typeof alepha_orm16.PG_DEFAULT>;
26
+ createdAt: alepha_orm16.PgAttr<alepha_orm16.PgAttr<alepha160.TString, typeof alepha_orm16.PG_CREATED_AT>, typeof alepha_orm16.PG_DEFAULT>;
27
+ updatedAt: alepha_orm16.PgAttr<alepha_orm16.PgAttr<alepha160.TString, typeof alepha_orm16.PG_UPDATED_AT>, typeof alepha_orm16.PG_DEFAULT>;
32
28
  blobId: alepha160.TString;
33
29
  creator: alepha160.TOptional<alepha160.TString>;
34
30
  creatorRealm: alepha160.TOptional<alepha160.TString>;
@@ -274,81 +270,6 @@ interface PgRefOptions {
274
270
  */
275
271
  type PgAttr<T extends TSchema, TAttr extends PgSymbolKeys> = T & { [K in TAttr]: PgSymbols[K] };
276
272
  //#endregion
277
- //#region ../../src/orm/providers/drivers/BunPostgresProvider.d.ts
278
- declare module "alepha" {
279
- interface Env extends Partial<Static<typeof envSchema$1>> {}
280
- }
281
- declare const envSchema$1: alepha160.TObject<{
282
- /**
283
- * Main configuration for database connection.
284
- * Accept a string in the format of a Postgres connection URL.
285
- * Example: postgres://user:password@localhost:5432/database
286
- * or
287
- * Example: postgres://user:password@localhost:5432/database?sslmode=require
288
- */
289
- DATABASE_URL: alepha160.TOptional<alepha160.TString>;
290
- /**
291
- * In addition to the DATABASE_URL, you can specify the postgres schema name.
292
- */
293
- POSTGRES_SCHEMA: alepha160.TOptional<alepha160.TString>;
294
- }>;
295
- /**
296
- * Bun PostgreSQL provider using Drizzle ORM with Bun's native SQL client.
297
- *
298
- * This provider uses Bun's built-in SQL class for PostgreSQL connections,
299
- * which provides excellent performance on the Bun runtime.
300
- *
301
- * @example
302
- * ```ts
303
- * // Set DATABASE_URL environment variable
304
- * // DATABASE_URL=postgres://user:password@localhost:5432/database
305
- *
306
- * // Or configure programmatically
307
- * alepha.with({
308
- * provide: DatabaseProvider,
309
- * use: BunPostgresProvider,
310
- * });
311
- * ```
312
- */
313
- //#endregion
314
- //#region ../../src/orm/providers/drivers/BunSqliteProvider.d.ts
315
- /**
316
- * Configuration options for the Bun SQLite database provider.
317
- */
318
- declare const bunSqliteOptions: alepha160.Atom<alepha160.TObject<{
319
- path: alepha160.TOptional<alepha160.TString>;
320
- }>, "alepha.postgres.bun-sqlite.options">;
321
- type BunSqliteProviderOptions = Static<typeof bunSqliteOptions.schema>;
322
- declare module "alepha" {
323
- interface State {
324
- [bunSqliteOptions.key]: BunSqliteProviderOptions;
325
- }
326
- }
327
- /**
328
- * Bun SQLite provider using Drizzle ORM with Bun's native SQLite client.
329
- *
330
- * This provider uses Bun's built-in `bun:sqlite` for SQLite connections,
331
- * which provides excellent performance on the Bun runtime.
332
- *
333
- * @example
334
- * ```ts
335
- * // Set DATABASE_URL environment variable
336
- * // DATABASE_URL=sqlite://./my-database.db
337
- *
338
- * // Or configure programmatically
339
- * alepha.with({
340
- * provide: DatabaseProvider,
341
- * use: BunSqliteProvider,
342
- * });
343
- *
344
- * // Or use options atom
345
- * alepha.store.mut(bunSqliteOptions, (old) => ({
346
- * ...old,
347
- * path: ":memory:",
348
- * }));
349
- * ```
350
- */
351
- //#endregion
352
273
  //#region ../../src/orm/providers/drivers/NodePostgresProvider.d.ts
353
274
  declare module "alepha" {
354
275
  interface Env extends Partial<Static<typeof envSchema>> {}
@@ -509,11 +430,11 @@ type StorageStats = Static<typeof storageStatsSchema>;
509
430
  declare class FileService {
510
431
  protected readonly alepha: Alepha;
511
432
  protected readonly log: alepha_logger0.Logger;
512
- protected readonly fileRepository: alepha_orm64.Repository<alepha160.TObject<{
513
- id: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_PRIMARY_KEY>, typeof alepha_orm64.PG_DEFAULT>;
514
- version: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TInteger, typeof alepha_orm64.PG_VERSION>, typeof alepha_orm64.PG_DEFAULT>;
515
- createdAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_CREATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
516
- updatedAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_UPDATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
433
+ protected readonly fileRepository: alepha_orm16.Repository<alepha160.TObject<{
434
+ id: alepha_orm16.PgAttr<alepha_orm16.PgAttr<alepha160.TString, typeof alepha_orm16.PG_PRIMARY_KEY>, typeof alepha_orm16.PG_DEFAULT>;
435
+ version: alepha_orm16.PgAttr<alepha_orm16.PgAttr<alepha160.TInteger, typeof alepha_orm16.PG_VERSION>, typeof alepha_orm16.PG_DEFAULT>;
436
+ createdAt: alepha_orm16.PgAttr<alepha_orm16.PgAttr<alepha160.TString, typeof alepha_orm16.PG_CREATED_AT>, typeof alepha_orm16.PG_DEFAULT>;
437
+ updatedAt: alepha_orm16.PgAttr<alepha_orm16.PgAttr<alepha160.TString, typeof alepha_orm16.PG_UPDATED_AT>, typeof alepha_orm16.PG_DEFAULT>;
517
438
  blobId: alepha160.TString;
518
439
  creator: alepha160.TOptional<alepha160.TString>;
519
440
  creatorRealm: alepha160.TOptional<alepha160.TString>;
@@ -649,6 +570,37 @@ declare class FileService {
649
570
  entityToResource(entity: FileEntity): FileResource;
650
571
  }
651
572
  //#endregion
573
+ //#region ../../src/api/files/controllers/AdminFileStatsController.d.ts
574
+ /**
575
+ * REST API controller for storage analytics and statistics.
576
+ * Provides endpoints for viewing storage usage metrics.
577
+ */
578
+ declare class AdminFileStatsController {
579
+ protected readonly url = "/files/stats";
580
+ protected readonly group = "admin:files";
581
+ protected readonly fileService: FileService;
582
+ /**
583
+ * GET /files/stats - Gets storage statistics.
584
+ * Returns aggregated data including total size, file count,
585
+ * and breakdowns by bucket and MIME type.
586
+ */
587
+ readonly getStats: alepha_server0.ActionPrimitiveFn<{
588
+ response: alepha160.TObject<{
589
+ totalSize: alepha160.TNumber;
590
+ totalFiles: alepha160.TNumber;
591
+ byBucket: alepha160.TArray<alepha160.TObject<{
592
+ bucket: alepha160.TString;
593
+ totalSize: alepha160.TNumber;
594
+ fileCount: alepha160.TNumber;
595
+ }>>;
596
+ byMimeType: alepha160.TArray<alepha160.TObject<{
597
+ mimeType: alepha160.TString;
598
+ fileCount: alepha160.TNumber;
599
+ }>>;
600
+ }>;
601
+ }>;
602
+ }
603
+ //#endregion
652
604
  //#region ../../src/api/files/controllers/FileController.d.ts
653
605
  /**
654
606
  * REST API controller for file management operations.
@@ -676,10 +628,10 @@ declare class FileController {
676
628
  createdBefore: alepha160.TOptional<alepha160.TString>;
677
629
  }>;
678
630
  response: alepha160.TPage<alepha160.TObject<{
679
- id: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_PRIMARY_KEY>, typeof alepha_orm64.PG_DEFAULT>;
680
- version: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TInteger, typeof alepha_orm64.PG_VERSION>, typeof alepha_orm64.PG_DEFAULT>;
681
- createdAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_CREATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
682
- updatedAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_UPDATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
631
+ id: PgAttr<PgAttr<alepha160.TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
632
+ version: PgAttr<PgAttr<alepha160.TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
633
+ createdAt: PgAttr<PgAttr<alepha160.TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
634
+ updatedAt: PgAttr<PgAttr<alepha160.TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
683
635
  blobId: alepha160.TString;
684
636
  creator: alepha160.TOptional<alepha160.TString>;
685
637
  creatorRealm: alepha160.TOptional<alepha160.TString>;
@@ -721,10 +673,10 @@ declare class FileController {
721
673
  bucket: alepha160.TOptional<alepha160.TString>;
722
674
  }>;
723
675
  response: alepha160.TObject<{
724
- id: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_PRIMARY_KEY>, typeof alepha_orm64.PG_DEFAULT>;
725
- version: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TInteger, typeof alepha_orm64.PG_VERSION>, typeof alepha_orm64.PG_DEFAULT>;
726
- createdAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_CREATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
727
- updatedAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_UPDATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
676
+ id: PgAttr<PgAttr<alepha160.TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
677
+ version: PgAttr<PgAttr<alepha160.TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
678
+ createdAt: PgAttr<PgAttr<alepha160.TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
679
+ updatedAt: PgAttr<PgAttr<alepha160.TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
728
680
  blobId: alepha160.TString;
729
681
  creator: alepha160.TOptional<alepha160.TString>;
730
682
  creatorRealm: alepha160.TOptional<alepha160.TString>;
@@ -752,10 +704,10 @@ declare class FileController {
752
704
  expirationDate: alepha160.TOptional<alepha160.TString>;
753
705
  }>;
754
706
  response: alepha160.TObject<{
755
- id: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_PRIMARY_KEY>, typeof alepha_orm64.PG_DEFAULT>;
756
- version: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TInteger, typeof alepha_orm64.PG_VERSION>, typeof alepha_orm64.PG_DEFAULT>;
757
- createdAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_CREATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
758
- updatedAt: alepha_orm64.PgAttr<alepha_orm64.PgAttr<alepha160.TString, typeof alepha_orm64.PG_UPDATED_AT>, typeof alepha_orm64.PG_DEFAULT>;
707
+ id: PgAttr<PgAttr<alepha160.TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
708
+ version: PgAttr<PgAttr<alepha160.TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
709
+ createdAt: PgAttr<PgAttr<alepha160.TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
710
+ updatedAt: PgAttr<PgAttr<alepha160.TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
759
711
  blobId: alepha160.TString;
760
712
  creator: alepha160.TOptional<alepha160.TString>;
761
713
  creatorRealm: alepha160.TOptional<alepha160.TString>;
@@ -782,37 +734,6 @@ declare class FileController {
782
734
  }>;
783
735
  }
784
736
  //#endregion
785
- //#region ../../src/api/files/controllers/StorageStatsController.d.ts
786
- /**
787
- * REST API controller for storage analytics and statistics.
788
- * Provides endpoints for viewing storage usage metrics.
789
- */
790
- declare class StorageStatsController {
791
- protected readonly url = "/files/stats";
792
- protected readonly group = "files";
793
- protected readonly fileService: FileService;
794
- /**
795
- * GET /files/stats - Gets storage statistics.
796
- * Returns aggregated data including total size, file count,
797
- * and breakdowns by bucket and MIME type.
798
- */
799
- readonly getStats: alepha_server0.ActionPrimitiveFn<{
800
- response: alepha160.TObject<{
801
- totalSize: alepha160.TNumber;
802
- totalFiles: alepha160.TNumber;
803
- byBucket: alepha160.TArray<alepha160.TObject<{
804
- bucket: alepha160.TString;
805
- totalSize: alepha160.TNumber;
806
- fileCount: alepha160.TNumber;
807
- }>>;
808
- byMimeType: alepha160.TArray<alepha160.TObject<{
809
- mimeType: alepha160.TString;
810
- fileCount: alepha160.TNumber;
811
- }>>;
812
- }>;
813
- }>;
814
- }
815
- //#endregion
816
737
  //#region ../../src/api/files/jobs/FileJobs.d.ts
817
738
  declare class FileJobs {
818
739
  protected readonly fileService: FileService;
@@ -852,5 +773,5 @@ declare module "alepha/bucket" {
852
773
  */
853
774
  declare const AlephaApiFiles: alepha160.Service<alepha160.Module>;
854
775
  //#endregion
855
- export { AlephaApiFiles, BucketStats, FileController, FileEntity, FileJobs, FileService, MimeTypeStats, StorageStats, StorageStatsController, bucketStatsSchema, files, mimeTypeStatsSchema, storageStatsSchema };
776
+ export { AdminFileStatsController, AlephaApiFiles, BucketStats, FileController, FileEntity, FileJobs, FileService, MimeTypeStats, StorageStats, bucketStatsSchema, files, mimeTypeStatsSchema, storageStatsSchema };
856
777
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/api/files/entities/files.ts","../../../src/api/files/schemas/fileQuerySchema.ts","../../../src/orm/schemas/insertSchema.ts","../../../src/orm/schemas/updateSchema.ts","../../../src/orm/primitives/$entity.ts","../../../src/orm/constants/PG_SYMBOLS.ts","../../../src/orm/helpers/pgAttr.ts","../../../src/orm/providers/drivers/BunPostgresProvider.ts","../../../src/orm/providers/drivers/BunSqliteProvider.ts","../../../src/orm/providers/drivers/NodePostgresProvider.ts","../../../src/orm/providers/drivers/NodeSqliteProvider.ts","../../../src/orm/index.ts","../../../src/api/files/schemas/fileResourceSchema.ts","../../../src/api/files/schemas/storageStatsSchema.ts","../../../src/api/files/services/FileService.ts","../../../src/api/files/controllers/FileController.ts","../../../src/api/files/controllers/StorageStatsController.ts","../../../src/api/files/jobs/FileJobs.ts","../../../src/api/files/index.ts"],"sourcesContent":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/api/files/entities/files.ts","../../../src/api/files/schemas/fileQuerySchema.ts","../../../src/orm/schemas/insertSchema.ts","../../../src/orm/schemas/updateSchema.ts","../../../src/orm/primitives/$entity.ts","../../../src/orm/constants/PG_SYMBOLS.ts","../../../src/orm/helpers/pgAttr.ts","../../../src/orm/providers/drivers/NodePostgresProvider.ts","../../../src/orm/providers/drivers/NodeSqliteProvider.ts","../../../src/orm/index.ts","../../../src/api/files/schemas/fileResourceSchema.ts","../../../src/api/files/schemas/storageStatsSchema.ts","../../../src/api/files/services/FileService.ts","../../../src/api/files/controllers/AdminFileStatsController.ts","../../../src/api/files/controllers/FileController.ts","../../../src/api/files/jobs/FileJobs.ts","../../../src/api/files/index.ts"],"sourcesContent":[],"mappings":"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"}
@@ -2,23 +2,29 @@ import { $hook, $inject, $module, Alepha, t } from "alepha";
2
2
  import { $bucket, AlephaBucket, FileNotFoundError } from "alepha/bucket";
3
3
  import { AlephaServerCache } from "alepha/server/cache";
4
4
  import { AlephaServerMultipart } from "alepha/server/multipart";
5
- import { $entity, $repository, pageQuerySchema, pg } from "alepha/orm";
5
+ import "alepha/server/security";
6
6
  import { $action, NotFoundError, okSchema } from "alepha/server";
7
7
  import { createHash } from "node:crypto";
8
8
  import { DateTimeProvider } from "alepha/datetime";
9
9
  import { $logger } from "alepha/logger";
10
- import "alepha/server/security";
10
+ import { $entity, $repository, db, pageQuerySchema } from "alepha/orm";
11
11
  import { $scheduler } from "alepha/scheduler";
12
12
 
13
- //#region ../../src/api/files/schemas/fileQuerySchema.ts
14
- const fileQuerySchema = t.extend(pageQuerySchema, {
15
- bucket: t.optional(t.string()),
16
- tags: t.optional(t.array(t.string())),
17
- name: t.optional(t.string()),
18
- mimeType: t.optional(t.string()),
19
- creator: t.optional(t.uuid()),
20
- createdAfter: t.optional(t.datetime()),
21
- createdBefore: t.optional(t.datetime())
13
+ //#region ../../src/api/files/schemas/storageStatsSchema.ts
14
+ const bucketStatsSchema = t.object({
15
+ bucket: t.string(),
16
+ totalSize: t.number(),
17
+ fileCount: t.number()
18
+ });
19
+ const mimeTypeStatsSchema = t.object({
20
+ mimeType: t.string(),
21
+ fileCount: t.number()
22
+ });
23
+ const storageStatsSchema = t.object({
24
+ totalSize: t.number(),
25
+ totalFiles: t.number(),
26
+ byBucket: t.array(bucketStatsSchema),
27
+ byMimeType: t.array(mimeTypeStatsSchema)
22
28
  });
23
29
 
24
30
  //#endregion
@@ -26,10 +32,10 @@ const fileQuerySchema = t.extend(pageQuerySchema, {
26
32
  const files = $entity({
27
33
  name: "files",
28
34
  schema: t.object({
29
- id: pg.primaryKey(t.uuid()),
30
- version: pg.version(),
31
- createdAt: pg.createdAt(),
32
- updatedAt: pg.updatedAt(),
35
+ id: db.primaryKey(t.uuid()),
36
+ version: db.version(),
37
+ createdAt: db.createdAt(),
38
+ updatedAt: db.updatedAt(),
33
39
  blobId: t.text(),
34
40
  creator: t.optional(t.uuid()),
35
41
  creatorRealm: t.optional(t.string()),
@@ -52,13 +58,6 @@ const files = $entity({
52
58
  ]
53
59
  });
54
60
 
55
- //#endregion
56
- //#region ../../src/api/files/schemas/fileResourceSchema.ts
57
- const fileResourceSchema = t.extend(files.schema, {}, {
58
- title: "FileResource",
59
- description: "A file resource representing a file stored in the system."
60
- });
61
-
62
61
  //#endregion
63
62
  //#region ../../src/api/files/services/FileService.ts
64
63
  var FileService = class {
@@ -321,6 +320,49 @@ var FileService = class {
321
320
  }
322
321
  };
323
322
 
323
+ //#endregion
324
+ //#region ../../src/api/files/controllers/AdminFileStatsController.ts
325
+ /**
326
+ * REST API controller for storage analytics and statistics.
327
+ * Provides endpoints for viewing storage usage metrics.
328
+ */
329
+ var AdminFileStatsController = class {
330
+ url = "/files/stats";
331
+ group = "admin:files";
332
+ fileService = $inject(FileService);
333
+ /**
334
+ * GET /files/stats - Gets storage statistics.
335
+ * Returns aggregated data including total size, file count,
336
+ * and breakdowns by bucket and MIME type.
337
+ */
338
+ getStats = $action({
339
+ path: this.url,
340
+ group: this.group,
341
+ description: "Get storage statistics",
342
+ schema: { response: storageStatsSchema },
343
+ handler: () => this.fileService.getStorageStats()
344
+ });
345
+ };
346
+
347
+ //#endregion
348
+ //#region ../../src/api/files/schemas/fileQuerySchema.ts
349
+ const fileQuerySchema = t.extend(pageQuerySchema, {
350
+ bucket: t.optional(t.string()),
351
+ tags: t.optional(t.array(t.string())),
352
+ name: t.optional(t.string()),
353
+ mimeType: t.optional(t.string()),
354
+ creator: t.optional(t.uuid()),
355
+ createdAfter: t.optional(t.datetime()),
356
+ createdBefore: t.optional(t.datetime())
357
+ });
358
+
359
+ //#endregion
360
+ //#region ../../src/api/files/schemas/fileResourceSchema.ts
361
+ const fileResourceSchema = t.extend(files.schema, {}, {
362
+ title: "FileResource",
363
+ description: "A file resource representing a file stored in the system."
364
+ });
365
+
324
366
  //#endregion
325
367
  //#region ../../src/api/files/controllers/FileController.ts
326
368
  /**
@@ -337,11 +379,11 @@ var FileController = class {
337
379
  */
338
380
  findFiles = $action({
339
381
  path: this.url,
340
- group: this.group,
382
+ group: `admin:${this.group}`,
341
383
  description: "List files with filtering and pagination",
342
384
  schema: {
343
385
  query: fileQuerySchema,
344
- response: pg.page(fileResourceSchema)
386
+ response: t.page(fileResourceSchema)
345
387
  },
346
388
  handler: ({ query }) => this.fileService.findFiles(query)
347
389
  });
@@ -352,7 +394,7 @@ var FileController = class {
352
394
  deleteFile = $action({
353
395
  method: "DELETE",
354
396
  path: `${this.url}/:id`,
355
- group: this.group,
397
+ group: `admin:${this.group}`,
356
398
  description: "Delete a file",
357
399
  schema: {
358
400
  params: t.object({ id: t.uuid() }),
@@ -389,7 +431,7 @@ var FileController = class {
389
431
  updateFile = $action({
390
432
  method: "PATCH",
391
433
  path: `${this.url}/:id`,
392
- group: this.group,
434
+ group: `admin:${this.group}`,
393
435
  description: "Update file metadata",
394
436
  schema: {
395
437
  params: t.object({ id: t.uuid() }),
@@ -429,48 +471,6 @@ var FileController = class {
429
471
  });
430
472
  };
431
473
 
432
- //#endregion
433
- //#region ../../src/api/files/schemas/storageStatsSchema.ts
434
- const bucketStatsSchema = t.object({
435
- bucket: t.string(),
436
- totalSize: t.number(),
437
- fileCount: t.number()
438
- });
439
- const mimeTypeStatsSchema = t.object({
440
- mimeType: t.string(),
441
- fileCount: t.number()
442
- });
443
- const storageStatsSchema = t.object({
444
- totalSize: t.number(),
445
- totalFiles: t.number(),
446
- byBucket: t.array(bucketStatsSchema),
447
- byMimeType: t.array(mimeTypeStatsSchema)
448
- });
449
-
450
- //#endregion
451
- //#region ../../src/api/files/controllers/StorageStatsController.ts
452
- /**
453
- * REST API controller for storage analytics and statistics.
454
- * Provides endpoints for viewing storage usage metrics.
455
- */
456
- var StorageStatsController = class {
457
- url = "/files/stats";
458
- group = "files";
459
- fileService = $inject(FileService);
460
- /**
461
- * GET /files/stats - Gets storage statistics.
462
- * Returns aggregated data including total size, file count,
463
- * and breakdowns by bucket and MIME type.
464
- */
465
- getStats = $action({
466
- path: this.url,
467
- group: this.group,
468
- description: "Get storage statistics",
469
- schema: { response: storageStatsSchema },
470
- handler: () => this.fileService.getStorageStats()
471
- });
472
- };
473
-
474
474
  //#endregion
475
475
  //#region ../../src/api/files/jobs/FileJobs.ts
476
476
  var FileJobs = class {
@@ -499,15 +499,15 @@ const AlephaApiFiles = $module({
499
499
  name: "alepha.api.files",
500
500
  services: [
501
501
  FileController,
502
- StorageStatsController,
502
+ AdminFileStatsController,
503
503
  FileJobs,
504
504
  FileService
505
505
  ],
506
506
  register: (alepha) => {
507
- alepha.with(AlephaBucket).with(AlephaServerCache).with(AlephaServerMultipart).with(FileController).with(StorageStatsController).with(FileJobs);
507
+ alepha.with(AlephaBucket).with(AlephaServerCache).with(AlephaServerMultipart).with(FileController).with(AdminFileStatsController).with(FileJobs);
508
508
  }
509
509
  });
510
510
 
511
511
  //#endregion
512
- export { AlephaApiFiles, FileController, FileJobs, FileService, StorageStatsController, bucketStatsSchema, files, mimeTypeStatsSchema, storageStatsSchema };
512
+ export { AdminFileStatsController, AlephaApiFiles, FileController, FileJobs, FileService, bucketStatsSchema, files, mimeTypeStatsSchema, storageStatsSchema };
513
513
  //# sourceMappingURL=index.js.map