alepha 0.13.1 → 0.13.3

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 (329) hide show
  1. package/README.md +1 -1
  2. package/dist/api-files/index.browser.js +80 -0
  3. package/dist/api-files/index.browser.js.map +1 -0
  4. package/dist/api-files/index.d.ts +28 -91
  5. package/dist/api-files/index.js +10 -755
  6. package/dist/api-files/index.js.map +1 -1
  7. package/dist/api-jobs/index.browser.js +56 -0
  8. package/dist/api-jobs/index.browser.js.map +1 -0
  9. package/dist/api-jobs/index.d.ts +46 -46
  10. package/dist/api-jobs/index.js +13 -13
  11. package/dist/api-jobs/index.js.map +1 -1
  12. package/dist/api-notifications/index.browser.js +382 -0
  13. package/dist/api-notifications/index.browser.js.map +1 -0
  14. package/dist/api-notifications/index.d.ts +231 -193
  15. package/dist/api-notifications/index.js +108 -78
  16. package/dist/api-notifications/index.js.map +1 -1
  17. package/dist/api-parameters/index.browser.js +29 -0
  18. package/dist/api-parameters/index.browser.js.map +1 -0
  19. package/dist/api-parameters/index.d.ts +21 -22
  20. package/dist/api-parameters/index.js +22 -22
  21. package/dist/api-parameters/index.js.map +1 -1
  22. package/dist/api-users/index.d.ts +237 -2001
  23. package/dist/api-users/index.js +969 -4795
  24. package/dist/api-users/index.js.map +1 -1
  25. package/dist/api-verifications/index.browser.js +52 -0
  26. package/dist/api-verifications/index.browser.js.map +1 -0
  27. package/dist/api-verifications/index.d.ts +119 -97
  28. package/dist/api-verifications/index.js +1 -1
  29. package/dist/api-verifications/index.js.map +1 -1
  30. package/dist/batch/index.d.ts +13 -13
  31. package/dist/batch/index.js +8 -13
  32. package/dist/batch/index.js.map +1 -1
  33. package/dist/bucket/index.d.ts +14 -14
  34. package/dist/bucket/index.js +19 -17
  35. package/dist/bucket/index.js.map +1 -1
  36. package/dist/cache/index.d.ts +11 -11
  37. package/dist/cache/index.js +9 -9
  38. package/dist/cache/index.js.map +1 -1
  39. package/dist/cli/{dist-Dl9Vl7Ur.js → dist-lGnqsKpu.js} +11 -15
  40. package/dist/cli/dist-lGnqsKpu.js.map +1 -0
  41. package/dist/cli/index.d.ts +32 -49
  42. package/dist/cli/index.js +90 -71
  43. package/dist/cli/index.js.map +1 -1
  44. package/dist/command/index.d.ts +20 -19
  45. package/dist/command/index.js +34 -25
  46. package/dist/command/index.js.map +1 -1
  47. package/dist/core/index.browser.js +218 -218
  48. package/dist/core/index.browser.js.map +1 -1
  49. package/dist/core/index.d.ts +232 -232
  50. package/dist/core/index.js +218 -218
  51. package/dist/core/index.js.map +1 -1
  52. package/dist/core/index.native.js +2113 -0
  53. package/dist/core/index.native.js.map +1 -0
  54. package/dist/datetime/index.d.ts +9 -9
  55. package/dist/datetime/index.js +7 -7
  56. package/dist/datetime/index.js.map +1 -1
  57. package/dist/email/index.d.ts +16 -16
  58. package/dist/email/index.js +14 -9
  59. package/dist/email/index.js.map +1 -1
  60. package/dist/file/index.js +1 -1
  61. package/dist/file/index.js.map +1 -1
  62. package/dist/lock/index.d.ts +9 -9
  63. package/dist/lock/index.js +8 -8
  64. package/dist/lock/index.js.map +1 -1
  65. package/dist/lock-redis/index.js +3 -66
  66. package/dist/lock-redis/index.js.map +1 -1
  67. package/dist/logger/index.d.ts +5 -5
  68. package/dist/logger/index.js +8 -8
  69. package/dist/logger/index.js.map +1 -1
  70. package/dist/orm/index.browser.js +114 -114
  71. package/dist/orm/index.browser.js.map +1 -1
  72. package/dist/orm/index.d.ts +218 -218
  73. package/dist/orm/index.js +49 -49
  74. package/dist/orm/index.js.map +1 -1
  75. package/dist/queue/index.d.ts +29 -29
  76. package/dist/queue/index.js +20 -20
  77. package/dist/queue/index.js.map +1 -1
  78. package/dist/queue-redis/index.d.ts +2 -2
  79. package/dist/redis/index.d.ts +4 -4
  80. package/dist/retry/index.d.ts +19 -19
  81. package/dist/retry/index.js +7 -7
  82. package/dist/retry/index.js.map +1 -1
  83. package/dist/scheduler/index.d.ts +16 -16
  84. package/dist/scheduler/index.js +9 -9
  85. package/dist/scheduler/index.js.map +1 -1
  86. package/dist/security/index.d.ts +53 -53
  87. package/dist/security/index.js +35 -35
  88. package/dist/security/index.js.map +1 -1
  89. package/dist/server/index.browser.js +1 -1
  90. package/dist/server/index.browser.js.map +1 -1
  91. package/dist/server/index.d.ts +92 -92
  92. package/dist/server/index.js +16 -16
  93. package/dist/server/index.js.map +1 -1
  94. package/dist/server-auth/index.browser.js +4 -982
  95. package/dist/server-auth/index.browser.js.map +1 -1
  96. package/dist/server-auth/index.d.ts +204 -785
  97. package/dist/server-auth/index.js +47 -1239
  98. package/dist/server-auth/index.js.map +1 -1
  99. package/dist/server-cache/index.d.ts +10 -10
  100. package/dist/server-cache/index.js +2 -2
  101. package/dist/server-cache/index.js.map +1 -1
  102. package/dist/server-compress/index.d.ts +4 -4
  103. package/dist/server-compress/index.js +1 -1
  104. package/dist/server-compress/index.js.map +1 -1
  105. package/dist/server-cookies/index.browser.js +8 -8
  106. package/dist/server-cookies/index.browser.js.map +1 -1
  107. package/dist/server-cookies/index.d.ts +17 -17
  108. package/dist/server-cookies/index.js +11 -11
  109. package/dist/server-cookies/index.js.map +1 -1
  110. package/dist/server-cors/index.d.ts +17 -17
  111. package/dist/server-cors/index.js +9 -9
  112. package/dist/server-cors/index.js.map +1 -1
  113. package/dist/server-health/index.d.ts +19 -19
  114. package/dist/server-helmet/index.d.ts +1 -1
  115. package/dist/server-links/index.browser.js +12 -12
  116. package/dist/server-links/index.browser.js.map +1 -1
  117. package/dist/server-links/index.d.ts +59 -251
  118. package/dist/server-links/index.js +23 -502
  119. package/dist/server-links/index.js.map +1 -1
  120. package/dist/server-metrics/index.d.ts +4 -4
  121. package/dist/server-multipart/index.d.ts +2 -2
  122. package/dist/server-proxy/index.d.ts +12 -12
  123. package/dist/server-proxy/index.js +10 -10
  124. package/dist/server-proxy/index.js.map +1 -1
  125. package/dist/server-rate-limit/index.d.ts +22 -22
  126. package/dist/server-rate-limit/index.js +12 -12
  127. package/dist/server-rate-limit/index.js.map +1 -1
  128. package/dist/server-security/index.d.ts +22 -22
  129. package/dist/server-security/index.js +15 -15
  130. package/dist/server-security/index.js.map +1 -1
  131. package/dist/server-static/index.d.ts +14 -14
  132. package/dist/server-static/index.js +26 -10
  133. package/dist/server-static/index.js.map +1 -1
  134. package/dist/server-swagger/index.d.ts +25 -184
  135. package/dist/server-swagger/index.js +21 -724
  136. package/dist/server-swagger/index.js.map +1 -1
  137. package/dist/sms/index.d.ts +14 -14
  138. package/dist/sms/index.js +9 -9
  139. package/dist/sms/index.js.map +1 -1
  140. package/dist/thread/index.d.ts +11 -11
  141. package/dist/thread/index.js +17 -17
  142. package/dist/thread/index.js.map +1 -1
  143. package/dist/topic/index.d.ts +26 -26
  144. package/dist/topic/index.js +16 -16
  145. package/dist/topic/index.js.map +1 -1
  146. package/dist/topic-redis/index.d.ts +1 -1
  147. package/dist/vite/index.d.ts +3 -3
  148. package/dist/vite/index.js +8 -8
  149. package/dist/vite/index.js.map +1 -1
  150. package/dist/websocket/index.browser.js +11 -11
  151. package/dist/websocket/index.browser.js.map +1 -1
  152. package/dist/websocket/index.d.ts +58 -58
  153. package/dist/websocket/index.js +13 -13
  154. package/dist/websocket/index.js.map +1 -1
  155. package/package.json +128 -57
  156. package/src/api-files/index.browser.ts +17 -0
  157. package/src/api-files/services/FileService.ts +5 -7
  158. package/src/api-jobs/index.browser.ts +15 -0
  159. package/src/api-jobs/index.ts +1 -1
  160. package/src/api-jobs/{descriptors → primitives}/$job.ts +8 -8
  161. package/src/api-jobs/providers/JobProvider.ts +9 -9
  162. package/src/api-jobs/services/JobService.ts +5 -5
  163. package/src/api-notifications/controllers/NotificationController.ts +26 -1
  164. package/src/api-notifications/index.browser.ts +17 -0
  165. package/src/api-notifications/index.ts +6 -15
  166. package/src/api-notifications/{descriptors → primitives}/$notification.ts +10 -10
  167. package/src/api-notifications/schemas/notificationQuerySchema.ts +13 -0
  168. package/src/api-notifications/services/NotificationSenderService.ts +3 -3
  169. package/src/api-notifications/services/NotificationService.ts +45 -2
  170. package/src/api-parameters/index.browser.ts +12 -0
  171. package/src/api-parameters/index.ts +1 -1
  172. package/src/api-parameters/{descriptors → primitives}/$config.ts +7 -12
  173. package/src/api-users/atoms/realmAuthSettingsAtom.ts +3 -1
  174. package/src/api-users/controllers/UserController.ts +21 -1
  175. package/src/api-users/index.ts +1 -1
  176. package/src/api-users/{descriptors → primitives}/$userRealm.ts +40 -17
  177. package/src/api-users/providers/UserRealmProvider.ts +2 -1
  178. package/src/api-users/services/SessionService.ts +2 -0
  179. package/src/api-users/services/UserService.ts +56 -16
  180. package/src/api-verifications/index.browser.ts +15 -0
  181. package/src/api-verifications/index.ts +1 -0
  182. package/src/batch/index.ts +3 -3
  183. package/src/batch/{descriptors → primitives}/$batch.ts +13 -16
  184. package/src/batch/providers/BatchProvider.ts +0 -7
  185. package/src/bucket/index.ts +15 -13
  186. package/src/bucket/{descriptors → primitives}/$bucket.ts +8 -8
  187. package/src/bucket/providers/LocalFileStorageProvider.ts +3 -3
  188. package/src/cache/index.ts +4 -4
  189. package/src/cache/{descriptors → primitives}/$cache.ts +15 -15
  190. package/src/cli/apps/AlephaCli.ts +27 -1
  191. package/src/cli/apps/AlephaPackageBuilderCli.ts +27 -2
  192. package/src/cli/commands/CoreCommands.ts +6 -2
  193. package/src/cli/commands/DrizzleCommands.ts +6 -6
  194. package/src/cli/commands/VerifyCommands.ts +1 -1
  195. package/src/cli/commands/ViteCommands.ts +8 -2
  196. package/src/cli/services/ProjectUtils.ts +74 -78
  197. package/src/command/helpers/Asker.ts +10 -0
  198. package/src/command/index.ts +5 -5
  199. package/src/command/{descriptors → primitives}/$command.ts +9 -12
  200. package/src/command/providers/CliProvider.ts +10 -10
  201. package/src/core/Alepha.ts +30 -33
  202. package/src/core/constants/KIND.ts +1 -1
  203. package/src/core/constants/OPTIONS.ts +1 -1
  204. package/src/core/helpers/{descriptor.ts → primitive.ts} +18 -18
  205. package/src/core/helpers/ref.ts +1 -1
  206. package/src/core/index.shared.ts +8 -8
  207. package/src/core/{descriptors → primitives}/$context.ts +5 -5
  208. package/src/core/{descriptors → primitives}/$hook.ts +4 -4
  209. package/src/core/{descriptors → primitives}/$inject.ts +2 -2
  210. package/src/core/{descriptors → primitives}/$module.ts +9 -9
  211. package/src/core/{descriptors → primitives}/$use.ts +2 -2
  212. package/src/core/providers/CodecManager.ts +1 -1
  213. package/src/core/providers/JsonSchemaCodec.ts +1 -1
  214. package/src/core/providers/StateManager.ts +2 -2
  215. package/src/datetime/index.ts +3 -3
  216. package/src/datetime/{descriptors → primitives}/$interval.ts +6 -6
  217. package/src/email/index.ts +17 -9
  218. package/src/email/{descriptors → primitives}/$email.ts +8 -8
  219. package/src/file/index.ts +1 -1
  220. package/src/lock/index.ts +3 -3
  221. package/src/lock/{descriptors → primitives}/$lock.ts +10 -10
  222. package/src/logger/index.ts +8 -8
  223. package/src/logger/{descriptors → primitives}/$logger.ts +2 -2
  224. package/src/logger/services/Logger.ts +1 -1
  225. package/src/orm/constants/PG_SYMBOLS.ts +2 -2
  226. package/src/orm/index.browser.ts +2 -2
  227. package/src/orm/index.ts +8 -8
  228. package/src/orm/{descriptors → primitives}/$entity.ts +11 -11
  229. package/src/orm/{descriptors → primitives}/$repository.ts +2 -2
  230. package/src/orm/{descriptors → primitives}/$sequence.ts +8 -8
  231. package/src/orm/{descriptors → primitives}/$transaction.ts +4 -4
  232. package/src/orm/providers/PostgresTypeProvider.ts +3 -3
  233. package/src/orm/providers/RepositoryProvider.ts +4 -4
  234. package/src/orm/providers/drivers/DatabaseProvider.ts +7 -7
  235. package/src/orm/providers/drivers/NodeSqliteProvider.ts +3 -3
  236. package/src/orm/services/ModelBuilder.ts +9 -9
  237. package/src/orm/services/PgRelationManager.ts +2 -2
  238. package/src/orm/services/PostgresModelBuilder.ts +5 -5
  239. package/src/orm/services/Repository.ts +7 -7
  240. package/src/orm/services/SqliteModelBuilder.ts +5 -5
  241. package/src/queue/index.ts +7 -7
  242. package/src/queue/{descriptors → primitives}/$consumer.ts +15 -15
  243. package/src/queue/{descriptors → primitives}/$queue.ts +12 -12
  244. package/src/queue/providers/WorkerProvider.ts +7 -7
  245. package/src/retry/index.ts +3 -3
  246. package/src/retry/{descriptors → primitives}/$retry.ts +14 -14
  247. package/src/scheduler/index.ts +3 -3
  248. package/src/scheduler/{descriptors → primitives}/$scheduler.ts +9 -9
  249. package/src/scheduler/providers/CronProvider.ts +1 -1
  250. package/src/security/index.ts +9 -9
  251. package/src/security/{descriptors → primitives}/$permission.ts +7 -7
  252. package/src/security/{descriptors → primitives}/$realm.ts +6 -12
  253. package/src/security/{descriptors → primitives}/$role.ts +12 -12
  254. package/src/security/{descriptors → primitives}/$serviceAccount.ts +8 -8
  255. package/src/server/index.browser.ts +1 -1
  256. package/src/server/index.ts +14 -14
  257. package/src/server/{descriptors → primitives}/$action.ts +13 -13
  258. package/src/server/{descriptors → primitives}/$route.ts +9 -9
  259. package/src/server/providers/NodeHttpServerProvider.ts +1 -1
  260. package/src/server/services/HttpClient.ts +1 -1
  261. package/src/server-auth/index.browser.ts +1 -1
  262. package/src/server-auth/index.ts +6 -6
  263. package/src/server-auth/{descriptors → primitives}/$auth.ts +10 -10
  264. package/src/server-auth/{descriptors → primitives}/$authCredentials.ts +4 -4
  265. package/src/server-auth/{descriptors → primitives}/$authGithub.ts +4 -4
  266. package/src/server-auth/{descriptors → primitives}/$authGoogle.ts +4 -4
  267. package/src/server-auth/providers/ServerAuthProvider.ts +4 -4
  268. package/src/server-cache/providers/ServerCacheProvider.ts +7 -7
  269. package/src/server-compress/providers/ServerCompressProvider.ts +3 -3
  270. package/src/server-cookies/index.browser.ts +2 -2
  271. package/src/server-cookies/index.ts +5 -5
  272. package/src/server-cookies/{descriptors → primitives}/$cookie.browser.ts +12 -12
  273. package/src/server-cookies/{descriptors → primitives}/$cookie.ts +13 -13
  274. package/src/server-cookies/providers/ServerCookiesProvider.ts +6 -5
  275. package/src/server-cookies/services/CookieParser.ts +1 -1
  276. package/src/server-cors/index.ts +3 -3
  277. package/src/server-cors/{descriptors → primitives}/$cors.ts +11 -13
  278. package/src/server-cors/providers/ServerCorsProvider.ts +5 -5
  279. package/src/server-links/index.browser.ts +5 -5
  280. package/src/server-links/index.ts +9 -9
  281. package/src/server-links/{descriptors → primitives}/$remote.ts +11 -11
  282. package/src/server-links/providers/LinkProvider.ts +7 -7
  283. package/src/server-links/providers/{RemoteDescriptorProvider.ts → RemotePrimitiveProvider.ts} +6 -6
  284. package/src/server-links/providers/ServerLinksProvider.ts +3 -3
  285. package/src/server-proxy/index.ts +3 -3
  286. package/src/server-proxy/{descriptors → primitives}/$proxy.ts +8 -8
  287. package/src/server-proxy/providers/ServerProxyProvider.ts +4 -4
  288. package/src/server-rate-limit/index.ts +6 -6
  289. package/src/server-rate-limit/{descriptors → primitives}/$rateLimit.ts +13 -13
  290. package/src/server-rate-limit/providers/ServerRateLimitProvider.ts +5 -5
  291. package/src/server-security/index.ts +3 -3
  292. package/src/server-security/{descriptors → primitives}/$basicAuth.ts +13 -13
  293. package/src/server-security/providers/ServerBasicAuthProvider.ts +5 -5
  294. package/src/server-security/providers/ServerSecurityProvider.ts +4 -4
  295. package/src/server-static/index.ts +3 -3
  296. package/src/server-static/{descriptors → primitives}/$serve.ts +8 -10
  297. package/src/server-static/providers/ServerStaticProvider.ts +24 -9
  298. package/src/server-swagger/index.ts +5 -5
  299. package/src/server-swagger/{descriptors → primitives}/$swagger.ts +9 -9
  300. package/src/server-swagger/providers/ServerSwaggerProvider.ts +11 -10
  301. package/src/sms/index.ts +4 -4
  302. package/src/sms/{descriptors → primitives}/$sms.ts +8 -8
  303. package/src/thread/index.ts +3 -3
  304. package/src/thread/{descriptors → primitives}/$thread.ts +13 -13
  305. package/src/thread/providers/ThreadProvider.ts +7 -9
  306. package/src/topic/index.ts +5 -5
  307. package/src/topic/{descriptors → primitives}/$subscriber.ts +14 -14
  308. package/src/topic/{descriptors → primitives}/$topic.ts +10 -10
  309. package/src/topic/providers/TopicProvider.ts +4 -4
  310. package/src/vite/tasks/copyAssets.ts +1 -1
  311. package/src/vite/tasks/generateSitemap.ts +3 -3
  312. package/src/vite/tasks/prerenderPages.ts +2 -2
  313. package/src/vite/tasks/runAlepha.ts +2 -2
  314. package/src/websocket/index.browser.ts +3 -3
  315. package/src/websocket/index.shared.ts +2 -2
  316. package/src/websocket/index.ts +4 -4
  317. package/src/websocket/interfaces/WebSocketInterfaces.ts +3 -3
  318. package/src/websocket/{descriptors → primitives}/$channel.ts +10 -10
  319. package/src/websocket/{descriptors → primitives}/$websocket.ts +8 -8
  320. package/src/websocket/providers/NodeWebSocketServerProvider.ts +7 -7
  321. package/src/websocket/providers/WebSocketServerProvider.ts +3 -3
  322. package/src/websocket/services/WebSocketClient.ts +5 -5
  323. package/dist/cli/dist-Dl9Vl7Ur.js.map +0 -1
  324. package/src/api-notifications/providers/MemorySmsProvider.ts +0 -20
  325. package/src/api-notifications/providers/SmsProvider.ts +0 -8
  326. /package/src/core/{descriptors → primitives}/$atom.ts +0 -0
  327. /package/src/core/{descriptors → primitives}/$env.ts +0 -0
  328. /package/src/server-auth/{descriptors → primitives}/$authApple.ts +0 -0
  329. /package/src/server-links/{descriptors → primitives}/$client.ts +0 -0
@@ -1,11 +1,5 @@
1
1
  import type { Server } from "node:http";
2
- import { $module, type Alepha, type DescriptorFactoryLike } from "alepha";
3
- import {
4
- $action,
5
- type ActionDescriptor,
6
- type ClientRequestOptions,
7
- } from "./descriptors/$action.ts";
8
- import { $route } from "./descriptors/$route.ts";
2
+ import { $module, type Alepha, type PrimitiveFactoryLike } from "alepha";
9
3
  import type { HttpError } from "./errors/HttpError.ts";
10
4
  import type {
11
5
  NodeRequestEvent,
@@ -16,6 +10,12 @@ import type {
16
10
  ServerRoute,
17
11
  WebRequestEvent,
18
12
  } from "./interfaces/ServerRequest.ts";
13
+ import {
14
+ $action,
15
+ type ActionPrimitive,
16
+ type ClientRequestOptions,
17
+ } from "./primitives/$action.ts";
18
+ import { $route } from "./primitives/$route.ts";
19
19
  import { BunHttpServerProvider } from "./providers/BunHttpServerProvider.ts";
20
20
  import { NodeHttpServerProvider } from "./providers/NodeHttpServerProvider.ts";
21
21
  import { ServerBodyParserProvider } from "./providers/ServerBodyParserProvider.ts";
@@ -36,12 +36,12 @@ declare module "alepha" {
36
36
  // -----------------------------------------------------------------------------------------------------------------
37
37
  // Local Actions hooks
38
38
  "action:onRequest": {
39
- action: ActionDescriptor<RequestConfigSchema>;
39
+ action: ActionPrimitive<RequestConfigSchema>;
40
40
  request: ServerRequest;
41
41
  options: ClientRequestOptions;
42
42
  };
43
43
  "action:onResponse": {
44
- action: ActionDescriptor<RequestConfigSchema>;
44
+ action: ActionPrimitive<RequestConfigSchema>;
45
45
  request: ServerRequest;
46
46
  options: ClientRequestOptions;
47
47
  response: any;
@@ -96,9 +96,9 @@ declare module "alepha" {
96
96
 
97
97
  // ---------------------------------------------------------------------------------------------------------------------
98
98
 
99
- export * from "./descriptors/$action.ts";
100
- export * from "./descriptors/$route.ts";
101
99
  export * from "./index.shared.ts";
100
+ export * from "./primitives/$action.ts";
101
+ export * from "./primitives/$route.ts";
102
102
  export * from "./providers/BunHttpServerProvider.ts";
103
103
  export * from "./providers/NodeHttpServerProvider.ts";
104
104
  export * from "./providers/ServerLoggerProvider.ts";
@@ -110,9 +110,9 @@ export * from "./providers/ServerTimingProvider.ts";
110
110
  // ---------------------------------------------------------------------------------------------------------------------
111
111
 
112
112
  /**
113
- * Provides high-performance HTTP server capabilities with declarative routing and action descriptors.
113
+ * Provides high-performance HTTP server capabilities with declarative routing and action primitives.
114
114
  *
115
- * The server module enables building REST APIs and web applications using `$route` and `$action` descriptors
115
+ * The server module enables building REST APIs and web applications using `$route` and `$action` primitives
116
116
  * on class properties. It provides automatic request/response handling, schema validation, middleware support,
117
117
  * and seamless integration with other Alepha modules for a complete backend solution.
118
118
  *
@@ -122,7 +122,7 @@ export * from "./providers/ServerTimingProvider.ts";
122
122
  */
123
123
  export const AlephaServer = $module({
124
124
  name: "alepha.server",
125
- descriptors: [$route, $action as DescriptorFactoryLike],
125
+ primitives: [$route, $action as PrimitiveFactoryLike],
126
126
  services: [
127
127
  ServerProvider,
128
128
  BunHttpServerProvider,
@@ -2,10 +2,10 @@ import {
2
2
  $env,
3
3
  $inject,
4
4
  type Async,
5
- createDescriptor,
6
- Descriptor,
5
+ createPrimitive,
7
6
  isTypeFile,
8
7
  KIND,
8
+ Primitive,
9
9
  type Static,
10
10
  type TObject,
11
11
  type TSchema,
@@ -30,7 +30,7 @@ import {
30
30
  } from "../services/HttpClient.ts";
31
31
 
32
32
  /**
33
- * Creates a server action descriptor for defining type-safe HTTP endpoints.
33
+ * Creates a server action primitive for defining type-safe HTTP endpoints.
34
34
  *
35
35
  * Server actions are the core building blocks for REST APIs in Alepha, providing declarative
36
36
  * HTTP endpoints with full type safety, automatic validation, and OpenAPI documentation.
@@ -95,9 +95,9 @@ import {
95
95
  * ```
96
96
  */
97
97
  export const $action = <TConfig extends RequestConfigSchema>(
98
- options: ActionDescriptorOptions<TConfig>,
99
- ): ActionDescriptorFn<TConfig> => {
100
- const instance = createDescriptor(ActionDescriptor<TConfig>, options);
98
+ options: ActionPrimitiveOptions<TConfig>,
99
+ ): ActionPrimitiveFn<TConfig> => {
100
+ const instance = createPrimitive(ActionPrimitive<TConfig>, options);
101
101
  const fn = (
102
102
  config?: ClientRequestEntry<TConfig>,
103
103
  options?: ClientRequestOptions,
@@ -109,12 +109,12 @@ export const $action = <TConfig extends RequestConfigSchema>(
109
109
  return instance.options.name || instance.config.propertyKey;
110
110
  },
111
111
  });
112
- return Object.setPrototypeOf(fn, instance) as ActionDescriptorFn<TConfig>;
112
+ return Object.setPrototypeOf(fn, instance) as ActionPrimitiveFn<TConfig>;
113
113
  };
114
114
 
115
115
  // ----------------------------------------------------------------------------------------------------------
116
116
 
117
- export interface ActionDescriptorOptions<TConfig extends RequestConfigSchema>
117
+ export interface ActionPrimitiveOptions<TConfig extends RequestConfigSchema>
118
118
  extends Omit<ServerRoute, "handler" | "path" | "schema" | "mapParams"> {
119
119
  /**
120
120
  * Name of the action.
@@ -198,9 +198,9 @@ const envSchema = t.object({
198
198
  }),
199
199
  });
200
200
 
201
- export class ActionDescriptor<
201
+ export class ActionPrimitive<
202
202
  TConfig extends RequestConfigSchema,
203
- > extends Descriptor<ActionDescriptorOptions<TConfig>> {
203
+ > extends Primitive<ActionPrimitiveOptions<TConfig>> {
204
204
  protected readonly log = $logger();
205
205
  protected readonly env = $env(envSchema);
206
206
  protected readonly httpClient = $inject(HttpClient);
@@ -416,15 +416,15 @@ export class ActionDescriptor<
416
416
  }
417
417
  }
418
418
 
419
- export interface ActionDescriptorFn<TConfig extends RequestConfigSchema>
420
- extends ActionDescriptor<TConfig> {
419
+ export interface ActionPrimitiveFn<TConfig extends RequestConfigSchema>
420
+ extends ActionPrimitive<TConfig> {
421
421
  (
422
422
  config?: ClientRequestEntry<TConfig>,
423
423
  options?: ClientRequestOptions,
424
424
  ): Promise<ClientRequestResponse<TConfig>>;
425
425
  }
426
426
 
427
- $action[KIND] = ActionDescriptor;
427
+ $action[KIND] = ActionPrimitive;
428
428
 
429
429
  // ----------------------------------------------------------------------------------------------------------
430
430
 
@@ -1,4 +1,4 @@
1
- import { $inject, createDescriptor, Descriptor, KIND } from "alepha";
1
+ import { $inject, createPrimitive, KIND, Primitive } from "alepha";
2
2
  import type {
3
3
  RequestConfigSchema,
4
4
  ServerRoute,
@@ -8,28 +8,28 @@ import { ServerRouterProvider } from "../providers/ServerRouterProvider.ts";
8
8
  /**
9
9
  * Create a basic endpoint.
10
10
  *
11
- * It's a low level descriptor. You probably want to use `$action` instead.
11
+ * It's a low level primitive. You probably want to use `$action` instead.
12
12
  *
13
13
  * @see {@link $action}
14
14
  * @see {@link $page}
15
15
  */
16
16
  export const $route = <TConfig extends RequestConfigSchema>(
17
- options: RouteDescriptorOptions<TConfig>,
18
- ): RouteDescriptor<TConfig> => {
19
- return createDescriptor(RouteDescriptor<TConfig>, options);
17
+ options: RoutePrimitiveOptions<TConfig>,
18
+ ): RoutePrimitive<TConfig> => {
19
+ return createPrimitive(RoutePrimitive<TConfig>, options);
20
20
  };
21
21
 
22
22
  // ---------------------------------------------------------------------------------------------------------------------
23
23
 
24
- export interface RouteDescriptorOptions<
24
+ export interface RoutePrimitiveOptions<
25
25
  TConfig extends RequestConfigSchema = RequestConfigSchema,
26
26
  > extends ServerRoute<TConfig> {}
27
27
 
28
28
  // ---------------------------------------------------------------------------------------------------------------------
29
29
 
30
- export class RouteDescriptor<
30
+ export class RoutePrimitive<
31
31
  TConfig extends RequestConfigSchema,
32
- > extends Descriptor<RouteDescriptorOptions<TConfig>> {
32
+ > extends Primitive<RoutePrimitiveOptions<TConfig>> {
33
33
  protected readonly serverRouterProvider = $inject(ServerRouterProvider);
34
34
 
35
35
  protected onInit() {
@@ -37,4 +37,4 @@ export class RouteDescriptor<
37
37
  }
38
38
  }
39
39
 
40
- $route[KIND] = RouteDescriptor;
40
+ $route[KIND] = RoutePrimitive;
@@ -57,7 +57,7 @@ export class NodeHttpServerProvider extends ServerProvider {
57
57
  on: "start",
58
58
  handler: async () => {
59
59
  await this.listen();
60
- this.alepha.state.set("alepha.node.server", this.server);
60
+ this.alepha.store.set("alepha.node.server", this.server);
61
61
  },
62
62
  });
63
63
 
@@ -10,7 +10,6 @@ import {
10
10
  import { $cache } from "alepha/cache";
11
11
  import type { DurationLike } from "alepha/datetime";
12
12
  import { $logger } from "alepha/logger";
13
- import type { ClientRequestOptions } from "../descriptors/$action.ts";
14
13
  import { HttpError } from "../errors/HttpError.ts";
15
14
  import { isMultipart } from "../helpers/isMultipart.ts";
16
15
  import type {
@@ -18,6 +17,7 @@ import type {
18
17
  TRequestBody,
19
18
  TResponseBody,
20
19
  } from "../interfaces/ServerRequest.ts";
20
+ import type { ClientRequestOptions } from "../primitives/$action.ts";
21
21
  import { errorSchema } from "../schemas/errorSchema.ts";
22
22
 
23
23
  export class HttpClient {
@@ -8,6 +8,6 @@ export * from "./index.shared.ts";
8
8
 
9
9
  export const AlephaServerAuth = $module({
10
10
  name: "alepha.server.auth",
11
- descriptors: [],
11
+ primitives: [],
12
12
  services: [],
13
13
  });
@@ -1,16 +1,16 @@
1
1
  import { $module } from "alepha";
2
2
  import type { UserAccount } from "alepha/security";
3
3
  import { AlephaServerCookies } from "alepha/server/cookies";
4
- import { $auth } from "./descriptors/$auth.ts";
4
+ import { $auth } from "./primitives/$auth.ts";
5
5
  import { ServerAuthProvider } from "./providers/ServerAuthProvider.ts";
6
6
 
7
7
  // ---------------------------------------------------------------------------------------------------------------------
8
8
 
9
- export * from "./descriptors/$auth.ts";
10
- export * from "./descriptors/$authCredentials.ts";
11
- export * from "./descriptors/$authGithub.ts";
12
- export * from "./descriptors/$authGoogle.ts";
13
9
  export * from "./index.shared.ts";
10
+ export * from "./primitives/$auth.ts";
11
+ export * from "./primitives/$authCredentials.ts";
12
+ export * from "./primitives/$authGithub.ts";
13
+ export * from "./primitives/$authGoogle.ts";
14
14
  export * from "./providers/ServerAuthProvider.ts";
15
15
 
16
16
  // ---------------------------------------------------------------------------------------------------------------------
@@ -43,6 +43,6 @@ declare module "alepha" {
43
43
  */
44
44
  export const AlephaServerAuth = $module({
45
45
  name: "alepha.server.auth",
46
- descriptors: [$auth],
46
+ primitives: [$auth],
47
47
  services: [AlephaServerCookies, ServerAuthProvider],
48
48
  });
@@ -2,14 +2,14 @@ import {
2
2
  $inject,
3
3
  AlephaError,
4
4
  type Async,
5
- createDescriptor,
6
- Descriptor,
5
+ createPrimitive,
7
6
  KIND,
7
+ Primitive,
8
8
  } from "alepha";
9
9
  import { DateTimeProvider } from "alepha/datetime";
10
10
  import {
11
11
  type AccessTokenResponse,
12
- type RealmDescriptor,
12
+ type RealmPrimitive,
13
13
  SecurityError,
14
14
  SecurityProvider,
15
15
  type UserAccount,
@@ -24,7 +24,7 @@ import type { OAuth2Profile } from "../providers/ServerAuthProvider.ts";
24
24
  import type { Tokens } from "../schemas/tokensSchema.ts";
25
25
 
26
26
  /**
27
- * Creates an authentication provider descriptor for handling user login flows.
27
+ * Creates an authentication provider primitive for handling user login flows.
28
28
  *
29
29
  * Supports multiple authentication strategies: credentials (username/password), OAuth2,
30
30
  * and OIDC (OpenID Connect). Handles token management, user profile retrieval, and
@@ -57,13 +57,13 @@ import type { Tokens } from "../schemas/tokensSchema.ts";
57
57
  * }
58
58
  * ```
59
59
  */
60
- export const $auth = (options: AuthDescriptorOptions): AuthDescriptor => {
61
- return createDescriptor(AuthDescriptor, options);
60
+ export const $auth = (options: AuthPrimitiveOptions): AuthPrimitive => {
61
+ return createPrimitive(AuthPrimitive, options);
62
62
  };
63
63
 
64
64
  // ---------------------------------------------------------------------------------------------------------------------
65
65
 
66
- export type AuthDescriptorOptions = {
66
+ export type AuthPrimitiveOptions = {
67
67
  /**
68
68
  * Name of the identity provider.
69
69
  * If not provided, it will be derived from the property key.
@@ -108,7 +108,7 @@ export type AuthExternal = {
108
108
  * This relies on the `realm`, which is used to create/verify the access token.
109
109
  */
110
110
  export type AuthInternal = {
111
- realm: RealmDescriptor;
111
+ realm: RealmPrimitive;
112
112
  } & (
113
113
  | {
114
114
  /**
@@ -251,7 +251,7 @@ export interface OAuth2Options {
251
251
 
252
252
  // ---------------------------------------------------------------------------------------------------------------------
253
253
 
254
- export class AuthDescriptor extends Descriptor<AuthDescriptorOptions> {
254
+ export class AuthPrimitive extends Primitive<AuthPrimitiveOptions> {
255
255
  protected readonly securityProvider = $inject(SecurityProvider);
256
256
  protected readonly dateTimeProvider = $inject(DateTimeProvider);
257
257
 
@@ -433,7 +433,7 @@ export class AuthDescriptor extends Descriptor<AuthDescriptorOptions> {
433
433
  }
434
434
  }
435
435
 
436
- $auth[KIND] = AuthDescriptor;
436
+ $auth[KIND] = AuthPrimitive;
437
437
 
438
438
  // ---------------------------------------------------------------------------------------------------------------------
439
439
 
@@ -1,5 +1,5 @@
1
1
  import { AlephaError } from "alepha";
2
- import type { RealmDescriptor } from "alepha/security";
2
+ import type { RealmPrimitive } from "alepha/security";
3
3
  import {
4
4
  $auth,
5
5
  type CredentialsFn,
@@ -8,12 +8,12 @@ import {
8
8
  } from "./$auth.ts";
9
9
 
10
10
  /**
11
- * Already configured Credentials authentication descriptor.
11
+ * Already configured Credentials authentication primitive.
12
12
  *
13
13
  * Uses username and password to authenticate users.
14
14
  */
15
15
  export const $authCredentials = (
16
- realm: RealmDescriptor & WithLoginFn,
16
+ realm: RealmPrimitive & WithLoginFn,
17
17
  options: Partial<CredentialsOptions> = {},
18
18
  ) => {
19
19
  const name = "credentials";
@@ -24,7 +24,7 @@ export const $authCredentials = (
24
24
 
25
25
  if (!account) {
26
26
  throw new AlephaError(
27
- "Credentials authentication requires a login function in the realm descriptor.",
27
+ "Credentials authentication requires a login function in the realm primitive.",
28
28
  );
29
29
  }
30
30
 
@@ -1,5 +1,5 @@
1
1
  import { $context, AlephaError, t } from "alepha";
2
- import type { RealmDescriptor } from "alepha/security";
2
+ import type { RealmPrimitive } from "alepha/security";
3
3
  import type { OAuth2Profile } from "../providers/ServerAuthProvider.ts";
4
4
  import {
5
5
  $auth,
@@ -9,7 +9,7 @@ import {
9
9
  } from "./$auth.ts";
10
10
 
11
11
  /**
12
- * Already configured GitHub authentication descriptor.
12
+ * Already configured GitHub authentication primitive.
13
13
  *
14
14
  * Uses OAuth2 to authenticate users via their GitHub accounts.
15
15
  * Upon successful authentication, it links the GitHub account to a user session.
@@ -19,7 +19,7 @@ import {
19
19
  * - `GITHUB_CLIENT_SECRET`: The client secret obtained from the GitHub Developer Settings.
20
20
  */
21
21
  export const $authGithub = (
22
- realm: RealmDescriptor & WithLinkFn,
22
+ realm: RealmPrimitive & WithLinkFn,
23
23
  options: Partial<OidcOptions> = {},
24
24
  ) => {
25
25
  const { alepha } = $context();
@@ -40,7 +40,7 @@ export const $authGithub = (
40
40
 
41
41
  if (!account) {
42
42
  throw new AlephaError(
43
- "Authentication requires a link function in the realm descriptor.",
43
+ "Authentication requires a link function in the realm primitive.",
44
44
  );
45
45
  }
46
46
 
@@ -1,5 +1,5 @@
1
1
  import { $context, AlephaError, t } from "alepha";
2
- import type { RealmDescriptor } from "alepha/security";
2
+ import type { RealmPrimitive } from "alepha/security";
3
3
  import {
4
4
  $auth,
5
5
  type LinkAccountFn,
@@ -8,7 +8,7 @@ import {
8
8
  } from "./$auth.ts";
9
9
 
10
10
  /**
11
- * Already configured Google authentication descriptor.
11
+ * Already configured Google authentication primitive.
12
12
  *
13
13
  * Uses OpenID Connect (OIDC) to authenticate users via their Google accounts.
14
14
  * Upon successful authentication, it links the Google account to a user session.
@@ -18,7 +18,7 @@ import {
18
18
  * - `GOOGLE_CLIENT_SECRET`: The client secret obtained from the Google Developer Console.
19
19
  */
20
20
  export const $authGoogle = (
21
- realm: RealmDescriptor & WithLinkFn,
21
+ realm: RealmPrimitive & WithLinkFn,
22
22
  options: Partial<OidcOptions> = {},
23
23
  ) => {
24
24
  const { alepha } = $context();
@@ -39,7 +39,7 @@ export const $authGoogle = (
39
39
 
40
40
  if (!account) {
41
41
  throw new AlephaError(
42
- "Authentication requires a link function in the realm descriptor.",
42
+ "Authentication requires a link function in the realm primitive.",
43
43
  );
44
44
  }
45
45
 
@@ -22,7 +22,7 @@ import {
22
22
  randomState,
23
23
  } from "openid-client";
24
24
  import { alephaServerAuthRoutes } from "../constants/routes.ts";
25
- import { $auth, type AuthDescriptor } from "../descriptors/$auth.ts";
25
+ import { $auth, type AuthPrimitive } from "../primitives/$auth.ts";
26
26
  import type { AuthenticationProvider } from "../schemas/authenticationProviderSchema.ts";
27
27
  import { tokenResponseSchema } from "../schemas/tokenResponseSchema.ts";
28
28
  import { type Tokens, tokensSchema } from "../schemas/tokensSchema.ts";
@@ -57,9 +57,9 @@ export class ServerAuthProvider {
57
57
  schema: tokensSchema,
58
58
  });
59
59
 
60
- public get identities(): Array<AuthDescriptor> {
60
+ public get identities(): Array<AuthPrimitive> {
61
61
  return this.alepha
62
- .descriptors($auth)
62
+ .primitives($auth)
63
63
  .filter((auth) => !auth.options.disabled);
64
64
  }
65
65
 
@@ -603,7 +603,7 @@ export class ServerAuthProvider {
603
603
  },
604
604
  });
605
605
 
606
- protected provider(opts: string | { provider: string }): AuthDescriptor {
606
+ protected provider(opts: string | { provider: string }): AuthPrimitive {
607
607
  const name = typeof opts === "string" ? opts : opts.provider;
608
608
  const identity = this.identities.find((identity) => identity.name === name);
609
609
 
@@ -1,11 +1,11 @@
1
1
  import type { BinaryLike } from "node:crypto";
2
2
  import { createHash } from "node:crypto";
3
3
  import { $hook, $inject, Alepha } from "alepha";
4
- import { $cache, type CacheDescriptorOptions } from "alepha/cache";
4
+ import { $cache, type CachePrimitiveOptions } from "alepha/cache";
5
5
  import { DateTimeProvider, type DurationLike } from "alepha/datetime";
6
6
  import { $logger } from "alepha/logger";
7
7
  import {
8
- ActionDescriptor,
8
+ ActionPrimitive,
9
9
  type RequestConfigSchema,
10
10
  type ServerRequest,
11
11
  type ServerRoute,
@@ -25,13 +25,13 @@ declare module "alepha/server" {
25
25
  cache?: ServerRouteCache;
26
26
  }
27
27
 
28
- interface ActionDescriptor<TConfig extends RequestConfigSchema> {
28
+ interface ActionPrimitive<TConfig extends RequestConfigSchema> {
29
29
  invalidate: () => Promise<void>;
30
30
  }
31
31
  }
32
32
 
33
- ActionDescriptor.prototype.invalidate = async function (
34
- this: ActionDescriptor<RequestConfigSchema>,
33
+ ActionPrimitive.prototype.invalidate = async function (
34
+ this: ActionPrimitive<RequestConfigSchema>,
35
35
  ) {
36
36
  await this.alepha.inject(ServerCacheProvider).invalidate(this.route);
37
37
  };
@@ -422,11 +422,11 @@ export type ServerRouteCache =
422
422
  /**
423
423
  * If true, enables storing cached responses. (in-memory, Redis, @see alepha/cache for other providers)
424
424
  * If a DurationLike is provided, it will be used as the TTL for the cache.
425
- * If CacheDescriptorOptions is provided, it will be used to configure the cache storage.
425
+ * If CachePrimitiveOptions is provided, it will be used to configure the cache storage.
426
426
  *
427
427
  * @default false
428
428
  */
429
- store?: true | DurationLike | CacheDescriptorOptions;
429
+ store?: true | DurationLike | CachePrimitiveOptions;
430
430
  /**
431
431
  * If true, enables ETag support for the cached responses.
432
432
  */
@@ -2,7 +2,7 @@ import { Readable, type Transform } from "node:stream";
2
2
  import { ReadableStream } from "node:stream/web";
3
3
  import { promisify } from "node:util";
4
4
  import * as zlib from "node:zlib";
5
- import { $hook, $inject, Alepha, type HookDescriptor } from "alepha";
5
+ import { $hook, $inject, Alepha } from "alepha";
6
6
  import type { ServerResponse } from "alepha/server";
7
7
 
8
8
  const gzip = promisify(zlib.gzip);
@@ -55,11 +55,11 @@ export class ServerCompressProvider {
55
55
  "text/plain",
56
56
  "text/css",
57
57
  ],
58
- ...this.alepha.state.get("alepha.server.compress.options"),
58
+ ...this.alepha.store.get("alepha.server.compress.options"),
59
59
  };
60
60
  }
61
61
 
62
- public readonly onResponse: HookDescriptor<"server:onResponse"> = $hook({
62
+ public readonly onResponse = $hook({
63
63
  on: "server:onResponse",
64
64
  handler: async ({ request, response }) => {
65
65
  // skip if already compressed
@@ -3,12 +3,12 @@ import { AlephaServer } from "alepha/server";
3
3
 
4
4
  // ---------------------------------------------------------------------------------------------------------------------
5
5
 
6
- export * from "./descriptors/$cookie.browser.ts";
6
+ export * from "./primitives/$cookie.browser.ts";
7
7
 
8
8
  // ---------------------------------------------------------------------------------------------------------------------
9
9
 
10
10
  export const AlephaServerCookies = $module({
11
11
  name: "alepha.server.cookies",
12
- descriptors: [],
12
+ primitives: [],
13
13
  services: [AlephaServer],
14
14
  });
@@ -1,11 +1,11 @@
1
1
  import { $module } from "alepha";
2
2
  import { AlephaServer } from "alepha/server";
3
- import { $cookie, type Cookies } from "./descriptors/$cookie.ts";
3
+ import { $cookie, type Cookies } from "./primitives/$cookie.ts";
4
4
  import { ServerCookiesProvider } from "./providers/ServerCookiesProvider.ts";
5
5
 
6
6
  // ---------------------------------------------------------------------------------------------------------------------
7
7
 
8
- export * from "./descriptors/$cookie.ts";
8
+ export * from "./primitives/$cookie.ts";
9
9
  export * from "./providers/ServerCookiesProvider.ts";
10
10
 
11
11
  // ---------------------------------------------------------------------------------------------------------------------
@@ -17,9 +17,9 @@ declare module "alepha/server" {
17
17
  }
18
18
 
19
19
  /**
20
- * Provides HTTP cookie management capabilities for server requests and responses with type-safe cookie descriptors.
20
+ * Provides HTTP cookie management capabilities for server requests and responses with type-safe cookie primitives.
21
21
  *
22
- * The server-cookies module enables declarative cookie handling using the `$cookie` descriptor on class properties.
22
+ * The server-cookies module enables declarative cookie handling using the `$cookie` primitive on class properties.
23
23
  * It offers automatic cookie parsing, secure cookie configuration, and seamless integration with server routes
24
24
  * for managing user sessions, preferences, and authentication tokens.
25
25
  *
@@ -28,6 +28,6 @@ declare module "alepha/server" {
28
28
  */
29
29
  export const AlephaServerCookies = $module({
30
30
  name: "alepha.server.cookies",
31
- descriptors: [$cookie],
31
+ primitives: [$cookie],
32
32
  services: [AlephaServer, ServerCookiesProvider],
33
33
  });
@@ -2,23 +2,23 @@ import {
2
2
  $inject,
3
3
  Alepha,
4
4
  AlephaError,
5
- createDescriptor,
6
- Descriptor,
5
+ createPrimitive,
7
6
  KIND,
7
+ Primitive,
8
8
  type Static,
9
9
  type TSchema,
10
10
  } from "alepha";
11
11
  import { DateTimeProvider } from "alepha/datetime";
12
12
  import { CookieParser } from "../services/CookieParser.ts";
13
13
  import type {
14
- AbstractCookieDescriptor,
14
+ AbstractCookiePrimitive,
15
15
  Cookie,
16
- CookieDescriptorOptions,
16
+ CookiePrimitiveOptions,
17
17
  Cookies,
18
18
  } from "./$cookie.ts";
19
19
 
20
20
  /**
21
- * Creates a browser-side cookie descriptor for client-side cookie management.
21
+ * Creates a browser-side cookie primitive for client-side cookie management.
22
22
  *
23
23
  * Browser-specific version of $cookie that uses document.cookie API. Supports type-safe
24
24
  * cookie operations with schema validation but excludes encryption/signing (use server-side
@@ -46,16 +46,16 @@ import type {
46
46
  * ```
47
47
  */
48
48
  export const $cookie = <T extends TSchema>(
49
- options: CookieDescriptorOptions<T>,
50
- ): AbstractCookieDescriptor<T> => {
51
- return createDescriptor(BrowserCookieDescriptor<T>, options);
49
+ options: CookiePrimitiveOptions<T>,
50
+ ): AbstractCookiePrimitive<T> => {
51
+ return createPrimitive(BrowserCookiePrimitive<T>, options);
52
52
  };
53
53
 
54
54
  // ---------------------------------------------------------------------------------------------------------------------
55
55
 
56
- export class BrowserCookieDescriptor<T extends TSchema>
57
- extends Descriptor<CookieDescriptorOptions<T>>
58
- implements AbstractCookieDescriptor<T>
56
+ export class BrowserCookiePrimitive<T extends TSchema>
57
+ extends Primitive<CookiePrimitiveOptions<T>>
58
+ implements AbstractCookiePrimitive<T>
59
59
  {
60
60
  protected cookieParser = $inject(CookieParser);
61
61
  protected alepha = $inject(Alepha);
@@ -143,4 +143,4 @@ export class BrowserCookieDescriptor<T extends TSchema>
143
143
  }
144
144
  }
145
145
 
146
- $cookie[KIND] = BrowserCookieDescriptor;
146
+ $cookie[KIND] = BrowserCookiePrimitive;