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
@@ -6,9 +6,9 @@ import { DbVersionMismatchError } from "../errors/DbVersionMismatchError.ts";
6
6
  import { DatabaseProvider } from "../providers/drivers/DatabaseProvider.ts";
7
7
 
8
8
  /**
9
- * Creates a transaction descriptor for database operations requiring atomicity and consistency.
9
+ * Creates a transaction primitive for database operations requiring atomicity and consistency.
10
10
  *
11
- * This descriptor provides a convenient way to wrap database operations in PostgreSQL
11
+ * This primitive provides a convenient way to wrap database operations in PostgreSQL
12
12
  * transactions, ensuring ACID properties and automatic retry logic for version conflicts.
13
13
  * It integrates seamlessly with the repository pattern and provides built-in handling
14
14
  * for optimistic locking scenarios with automatic retry on version mismatches.
@@ -21,7 +21,7 @@ import { DatabaseProvider } from "../providers/drivers/DatabaseProvider.ts";
21
21
  * - Use appropriate isolation levels based on your consistency requirements
22
22
  */
23
23
  export const $transaction = <T extends any[], R>(
24
- opts: TransactionDescriptorOptions<T, R>,
24
+ opts: TransactionPrimitiveOptions<T, R>,
25
25
  ) => {
26
26
  const { alepha } = $context();
27
27
  const provider = alepha.inject(DatabaseProvider);
@@ -38,7 +38,7 @@ export const $transaction = <T extends any[], R>(
38
38
 
39
39
  // ---------------------------------------------------------------------------------------------------------------------
40
40
 
41
- export interface TransactionDescriptorOptions<T extends any[], R> {
41
+ export interface TransactionPrimitiveOptions<T extends any[], R> {
42
42
  /**
43
43
  * Transaction handler function that contains all database operations to be executed atomically.
44
44
  *
@@ -159,9 +159,9 @@ export class PostgresTypeProvider {
159
159
  *
160
160
  * This is used to track the version of a row in the database.
161
161
  *
162
- * You can use it for optimistic concurrency control (OCC) with {@link RepositoryDescriptor#save}.
162
+ * You can use it for optimistic concurrency control (OCC) with {@link RepositoryPrimitive#save}.
163
163
  *
164
- * @see {@link RepositoryDescriptor#save}
164
+ * @see {@link RepositoryPrimitive#save}
165
165
  * @see {@link PgVersionMismatchError}
166
166
  */
167
167
  public readonly version = (options: TNumberOptions = {}) =>
@@ -239,7 +239,7 @@ export class PostgresTypeProvider {
239
239
 
240
240
  /**
241
241
  * Creates a page schema for a given object schema.
242
- * It's used by {@link RepositoryDescriptor#paginate} method.
242
+ * It's used by {@link RepositoryPrimitive#paginate} method.
243
243
  */
244
244
  public readonly page = <T extends TObject>(
245
245
  resource: T,
@@ -1,12 +1,12 @@
1
1
  import { $inject, Alepha, type Service, type TObject } from "alepha";
2
- import type { EntityDescriptor } from "../descriptors/$entity.ts";
2
+ import type { EntityPrimitive } from "../primitives/$entity.ts";
3
3
  import { Repository } from "../services/Repository.ts";
4
4
  import type { DatabaseProvider } from "./drivers/DatabaseProvider.ts";
5
5
 
6
6
  export class RepositoryProvider {
7
7
  protected readonly alepha = $inject(Alepha);
8
8
  protected readonly registry = new Map<
9
- EntityDescriptor<any>,
9
+ EntityPrimitive<any>,
10
10
  Service<Repository<any>>
11
11
  >();
12
12
 
@@ -21,14 +21,14 @@ export class RepositoryProvider {
21
21
  }
22
22
 
23
23
  public getRepository<T extends TObject>(
24
- entity: EntityDescriptor<T>,
24
+ entity: EntityPrimitive<T>,
25
25
  ): Repository<T> {
26
26
  const RepositoryClass = this.createClassRepository(entity);
27
27
  return this.alepha.inject(RepositoryClass);
28
28
  }
29
29
 
30
30
  public createClassRepository<T extends TObject>(
31
- entity: EntityDescriptor<T>,
31
+ entity: EntityPrimitive<T>,
32
32
  ): Service<Repository<T>> {
33
33
  let name = entity.name.charAt(0).toUpperCase() + entity.name.slice(1);
34
34
  if (name.endsWith("s")) {
@@ -13,12 +13,12 @@ import {
13
13
  type PgDatabase,
14
14
  type PgTableWithColumns,
15
15
  } from "drizzle-orm/pg-core";
16
+ import { DbError } from "../../errors/DbError.ts";
16
17
  import type {
17
- EntityDescriptor,
18
+ EntityPrimitive,
18
19
  SchemaToTableConfig,
19
- } from "../../descriptors/$entity.ts";
20
- import type { SequenceDescriptor } from "../../descriptors/$sequence.ts";
21
- import { DbError } from "../../errors/DbError.ts";
20
+ } from "../../primitives/$entity.ts";
21
+ import type { SequencePrimitive } from "../../primitives/$sequence.ts";
22
22
  import type { ModelBuilder } from "../../services/ModelBuilder.ts";
23
23
  import type { DrizzleKitProvider } from "../DrizzleKitProvider.ts";
24
24
 
@@ -46,7 +46,7 @@ export abstract class DatabaseProvider {
46
46
  }
47
47
 
48
48
  public table<T extends TObject>(
49
- entity: EntityDescriptor<T>,
49
+ entity: EntityPrimitive<T>,
50
50
  ): PgTableWithColumns<SchemaToTableConfig<T>> {
51
51
  const table = this.tables.get(entity.name);
52
52
  if (!table) {
@@ -65,11 +65,11 @@ export abstract class DatabaseProvider {
65
65
  return table as PgTableWithColumns<SchemaToTableConfig<T>>;
66
66
  }
67
67
 
68
- public registerEntity(entity: EntityDescriptor) {
68
+ public registerEntity(entity: EntityPrimitive) {
69
69
  this.builder.buildTable(entity, this);
70
70
  }
71
71
 
72
- public registerSequence(sequence: SequenceDescriptor) {
72
+ public registerSequence(sequence: SequencePrimitive) {
73
73
  this.builder.buildSequence(sequence, this);
74
74
  }
75
75
 
@@ -1,6 +1,6 @@
1
1
  import type { SQL } from "drizzle-orm";
2
- import type { EntityDescriptor } from "../descriptors/$entity.ts";
3
- import type { SequenceDescriptor } from "../descriptors/$sequence.ts";
2
+ import type { EntityPrimitive } from "../primitives/$entity.ts";
3
+ import type { SequencePrimitive } from "../primitives/$sequence.ts";
4
4
 
5
5
  /**
6
6
  * Database-specific table configuration functions
@@ -24,15 +24,15 @@ export interface TableConfigBuilders<TConfig> {
24
24
  }
25
25
 
26
26
  /**
27
- * Abstract base class for transforming Alepha Descriptors (Entity, Sequence, etc...)
27
+ * Abstract base class for transforming Alepha Primitives (Entity, Sequence, etc...)
28
28
  * into drizzle models (tables, enums, sequences, etc...).
29
29
  */
30
30
  export abstract class ModelBuilder {
31
31
  /**
32
- * Build a table from an entity descriptor.
32
+ * Build a table from an entity primitive.
33
33
  */
34
34
  abstract buildTable(
35
- entity: EntityDescriptor,
35
+ entity: EntityPrimitive,
36
36
  options: {
37
37
  tables: Map<string, unknown>;
38
38
  enums: Map<string, unknown>;
@@ -41,10 +41,10 @@ export abstract class ModelBuilder {
41
41
  ): void;
42
42
 
43
43
  /**
44
- * Build a sequence from a sequence descriptor.
44
+ * Build a sequence from a sequence primitive.
45
45
  */
46
46
  abstract buildSequence(
47
- sequence: SequenceDescriptor,
47
+ sequence: SequencePrimitive,
48
48
  options: {
49
49
  sequences: Map<string, unknown>;
50
50
  schema: string;
@@ -65,13 +65,13 @@ export abstract class ModelBuilder {
65
65
  * Build the table configuration function for any database.
66
66
  * This includes indexes, foreign keys, constraints, and custom config.
67
67
  *
68
- * @param entity - The entity descriptor
68
+ * @param entity - The entity primitive
69
69
  * @param builders - Database-specific builder functions
70
70
  * @param tableResolver - Function to resolve entity references to table columns
71
71
  * @param customConfigHandler - Optional handler for custom config
72
72
  */
73
73
  protected buildTableConfig<TConfig, TSelf>(
74
- entity: EntityDescriptor,
74
+ entity: EntityPrimitive,
75
75
  builders: TableConfigBuilders<TConfig>,
76
76
  tableResolver?: (entityName: string) => any,
77
77
  customConfigHandler?: (config: any, self: TSelf) => TConfig[],
@@ -2,8 +2,8 @@ import { type TObject, TypeBoxValue, t } from "alepha";
2
2
  import { getTableName, type SQL, sql } from "drizzle-orm";
3
3
  import type { PgSelectBase, PgTableWithColumns } from "drizzle-orm/pg-core";
4
4
  import { isSQLWrapper } from "drizzle-orm/sql/sql";
5
- import type { EntityDescriptor } from "../descriptors/$entity.ts";
6
5
  import type { PgRelationMap } from "../interfaces/PgQuery.ts";
6
+ import type { EntityPrimitive } from "../primitives/$entity.ts";
7
7
  import type { DatabaseProvider } from "../providers/drivers/DatabaseProvider.ts";
8
8
  import type { PgJoin } from "./QueryManager.ts";
9
9
 
@@ -20,7 +20,7 @@ export class PgRelationManager {
20
20
  parentKey?: string,
21
21
  ) {
22
22
  for (const [key, join] of Object.entries(withRelations)) {
23
- const from = provider.table(join.join as EntityDescriptor);
23
+ const from = provider.table(join.join as EntityPrimitive);
24
24
  const on = isSQLWrapper(join.on)
25
25
  ? (join.on as SQL)
26
26
  : sql`${table[join.on[0] as string]} = ${from[join.on[1].name]}`;
@@ -27,8 +27,8 @@ import {
27
27
  type PgIdentityOptions,
28
28
  type PgRefOptions,
29
29
  } from "../constants/PG_SYMBOLS.ts";
30
- import type { EntityDescriptor, FromSchema } from "../descriptors/$entity.ts";
31
- import type { SequenceDescriptor } from "../descriptors/$sequence.ts";
30
+ import type { EntityPrimitive, FromSchema } from "../primitives/$entity.ts";
31
+ import type { SequencePrimitive } from "../primitives/$sequence.ts";
32
32
  import { byte } from "../types/byte.ts";
33
33
  import { schema } from "../types/schema.ts";
34
34
  import { ModelBuilder } from "./ModelBuilder.ts";
@@ -57,7 +57,7 @@ export class PostgresModelBuilder extends ModelBuilder {
57
57
  }
58
58
 
59
59
  public buildTable(
60
- entity: EntityDescriptor<any>,
60
+ entity: EntityPrimitive<any>,
61
61
  options: {
62
62
  tables: Map<string, unknown>;
63
63
  enums: Map<string, unknown>;
@@ -88,7 +88,7 @@ export class PostgresModelBuilder extends ModelBuilder {
88
88
  }
89
89
 
90
90
  public buildSequence(
91
- sequence: SequenceDescriptor,
91
+ sequence: SequencePrimitive,
92
92
  options: {
93
93
  sequences: Map<string, unknown>;
94
94
  schema: string;
@@ -113,7 +113,7 @@ export class PostgresModelBuilder extends ModelBuilder {
113
113
  * Get PostgreSQL-specific config builder for the table.
114
114
  */
115
115
  protected getTableConfig(
116
- entity: EntityDescriptor,
116
+ entity: EntityPrimitive,
117
117
  tables: Map<string, unknown>,
118
118
  ):
119
119
  | ((
@@ -30,10 +30,6 @@ import {
30
30
  PG_UPDATED_AT,
31
31
  PG_VERSION,
32
32
  } from "../constants/PG_SYMBOLS.ts";
33
- import type {
34
- EntityDescriptor,
35
- SchemaToTableConfig,
36
- } from "../descriptors/$entity.ts";
37
33
  import { DbConflictError } from "../errors/DbConflictError.ts";
38
34
  import { DbEntityNotFoundError } from "../errors/DbEntityNotFoundError.ts";
39
35
  import { DbError } from "../errors/DbError.ts";
@@ -49,6 +45,10 @@ import type {
49
45
  PgQueryWhere,
50
46
  PgQueryWhereOrSQL,
51
47
  } from "../interfaces/PgQueryWhere.ts";
48
+ import type {
49
+ EntityPrimitive,
50
+ SchemaToTableConfig,
51
+ } from "../primitives/$entity.ts";
52
52
  import {
53
53
  DatabaseProvider,
54
54
  type SQLLike,
@@ -59,7 +59,7 @@ import { PgRelationManager } from "./PgRelationManager.ts";
59
59
  import { type PgJoin, QueryManager } from "./QueryManager.ts";
60
60
 
61
61
  export abstract class Repository<T extends TObject> {
62
- public readonly entity: EntityDescriptor<T>;
62
+ public readonly entity: EntityPrimitive<T>;
63
63
  public readonly provider: DatabaseProvider;
64
64
 
65
65
  protected readonly relationManager = $inject(PgRelationManager);
@@ -67,10 +67,10 @@ export abstract class Repository<T extends TObject> {
67
67
  protected readonly dateTimeProvider = $inject(DateTimeProvider);
68
68
  protected readonly alepha = $inject(Alepha);
69
69
 
70
- constructor(entity: EntityDescriptor<T>, provider = DatabaseProvider) {
70
+ constructor(entity: EntityPrimitive<T>, provider = DatabaseProvider) {
71
71
  this.entity = entity;
72
72
  this.provider = this.alepha.inject(provider);
73
- this.provider.registerEntity(entity as EntityDescriptor);
73
+ this.provider.registerEntity(entity as EntityPrimitive);
74
74
  }
75
75
 
76
76
  /**
@@ -28,13 +28,13 @@ import {
28
28
  PG_UPDATED_AT,
29
29
  type PgRefOptions,
30
30
  } from "../constants/PG_SYMBOLS.ts";
31
- import type { EntityDescriptor } from "../descriptors/$entity.ts";
32
- import type { SequenceDescriptor } from "../descriptors/$sequence.ts";
31
+ import type { EntityPrimitive } from "../primitives/$entity.ts";
32
+ import type { SequencePrimitive } from "../primitives/$sequence.ts";
33
33
  import { ModelBuilder } from "./ModelBuilder.ts";
34
34
 
35
35
  export class SqliteModelBuilder extends ModelBuilder {
36
36
  public buildTable(
37
- entity: EntityDescriptor<any>,
37
+ entity: EntityPrimitive<any>,
38
38
  options: {
39
39
  tables: Map<string, unknown>;
40
40
  enums: Map<string, unknown>;
@@ -62,7 +62,7 @@ export class SqliteModelBuilder extends ModelBuilder {
62
62
  }
63
63
 
64
64
  public buildSequence(
65
- sequence: SequenceDescriptor,
65
+ sequence: SequencePrimitive,
66
66
  options: {
67
67
  sequences: Map<string, unknown>;
68
68
  schema: string;
@@ -75,7 +75,7 @@ export class SqliteModelBuilder extends ModelBuilder {
75
75
  * Get SQLite-specific config builder for the table.
76
76
  */
77
77
  protected getTableConfig(
78
- entity: EntityDescriptor,
78
+ entity: EntityPrimitive,
79
79
  tables: Map<string, unknown>,
80
80
  ): ((self: BuildColumns<string, any, "sqlite">) => any) | undefined {
81
81
  // SQLite-specific builders
@@ -1,15 +1,15 @@
1
1
  import { $module, type Alepha } from "alepha";
2
- import { $consumer } from "./descriptors/$consumer.ts";
3
- import { $queue } from "./descriptors/$queue.ts";
2
+ import { $consumer } from "./primitives/$consumer.ts";
3
+ import { $queue } from "./primitives/$queue.ts";
4
4
  import { MemoryQueueProvider } from "./providers/MemoryQueueProvider.ts";
5
5
  import { QueueProvider } from "./providers/QueueProvider.ts";
6
6
  import { WorkerProvider } from "./providers/WorkerProvider.ts";
7
7
 
8
8
  // ---------------------------------------------------------------------------------------------------------------------
9
9
 
10
- export * from "./descriptors/$consumer.ts";
11
- export * from "./descriptors/$queue.ts";
12
10
  export * from "./interfaces/QueueJob.ts";
11
+ export * from "./primitives/$consumer.ts";
12
+ export * from "./primitives/$queue.ts";
13
13
  export * from "./providers/MemoryQueueProvider.ts";
14
14
  export * from "./providers/QueueProvider.ts";
15
15
  export * from "./providers/WorkerProvider.ts";
@@ -17,9 +17,9 @@ export * from "./providers/WorkerProvider.ts";
17
17
  // ---------------------------------------------------------------------------------------------------------------------
18
18
 
19
19
  /**
20
- * Provides asynchronous message queuing and processing capabilities through declarative queue descriptors.
20
+ * Provides asynchronous message queuing and processing capabilities through declarative queue primitives.
21
21
  *
22
- * The queue module enables reliable background job processing and message passing using the `$queue` descriptor
22
+ * The queue module enables reliable background job processing and message passing using the `$queue` primitive
23
23
  * on class properties. It supports schema validation, automatic retries, and multiple queue backends for
24
24
  * building scalable, decoupled applications with robust error handling.
25
25
  *
@@ -29,7 +29,7 @@ export * from "./providers/WorkerProvider.ts";
29
29
  */
30
30
  export const AlephaQueue = $module({
31
31
  name: "alepha.queue",
32
- descriptors: [$queue, $consumer],
32
+ primitives: [$queue, $consumer],
33
33
  services: [QueueProvider, MemoryQueueProvider, WorkerProvider],
34
34
  register: (alepha: Alepha) =>
35
35
  alepha
@@ -1,21 +1,21 @@
1
1
  import {
2
- createDescriptor,
3
- Descriptor,
2
+ createPrimitive,
4
3
  KIND,
4
+ Primitive,
5
5
  type Static,
6
6
  type TSchema,
7
7
  } from "alepha";
8
- import type { QueueDescriptor } from "./$queue.ts";
8
+ import type { QueuePrimitive } from "./$queue.ts";
9
9
 
10
10
  /**
11
- * Creates a consumer descriptor to process messages from a specific queue.
11
+ * Creates a consumer primitive to process messages from a specific queue.
12
12
  *
13
13
  * Provides a dedicated message consumer that connects to a queue and processes messages
14
14
  * with custom handler logic, enabling scalable architectures where multiple consumers
15
15
  * can process messages from the same queue.
16
16
  *
17
17
  * **Key Features**
18
- * - Seamless integration with any $queue descriptor
18
+ * - Seamless integration with any $queue primitive
19
19
  * - Full type safety inherited from queue schema
20
20
  * - Automatic worker management for background processing
21
21
  * - Built-in error handling and retry mechanisms
@@ -57,16 +57,16 @@ import type { QueueDescriptor } from "./$queue.ts";
57
57
  * ```
58
58
  */
59
59
  export const $consumer = <T extends TSchema>(
60
- options: ConsumerDescriptorOptions<T>,
61
- ): ConsumerDescriptor<T> => {
62
- return createDescriptor(ConsumerDescriptor<T>, options);
60
+ options: ConsumerPrimitiveOptions<T>,
61
+ ): ConsumerPrimitive<T> => {
62
+ return createPrimitive(ConsumerPrimitive<T>, options);
63
63
  };
64
64
 
65
65
  // ---------------------------------------------------------------------------------------------------------------------
66
66
 
67
- export interface ConsumerDescriptorOptions<T extends TSchema> {
67
+ export interface ConsumerPrimitiveOptions<T extends TSchema> {
68
68
  /**
69
- * The queue descriptor that this consumer will process messages from.
69
+ * The queue primitive that this consumer will process messages from.
70
70
  *
71
71
  * This establishes the connection between the consumer and its source queue:
72
72
  * - The consumer inherits the queue's message schema for type safety
@@ -90,12 +90,12 @@ export interface ConsumerDescriptorOptions<T extends TSchema> {
90
90
  *
91
91
  * // Then, create a consumer for that queue
92
92
  * emailConsumer = $consumer({
93
- * queue: this.emailQueue, // Reference the queue descriptor
93
+ * queue: this.emailQueue, // Reference the queue primitive
94
94
  * handler: async (message) => { } // process email
95
95
  * });
96
96
  * ```
97
97
  */
98
- queue: QueueDescriptor<T>;
98
+ queue: QueuePrimitive<T>;
99
99
 
100
100
  /**
101
101
  * Message handler function that processes individual messages from the queue.
@@ -175,8 +175,8 @@ export interface ConsumerDescriptorOptions<T extends TSchema> {
175
175
 
176
176
  // ---------------------------------------------------------------------------------------------------------------------
177
177
 
178
- export class ConsumerDescriptor<T extends TSchema> extends Descriptor<
179
- ConsumerDescriptorOptions<T>
178
+ export class ConsumerPrimitive<T extends TSchema> extends Primitive<
179
+ ConsumerPrimitiveOptions<T>
180
180
  > {}
181
181
 
182
- $consumer[KIND] = ConsumerDescriptor;
182
+ $consumer[KIND] = ConsumerPrimitive;
@@ -1,7 +1,7 @@
1
1
  import {
2
- createDescriptor,
3
- Descriptor,
2
+ createPrimitive,
4
3
  KIND,
4
+ Primitive,
5
5
  type Service,
6
6
  type Static,
7
7
  type TSchema,
@@ -15,9 +15,9 @@ import { MemoryQueueProvider } from "../providers/MemoryQueueProvider.ts";
15
15
  import { QueueProvider } from "../providers/QueueProvider.ts";
16
16
 
17
17
  /**
18
- * Creates a queue descriptor for asynchronous message processing with background workers.
18
+ * Creates a queue primitive for asynchronous message processing with background workers.
19
19
  *
20
- * The $queue descriptor enables powerful asynchronous communication patterns in your application.
20
+ * The $queue primitive enables powerful asynchronous communication patterns in your application.
21
21
  * It provides type-safe message queuing with automatic worker processing, making it perfect for
22
22
  * decoupling components and handling background tasks efficiently.
23
23
  *
@@ -126,14 +126,14 @@ import { QueueProvider } from "../providers/QueueProvider.ts";
126
126
  * ```
127
127
  */
128
128
  export const $queue = <T extends TSchema>(
129
- options: QueueDescriptorOptions<T>,
130
- ): QueueDescriptor<T> => {
131
- return createDescriptor(QueueDescriptor<T>, options);
129
+ options: QueuePrimitiveOptions<T>,
130
+ ): QueuePrimitive<T> => {
131
+ return createPrimitive(QueuePrimitive<T>, options);
132
132
  };
133
133
 
134
134
  // ---------------------------------------------------------------------------------------------------------------------
135
135
 
136
- export interface QueueDescriptorOptions<T extends TSchema> {
136
+ export interface QueuePrimitiveOptions<T extends TSchema> {
137
137
  /**
138
138
  * Unique name for the queue.
139
139
  *
@@ -337,8 +337,8 @@ export interface QueueDescriptorOptions<T extends TSchema> {
337
337
 
338
338
  // ---------------------------------------------------------------------------------------------------------------------
339
339
 
340
- export class QueueDescriptor<T extends TSchema> extends Descriptor<
341
- QueueDescriptorOptions<T>
340
+ export class QueuePrimitive<T extends TSchema> extends Primitive<
341
+ QueuePrimitiveOptions<T>
342
342
  > {
343
343
  protected readonly log = $logger();
344
344
  public readonly provider = this.$provider();
@@ -415,7 +415,7 @@ export class QueueDescriptor<T extends TSchema> extends Descriptor<
415
415
  }
416
416
 
417
417
  /**
418
- * Get default job options from descriptor configuration.
418
+ * Get default job options from primitive configuration.
419
419
  */
420
420
  protected getDefaultJobOptions() {
421
421
  return {
@@ -442,7 +442,7 @@ export class QueueDescriptor<T extends TSchema> extends Descriptor<
442
442
  }
443
443
  }
444
444
 
445
- $queue[KIND] = QueueDescriptor;
445
+ $queue[KIND] = QueuePrimitive;
446
446
 
447
447
  // ---------------------------------------------------------------------------------------------------------------------
448
448
 
@@ -9,13 +9,13 @@ import {
9
9
  } from "alepha";
10
10
  import { DateTimeProvider } from "alepha/datetime";
11
11
  import { $logger } from "alepha/logger";
12
- import { $consumer } from "../descriptors/$consumer.ts";
12
+ import type { QueueAcquiredJob } from "../interfaces/QueueJob.ts";
13
+ import { $consumer } from "../primitives/$consumer.ts";
13
14
  import {
14
15
  $queue,
15
- type QueueDescriptor,
16
16
  type QueueMessage,
17
- } from "../descriptors/$queue.ts";
18
- import type { QueueAcquiredJob } from "../interfaces/QueueJob.ts";
17
+ type QueuePrimitive,
18
+ } from "../primitives/$queue.ts";
19
19
  import { QueueProvider } from "./QueueProvider.ts";
20
20
 
21
21
  const envSchema = t.object({
@@ -83,7 +83,7 @@ export class WorkerProvider {
83
83
  on: "start",
84
84
  priority: "last",
85
85
  handler: () => {
86
- for (const queue of this.alepha.descriptors($queue)) {
86
+ for (const queue of this.alepha.primitives($queue)) {
87
87
  const handler = queue.options.handler;
88
88
  if (handler) {
89
89
  this.consumers.push({
@@ -93,7 +93,7 @@ export class WorkerProvider {
93
93
  }
94
94
  }
95
95
 
96
- for (const consumer of this.alepha.descriptors($consumer)) {
96
+ for (const consumer of this.alepha.primitives($consumer)) {
97
97
  this.consumers.push(consumer.options);
98
98
  }
99
99
 
@@ -333,7 +333,7 @@ export class WorkerProvider {
333
333
  }
334
334
 
335
335
  export interface Consumer<T extends TSchema = TSchema> {
336
- queue: QueueDescriptor<T>;
336
+ queue: QueuePrimitive<T>;
337
337
  handler: (message: QueueMessage<T>) => Promise<void>;
338
338
  }
339
339
 
@@ -1,12 +1,12 @@
1
1
  import { $module } from "alepha";
2
- import { $retry } from "./descriptors/$retry.ts";
2
+ import { $retry } from "./primitives/$retry.ts";
3
3
  import { RetryProvider } from "./providers/RetryProvider.ts";
4
4
 
5
5
  // ---------------------------------------------------------------------------------------------------------------------
6
6
 
7
- export * from "./descriptors/$retry.ts";
8
7
  export * from "./errors/RetryCancelError.ts";
9
8
  export * from "./errors/RetryTimeoutError.ts";
9
+ export * from "./primitives/$retry.ts";
10
10
  export * from "./providers/RetryProvider.ts";
11
11
 
12
12
  // ---------------------------------------------------------------------------------------------------------------------
@@ -19,6 +19,6 @@ export * from "./providers/RetryProvider.ts";
19
19
  */
20
20
  export const AlephaRetry = $module({
21
21
  name: "alepha.retry",
22
- descriptors: [$retry],
22
+ primitives: [$retry],
23
23
  services: [RetryProvider],
24
24
  });
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  $inject,
3
- createDescriptor,
4
- Descriptor,
5
- type DescriptorArgs,
3
+ createPrimitive,
6
4
  KIND,
5
+ Primitive,
6
+ type PrimitiveArgs,
7
7
  } from "alepha";
8
8
  import type { DurationLike } from "alepha/datetime";
9
9
  import type { RetryBackoffOptions } from "../providers/RetryProvider.ts";
@@ -14,16 +14,16 @@ import { RetryProvider } from "../providers/RetryProvider.ts";
14
14
  * with support for exponential backoff, max duration, and cancellation.
15
15
  */
16
16
  export const $retry = <T extends (...args: any[]) => any>(
17
- options: RetryDescriptorOptions<T>,
18
- ): RetryDescriptorFn<T> => {
19
- const instance = createDescriptor(RetryDescriptor, options);
17
+ options: RetryPrimitiveOptions<T>,
18
+ ): RetryPrimitiveFn<T> => {
19
+ const instance = createPrimitive(RetryPrimitive, options);
20
20
  const fn = (...args: Parameters<T>) => instance.run(...args);
21
- return Object.setPrototypeOf(fn, instance) as RetryDescriptorFn<T>;
21
+ return Object.setPrototypeOf(fn, instance) as RetryPrimitiveFn<T>;
22
22
  };
23
23
 
24
24
  // ---------------------------------------------------------------------------------------------------------------------
25
25
 
26
- export interface RetryDescriptorOptions<T extends (...args: any[]) => any> {
26
+ export interface RetryPrimitiveOptions<T extends (...args: any[]) => any> {
27
27
  /**
28
28
  * The function to retry.
29
29
  */
@@ -72,13 +72,13 @@ export interface RetryDescriptorOptions<T extends (...args: any[]) => any> {
72
72
 
73
73
  // ---------------------------------------------------------------------------------------------------------------------
74
74
 
75
- export class RetryDescriptor<
75
+ export class RetryPrimitive<
76
76
  T extends (...args: any[]) => any,
77
- > extends Descriptor<RetryDescriptorOptions<T>> {
77
+ > extends Primitive<RetryPrimitiveOptions<T>> {
78
78
  protected readonly retryProvider = $inject(RetryProvider);
79
79
  protected appAbortController?: AbortController;
80
80
 
81
- constructor(args: DescriptorArgs<RetryDescriptorOptions<T>>) {
81
+ constructor(args: PrimitiveArgs<RetryPrimitiveOptions<T>>) {
82
82
  super(args);
83
83
 
84
84
  this.alepha.events.on("stop", () => {
@@ -100,9 +100,9 @@ export class RetryDescriptor<
100
100
  }
101
101
  }
102
102
 
103
- export interface RetryDescriptorFn<T extends (...args: any[]) => any>
104
- extends RetryDescriptor<T> {
103
+ export interface RetryPrimitiveFn<T extends (...args: any[]) => any>
104
+ extends RetryPrimitive<T> {
105
105
  (...args: Parameters<T>): Promise<ReturnType<T>>;
106
106
  }
107
107
 
108
- $retry[KIND] = RetryDescriptor;
108
+ $retry[KIND] = RetryPrimitive;
@@ -1,13 +1,13 @@
1
1
  import { $module } from "alepha";
2
2
  import type { DateTime } from "alepha/datetime";
3
3
  import { AlephaLock } from "alepha/lock";
4
- import { $scheduler } from "./descriptors/$scheduler.ts";
4
+ import { $scheduler } from "./primitives/$scheduler.ts";
5
5
  import { CronProvider } from "./providers/CronProvider.ts";
6
6
 
7
7
  // ---------------------------------------------------------------------------------------------------------------------
8
8
 
9
9
  export * from "./constants/CRON.ts";
10
- export * from "./descriptors/$scheduler.ts";
10
+ export * from "./primitives/$scheduler.ts";
11
11
  export * from "./providers/CronProvider.ts";
12
12
 
13
13
  // ---------------------------------------------------------------------------------------------------------------------
@@ -42,6 +42,6 @@ declare module "alepha" {
42
42
  */
43
43
  export const AlephaScheduler = $module({
44
44
  name: "alepha.scheduler",
45
- descriptors: [$scheduler],
45
+ primitives: [$scheduler],
46
46
  services: [AlephaLock, CronProvider],
47
47
  });