alepha 0.13.1 → 0.13.2

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 (296) hide show
  1. package/README.md +1 -1
  2. package/dist/api-files/index.d.ts +28 -91
  3. package/dist/api-files/index.js +10 -755
  4. package/dist/api-files/index.js.map +1 -1
  5. package/dist/api-jobs/index.d.ts +46 -46
  6. package/dist/api-jobs/index.js +13 -13
  7. package/dist/api-jobs/index.js.map +1 -1
  8. package/dist/api-notifications/index.d.ts +129 -146
  9. package/dist/api-notifications/index.js +17 -39
  10. package/dist/api-notifications/index.js.map +1 -1
  11. package/dist/api-parameters/index.d.ts +21 -22
  12. package/dist/api-parameters/index.js +22 -22
  13. package/dist/api-parameters/index.js.map +1 -1
  14. package/dist/api-users/index.d.ts +223 -2000
  15. package/dist/api-users/index.js +914 -4787
  16. package/dist/api-users/index.js.map +1 -1
  17. package/dist/api-verifications/index.d.ts +96 -96
  18. package/dist/batch/index.d.ts +13 -13
  19. package/dist/batch/index.js +8 -8
  20. package/dist/batch/index.js.map +1 -1
  21. package/dist/bucket/index.d.ts +14 -14
  22. package/dist/bucket/index.js +12 -12
  23. package/dist/bucket/index.js.map +1 -1
  24. package/dist/cache/index.d.ts +11 -11
  25. package/dist/cache/index.js +9 -9
  26. package/dist/cache/index.js.map +1 -1
  27. package/dist/cli/index.d.ts +28 -26
  28. package/dist/cli/index.js +50 -13
  29. package/dist/cli/index.js.map +1 -1
  30. package/dist/command/index.d.ts +19 -19
  31. package/dist/command/index.js +25 -25
  32. package/dist/command/index.js.map +1 -1
  33. package/dist/core/index.browser.js +218 -218
  34. package/dist/core/index.browser.js.map +1 -1
  35. package/dist/core/index.d.ts +232 -232
  36. package/dist/core/index.js +218 -218
  37. package/dist/core/index.js.map +1 -1
  38. package/dist/core/index.native.js +2113 -0
  39. package/dist/core/index.native.js.map +1 -0
  40. package/dist/datetime/index.d.ts +9 -9
  41. package/dist/datetime/index.js +7 -7
  42. package/dist/datetime/index.js.map +1 -1
  43. package/dist/email/index.d.ts +16 -16
  44. package/dist/email/index.js +9 -9
  45. package/dist/email/index.js.map +1 -1
  46. package/dist/file/index.js +1 -1
  47. package/dist/file/index.js.map +1 -1
  48. package/dist/lock/index.d.ts +9 -9
  49. package/dist/lock/index.js +8 -8
  50. package/dist/lock/index.js.map +1 -1
  51. package/dist/lock-redis/index.js +3 -66
  52. package/dist/lock-redis/index.js.map +1 -1
  53. package/dist/logger/index.d.ts +5 -5
  54. package/dist/logger/index.js +8 -8
  55. package/dist/logger/index.js.map +1 -1
  56. package/dist/orm/index.browser.js +114 -114
  57. package/dist/orm/index.browser.js.map +1 -1
  58. package/dist/orm/index.d.ts +218 -218
  59. package/dist/orm/index.js +46 -46
  60. package/dist/orm/index.js.map +1 -1
  61. package/dist/queue/index.d.ts +29 -29
  62. package/dist/queue/index.js +20 -20
  63. package/dist/queue/index.js.map +1 -1
  64. package/dist/queue-redis/index.d.ts +2 -2
  65. package/dist/redis/index.d.ts +10 -10
  66. package/dist/retry/index.d.ts +19 -19
  67. package/dist/retry/index.js +7 -7
  68. package/dist/retry/index.js.map +1 -1
  69. package/dist/scheduler/index.d.ts +16 -16
  70. package/dist/scheduler/index.js +9 -9
  71. package/dist/scheduler/index.js.map +1 -1
  72. package/dist/security/index.d.ts +80 -80
  73. package/dist/security/index.js +32 -32
  74. package/dist/security/index.js.map +1 -1
  75. package/dist/server/index.browser.js +1 -1
  76. package/dist/server/index.browser.js.map +1 -1
  77. package/dist/server/index.d.ts +101 -101
  78. package/dist/server/index.js +16 -16
  79. package/dist/server/index.js.map +1 -1
  80. package/dist/server-auth/index.browser.js +4 -982
  81. package/dist/server-auth/index.browser.js.map +1 -1
  82. package/dist/server-auth/index.d.ts +204 -785
  83. package/dist/server-auth/index.js +47 -1239
  84. package/dist/server-auth/index.js.map +1 -1
  85. package/dist/server-cache/index.d.ts +10 -10
  86. package/dist/server-cache/index.js +2 -2
  87. package/dist/server-cache/index.js.map +1 -1
  88. package/dist/server-compress/index.d.ts +4 -4
  89. package/dist/server-compress/index.js +1 -1
  90. package/dist/server-compress/index.js.map +1 -1
  91. package/dist/server-cookies/index.browser.js +8 -8
  92. package/dist/server-cookies/index.browser.js.map +1 -1
  93. package/dist/server-cookies/index.d.ts +17 -17
  94. package/dist/server-cookies/index.js +10 -10
  95. package/dist/server-cookies/index.js.map +1 -1
  96. package/dist/server-cors/index.d.ts +17 -17
  97. package/dist/server-cors/index.js +9 -9
  98. package/dist/server-cors/index.js.map +1 -1
  99. package/dist/server-health/index.d.ts +19 -19
  100. package/dist/server-helmet/index.d.ts +1 -1
  101. package/dist/server-links/index.browser.js +12 -12
  102. package/dist/server-links/index.browser.js.map +1 -1
  103. package/dist/server-links/index.d.ts +59 -251
  104. package/dist/server-links/index.js +23 -502
  105. package/dist/server-links/index.js.map +1 -1
  106. package/dist/server-metrics/index.d.ts +4 -4
  107. package/dist/server-multipart/index.d.ts +2 -2
  108. package/dist/server-proxy/index.d.ts +12 -12
  109. package/dist/server-proxy/index.js +10 -10
  110. package/dist/server-proxy/index.js.map +1 -1
  111. package/dist/server-rate-limit/index.d.ts +22 -22
  112. package/dist/server-rate-limit/index.js +12 -12
  113. package/dist/server-rate-limit/index.js.map +1 -1
  114. package/dist/server-security/index.d.ts +22 -22
  115. package/dist/server-security/index.js +15 -15
  116. package/dist/server-security/index.js.map +1 -1
  117. package/dist/server-static/index.d.ts +14 -14
  118. package/dist/server-static/index.js +8 -8
  119. package/dist/server-static/index.js.map +1 -1
  120. package/dist/server-swagger/index.d.ts +25 -184
  121. package/dist/server-swagger/index.js +21 -724
  122. package/dist/server-swagger/index.js.map +1 -1
  123. package/dist/sms/index.d.ts +14 -14
  124. package/dist/sms/index.js +9 -9
  125. package/dist/sms/index.js.map +1 -1
  126. package/dist/thread/index.d.ts +11 -11
  127. package/dist/thread/index.js +17 -17
  128. package/dist/thread/index.js.map +1 -1
  129. package/dist/topic/index.d.ts +26 -26
  130. package/dist/topic/index.js +16 -16
  131. package/dist/topic/index.js.map +1 -1
  132. package/dist/topic-redis/index.d.ts +1 -1
  133. package/dist/vite/index.d.ts +3 -3
  134. package/dist/vite/index.js +8 -8
  135. package/dist/vite/index.js.map +1 -1
  136. package/dist/websocket/index.browser.js +11 -11
  137. package/dist/websocket/index.browser.js.map +1 -1
  138. package/dist/websocket/index.d.ts +58 -58
  139. package/dist/websocket/index.js +13 -13
  140. package/dist/websocket/index.js.map +1 -1
  141. package/package.json +113 -52
  142. package/src/api-files/services/FileService.ts +5 -7
  143. package/src/api-jobs/index.ts +1 -1
  144. package/src/api-jobs/{descriptors → primitives}/$job.ts +8 -8
  145. package/src/api-jobs/providers/JobProvider.ts +9 -9
  146. package/src/api-jobs/services/JobService.ts +5 -5
  147. package/src/api-notifications/index.ts +5 -15
  148. package/src/api-notifications/{descriptors → primitives}/$notification.ts +10 -10
  149. package/src/api-notifications/services/NotificationSenderService.ts +3 -3
  150. package/src/api-parameters/index.ts +1 -1
  151. package/src/api-parameters/{descriptors → primitives}/$config.ts +7 -12
  152. package/src/api-users/index.ts +1 -1
  153. package/src/api-users/{descriptors → primitives}/$userRealm.ts +8 -8
  154. package/src/api-users/providers/UserRealmProvider.ts +1 -1
  155. package/src/batch/index.ts +3 -3
  156. package/src/batch/{descriptors → primitives}/$batch.ts +13 -16
  157. package/src/bucket/index.ts +8 -8
  158. package/src/bucket/{descriptors → primitives}/$bucket.ts +8 -8
  159. package/src/bucket/providers/LocalFileStorageProvider.ts +3 -3
  160. package/src/cache/index.ts +4 -4
  161. package/src/cache/{descriptors → primitives}/$cache.ts +15 -15
  162. package/src/cli/apps/AlephaPackageBuilderCli.ts +24 -2
  163. package/src/cli/commands/DrizzleCommands.ts +6 -6
  164. package/src/cli/commands/VerifyCommands.ts +1 -1
  165. package/src/cli/commands/ViteCommands.ts +6 -1
  166. package/src/cli/services/ProjectUtils.ts +34 -3
  167. package/src/command/index.ts +5 -5
  168. package/src/command/{descriptors → primitives}/$command.ts +9 -12
  169. package/src/command/providers/CliProvider.ts +10 -10
  170. package/src/core/Alepha.ts +30 -33
  171. package/src/core/constants/KIND.ts +1 -1
  172. package/src/core/constants/OPTIONS.ts +1 -1
  173. package/src/core/helpers/{descriptor.ts → primitive.ts} +18 -18
  174. package/src/core/helpers/ref.ts +1 -1
  175. package/src/core/index.shared.ts +8 -8
  176. package/src/core/{descriptors → primitives}/$context.ts +5 -5
  177. package/src/core/{descriptors → primitives}/$hook.ts +4 -4
  178. package/src/core/{descriptors → primitives}/$inject.ts +2 -2
  179. package/src/core/{descriptors → primitives}/$module.ts +9 -9
  180. package/src/core/{descriptors → primitives}/$use.ts +2 -2
  181. package/src/core/providers/CodecManager.ts +1 -1
  182. package/src/core/providers/JsonSchemaCodec.ts +1 -1
  183. package/src/core/providers/StateManager.ts +2 -2
  184. package/src/datetime/index.ts +3 -3
  185. package/src/datetime/{descriptors → primitives}/$interval.ts +6 -6
  186. package/src/email/index.ts +4 -4
  187. package/src/email/{descriptors → primitives}/$email.ts +8 -8
  188. package/src/file/index.ts +1 -1
  189. package/src/lock/index.ts +3 -3
  190. package/src/lock/{descriptors → primitives}/$lock.ts +10 -10
  191. package/src/logger/index.ts +8 -8
  192. package/src/logger/{descriptors → primitives}/$logger.ts +2 -2
  193. package/src/logger/services/Logger.ts +1 -1
  194. package/src/orm/constants/PG_SYMBOLS.ts +2 -2
  195. package/src/orm/index.browser.ts +2 -2
  196. package/src/orm/index.ts +8 -8
  197. package/src/orm/{descriptors → primitives}/$entity.ts +11 -11
  198. package/src/orm/{descriptors → primitives}/$repository.ts +2 -2
  199. package/src/orm/{descriptors → primitives}/$sequence.ts +8 -8
  200. package/src/orm/{descriptors → primitives}/$transaction.ts +4 -4
  201. package/src/orm/providers/PostgresTypeProvider.ts +3 -3
  202. package/src/orm/providers/RepositoryProvider.ts +4 -4
  203. package/src/orm/providers/drivers/DatabaseProvider.ts +7 -7
  204. package/src/orm/services/ModelBuilder.ts +9 -9
  205. package/src/orm/services/PgRelationManager.ts +2 -2
  206. package/src/orm/services/PostgresModelBuilder.ts +5 -5
  207. package/src/orm/services/Repository.ts +7 -7
  208. package/src/orm/services/SqliteModelBuilder.ts +5 -5
  209. package/src/queue/index.ts +7 -7
  210. package/src/queue/{descriptors → primitives}/$consumer.ts +15 -15
  211. package/src/queue/{descriptors → primitives}/$queue.ts +12 -12
  212. package/src/queue/providers/WorkerProvider.ts +7 -7
  213. package/src/retry/index.ts +3 -3
  214. package/src/retry/{descriptors → primitives}/$retry.ts +14 -14
  215. package/src/scheduler/index.ts +3 -3
  216. package/src/scheduler/{descriptors → primitives}/$scheduler.ts +9 -9
  217. package/src/scheduler/providers/CronProvider.ts +1 -1
  218. package/src/security/index.ts +9 -9
  219. package/src/security/{descriptors → primitives}/$permission.ts +7 -7
  220. package/src/security/{descriptors → primitives}/$realm.ts +6 -12
  221. package/src/security/{descriptors → primitives}/$role.ts +12 -12
  222. package/src/security/{descriptors → primitives}/$serviceAccount.ts +8 -8
  223. package/src/server/index.browser.ts +1 -1
  224. package/src/server/index.ts +14 -14
  225. package/src/server/{descriptors → primitives}/$action.ts +13 -13
  226. package/src/server/{descriptors → primitives}/$route.ts +9 -9
  227. package/src/server/providers/NodeHttpServerProvider.ts +1 -1
  228. package/src/server/services/HttpClient.ts +1 -1
  229. package/src/server-auth/index.browser.ts +1 -1
  230. package/src/server-auth/index.ts +6 -6
  231. package/src/server-auth/{descriptors → primitives}/$auth.ts +10 -10
  232. package/src/server-auth/{descriptors → primitives}/$authCredentials.ts +4 -4
  233. package/src/server-auth/{descriptors → primitives}/$authGithub.ts +4 -4
  234. package/src/server-auth/{descriptors → primitives}/$authGoogle.ts +4 -4
  235. package/src/server-auth/providers/ServerAuthProvider.ts +4 -4
  236. package/src/server-cache/providers/ServerCacheProvider.ts +7 -7
  237. package/src/server-compress/providers/ServerCompressProvider.ts +3 -3
  238. package/src/server-cookies/index.browser.ts +2 -2
  239. package/src/server-cookies/index.ts +5 -5
  240. package/src/server-cookies/{descriptors → primitives}/$cookie.browser.ts +12 -12
  241. package/src/server-cookies/{descriptors → primitives}/$cookie.ts +13 -13
  242. package/src/server-cookies/providers/ServerCookiesProvider.ts +4 -4
  243. package/src/server-cookies/services/CookieParser.ts +1 -1
  244. package/src/server-cors/index.ts +3 -3
  245. package/src/server-cors/{descriptors → primitives}/$cors.ts +11 -13
  246. package/src/server-cors/providers/ServerCorsProvider.ts +5 -5
  247. package/src/server-links/index.browser.ts +5 -5
  248. package/src/server-links/index.ts +9 -9
  249. package/src/server-links/{descriptors → primitives}/$remote.ts +11 -11
  250. package/src/server-links/providers/LinkProvider.ts +7 -7
  251. package/src/server-links/providers/{RemoteDescriptorProvider.ts → RemotePrimitiveProvider.ts} +6 -6
  252. package/src/server-links/providers/ServerLinksProvider.ts +3 -3
  253. package/src/server-proxy/index.ts +3 -3
  254. package/src/server-proxy/{descriptors → primitives}/$proxy.ts +8 -8
  255. package/src/server-proxy/providers/ServerProxyProvider.ts +4 -4
  256. package/src/server-rate-limit/index.ts +6 -6
  257. package/src/server-rate-limit/{descriptors → primitives}/$rateLimit.ts +13 -13
  258. package/src/server-rate-limit/providers/ServerRateLimitProvider.ts +5 -5
  259. package/src/server-security/index.ts +3 -3
  260. package/src/server-security/{descriptors → primitives}/$basicAuth.ts +13 -13
  261. package/src/server-security/providers/ServerBasicAuthProvider.ts +5 -5
  262. package/src/server-security/providers/ServerSecurityProvider.ts +4 -4
  263. package/src/server-static/index.ts +3 -3
  264. package/src/server-static/{descriptors → primitives}/$serve.ts +8 -10
  265. package/src/server-static/providers/ServerStaticProvider.ts +6 -6
  266. package/src/server-swagger/index.ts +5 -5
  267. package/src/server-swagger/{descriptors → primitives}/$swagger.ts +9 -9
  268. package/src/server-swagger/providers/ServerSwaggerProvider.ts +11 -10
  269. package/src/sms/index.ts +4 -4
  270. package/src/sms/{descriptors → primitives}/$sms.ts +8 -8
  271. package/src/thread/index.ts +3 -3
  272. package/src/thread/{descriptors → primitives}/$thread.ts +13 -13
  273. package/src/thread/providers/ThreadProvider.ts +7 -9
  274. package/src/topic/index.ts +5 -5
  275. package/src/topic/{descriptors → primitives}/$subscriber.ts +14 -14
  276. package/src/topic/{descriptors → primitives}/$topic.ts +10 -10
  277. package/src/topic/providers/TopicProvider.ts +4 -4
  278. package/src/vite/tasks/copyAssets.ts +1 -1
  279. package/src/vite/tasks/generateSitemap.ts +3 -3
  280. package/src/vite/tasks/prerenderPages.ts +2 -2
  281. package/src/vite/tasks/runAlepha.ts +2 -2
  282. package/src/websocket/index.browser.ts +3 -3
  283. package/src/websocket/index.shared.ts +2 -2
  284. package/src/websocket/index.ts +4 -4
  285. package/src/websocket/interfaces/WebSocketInterfaces.ts +3 -3
  286. package/src/websocket/{descriptors → primitives}/$channel.ts +10 -10
  287. package/src/websocket/{descriptors → primitives}/$websocket.ts +8 -8
  288. package/src/websocket/providers/NodeWebSocketServerProvider.ts +7 -7
  289. package/src/websocket/providers/WebSocketServerProvider.ts +3 -3
  290. package/src/websocket/services/WebSocketClient.ts +5 -5
  291. package/src/api-notifications/providers/MemorySmsProvider.ts +0 -20
  292. package/src/api-notifications/providers/SmsProvider.ts +0 -8
  293. /package/src/core/{descriptors → primitives}/$atom.ts +0 -0
  294. /package/src/core/{descriptors → primitives}/$env.ts +0 -0
  295. /package/src/server-auth/{descriptors → primitives}/$authApple.ts +0 -0
  296. /package/src/server-links/{descriptors → primitives}/$client.ts +0 -0
@@ -1,6 +1,6 @@
1
1
  import * as alepha0 from "alepha";
2
2
  import { Alepha } from "alepha";
3
- import * as alepha_command0 from "alepha/command";
3
+ import * as alepha_command7 from "alepha/command";
4
4
  import { CliProvider } from "alepha/command";
5
5
  import * as alepha_logger4 from "alepha/logger";
6
6
  import { FileSystemProvider } from "alepha/file";
@@ -12,6 +12,7 @@ declare const AlephaCli: alepha0.Service<alepha0.Module>;
12
12
  interface Module {
13
13
  name: string;
14
14
  dependencies: string[];
15
+ native?: boolean;
15
16
  browser?: boolean;
16
17
  node?: boolean;
17
18
  }
@@ -19,7 +20,7 @@ declare class AlephaPackageBuilderCli {
19
20
  src: string;
20
21
  dist: string;
21
22
  fs: FileSystemProvider;
22
- make: alepha_command0.CommandDescriptor<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
23
+ make: alepha_command7.CommandPrimitive<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
23
24
  }
24
25
  declare function analyzeModules(srcDir: string, packageName: string): Promise<Module[]>;
25
26
  //#endregion
@@ -209,6 +210,7 @@ declare class ProjectUtils {
209
210
  entry: string;
210
211
  rootDir: string;
211
212
  }): Promise<string>;
213
+ loadEnvFile(root: string): Promise<void>;
212
214
  /**
213
215
  * Run a drizzle-kit command for all database providers in an Alepha instance.
214
216
  *
@@ -227,7 +229,7 @@ declare class ProjectUtils {
227
229
  }): Promise<void>;
228
230
  getPackageManager(root: string): Promise<"yarn" | "pnpm" | "npm">;
229
231
  ensureIndexHtml(root: string): Promise<void>;
230
- hasDir(root: string, dirName: string): Promise<boolean>;
232
+ exists(root: string, dirName: string): Promise<boolean>;
231
233
  readPackageJson(root: string): Promise<Record<string, any>>;
232
234
  }
233
235
  interface DependencyModes {
@@ -240,8 +242,8 @@ declare class BiomeCommands {
240
242
  protected readonly log: alepha_logger4.Logger;
241
243
  protected readonly runner: ProcessRunner;
242
244
  protected readonly utils: ProjectUtils;
243
- readonly format: alepha_command0.CommandDescriptor<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
244
- readonly lint: alepha_command0.CommandDescriptor<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
245
+ readonly format: alepha_command7.CommandPrimitive<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
246
+ readonly lint: alepha_command7.CommandPrimitive<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
245
247
  }
246
248
  //#endregion
247
249
  //#region src/cli/commands/CoreCommands.d.ts
@@ -252,18 +254,18 @@ declare class CoreCommands {
252
254
  /**
253
255
  * Called when no command is provided
254
256
  */
255
- readonly root: alepha_command0.CommandDescriptor<alepha0.TObject<{
257
+ readonly root: alepha_command7.CommandPrimitive<alepha0.TObject<{
256
258
  version: alepha0.TOptional<alepha0.TBoolean>;
257
259
  }>, alepha0.TSchema>;
258
260
  /**
259
261
  * Clean the project, removing the "dist" directory
260
262
  */
261
- readonly clean: alepha_command0.CommandDescriptor<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
263
+ readonly clean: alepha_command7.CommandPrimitive<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
262
264
  /**
263
265
  * Ensure the project has the necessary Alepha configuration files.
264
266
  * Add the correct dependencies to package.json and install them.
265
267
  */
266
- readonly init: alepha_command0.CommandDescriptor<alepha0.TObject<{
268
+ readonly init: alepha_command7.CommandPrimitive<alepha0.TObject<{
267
269
  yarn: alepha0.TOptional<alepha0.TBoolean>;
268
270
  pnpm: alepha0.TOptional<alepha0.TBoolean>;
269
271
  react: alepha0.TOptional<alepha0.TBoolean>;
@@ -279,19 +281,19 @@ declare class DrizzleCommands {
279
281
  /**
280
282
  * Check if database migrations are up to date.
281
283
  */
282
- check: alepha_command0.CommandDescriptor<alepha0.TObject<{
284
+ check: alepha_command7.CommandPrimitive<alepha0.TObject<{
283
285
  provider: alepha0.TOptional<alepha0.TString>;
284
286
  }>, alepha0.TOptional<alepha0.TString>>;
285
287
  /**
286
288
  * Generate database migration files
287
289
  *
288
290
  * - Loads the Alepha instance from the specified entry file.
289
- * - Retrieves all repository descriptors to gather database models.
291
+ * - Retrieves all repository primitives to gather database models.
290
292
  * - Creates temporary entity definitions based on the current database schema.
291
293
  * - Writes these definitions to a temporary schema file. (node_modules/.db/entities.ts)
292
294
  * - Invokes Drizzle Kit's CLI to generate migration files based on the current schema.
293
295
  */
294
- generate: alepha_command0.CommandDescriptor<alepha0.TObject<{
296
+ generate: alepha_command7.CommandPrimitive<alepha0.TObject<{
295
297
  provider: alepha0.TOptional<alepha0.TString>;
296
298
  custom: alepha0.TOptional<alepha0.TString>;
297
299
  }>, alepha0.TOptional<alepha0.TString>>;
@@ -299,33 +301,33 @@ declare class DrizzleCommands {
299
301
  * Push database schema changes directly to the database
300
302
  *
301
303
  * - Loads the Alepha instance from the specified entry file.
302
- * - Retrieves all repository descriptors to gather database models.
304
+ * - Retrieves all repository primitives to gather database models.
303
305
  * - Creates temporary entity definitions and Drizzle config.
304
306
  * - Invokes Drizzle Kit's push command to apply schema changes directly.
305
307
  */
306
- push: alepha_command0.CommandDescriptor<alepha0.TObject<{
308
+ push: alepha_command7.CommandPrimitive<alepha0.TObject<{
307
309
  provider: alepha0.TOptional<alepha0.TString>;
308
310
  }>, alepha0.TOptional<alepha0.TString>>;
309
311
  /**
310
312
  * Apply pending database migrations
311
313
  *
312
314
  * - Loads the Alepha instance from the specified entry file.
313
- * - Retrieves all repository descriptors to gather database models.
315
+ * - Retrieves all repository primitives to gather database models.
314
316
  * - Creates temporary entity definitions and Drizzle config.
315
317
  * - Invokes Drizzle Kit's migrate command to apply pending migrations.
316
318
  */
317
- migrate: alepha_command0.CommandDescriptor<alepha0.TObject<{
319
+ migrate: alepha_command7.CommandPrimitive<alepha0.TObject<{
318
320
  provider: alepha0.TOptional<alepha0.TString>;
319
321
  }>, alepha0.TOptional<alepha0.TString>>;
320
322
  /**
321
323
  * Launch Drizzle Studio database browser
322
324
  *
323
325
  * - Loads the Alepha instance from the specified entry file.
324
- * - Retrieves all repository descriptors to gather database models.
326
+ * - Retrieves all repository primitives to gather database models.
325
327
  * - Creates temporary entity definitions and Drizzle config.
326
328
  * - Invokes Drizzle Kit's studio command to launch the web-based database browser.
327
329
  */
328
- studio: alepha_command0.CommandDescriptor<alepha0.TObject<{
330
+ studio: alepha_command7.CommandPrimitive<alepha0.TObject<{
329
331
  provider: alepha0.TOptional<alepha0.TString>;
330
332
  }>, alepha0.TOptional<alepha0.TString>>;
331
333
  /**
@@ -333,7 +335,7 @@ declare class DrizzleCommands {
333
335
  *
334
336
  * @experimental
335
337
  */
336
- drop: alepha_command0.CommandDescriptor<alepha0.TObject<{
338
+ drop: alepha_command7.CommandPrimitive<alepha0.TObject<{
337
339
  provider: alepha0.TOptional<alepha0.TString>;
338
340
  }>, alepha0.TOptional<alepha0.TString>>;
339
341
  /**
@@ -341,7 +343,7 @@ declare class DrizzleCommands {
341
343
  *
342
344
  * @experimental
343
345
  */
344
- seed: alepha_command0.CommandDescriptor<alepha0.TObject<{
346
+ seed: alepha_command7.CommandPrimitive<alepha0.TObject<{
345
347
  provider: alepha0.TOptional<alepha0.TString>;
346
348
  }>, alepha0.TOptional<alepha0.TString>>;
347
349
  /**
@@ -349,7 +351,7 @@ declare class DrizzleCommands {
349
351
  *
350
352
  * @experimental
351
353
  */
352
- status: alepha_command0.CommandDescriptor<alepha0.TObject<{
354
+ status: alepha_command7.CommandPrimitive<alepha0.TObject<{
353
355
  provider: alepha0.TOptional<alepha0.TString>;
354
356
  }>, alepha0.TOptional<alepha0.TString>>;
355
357
  }
@@ -371,11 +373,11 @@ declare class VerifyCommands {
371
373
  * - Build the project
372
374
  * - Clean the project again
373
375
  */
374
- readonly verify: alepha_command0.CommandDescriptor<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
376
+ readonly verify: alepha_command7.CommandPrimitive<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
375
377
  /**
376
378
  * Run TypeScript type checking across the codebase with no emit.
377
379
  */
378
- readonly typecheck: alepha_command0.CommandDescriptor<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
380
+ readonly typecheck: alepha_command7.CommandPrimitive<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
379
381
  }
380
382
  //#endregion
381
383
  //#region src/cli/commands/ViteCommands.d.ts
@@ -386,7 +388,7 @@ declare class ViteCommands {
386
388
  protected readonly env: {
387
389
  VITEST_ARGS: string;
388
390
  };
389
- readonly run: alepha_command0.CommandDescriptor<alepha0.TObject<{
391
+ readonly run: alepha_command7.CommandPrimitive<alepha0.TObject<{
390
392
  watch: alepha0.TOptional<alepha0.TBoolean>;
391
393
  }>, alepha0.TString>;
392
394
  /**
@@ -395,8 +397,8 @@ declare class ViteCommands {
395
397
  * - If an index.html file is found in the project root, it will run Vite in dev mode.
396
398
  * - Otherwise, it will look for a server entry file and run it with tsx in watch mode.
397
399
  */
398
- readonly dev: alepha_command0.CommandDescriptor<alepha0.TObject<alepha0.TProperties>, alepha0.TOptional<alepha0.TString>>;
399
- readonly build: alepha_command0.CommandDescriptor<alepha0.TObject<{
400
+ readonly dev: alepha_command7.CommandPrimitive<alepha0.TObject<alepha0.TProperties>, alepha0.TOptional<alepha0.TString>>;
401
+ readonly build: alepha_command7.CommandPrimitive<alepha0.TObject<{
400
402
  stats: alepha0.TOptional<alepha0.TBoolean>;
401
403
  vercel: alepha0.TOptional<alepha0.TBoolean>;
402
404
  cloudflare: alepha0.TOptional<alepha0.TBoolean>;
@@ -404,7 +406,7 @@ declare class ViteCommands {
404
406
  sitemap: alepha0.TOptional<alepha0.TString>;
405
407
  prerender: alepha0.TOptional<alepha0.TBoolean>;
406
408
  }>, alepha0.TOptional<alepha0.TString>>;
407
- readonly test: alepha_command0.CommandDescriptor<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
409
+ readonly test: alepha_command7.CommandPrimitive<alepha0.TObject<alepha0.TProperties>, alepha0.TSchema>;
408
410
  }
409
411
  //#endregion
410
412
  //#region src/cli/version.d.ts
package/dist/cli/index.js CHANGED
@@ -441,10 +441,32 @@ ${models.map((it) => `export const ${it} = models["${it}"];`).join("\n")}
441
441
  dialect: options.dialect,
442
442
  dbCredentials: { url: options.providerUrl }
443
443
  };
444
+ if (options.dialect === "sqlite") {
445
+ let url = options.providerUrl;
446
+ url = url.replace("sqlite://", "").replace("file://", "");
447
+ url = join(options.rootDir, url);
448
+ config.dbCredentials = { url };
449
+ }
444
450
  if (options.providerName === "pglite") config.driver = "pglite";
445
451
  const drizzleConfigJs = `export default ${JSON.stringify(config, null, 2)}`;
446
452
  return await this.runner.writeConfigFile("drizzle.config.js", drizzleConfigJs, options.rootDir);
447
453
  }
454
+ async loadEnvFile(root) {
455
+ const envPath = join(root, ".env");
456
+ try {
457
+ const lines = (await readFile(envPath, "utf8")).split("\n");
458
+ for (const line of lines) {
459
+ const [key, ...rest] = line.split("=");
460
+ if (key) {
461
+ const value = rest.join("=");
462
+ process.env[key.trim()] = value.trim();
463
+ }
464
+ }
465
+ this.log.debug(`Loaded environment variables from ${envPath}`);
466
+ } catch {
467
+ this.log.debug(`No .env file found at ${envPath}, skipping load.`);
468
+ }
469
+ }
448
470
  /**
449
471
  * Run a drizzle-kit command for all database providers in an Alepha instance.
450
472
  *
@@ -455,13 +477,14 @@ ${models.map((it) => `export const ${it} = models["${it}"];`).join("\n")}
455
477
  */
456
478
  async runDrizzleKitCommand(options) {
457
479
  const rootDir = options.root;
480
+ await this.loadEnvFile(rootDir);
458
481
  this.log.debug(`Using project root: ${rootDir}`);
459
482
  const { alepha, entry } = await this.loadAlephaFromServerEntryFile(rootDir, options.args);
460
483
  const drizzleKitProvider = alepha.inject("DrizzleKitProvider");
461
484
  const repositoryProvider = alepha.inject("RepositoryProvider");
462
485
  const accepted = /* @__PURE__ */ new Set([]);
463
- for (const descriptor of repositoryProvider.getRepositories()) {
464
- const provider = descriptor.provider;
486
+ for (const primitive of repositoryProvider.getRepositories()) {
487
+ const provider = primitive.provider;
465
488
  const providerName = provider.name;
466
489
  const dialect = provider.dialect;
467
490
  if (accepted.has(providerName)) continue;
@@ -503,7 +526,7 @@ ${models.map((it) => `export const ${it} = models["${it}"];`).join("\n")}
503
526
  if (!await this.fs.exists(join(root, serverEntry))) await this.fs.writeFile(join(root, serverEntry), mainBrowserTs());
504
527
  if (!await this.fs.exists(join(root, appRouter))) await this.fs.writeFile(join(root, appRouter), appRouterTs());
505
528
  }
506
- async hasDir(root, dirName) {
529
+ async exists(root, dirName) {
507
530
  return this.fs.exists(join(root, dirName));
508
531
  }
509
532
  async readPackageJson(root) {
@@ -630,8 +653,8 @@ var DrizzleCommands = class {
630
653
  const repositoryProvider = alepha.inject("RepositoryProvider");
631
654
  const drizzleKitProvider = alepha.inject("DrizzleKitProvider");
632
655
  const accepted = /* @__PURE__ */ new Set([]);
633
- for (const descriptor of repositoryProvider.getRepositories()) {
634
- const provider = descriptor.provider;
656
+ for (const primitive of repositoryProvider.getRepositories()) {
657
+ const provider = primitive.provider;
635
658
  const providerName = provider.name;
636
659
  if (accepted.has(providerName)) continue;
637
660
  accepted.add(providerName);
@@ -677,7 +700,7 @@ var DrizzleCommands = class {
677
700
  * Generate database migration files
678
701
  *
679
702
  * - Loads the Alepha instance from the specified entry file.
680
- * - Retrieves all repository descriptors to gather database models.
703
+ * - Retrieves all repository primitives to gather database models.
681
704
  * - Creates temporary entity definitions based on the current database schema.
682
705
  * - Writes these definitions to a temporary schema file. (node_modules/.db/entities.ts)
683
706
  * - Invokes Drizzle Kit's CLI to generate migration files based on the current schema.
@@ -707,7 +730,7 @@ var DrizzleCommands = class {
707
730
  * Push database schema changes directly to the database
708
731
  *
709
732
  * - Loads the Alepha instance from the specified entry file.
710
- * - Retrieves all repository descriptors to gather database models.
733
+ * - Retrieves all repository primitives to gather database models.
711
734
  * - Creates temporary entity definitions and Drizzle config.
712
735
  * - Invokes Drizzle Kit's push command to apply schema changes directly.
713
736
  */
@@ -734,7 +757,7 @@ var DrizzleCommands = class {
734
757
  * Apply pending database migrations
735
758
  *
736
759
  * - Loads the Alepha instance from the specified entry file.
737
- * - Retrieves all repository descriptors to gather database models.
760
+ * - Retrieves all repository primitives to gather database models.
738
761
  * - Creates temporary entity definitions and Drizzle config.
739
762
  * - Invokes Drizzle Kit's migrate command to apply pending migrations.
740
763
  */
@@ -761,7 +784,7 @@ var DrizzleCommands = class {
761
784
  * Launch Drizzle Studio database browser
762
785
  *
763
786
  * - Loads the Alepha instance from the specified entry file.
764
- * - Retrieves all repository descriptors to gather database models.
787
+ * - Retrieves all repository primitives to gather database models.
765
788
  * - Creates temporary entity definitions and Drizzle config.
766
789
  * - Invokes Drizzle Kit's studio command to launch the web-based database browser.
767
790
  */
@@ -870,7 +893,7 @@ var VerifyCommands = class {
870
893
  await run("alepha lint");
871
894
  await run("alepha typecheck");
872
895
  if ((await this.utils.readPackageJson(root)).devDependencies?.vitest) await run("alepha test");
873
- if (await this.utils.hasDir(root, "migrations")) await run("alepha db:check-migrations");
896
+ if (await this.utils.exists(root, "migrations")) await run("alepha db:check-migrations");
874
897
  await run("alepha build");
875
898
  await run("alepha clean");
876
899
  }
@@ -935,7 +958,10 @@ var ViteCommands = class {
935
958
  await access(join(root, "index.html"));
936
959
  } catch {
937
960
  this.log.trace("No index.html found, running entry file with tsx");
938
- await this.runner.exec(`tsx watch ${entry}`);
961
+ let cmd = "tsx --watch";
962
+ if (await this.utils.exists(root, ".env")) cmd += ` --env-file=./.env`;
963
+ cmd += ` ${entry}`;
964
+ await this.runner.exec(cmd);
939
965
  return;
940
966
  }
941
967
  await this.runner.exec(`vite`);
@@ -1109,9 +1135,10 @@ var AlephaPackageBuilderCli = class {
1109
1135
  const path = item.name === "core" ? "." : `./${item.name.replace("-", "/")}`;
1110
1136
  pkgData.exports[path] = {};
1111
1137
  pkgData.exports[path].types = `./src/${item.name}/index.ts`;
1138
+ if (item.native) pkgData.exports[path]["react-native"] = `./src/${item.name}/index.native.ts`;
1139
+ else if (item.browser) pkgData.exports[path]["react-native"] = `./src/${item.name}/index.browser.ts`;
1112
1140
  if (item.browser) pkgData.exports[path].browser = `./src/${item.name}/index.browser.ts`;
1113
1141
  pkgData.exports[path].import = `./src/${item.name}/index.ts`;
1114
- pkgData.exports[path].require = `./src/${item.name}/index.ts`;
1115
1142
  }
1116
1143
  if (packageName === "alepha") {
1117
1144
  pkgData.exports["./tsconfig.base"] = "./tsconfig.base.json";
@@ -1125,7 +1152,7 @@ var AlephaPackageBuilderCli = class {
1125
1152
  const external = [
1126
1153
  "alepha",
1127
1154
  packageName,
1128
- ...modules.map((item) => `${packageName}/${item.name}`)
1155
+ ...modules.map((item) => `${packageName}/${item.name.replace("-", "/")}`)
1129
1156
  ];
1130
1157
  await run.rm(this.dist);
1131
1158
  const build = async (item) => {
@@ -1141,6 +1168,14 @@ var AlephaPackageBuilderCli = class {
1141
1168
  platform: "node",
1142
1169
  external
1143
1170
  });
1171
+ if (item.native) entries.push({
1172
+ entry: join(src, "index.native.ts"),
1173
+ outDir: dest,
1174
+ platform: "neutral",
1175
+ sourcemap: true,
1176
+ dts: false,
1177
+ external
1178
+ });
1144
1179
  if (item.browser) entries.push({
1145
1180
  entry: join(src, "index.browser.ts"),
1146
1181
  outDir: dest,
@@ -1235,6 +1270,7 @@ async function analyzeModules(srcDir, packageName) {
1235
1270
  const modulePath = join(srcDir, moduleName);
1236
1271
  const dependencies = /* @__PURE__ */ new Set();
1237
1272
  const hasBrowser = await fileExists(join(modulePath, "index.browser.ts"));
1273
+ const hasNative = await fileExists(join(modulePath, "index.native.ts"));
1238
1274
  const hasNode = await fileExists(join(modulePath, "index.node.ts"));
1239
1275
  const files = await getAllFiles(modulePath);
1240
1276
  for (const file of files) {
@@ -1249,6 +1285,7 @@ async function analyzeModules(srcDir, packageName) {
1249
1285
  name: moduleName,
1250
1286
  dependencies: Array.from(dependencies)
1251
1287
  };
1288
+ if (hasNative) module.native = true;
1252
1289
  if (hasBrowser) module.browser = true;
1253
1290
  if (hasNode) module.node = true;
1254
1291
  modules.push(module);