alepha 0.20.3 → 0.20.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. package/dist/api/audits/index.d.ts.map +1 -1
  2. package/dist/api/files/index.d.ts.map +1 -1
  3. package/dist/api/jobs/index.d.ts +14 -14
  4. package/dist/api/jobs/index.d.ts.map +1 -1
  5. package/dist/api/keys/index.d.ts +4 -4
  6. package/dist/api/organizations/index.d.ts.map +1 -1
  7. package/dist/api/parameters/index.d.ts +8 -3
  8. package/dist/api/parameters/index.d.ts.map +1 -1
  9. package/dist/api/parameters/index.js +20 -4
  10. package/dist/api/parameters/index.js.map +1 -1
  11. package/dist/api/payments/index.d.ts.map +1 -1
  12. package/dist/api/users/index.browser.js +6 -0
  13. package/dist/api/users/index.browser.js.map +1 -1
  14. package/dist/api/users/index.d.ts +5037 -139
  15. package/dist/api/users/index.d.ts.map +1 -1
  16. package/dist/api/users/index.js +58 -10
  17. package/dist/api/users/index.js.map +1 -1
  18. package/dist/bucket/index.d.ts +77 -107
  19. package/dist/bucket/index.d.ts.map +1 -1
  20. package/dist/bucket/index.js +148 -4
  21. package/dist/bucket/index.js.map +1 -1
  22. package/dist/bucket/index.workerd.js +7 -1
  23. package/dist/bucket/index.workerd.js.map +1 -1
  24. package/dist/cache/core/index.d.ts +26 -0
  25. package/dist/cache/core/index.d.ts.map +1 -1
  26. package/dist/cache/core/index.js +11 -1
  27. package/dist/cache/core/index.js.map +1 -1
  28. package/dist/cache/core/index.workerd.js +11 -1
  29. package/dist/cache/core/index.workerd.js.map +1 -1
  30. package/dist/cli/config/index.d.ts +7 -5
  31. package/dist/cli/config/index.d.ts.map +1 -1
  32. package/dist/cli/config/index.js +2 -3
  33. package/dist/cli/config/index.js.map +1 -1
  34. package/dist/cli/core/index.d.ts +420 -13
  35. package/dist/cli/core/index.d.ts.map +1 -1
  36. package/dist/cli/core/index.js +22 -511
  37. package/dist/cli/core/index.js.map +1 -1
  38. package/dist/cli/devtools/index.d.ts +4 -8
  39. package/dist/cli/devtools/index.d.ts.map +1 -1
  40. package/dist/cli/devtools/index.js +13 -15
  41. package/dist/cli/devtools/index.js.map +1 -1
  42. package/dist/cli/platform/index.d.ts +10 -13
  43. package/dist/cli/platform/index.d.ts.map +1 -1
  44. package/dist/cli/platform/index.js +18 -15
  45. package/dist/cli/platform/index.js.map +1 -1
  46. package/dist/cli/vendor/index.d.ts +10 -13
  47. package/dist/cli/vendor/index.d.ts.map +1 -1
  48. package/dist/cli/vendor/index.js +16 -13
  49. package/dist/cli/vendor/index.js.map +1 -1
  50. package/dist/core/index.browser.js +27 -3
  51. package/dist/core/index.browser.js.map +1 -1
  52. package/dist/core/index.d.ts +6 -3
  53. package/dist/core/index.d.ts.map +1 -1
  54. package/dist/core/index.js +27 -3
  55. package/dist/core/index.js.map +1 -1
  56. package/dist/core/index.native.js +27 -3
  57. package/dist/core/index.native.js.map +1 -1
  58. package/dist/core/index.workerd.js +27 -3
  59. package/dist/core/index.workerd.js.map +1 -1
  60. package/dist/datetime/index.d.ts +69 -10
  61. package/dist/datetime/index.d.ts.map +1 -1
  62. package/dist/datetime/index.js +135 -13
  63. package/dist/datetime/index.js.map +1 -1
  64. package/dist/email/smtp/index.js +10636 -2
  65. package/dist/email/smtp/index.js.map +1 -1
  66. package/dist/fake/index.d.ts +8085 -4
  67. package/dist/fake/index.d.ts.map +1 -1
  68. package/dist/fake/index.js +33554 -3
  69. package/dist/fake/index.js.map +1 -1
  70. package/dist/lock/core/index.d.ts +30 -2
  71. package/dist/lock/core/index.d.ts.map +1 -1
  72. package/dist/lock/core/index.js +35 -12
  73. package/dist/lock/core/index.js.map +1 -1
  74. package/dist/mcp/index.d.ts +238 -31
  75. package/dist/mcp/index.d.ts.map +1 -1
  76. package/dist/mcp/index.js +198 -71
  77. package/dist/mcp/index.js.map +1 -1
  78. package/dist/orm/core/index.browser.js +1 -1
  79. package/dist/orm/core/index.browser.js.map +1 -1
  80. package/dist/orm/core/index.bun.js +4 -3
  81. package/dist/orm/core/index.bun.js.map +1 -1
  82. package/dist/orm/core/index.d.ts +4877 -9
  83. package/dist/orm/core/index.d.ts.map +1 -1
  84. package/dist/orm/core/index.js +4 -3
  85. package/dist/orm/core/index.js.map +1 -1
  86. package/dist/orm/postgres/index.d.ts +608 -1
  87. package/dist/orm/postgres/index.d.ts.map +1 -1
  88. package/dist/react/core/index.d.ts +102 -1
  89. package/dist/react/core/index.d.ts.map +1 -1
  90. package/dist/react/core/index.js +65 -1
  91. package/dist/react/core/index.js.map +1 -1
  92. package/dist/react/form/index.d.ts +6 -0
  93. package/dist/react/form/index.d.ts.map +1 -1
  94. package/dist/react/form/index.js +7 -7
  95. package/dist/react/form/index.js.map +1 -1
  96. package/dist/react/i18n/index.d.ts +7 -1
  97. package/dist/react/i18n/index.d.ts.map +1 -1
  98. package/dist/react/i18n/index.js +6 -0
  99. package/dist/react/i18n/index.js.map +1 -1
  100. package/dist/react/router/index.browser.js +20 -2
  101. package/dist/react/router/index.browser.js.map +1 -1
  102. package/dist/react/router/index.d.ts +36 -4
  103. package/dist/react/router/index.d.ts.map +1 -1
  104. package/dist/react/router/index.js +20 -2
  105. package/dist/react/router/index.js.map +1 -1
  106. package/dist/react/testing/chunk-6Ep1yQYe.js +16 -0
  107. package/dist/react/testing/index.d.ts +411 -1
  108. package/dist/react/testing/index.d.ts.map +1 -1
  109. package/dist/react/testing/index.js +12293 -13
  110. package/dist/react/testing/index.js.map +1 -1
  111. package/dist/react/ui/index.d.ts +195 -1
  112. package/dist/react/ui/index.d.ts.map +1 -1
  113. package/dist/react/ui/index.js +61 -1
  114. package/dist/react/ui/index.js.map +1 -1
  115. package/dist/scheduler/index.d.ts +84 -3
  116. package/dist/scheduler/index.d.ts.map +1 -1
  117. package/dist/scheduler/index.js +390 -1
  118. package/dist/scheduler/index.js.map +1 -1
  119. package/dist/scheduler/index.workerd.js +390 -1
  120. package/dist/scheduler/index.workerd.js.map +1 -1
  121. package/dist/security/index.d.ts +325 -2
  122. package/dist/security/index.d.ts.map +1 -1
  123. package/dist/security/index.js +1361 -2
  124. package/dist/security/index.js.map +1 -1
  125. package/dist/server/auth/index.d.ts +1054 -1
  126. package/dist/server/auth/index.d.ts.map +1 -1
  127. package/dist/server/auth/index.js +1223 -1
  128. package/dist/server/auth/index.js.map +1 -1
  129. package/dist/server/core/index.browser.js +10 -3
  130. package/dist/server/core/index.browser.js.map +1 -1
  131. package/dist/server/core/index.d.ts.map +1 -1
  132. package/dist/server/core/index.js +28 -5
  133. package/dist/server/core/index.js.map +1 -1
  134. package/dist/server/metrics/index.d.ts +514 -1
  135. package/dist/server/metrics/index.d.ts.map +1 -1
  136. package/dist/server/metrics/index.js +4374 -4
  137. package/dist/server/metrics/index.js.map +1 -1
  138. package/dist/server/swagger/index.d.ts.map +1 -1
  139. package/dist/server/swagger/index.js +3 -4
  140. package/dist/server/swagger/index.js.map +1 -1
  141. package/dist/websocket/index.browser.js +11 -5
  142. package/dist/websocket/index.browser.js.map +1 -1
  143. package/dist/websocket/index.d.ts +3 -1
  144. package/dist/websocket/index.d.ts.map +1 -1
  145. package/dist/websocket/index.js +21 -6
  146. package/dist/websocket/index.js.map +1 -1
  147. package/package.json +671 -263
  148. package/src/api/parameters/services/ParameterProvider.ts +21 -4
  149. package/src/api/users/__tests__/SessionService.spec.ts +99 -0
  150. package/src/api/users/__tests__/UserJobs.spec.ts +67 -0
  151. package/src/api/users/atoms/realmAuthSettingsAtom.ts +15 -0
  152. package/src/api/users/entities/sessions.ts +6 -0
  153. package/src/api/users/jobs/UserJobs.ts +44 -17
  154. package/src/api/users/providers/RealmProvider.ts +4 -0
  155. package/src/api/users/services/SessionService.ts +27 -0
  156. package/src/bucket/__tests__/NodeS3BucketProvider.spec.ts +74 -0
  157. package/src/bucket/index.ts +19 -2
  158. package/src/bucket/primitives/$bucket.ts +9 -1
  159. package/src/bucket/providers/CloudflareR2Provider.ts +2 -137
  160. package/src/bucket/providers/NodeS3BucketProvider.ts +218 -0
  161. package/src/cache/core/index.ts +29 -0
  162. package/src/cache/core/primitives/$cache.ts +14 -1
  163. package/src/cli/config/defineConfig.ts +13 -15
  164. package/src/cli/core/__tests__/init.spec.ts +6 -7
  165. package/src/cli/core/services/ProjectScaffolder.ts +18 -14
  166. package/src/cli/core/tasks/BuildCloudflareTask.ts +5 -0
  167. package/src/cli/core/templates/agentMd.ts +2 -10
  168. package/src/cli/core/templates/saasAdminLayoutTsx.ts +3 -3
  169. package/src/cli/devtools/index.ts +12 -26
  170. package/src/cli/platform/index.ts +15 -24
  171. package/src/cli/vendor/atoms/vendorOptions.ts +1 -1
  172. package/src/cli/vendor/index.ts +14 -23
  173. package/src/core/Alepha.ts +11 -1
  174. package/src/core/helpers/ref.ts +18 -0
  175. package/src/core/index.shared.ts +1 -0
  176. package/src/core/providers/SchemaValidator.ts +9 -1
  177. package/src/core/providers/TypeProvider.ts +1 -2
  178. package/src/datetime/REFACTORING.md +118 -0
  179. package/src/datetime/providers/DateTimeProvider.ts +203 -24
  180. package/src/lock/core/index.ts +31 -0
  181. package/src/lock/core/primitives/$lock.ts +14 -1
  182. package/src/mcp/__tests__/jsonrpc.spec.ts +1 -1
  183. package/src/mcp/helpers/jsonrpc.ts +26 -1
  184. package/src/mcp/index.ts +10 -5
  185. package/src/mcp/interfaces/McpTypes.ts +83 -6
  186. package/src/mcp/primitives/$prompt.ts +18 -1
  187. package/src/mcp/primitives/$resource.ts +18 -1
  188. package/src/mcp/primitives/$tool.ts +83 -7
  189. package/src/mcp/providers/McpServerProvider.ts +74 -16
  190. package/src/mcp/transports/StreamableHttpMcpTransport.ts +226 -0
  191. package/src/orm/REFACTORING.md +330 -0
  192. package/src/orm/core/primitives/$transactional.ts +11 -0
  193. package/src/orm/core/schemas/updateSchema.ts +1 -1
  194. package/src/orm/core/services/PgRelationManager.ts +4 -2
  195. package/src/react/core/__tests__/useQuery.browser.spec.tsx +86 -0
  196. package/src/react/core/hooks/useQuery.ts +153 -0
  197. package/src/react/core/index.ts +1 -0
  198. package/src/react/form/services/FormModel.ts +15 -6
  199. package/src/react/form/services/parseField.ts +8 -0
  200. package/src/react/i18n/providers/I18nProvider.ts +8 -2
  201. package/src/react/router/__tests__/$page.spec.tsx +0 -16
  202. package/src/react/router/__tests__/ssr.spec.tsx +339 -0
  203. package/src/react/router/primitives/$page.ts +28 -4
  204. package/src/react/router/providers/ReactPageProvider.ts +27 -9
  205. package/src/react/ui/atoms/uiThemeListAtom.ts +36 -0
  206. package/src/react/ui/index.ts +6 -0
  207. package/src/react/ui/services/SchemaControl.ts +209 -0
  208. package/src/security/primitives/$issuer.ts +6 -3
  209. package/src/server/core/__tests__/ServerRouterProvider-serializationError.spec.ts +75 -0
  210. package/src/server/core/__tests__/ServerRouterProvider-validationError.spec.ts +306 -0
  211. package/src/server/core/errors/ValidationError.ts +13 -1
  212. package/src/server/core/primitives/$action.ts +16 -5
  213. package/src/server/core/providers/ServerRouterProvider.ts +26 -4
  214. package/src/server/swagger/providers/ServerSwaggerProvider.ts +5 -7
  215. package/src/websocket/providers/NodeWebSocketServerProvider.ts +10 -4
  216. package/src/websocket/services/WebSocketClient.ts +11 -5
  217. package/src/mcp/transports/SseMcpTransport.ts +0 -182
@@ -7,6 +7,7 @@ import { createHash } from "node:crypto";
7
7
  import { existsSync, mkdirSync, writeFileSync } from "node:fs";
8
8
  import { readFile, readdir, stat } from "node:fs/promises";
9
9
  import { basename, dirname, isAbsolute, join, relative, resolve } from "node:path";
10
+ import pkg from "alepha/package.json" with { type: "json" };
10
11
  import { analyzer } from "vite-bundle-analyzer";
11
12
  import { KV_DEFAULT_BINDING } from "alepha/cache";
12
13
  import { QUEUE_DEFAULT_BINDING } from "alepha/queue";
@@ -756,503 +757,9 @@ var AlephaCliUtils = class {
756
757
  }
757
758
  };
758
759
  //#endregion
759
- //#region ../../package.json
760
- var version$1 = "0.20.3";
761
- //#endregion
762
760
  //#region ../../src/cli/core/alephaPackageJson.ts
763
- const alephaPackageJson = {
764
- name: "alepha",
765
- description: "Easy-to-use modern TypeScript framework for building many kind of applications.",
766
- author: "Feunard",
767
- version: version$1,
768
- type: "module",
769
- engines: { "node": ">=22.0.0" },
770
- license: "MIT",
771
- bin: "./src/bin/index.ts",
772
- main: "./src/core/index.ts",
773
- types: "./src/core/index.ts",
774
- files: [
775
- "dist",
776
- "src",
777
- "assets",
778
- "tsconfig.base.json",
779
- "AGENTS.md",
780
- "CLAUDE.md"
781
- ],
782
- dependencies: {
783
- "@redis/client": "^5.12.1",
784
- "@vitejs/plugin-react": "^6.0.1",
785
- "dayjs": "^1.11.20",
786
- "drizzle-orm": "^0.45.2",
787
- "postgres": "^3.4.9",
788
- "tsx": "^4.21.0",
789
- "typebox": "^1.1.34",
790
- "typescript": "^6.0.3",
791
- "vite-bundle-analyzer": "^1.3.8",
792
- "ws": "^8.20.0"
793
- },
794
- devDependencies: {
795
- "@biomejs/biome": "^2.4.13",
796
- "@electric-sql/pglite": "^0.4.5",
797
- "@faker-js/faker": "^10.4.0",
798
- "@tailwindcss/vite": "^4.2.4",
799
- "@testing-library/dom": "^10.4.1",
800
- "@testing-library/react": "^16.3.2",
801
- "@types/bun": "^1.3.13",
802
- "@types/node": "^25.6.0",
803
- "@types/nodemailer": "^8.0.0",
804
- "@types/react": "^19.2.14",
805
- "@types/react-dom": "^19.2.3",
806
- "@types/ws": "^8.18.1",
807
- "cron-schedule": "^6.0.0",
808
- "drizzle-kit": "^0.31.10",
809
- "jose": "^6.2.3",
810
- "jsdom": "^29.1.0",
811
- "nodemailer": "^8.0.7",
812
- "openid-client": "^6.8.4",
813
- "prom-client": "^15.1.3",
814
- "react": "^19.2.5",
815
- "react-dom": "^19.2.5",
816
- "shadcn": "^4.6.0",
817
- "swagger-ui-dist": "^5.32.5",
818
- "tailwindcss": "^4.2.4",
819
- "tsdown": "^0.21.10",
820
- "vite": "^8.0.10",
821
- "vitest": "^4.1.5"
822
- },
823
- peerDependencies: {
824
- "react": "^19",
825
- "react-dom": "^19"
826
- },
827
- peerDependenciesMeta: {
828
- "react": { "optional": true },
829
- "react-dom": { "optional": true }
830
- },
831
- scarfSettings: { "enabled": false },
832
- scripts: {
833
- "lint": "biome check --fix && yarn build:check",
834
- "typecheck": "tsc --noEmit",
835
- "test": "vitest run",
836
- "build": "node scripts/build.ts",
837
- "build:check": "yarn build --check",
838
- "copy": "node scripts/copy-swagger.ts"
839
- },
840
- homepage: "https://github.com/feunard/alepha",
841
- repository: {
842
- "type": "git",
843
- "url": "git+https://github.com/feunard/alepha.git"
844
- },
845
- keywords: [
846
- "alepha",
847
- "aleph",
848
- "framework",
849
- "serverless",
850
- "react",
851
- "api"
852
- ],
853
- exports: {
854
- "./api/audits": {
855
- "types": "./src/api/audits/index.ts",
856
- "react-native": "./src/api/audits/index.browser.ts",
857
- "browser": "./src/api/audits/index.browser.ts",
858
- "import": "./src/api/audits/index.ts",
859
- "default": "./src/api/audits/index.ts"
860
- },
861
- "./api/files": {
862
- "types": "./src/api/files/index.ts",
863
- "react-native": "./src/api/files/index.browser.ts",
864
- "browser": "./src/api/files/index.browser.ts",
865
- "import": "./src/api/files/index.ts",
866
- "default": "./src/api/files/index.ts"
867
- },
868
- "./api/jobs": {
869
- "types": "./src/api/jobs/index.ts",
870
- "react-native": "./src/api/jobs/index.browser.ts",
871
- "browser": "./src/api/jobs/index.browser.ts",
872
- "import": "./src/api/jobs/index.ts",
873
- "default": "./src/api/jobs/index.ts"
874
- },
875
- "./api/keys": {
876
- "types": "./src/api/keys/index.ts",
877
- "import": "./src/api/keys/index.ts",
878
- "default": "./src/api/keys/index.ts"
879
- },
880
- "./api/notifications": {
881
- "types": "./src/api/notifications/index.ts",
882
- "react-native": "./src/api/notifications/index.browser.ts",
883
- "browser": "./src/api/notifications/index.browser.ts",
884
- "import": "./src/api/notifications/index.ts",
885
- "default": "./src/api/notifications/index.ts"
886
- },
887
- "./api/organizations": {
888
- "types": "./src/api/organizations/index.ts",
889
- "react-native": "./src/api/organizations/index.browser.ts",
890
- "browser": "./src/api/organizations/index.browser.ts",
891
- "import": "./src/api/organizations/index.ts",
892
- "default": "./src/api/organizations/index.ts"
893
- },
894
- "./api/parameters": {
895
- "types": "./src/api/parameters/index.ts",
896
- "react-native": "./src/api/parameters/index.browser.ts",
897
- "browser": "./src/api/parameters/index.browser.ts",
898
- "import": "./src/api/parameters/index.ts",
899
- "default": "./src/api/parameters/index.ts"
900
- },
901
- "./api/payments": {
902
- "types": "./src/api/payments/index.ts",
903
- "import": "./src/api/payments/index.ts",
904
- "default": "./src/api/payments/index.ts"
905
- },
906
- "./api/users": {
907
- "types": "./src/api/users/index.ts",
908
- "react-native": "./src/api/users/index.browser.ts",
909
- "browser": "./src/api/users/index.browser.ts",
910
- "import": "./src/api/users/index.ts",
911
- "default": "./src/api/users/index.ts"
912
- },
913
- "./api/verifications": {
914
- "types": "./src/api/verifications/index.ts",
915
- "react-native": "./src/api/verifications/index.browser.ts",
916
- "browser": "./src/api/verifications/index.browser.ts",
917
- "import": "./src/api/verifications/index.ts",
918
- "default": "./src/api/verifications/index.ts"
919
- },
920
- "./batch": {
921
- "types": "./src/batch/index.ts",
922
- "import": "./src/batch/index.ts",
923
- "default": "./src/batch/index.ts"
924
- },
925
- "./bin": {
926
- "types": "./src/bin/index.ts",
927
- "import": "./src/bin/index.ts",
928
- "default": "./src/bin/index.ts"
929
- },
930
- "./bucket": {
931
- "types": "./src/bucket/index.ts",
932
- "workerd": "./src/bucket/index.workerd.ts",
933
- "import": "./src/bucket/index.ts",
934
- "default": "./src/bucket/index.ts"
935
- },
936
- "./cache": {
937
- "types": "./src/cache/core/index.ts",
938
- "workerd": "./src/cache/core/index.workerd.ts",
939
- "import": "./src/cache/core/index.ts",
940
- "default": "./src/cache/core/index.ts"
941
- },
942
- "./cache/redis": {
943
- "types": "./src/cache/redis/index.ts",
944
- "import": "./src/cache/redis/index.ts",
945
- "default": "./src/cache/redis/index.ts"
946
- },
947
- "./captcha": {
948
- "types": "./src/captcha/index.ts",
949
- "import": "./src/captcha/index.ts",
950
- "default": "./src/captcha/index.ts"
951
- },
952
- "./cli/config": {
953
- "types": "./src/cli/config/index.ts",
954
- "import": "./src/cli/config/index.ts",
955
- "default": "./src/cli/config/index.ts"
956
- },
957
- "./cli": {
958
- "types": "./src/cli/core/index.ts",
959
- "import": "./src/cli/core/index.ts",
960
- "default": "./src/cli/core/index.ts"
961
- },
962
- "./cli/devtools": {
963
- "types": "./src/cli/devtools/index.ts",
964
- "import": "./src/cli/devtools/index.ts",
965
- "default": "./src/cli/devtools/index.ts"
966
- },
967
- "./cli/platform": {
968
- "types": "./src/cli/platform/index.ts",
969
- "import": "./src/cli/platform/index.ts",
970
- "default": "./src/cli/platform/index.ts"
971
- },
972
- "./cli/vendor": {
973
- "types": "./src/cli/vendor/index.ts",
974
- "import": "./src/cli/vendor/index.ts",
975
- "default": "./src/cli/vendor/index.ts"
976
- },
977
- "./command": {
978
- "types": "./src/command/index.ts",
979
- "import": "./src/command/index.ts",
980
- "default": "./src/command/index.ts"
981
- },
982
- ".": {
983
- "types": "./src/core/index.ts",
984
- "react-native": "./src/core/index.native.ts",
985
- "workerd": "./src/core/index.workerd.ts",
986
- "browser": "./src/core/index.browser.ts",
987
- "import": "./src/core/index.ts",
988
- "default": "./src/core/index.ts"
989
- },
990
- "./crypto": {
991
- "types": "./src/crypto/index.ts",
992
- "react-native": "./src/crypto/index.browser.ts",
993
- "browser": "./src/crypto/index.browser.ts",
994
- "import": "./src/crypto/index.ts",
995
- "default": "./src/crypto/index.ts"
996
- },
997
- "./datetime": {
998
- "types": "./src/datetime/index.ts",
999
- "import": "./src/datetime/index.ts",
1000
- "default": "./src/datetime/index.ts"
1001
- },
1002
- "./email/brevo": {
1003
- "types": "./src/email/brevo/index.ts",
1004
- "import": "./src/email/brevo/index.ts",
1005
- "default": "./src/email/brevo/index.ts"
1006
- },
1007
- "./email": {
1008
- "types": "./src/email/core/index.ts",
1009
- "workerd": "./src/email/core/index.workerd.ts",
1010
- "import": "./src/email/core/index.ts",
1011
- "default": "./src/email/core/index.ts"
1012
- },
1013
- "./email/smtp": {
1014
- "types": "./src/email/smtp/index.ts",
1015
- "import": "./src/email/smtp/index.ts",
1016
- "default": "./src/email/smtp/index.ts"
1017
- },
1018
- "./fake": {
1019
- "types": "./src/fake/index.ts",
1020
- "import": "./src/fake/index.ts",
1021
- "default": "./src/fake/index.ts"
1022
- },
1023
- "./lock": {
1024
- "types": "./src/lock/core/index.ts",
1025
- "import": "./src/lock/core/index.ts",
1026
- "default": "./src/lock/core/index.ts"
1027
- },
1028
- "./lock/redis": {
1029
- "types": "./src/lock/redis/index.ts",
1030
- "import": "./src/lock/redis/index.ts",
1031
- "default": "./src/lock/redis/index.ts"
1032
- },
1033
- "./logger": {
1034
- "types": "./src/logger/index.ts",
1035
- "import": "./src/logger/index.ts",
1036
- "default": "./src/logger/index.ts"
1037
- },
1038
- "./mcp": {
1039
- "types": "./src/mcp/index.ts",
1040
- "import": "./src/mcp/index.ts",
1041
- "default": "./src/mcp/index.ts"
1042
- },
1043
- "./orm": {
1044
- "types": "./src/orm/core/index.ts",
1045
- "react-native": "./src/orm/core/index.browser.ts",
1046
- "browser": "./src/orm/core/index.browser.ts",
1047
- "bun": "./src/orm/core/index.bun.ts",
1048
- "import": "./src/orm/core/index.ts",
1049
- "default": "./src/orm/core/index.ts"
1050
- },
1051
- "./orm/postgres": {
1052
- "types": "./src/orm/postgres/index.ts",
1053
- "bun": "./src/orm/postgres/index.bun.ts",
1054
- "import": "./src/orm/postgres/index.ts",
1055
- "default": "./src/orm/postgres/index.ts"
1056
- },
1057
- "./queue": {
1058
- "types": "./src/queue/core/index.ts",
1059
- "workerd": "./src/queue/core/index.workerd.ts",
1060
- "import": "./src/queue/core/index.ts",
1061
- "default": "./src/queue/core/index.ts"
1062
- },
1063
- "./queue/redis": {
1064
- "types": "./src/queue/redis/index.ts",
1065
- "import": "./src/queue/redis/index.ts",
1066
- "default": "./src/queue/redis/index.ts"
1067
- },
1068
- "./react/auth": {
1069
- "types": "./src/react/auth/index.ts",
1070
- "react-native": "./src/react/auth/index.browser.ts",
1071
- "browser": "./src/react/auth/index.browser.ts",
1072
- "import": "./src/react/auth/index.ts",
1073
- "default": "./src/react/auth/index.ts"
1074
- },
1075
- "./react": {
1076
- "types": "./src/react/core/index.ts",
1077
- "import": "./src/react/core/index.ts",
1078
- "default": "./src/react/core/index.ts"
1079
- },
1080
- "./react/form": {
1081
- "types": "./src/react/form/index.ts",
1082
- "import": "./src/react/form/index.ts",
1083
- "default": "./src/react/form/index.ts"
1084
- },
1085
- "./react/head": {
1086
- "types": "./src/react/head/index.ts",
1087
- "react-native": "./src/react/head/index.browser.ts",
1088
- "browser": "./src/react/head/index.browser.ts",
1089
- "import": "./src/react/head/index.ts",
1090
- "default": "./src/react/head/index.ts"
1091
- },
1092
- "./react/i18n": {
1093
- "types": "./src/react/i18n/index.ts",
1094
- "import": "./src/react/i18n/index.ts",
1095
- "default": "./src/react/i18n/index.ts"
1096
- },
1097
- "./react/intro": {
1098
- "types": "./src/react/intro/index.ts",
1099
- "import": "./src/react/intro/index.ts",
1100
- "default": "./src/react/intro/index.ts"
1101
- },
1102
- "./react/router": {
1103
- "types": "./src/react/router/index.ts",
1104
- "react-native": "./src/react/router/index.browser.ts",
1105
- "browser": "./src/react/router/index.browser.ts",
1106
- "import": "./src/react/router/index.ts",
1107
- "default": "./src/react/router/index.ts"
1108
- },
1109
- "./react/testing": {
1110
- "types": "./src/react/testing/index.ts",
1111
- "import": "./src/react/testing/index.ts",
1112
- "default": "./src/react/testing/index.ts"
1113
- },
1114
- "./react/ui": {
1115
- "types": "./src/react/ui/index.ts",
1116
- "import": "./src/react/ui/index.ts",
1117
- "default": "./src/react/ui/index.ts"
1118
- },
1119
- "./react/websocket": {
1120
- "types": "./src/react/websocket/index.ts",
1121
- "import": "./src/react/websocket/index.ts",
1122
- "default": "./src/react/websocket/index.ts"
1123
- },
1124
- "./redis": {
1125
- "types": "./src/redis/index.ts",
1126
- "bun": "./src/redis/index.bun.ts",
1127
- "import": "./src/redis/index.ts",
1128
- "default": "./src/redis/index.ts"
1129
- },
1130
- "./retry": {
1131
- "types": "./src/retry/index.ts",
1132
- "import": "./src/retry/index.ts",
1133
- "default": "./src/retry/index.ts"
1134
- },
1135
- "./router": {
1136
- "types": "./src/router/index.ts",
1137
- "import": "./src/router/index.ts",
1138
- "default": "./src/router/index.ts"
1139
- },
1140
- "./scheduler": {
1141
- "types": "./src/scheduler/index.ts",
1142
- "workerd": "./src/scheduler/index.workerd.ts",
1143
- "import": "./src/scheduler/index.ts",
1144
- "default": "./src/scheduler/index.ts"
1145
- },
1146
- "./security": {
1147
- "types": "./src/security/index.ts",
1148
- "react-native": "./src/security/index.browser.ts",
1149
- "browser": "./src/security/index.browser.ts",
1150
- "import": "./src/security/index.ts",
1151
- "default": "./src/security/index.ts"
1152
- },
1153
- "./server/auth": {
1154
- "types": "./src/server/auth/index.ts",
1155
- "react-native": "./src/server/auth/index.browser.ts",
1156
- "browser": "./src/server/auth/index.browser.ts",
1157
- "import": "./src/server/auth/index.ts",
1158
- "default": "./src/server/auth/index.ts"
1159
- },
1160
- "./server/cookies": {
1161
- "types": "./src/server/cookies/index.ts",
1162
- "react-native": "./src/server/cookies/index.browser.ts",
1163
- "browser": "./src/server/cookies/index.browser.ts",
1164
- "import": "./src/server/cookies/index.ts",
1165
- "default": "./src/server/cookies/index.ts"
1166
- },
1167
- "./server": {
1168
- "types": "./src/server/core/index.ts",
1169
- "react-native": "./src/server/core/index.browser.ts",
1170
- "browser": "./src/server/core/index.browser.ts",
1171
- "import": "./src/server/core/index.ts",
1172
- "default": "./src/server/core/index.ts"
1173
- },
1174
- "./server/cors": {
1175
- "types": "./src/server/cors/index.ts",
1176
- "import": "./src/server/cors/index.ts",
1177
- "default": "./src/server/cors/index.ts"
1178
- },
1179
- "./server/etag": {
1180
- "types": "./src/server/etag/index.ts",
1181
- "import": "./src/server/etag/index.ts",
1182
- "default": "./src/server/etag/index.ts"
1183
- },
1184
- "./server/health": {
1185
- "types": "./src/server/health/index.ts",
1186
- "import": "./src/server/health/index.ts",
1187
- "default": "./src/server/health/index.ts"
1188
- },
1189
- "./server/links": {
1190
- "types": "./src/server/links/index.ts",
1191
- "react-native": "./src/server/links/index.browser.ts",
1192
- "browser": "./src/server/links/index.browser.ts",
1193
- "import": "./src/server/links/index.ts",
1194
- "default": "./src/server/links/index.ts"
1195
- },
1196
- "./server/metrics": {
1197
- "types": "./src/server/metrics/index.ts",
1198
- "import": "./src/server/metrics/index.ts",
1199
- "default": "./src/server/metrics/index.ts"
1200
- },
1201
- "./server/proxy": {
1202
- "types": "./src/server/proxy/index.ts",
1203
- "import": "./src/server/proxy/index.ts",
1204
- "default": "./src/server/proxy/index.ts"
1205
- },
1206
- "./server/rate-limit": {
1207
- "types": "./src/server/rate-limit/index.ts",
1208
- "import": "./src/server/rate-limit/index.ts",
1209
- "default": "./src/server/rate-limit/index.ts"
1210
- },
1211
- "./server/static": {
1212
- "types": "./src/server/static/index.ts",
1213
- "import": "./src/server/static/index.ts",
1214
- "default": "./src/server/static/index.ts"
1215
- },
1216
- "./server/swagger": {
1217
- "types": "./src/server/swagger/index.ts",
1218
- "import": "./src/server/swagger/index.ts",
1219
- "default": "./src/server/swagger/index.ts"
1220
- },
1221
- "./sms": {
1222
- "types": "./src/sms/index.ts",
1223
- "import": "./src/sms/index.ts",
1224
- "default": "./src/sms/index.ts"
1225
- },
1226
- "./system": {
1227
- "types": "./src/system/index.ts",
1228
- "react-native": "./src/system/index.browser.ts",
1229
- "workerd": "./src/system/index.workerd.ts",
1230
- "browser": "./src/system/index.browser.ts",
1231
- "import": "./src/system/index.ts",
1232
- "default": "./src/system/index.ts"
1233
- },
1234
- "./topic": {
1235
- "types": "./src/topic/core/index.ts",
1236
- "import": "./src/topic/core/index.ts",
1237
- "default": "./src/topic/core/index.ts"
1238
- },
1239
- "./topic/redis": {
1240
- "types": "./src/topic/redis/index.ts",
1241
- "import": "./src/topic/redis/index.ts",
1242
- "default": "./src/topic/redis/index.ts"
1243
- },
1244
- "./websocket": {
1245
- "types": "./src/websocket/index.ts",
1246
- "react-native": "./src/websocket/index.browser.ts",
1247
- "browser": "./src/websocket/index.browser.ts",
1248
- "import": "./src/websocket/index.ts",
1249
- "default": "./src/websocket/index.ts"
1250
- },
1251
- "./tsconfig.base": "./tsconfig.base.json",
1252
- "./package.json": "./package.json"
1253
- }
1254
- };
1255
- const version = version$1;
761
+ const alephaPackageJson = pkg;
762
+ const version = pkg.version;
1256
763
  //#endregion
1257
764
  //#region ../../src/cli/core/services/PackageManagerUtils.ts
1258
765
  /**
@@ -1543,8 +1050,8 @@ var PackageManagerUtils = class {
1543
1050
  };
1544
1051
  //#endregion
1545
1052
  //#region ../../src/cli/core/templates/agentMd.ts
1546
- const agentMd = (options) => {
1547
- return `${options.type === "claude" ? `# CLAUDE.md` : `# AGENTS.md`}
1053
+ const agentMd = () => {
1054
+ return `# AGENTS.md
1548
1055
 
1549
1056
  This is an **Alepha** project.
1550
1057
 
@@ -1919,7 +1426,7 @@ run(alepha);
1919
1426
  const saasAdminLayoutTsx = () => `import { AppShell } from "@/components/app-shell";
1920
1427
  import { Toaster } from "@/components/ui/sonner";
1921
1428
  import { TooltipProvider } from "@/components/ui/tooltip";
1922
- import { ConfirmProvider } from "@/components/use-confirm";
1429
+ import { DialogProvider } from "@/components/use-dialog";
1923
1430
  import { NestedView, useRouterState } from "alepha/react/router";
1924
1431
  import { ShieldCheck, Users } from "lucide-react";
1925
1432
 
@@ -1947,7 +1454,7 @@ const AdminLayout = () => {
1947
1454
 
1948
1455
  return (
1949
1456
  <TooltipProvider>
1950
- <ConfirmProvider>
1457
+ <DialogProvider>
1951
1458
  <AppShell
1952
1459
  brand={
1953
1460
  <a
@@ -1976,7 +1483,7 @@ const AdminLayout = () => {
1976
1483
  <NestedView />
1977
1484
  </AppShell>
1978
1485
  <Toaster />
1979
- </ConfirmProvider>
1486
+ </DialogProvider>
1980
1487
  </TooltipProvider>
1981
1488
  );
1982
1489
  };
@@ -2382,10 +1889,7 @@ var ProjectScaffolder = class {
2382
1889
  force,
2383
1890
  checkWorkspace
2384
1891
  }));
2385
- if (opts.agentMd) tasks.push(this.ensureAgentMd(root, {
2386
- ...opts.agentMd,
2387
- force
2388
- }));
1892
+ if (opts.agentMd) tasks.push(this.ensureAgentMd(root, { force }));
2389
1893
  await Promise.all(tasks);
2390
1894
  }
2391
1895
  async ensureTsConfig(root, opts = {}) {
@@ -2417,9 +1921,13 @@ var ProjectScaffolder = class {
2417
1921
  await this.ensureFile(root, ".gitignore", gitignore(), opts.force);
2418
1922
  return true;
2419
1923
  }
2420
- async ensureAgentMd(root, options) {
2421
- const filename = options.type === "claude" ? "CLAUDE.md" : "AGENTS.md";
2422
- await this.ensureFile(root, filename, agentMd(options), options.force);
1924
+ /**
1925
+ * Ensure AGENTS.md (cross-tool standard, canonical source) exists, with a
1926
+ * CLAUDE.md stub that imports it via Claude Code's `@` syntax. Single
1927
+ * source of truth, cross-platform, no symlink needed.
1928
+ */
1929
+ async ensureAgentMd(root, options = {}) {
1930
+ await Promise.all([this.ensureFile(root, "AGENTS.md", agentMd(), options.force), this.ensureFile(root, "CLAUDE.md", "@AGENTS.md\n", options.force)]);
2423
1931
  }
2424
1932
  /**
2425
1933
  * Ensure alepha.config.ts exists with documented options.
@@ -2556,8 +2064,7 @@ var ProjectScaffolder = class {
2556
2064
  if ((await this.fs.ls(root)).filter((f) => f !== "package.json").length > 0) throw new AlephaError(`Target directory is not empty (${root}). Use --force to overwrite existing files.`);
2557
2065
  }
2558
2066
  const workspace = await this.pm.getWorkspaceContext(root);
2559
- let agentType = false;
2560
- if (!workspace.isPackage) agentType = await this.utils.isInstalledAsync("claude") ? "claude" : "agents";
2067
+ const writeAgentMd = !workspace.isPackage;
2561
2068
  const isExpo = await this.pm.hasExpo(root);
2562
2069
  const force = !!flags.force;
2563
2070
  await run({
@@ -2572,7 +2079,7 @@ var ProjectScaffolder = class {
2572
2079
  tsconfigJson: f.shadcn ? "local" : !workspace.config.tsconfigJson,
2573
2080
  biomeJson: true,
2574
2081
  editorconfig: !workspace.config.editorconfig,
2575
- agentMd: agentType ? { type: agentType } : false
2082
+ agentMd: writeAgentMd
2576
2083
  });
2577
2084
  await this.ensureAlephaConfig(root, { force });
2578
2085
  await this.ensureMainServerTs(root, {
@@ -2865,6 +2372,10 @@ var BuildCloudflareTask = class BuildCloudflareTask extends BuildTask {
2865
2372
  directory: "./public",
2866
2373
  binding: "ASSETS"
2867
2374
  };
2375
+ wrangler.observability ??= {
2376
+ enabled: true,
2377
+ head_sampling_rate: 1
2378
+ };
2868
2379
  this.enhanceDomain(wrangler);
2869
2380
  this.enhanceCron(ctx, wrangler);
2870
2381
  this.enhanceDatabase(wrangler);