alepha 0.15.1 → 0.15.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.
- package/README.md +68 -80
- package/dist/api/audits/index.d.ts +10 -33
- package/dist/api/audits/index.d.ts.map +1 -1
- package/dist/api/audits/index.js +10 -33
- package/dist/api/audits/index.js.map +1 -1
- package/dist/api/files/index.d.ts +10 -3
- package/dist/api/files/index.d.ts.map +1 -1
- package/dist/api/files/index.js +10 -3
- package/dist/api/files/index.js.map +1 -1
- package/dist/api/jobs/index.d.ts +162 -155
- package/dist/api/jobs/index.d.ts.map +1 -1
- package/dist/api/jobs/index.js +10 -3
- package/dist/api/jobs/index.js.map +1 -1
- package/dist/api/keys/index.d.ts +413 -0
- package/dist/api/keys/index.d.ts.map +1 -0
- package/dist/api/keys/index.js +476 -0
- package/dist/api/keys/index.js.map +1 -0
- package/dist/api/notifications/index.d.ts +10 -4
- package/dist/api/notifications/index.d.ts.map +1 -1
- package/dist/api/notifications/index.js +10 -4
- package/dist/api/notifications/index.js.map +1 -1
- package/dist/api/parameters/index.d.ts +43 -50
- package/dist/api/parameters/index.d.ts.map +1 -1
- package/dist/api/parameters/index.js +30 -37
- package/dist/api/parameters/index.js.map +1 -1
- package/dist/api/users/index.d.ts +1081 -760
- package/dist/api/users/index.d.ts.map +1 -1
- package/dist/api/users/index.js +2539 -218
- package/dist/api/users/index.js.map +1 -1
- package/dist/api/verifications/index.d.ts +138 -132
- package/dist/api/verifications/index.d.ts.map +1 -1
- package/dist/api/verifications/index.js +12 -4
- package/dist/api/verifications/index.js.map +1 -1
- package/dist/batch/index.d.ts +20 -40
- package/dist/batch/index.d.ts.map +1 -1
- package/dist/batch/index.js +31 -44
- package/dist/batch/index.js.map +1 -1
- package/dist/bucket/index.d.ts +440 -8
- package/dist/bucket/index.d.ts.map +1 -1
- package/dist/bucket/index.js +1861 -12
- package/dist/bucket/index.js.map +1 -1
- package/dist/cache/core/index.d.ts +179 -7
- package/dist/cache/core/index.d.ts.map +1 -1
- package/dist/cache/core/index.js +213 -7
- package/dist/cache/core/index.js.map +1 -1
- package/dist/cache/redis/index.d.ts +1 -0
- package/dist/cache/redis/index.d.ts.map +1 -1
- package/dist/cache/redis/index.js +4 -0
- package/dist/cache/redis/index.js.map +1 -1
- package/dist/cli/index.d.ts +638 -5645
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2550 -368
- package/dist/cli/index.js.map +1 -1
- package/dist/command/index.d.ts +203 -45
- package/dist/command/index.d.ts.map +1 -1
- package/dist/command/index.js +2060 -71
- package/dist/command/index.js.map +1 -1
- package/dist/core/index.browser.js +70 -40
- package/dist/core/index.browser.js.map +1 -1
- package/dist/core/index.d.ts +34 -13
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +90 -40
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.native.js +70 -40
- package/dist/core/index.native.js.map +1 -1
- package/dist/datetime/index.d.ts +15 -0
- package/dist/datetime/index.d.ts.map +1 -1
- package/dist/datetime/index.js +15 -0
- package/dist/datetime/index.js.map +1 -1
- package/dist/email/index.d.ts +323 -20
- package/dist/email/index.d.ts.map +1 -1
- package/dist/email/index.js +1857 -7
- package/dist/email/index.js.map +1 -1
- package/dist/fake/index.d.ts +90 -8
- package/dist/fake/index.d.ts.map +1 -1
- package/dist/fake/index.js +91 -20
- package/dist/fake/index.js.map +1 -1
- package/dist/lock/core/index.d.ts +11 -4
- package/dist/lock/core/index.d.ts.map +1 -1
- package/dist/lock/core/index.js +11 -4
- package/dist/lock/core/index.js.map +1 -1
- package/dist/logger/index.d.ts +17 -66
- package/dist/logger/index.d.ts.map +1 -1
- package/dist/logger/index.js +14 -63
- package/dist/logger/index.js.map +1 -1
- package/dist/mcp/index.d.ts +10 -30
- package/dist/mcp/index.d.ts.map +1 -1
- package/dist/mcp/index.js +12 -35
- package/dist/mcp/index.js.map +1 -1
- package/dist/orm/index.browser.js +3 -3
- package/dist/orm/index.browser.js.map +1 -1
- package/dist/orm/index.bun.js +39 -20
- package/dist/orm/index.bun.js.map +1 -1
- package/dist/orm/index.d.ts +517 -540
- package/dist/orm/index.d.ts.map +1 -1
- package/dist/orm/index.js +58 -71
- package/dist/orm/index.js.map +1 -1
- package/dist/queue/core/index.d.ts +18 -10
- package/dist/queue/core/index.d.ts.map +1 -1
- package/dist/queue/core/index.js +14 -6
- package/dist/queue/core/index.js.map +1 -1
- package/dist/react/auth/index.browser.js +108 -0
- package/dist/react/auth/index.browser.js.map +1 -0
- package/dist/react/auth/index.d.ts +100 -0
- package/dist/react/auth/index.d.ts.map +1 -0
- package/dist/react/auth/index.js +145 -0
- package/dist/react/auth/index.js.map +1 -0
- package/dist/react/core/index.d.ts +469 -0
- package/dist/react/core/index.d.ts.map +1 -0
- package/dist/react/core/index.js +464 -0
- package/dist/react/core/index.js.map +1 -0
- package/dist/react/form/index.d.ts +232 -0
- package/dist/react/form/index.d.ts.map +1 -0
- package/dist/react/form/index.js +432 -0
- package/dist/react/form/index.js.map +1 -0
- package/dist/react/head/index.browser.js +423 -0
- package/dist/react/head/index.browser.js.map +1 -0
- package/dist/react/head/index.d.ts +288 -0
- package/dist/react/head/index.d.ts.map +1 -0
- package/dist/react/head/index.js +465 -0
- package/dist/react/head/index.js.map +1 -0
- package/dist/react/i18n/index.d.ts +175 -0
- package/dist/react/i18n/index.d.ts.map +1 -0
- package/dist/react/i18n/index.js +224 -0
- package/dist/react/i18n/index.js.map +1 -0
- package/dist/react/router/index.browser.js +1974 -0
- package/dist/react/router/index.browser.js.map +1 -0
- package/dist/react/router/index.d.ts +1956 -0
- package/dist/react/router/index.d.ts.map +1 -0
- package/dist/react/router/index.js +4722 -0
- package/dist/react/router/index.js.map +1 -0
- package/dist/react/websocket/index.d.ts +117 -0
- package/dist/react/websocket/index.d.ts.map +1 -0
- package/dist/react/websocket/index.js +107 -0
- package/dist/react/websocket/index.js.map +1 -0
- package/dist/redis/index.bun.js +4 -0
- package/dist/redis/index.bun.js.map +1 -1
- package/dist/redis/index.d.ts +41 -44
- package/dist/redis/index.d.ts.map +1 -1
- package/dist/redis/index.js +16 -25
- package/dist/redis/index.js.map +1 -1
- package/dist/retry/index.d.ts +11 -2
- package/dist/retry/index.d.ts.map +1 -1
- package/dist/retry/index.js +11 -2
- package/dist/retry/index.js.map +1 -1
- package/dist/scheduler/index.d.ts +11 -2
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +11 -2
- package/dist/scheduler/index.js.map +1 -1
- package/dist/security/index.d.ts +140 -49
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/index.js +164 -32
- package/dist/security/index.js.map +1 -1
- package/dist/server/auth/index.d.ts +12 -7
- package/dist/server/auth/index.d.ts.map +1 -1
- package/dist/server/auth/index.js +12 -7
- package/dist/server/auth/index.js.map +1 -1
- package/dist/server/cache/index.d.ts +7 -22
- package/dist/server/cache/index.d.ts.map +1 -1
- package/dist/server/cache/index.js +7 -22
- package/dist/server/cache/index.js.map +1 -1
- package/dist/server/compress/index.d.ts +10 -2
- package/dist/server/compress/index.d.ts.map +1 -1
- package/dist/server/compress/index.js +10 -2
- package/dist/server/compress/index.js.map +1 -1
- package/dist/server/cookies/index.d.ts +40 -16
- package/dist/server/cookies/index.d.ts.map +1 -1
- package/dist/server/cookies/index.js +7 -5
- package/dist/server/cookies/index.js.map +1 -1
- package/dist/server/core/index.d.ts +124 -23
- package/dist/server/core/index.d.ts.map +1 -1
- package/dist/server/core/index.js +231 -14
- package/dist/server/core/index.js.map +1 -1
- package/dist/server/cors/index.d.ts +13 -23
- package/dist/server/cors/index.d.ts.map +1 -1
- package/dist/server/cors/index.js +7 -21
- package/dist/server/cors/index.js.map +1 -1
- package/dist/server/health/index.d.ts +8 -2
- package/dist/server/health/index.d.ts.map +1 -1
- package/dist/server/health/index.js +8 -2
- package/dist/server/health/index.js.map +1 -1
- package/dist/server/helmet/index.d.ts +11 -3
- package/dist/server/helmet/index.d.ts.map +1 -1
- package/dist/server/helmet/index.js +11 -3
- package/dist/server/helmet/index.js.map +1 -1
- package/dist/server/links/index.d.ts +11 -6
- package/dist/server/links/index.d.ts.map +1 -1
- package/dist/server/links/index.js +11 -6
- package/dist/server/links/index.js.map +1 -1
- package/dist/server/metrics/index.d.ts +10 -3
- package/dist/server/metrics/index.d.ts.map +1 -1
- package/dist/server/metrics/index.js +10 -3
- package/dist/server/metrics/index.js.map +1 -1
- package/dist/server/multipart/index.d.ts +9 -3
- package/dist/server/multipart/index.d.ts.map +1 -1
- package/dist/server/multipart/index.js +9 -3
- package/dist/server/multipart/index.js.map +1 -1
- package/dist/server/proxy/index.d.ts +8 -2
- package/dist/server/proxy/index.d.ts.map +1 -1
- package/dist/server/proxy/index.js +8 -2
- package/dist/server/proxy/index.js.map +1 -1
- package/dist/server/rate-limit/index.d.ts +30 -35
- package/dist/server/rate-limit/index.d.ts.map +1 -1
- package/dist/server/rate-limit/index.js +18 -55
- package/dist/server/rate-limit/index.js.map +1 -1
- package/dist/server/static/index.d.ts +137 -4
- package/dist/server/static/index.d.ts.map +1 -1
- package/dist/server/static/index.js +1853 -5
- package/dist/server/static/index.js.map +1 -1
- package/dist/server/swagger/index.d.ts +309 -6
- package/dist/server/swagger/index.d.ts.map +1 -1
- package/dist/server/swagger/index.js +1854 -6
- package/dist/server/swagger/index.js.map +1 -1
- package/dist/sms/index.d.ts +309 -7
- package/dist/sms/index.d.ts.map +1 -1
- package/dist/sms/index.js +1856 -7
- package/dist/sms/index.js.map +1 -1
- package/dist/system/index.browser.js +1218 -0
- package/dist/system/index.browser.js.map +1 -0
- package/dist/{file → system}/index.d.ts +343 -16
- package/dist/system/index.d.ts.map +1 -0
- package/dist/{file → system}/index.js +419 -22
- package/dist/system/index.js.map +1 -0
- package/dist/thread/index.d.ts +11 -2
- package/dist/thread/index.d.ts.map +1 -1
- package/dist/thread/index.js +11 -2
- package/dist/thread/index.js.map +1 -1
- package/dist/topic/core/index.d.ts +12 -5
- package/dist/topic/core/index.d.ts.map +1 -1
- package/dist/topic/core/index.js +12 -5
- package/dist/topic/core/index.js.map +1 -1
- package/dist/vite/index.d.ts +5 -6272
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +23 -10
- package/dist/vite/index.js.map +1 -1
- package/dist/websocket/index.d.ts +12 -8
- package/dist/websocket/index.d.ts.map +1 -1
- package/dist/websocket/index.js +12 -8
- package/dist/websocket/index.js.map +1 -1
- package/package.json +82 -11
- package/src/api/audits/index.ts +10 -33
- package/src/api/files/__tests__/$bucket.spec.ts +1 -1
- package/src/api/files/controllers/AdminFileStatsController.spec.ts +1 -1
- package/src/api/files/controllers/FileController.spec.ts +1 -1
- package/src/api/files/index.ts +10 -3
- package/src/api/files/jobs/FileJobs.spec.ts +1 -1
- package/src/api/files/services/FileService.spec.ts +1 -1
- package/src/api/jobs/index.ts +10 -3
- package/src/api/keys/controllers/AdminApiKeyController.ts +75 -0
- package/src/api/keys/controllers/ApiKeyController.ts +103 -0
- package/src/api/keys/entities/apiKeyEntity.ts +41 -0
- package/src/api/keys/index.ts +49 -0
- package/src/api/keys/schemas/adminApiKeyQuerySchema.ts +7 -0
- package/src/api/keys/schemas/adminApiKeyResourceSchema.ts +17 -0
- package/src/api/keys/schemas/createApiKeyBodySchema.ts +7 -0
- package/src/api/keys/schemas/createApiKeyResponseSchema.ts +11 -0
- package/src/api/keys/schemas/listApiKeyResponseSchema.ts +15 -0
- package/src/api/keys/schemas/revokeApiKeyParamsSchema.ts +5 -0
- package/src/api/keys/schemas/revokeApiKeyResponseSchema.ts +5 -0
- package/src/api/keys/services/ApiKeyService.spec.ts +553 -0
- package/src/api/keys/services/ApiKeyService.ts +306 -0
- package/src/api/logs/TODO.md +55 -0
- package/src/api/notifications/index.ts +10 -4
- package/src/api/parameters/index.ts +9 -30
- package/src/api/parameters/primitives/$config.ts +12 -4
- package/src/api/parameters/services/ConfigStore.ts +9 -3
- package/src/api/users/__tests__/ApiKeys-integration.spec.ts +1035 -0
- package/src/api/users/__tests__/ApiKeys.spec.ts +401 -0
- package/src/api/users/index.ts +14 -3
- package/src/api/users/primitives/$realm.ts +33 -5
- package/src/api/users/providers/RealmProvider.ts +1 -12
- package/src/api/users/services/SessionService.ts +1 -1
- package/src/api/verifications/controllers/VerificationController.ts +2 -0
- package/src/api/verifications/index.ts +10 -4
- package/src/batch/index.ts +9 -36
- package/src/batch/primitives/$batch.ts +0 -8
- package/src/batch/providers/BatchProvider.ts +29 -2
- package/src/bucket/__tests__/shared.ts +1 -1
- package/src/bucket/index.ts +13 -6
- package/src/bucket/primitives/$bucket.ts +1 -1
- package/src/bucket/providers/LocalFileStorageProvider.ts +1 -1
- package/src/bucket/providers/MemoryFileStorageProvider.ts +1 -1
- package/src/cache/core/__tests__/shared.ts +30 -0
- package/src/cache/core/index.ts +11 -6
- package/src/cache/core/primitives/$cache.spec.ts +5 -0
- package/src/cache/core/providers/CacheProvider.ts +17 -0
- package/src/cache/core/providers/MemoryCacheProvider.ts +300 -1
- package/src/cache/redis/__tests__/cache-redis.spec.ts +5 -0
- package/src/cache/redis/providers/RedisCacheProvider.ts +9 -0
- package/src/cli/apps/AlephaCli.ts +1 -14
- package/src/cli/apps/AlephaPackageBuilderCli.ts +10 -1
- package/src/cli/atoms/buildOptions.ts +99 -9
- package/src/cli/commands/build.ts +150 -37
- package/src/cli/commands/db.ts +22 -18
- package/src/cli/commands/deploy.ts +1 -1
- package/src/cli/commands/dev.ts +1 -20
- package/src/cli/commands/gen/env.ts +5 -2
- package/src/cli/commands/gen/openapi.ts +5 -2
- package/src/cli/commands/init.spec.ts +588 -0
- package/src/cli/commands/init.ts +115 -58
- package/src/cli/commands/lint.ts +7 -1
- package/src/cli/commands/typecheck.ts +11 -0
- package/src/cli/providers/AppEntryProvider.ts +1 -1
- package/src/cli/providers/ViteBuildProvider.ts +8 -50
- package/src/cli/providers/ViteDevServerProvider.ts +35 -16
- package/src/cli/services/AlephaCliUtils.ts +52 -121
- package/src/cli/services/PackageManagerUtils.ts +129 -11
- package/src/cli/services/ProjectScaffolder.spec.ts +97 -0
- package/src/cli/services/ProjectScaffolder.ts +148 -81
- package/src/cli/services/ViteUtils.ts +82 -0
- package/src/cli/{assets/claudeMd.ts → templates/agentMd.ts} +37 -24
- package/src/cli/templates/apiAppSecurityTs.ts +11 -0
- package/src/cli/templates/apiIndexTs.ts +30 -0
- package/src/cli/templates/gitignore.ts +39 -0
- package/src/cli/{assets → templates}/mainCss.ts +11 -2
- package/src/cli/templates/mainServerTs.ts +33 -0
- package/src/cli/templates/webAppRouterTs.ts +74 -0
- package/src/cli/templates/webHelloComponentTsx.ts +30 -0
- package/src/command/helpers/Runner.spec.ts +139 -0
- package/src/command/helpers/Runner.ts +7 -22
- package/src/command/index.ts +12 -4
- package/src/command/providers/CliProvider.spec.ts +1392 -0
- package/src/command/providers/CliProvider.ts +320 -47
- package/src/core/Alepha.ts +34 -27
- package/src/core/__tests__/Alepha-start.spec.ts +4 -4
- package/src/core/helpers/jsonSchemaToTypeBox.spec.ts +771 -0
- package/src/core/helpers/jsonSchemaToTypeBox.ts +62 -10
- package/src/core/index.shared.ts +1 -0
- package/src/core/index.ts +20 -0
- package/src/core/providers/EventManager.spec.ts +0 -71
- package/src/core/providers/EventManager.ts +3 -15
- package/src/core/providers/Json.ts +2 -14
- package/src/datetime/index.ts +15 -0
- package/src/email/index.ts +10 -5
- package/src/email/providers/LocalEmailProvider.spec.ts +1 -1
- package/src/email/providers/LocalEmailProvider.ts +1 -1
- package/src/fake/__tests__/keyName.example.ts +1 -1
- package/src/fake/__tests__/keyName.spec.ts +5 -5
- package/src/fake/index.ts +9 -6
- package/src/fake/providers/FakeProvider.spec.ts +258 -40
- package/src/fake/providers/FakeProvider.ts +133 -19
- package/src/lock/core/index.ts +11 -4
- package/src/logger/index.ts +17 -66
- package/src/mcp/index.ts +10 -27
- package/src/mcp/transports/SseMcpTransport.ts +0 -11
- package/src/orm/__tests__/PostgresProvider.spec.ts +2 -2
- package/src/orm/index.browser.ts +2 -2
- package/src/orm/index.bun.ts +5 -3
- package/src/orm/index.ts +23 -53
- package/src/orm/providers/drivers/BunSqliteProvider.ts +5 -1
- package/src/orm/providers/drivers/CloudflareD1Provider.ts +57 -30
- package/src/orm/providers/drivers/DatabaseProvider.ts +9 -1
- package/src/orm/providers/drivers/NodeSqliteProvider.ts +4 -1
- package/src/orm/services/Repository.ts +7 -3
- package/src/queue/core/index.ts +14 -6
- package/src/react/auth/__tests__/$auth.spec.ts +202 -0
- package/src/react/auth/hooks/useAuth.ts +32 -0
- package/src/react/auth/index.browser.ts +13 -0
- package/src/react/auth/index.shared.ts +2 -0
- package/src/react/auth/index.ts +48 -0
- package/src/react/auth/providers/ReactAuthProvider.ts +16 -0
- package/src/react/auth/services/ReactAuth.ts +135 -0
- package/src/react/core/__tests__/Router.spec.tsx +169 -0
- package/src/react/core/components/ClientOnly.tsx +49 -0
- package/src/react/core/components/ErrorBoundary.tsx +73 -0
- package/src/react/core/contexts/AlephaContext.ts +7 -0
- package/src/react/core/contexts/AlephaProvider.tsx +42 -0
- package/src/react/core/hooks/useAction.browser.spec.tsx +569 -0
- package/src/react/core/hooks/useAction.ts +480 -0
- package/src/react/core/hooks/useAlepha.ts +26 -0
- package/src/react/core/hooks/useClient.ts +17 -0
- package/src/react/core/hooks/useEvents.ts +51 -0
- package/src/react/core/hooks/useInject.ts +12 -0
- package/src/react/core/hooks/useStore.ts +52 -0
- package/src/react/core/index.ts +90 -0
- package/src/react/form/components/FormState.tsx +17 -0
- package/src/react/form/errors/FormValidationError.ts +18 -0
- package/src/react/form/hooks/useForm.browser.spec.tsx +366 -0
- package/src/react/form/hooks/useForm.ts +47 -0
- package/src/react/form/hooks/useFormState.ts +130 -0
- package/src/react/form/index.ts +44 -0
- package/src/react/form/services/FormModel.ts +614 -0
- package/src/react/head/helpers/SeoExpander.spec.ts +203 -0
- package/src/react/head/helpers/SeoExpander.ts +142 -0
- package/src/react/head/hooks/useHead.spec.tsx +288 -0
- package/src/react/head/hooks/useHead.ts +62 -0
- package/src/react/head/index.browser.ts +26 -0
- package/src/react/head/index.ts +44 -0
- package/src/react/head/interfaces/Head.ts +105 -0
- package/src/react/head/primitives/$head.ts +25 -0
- package/src/react/head/providers/BrowserHeadProvider.browser.spec.ts +196 -0
- package/src/react/head/providers/BrowserHeadProvider.ts +212 -0
- package/src/react/head/providers/HeadProvider.ts +168 -0
- package/src/react/head/providers/ServerHeadProvider.ts +31 -0
- package/src/react/i18n/__tests__/integration.spec.tsx +239 -0
- package/src/react/i18n/components/Localize.spec.tsx +357 -0
- package/src/react/i18n/components/Localize.tsx +35 -0
- package/src/react/i18n/hooks/useI18n.browser.spec.tsx +438 -0
- package/src/react/i18n/hooks/useI18n.ts +18 -0
- package/src/react/i18n/index.ts +41 -0
- package/src/react/i18n/primitives/$dictionary.ts +69 -0
- package/src/react/i18n/providers/I18nProvider.spec.ts +389 -0
- package/src/react/i18n/providers/I18nProvider.ts +278 -0
- package/src/react/router/__tests__/page-head-browser.browser.spec.ts +95 -0
- package/src/react/router/__tests__/page-head.spec.ts +48 -0
- package/src/react/router/__tests__/seo-head.spec.ts +125 -0
- package/src/react/router/atoms/ssrManifestAtom.ts +58 -0
- package/src/react/router/components/ErrorViewer.tsx +872 -0
- package/src/react/router/components/Link.tsx +23 -0
- package/src/react/router/components/NestedView.tsx +223 -0
- package/src/react/router/components/NotFound.tsx +30 -0
- package/src/react/router/constants/PAGE_PRELOAD_KEY.ts +6 -0
- package/src/react/router/contexts/RouterLayerContext.ts +12 -0
- package/src/react/router/errors/Redirection.ts +28 -0
- package/src/react/router/hooks/useActive.ts +52 -0
- package/src/react/router/hooks/useQueryParams.ts +63 -0
- package/src/react/router/hooks/useRouter.ts +20 -0
- package/src/react/router/hooks/useRouterState.ts +11 -0
- package/src/react/router/index.browser.ts +45 -0
- package/src/react/router/index.shared.ts +19 -0
- package/src/react/router/index.ts +146 -0
- package/src/react/router/primitives/$page.browser.spec.tsx +851 -0
- package/src/react/router/primitives/$page.spec.tsx +676 -0
- package/src/react/router/primitives/$page.ts +489 -0
- package/src/react/router/providers/ReactBrowserProvider.ts +312 -0
- package/src/react/router/providers/ReactBrowserRendererProvider.ts +25 -0
- package/src/react/router/providers/ReactBrowserRouterProvider.ts +168 -0
- package/src/react/router/providers/ReactPageProvider.ts +726 -0
- package/src/react/router/providers/ReactPreloadProvider.spec.ts +142 -0
- package/src/react/router/providers/ReactPreloadProvider.ts +85 -0
- package/src/react/router/providers/ReactServerProvider.spec.tsx +316 -0
- package/src/react/router/providers/ReactServerProvider.ts +487 -0
- package/src/react/router/providers/ReactServerTemplateProvider.spec.ts +210 -0
- package/src/react/router/providers/ReactServerTemplateProvider.ts +542 -0
- package/src/react/router/providers/SSRManifestProvider.ts +334 -0
- package/src/react/router/services/ReactPageServerService.ts +48 -0
- package/src/react/router/services/ReactPageService.ts +27 -0
- package/src/react/router/services/ReactRouter.ts +262 -0
- package/src/react/websocket/hooks/useRoom.tsx +242 -0
- package/src/react/websocket/index.ts +7 -0
- package/src/redis/__tests__/redis.spec.ts +13 -0
- package/src/redis/index.ts +9 -25
- package/src/redis/providers/BunRedisProvider.ts +9 -0
- package/src/redis/providers/NodeRedisProvider.ts +8 -0
- package/src/redis/providers/RedisProvider.ts +16 -0
- package/src/retry/index.ts +11 -2
- package/src/router/index.ts +15 -0
- package/src/scheduler/index.ts +11 -2
- package/src/security/__tests__/BasicAuth.spec.ts +2 -0
- package/src/security/__tests__/ServerSecurityProvider.spec.ts +90 -5
- package/src/security/index.ts +15 -10
- package/src/security/interfaces/IssuerResolver.ts +27 -0
- package/src/security/primitives/$issuer.ts +55 -0
- package/src/security/providers/SecurityProvider.ts +179 -0
- package/src/security/providers/ServerBasicAuthProvider.ts +6 -2
- package/src/security/providers/ServerSecurityProvider.ts +63 -41
- package/src/server/auth/index.ts +12 -7
- package/src/server/cache/index.ts +7 -22
- package/src/server/compress/index.ts +10 -2
- package/src/server/cookies/index.ts +7 -5
- package/src/server/cookies/primitives/$cookie.ts +33 -11
- package/src/server/core/index.ts +16 -6
- package/src/server/core/interfaces/ServerRequest.ts +83 -1
- package/src/server/core/primitives/$action.spec.ts +1 -1
- package/src/server/core/primitives/$action.ts +8 -3
- package/src/server/core/providers/NodeHttpServerProvider.spec.ts +9 -3
- package/src/server/core/providers/NodeHttpServerProvider.ts +9 -3
- package/src/server/core/services/ServerRequestParser.spec.ts +520 -0
- package/src/server/core/services/ServerRequestParser.ts +306 -13
- package/src/server/cors/index.ts +7 -21
- package/src/server/cors/primitives/$cors.ts +6 -2
- package/src/server/health/index.ts +8 -2
- package/src/server/helmet/index.ts +11 -3
- package/src/server/links/index.ts +11 -6
- package/src/server/metrics/index.ts +10 -3
- package/src/server/multipart/index.ts +9 -3
- package/src/server/proxy/index.ts +8 -2
- package/src/server/rate-limit/index.ts +21 -25
- package/src/server/rate-limit/primitives/$rateLimit.ts +6 -2
- package/src/server/rate-limit/providers/ServerRateLimitProvider.spec.ts +38 -14
- package/src/server/rate-limit/providers/ServerRateLimitProvider.ts +22 -56
- package/src/server/static/index.ts +8 -2
- package/src/server/static/providers/ServerStaticProvider.ts +1 -1
- package/src/server/swagger/index.ts +9 -4
- package/src/server/swagger/providers/ServerSwaggerProvider.ts +1 -1
- package/src/sms/index.ts +9 -5
- package/src/sms/providers/LocalSmsProvider.spec.ts +1 -1
- package/src/sms/providers/LocalSmsProvider.ts +1 -1
- package/src/system/index.browser.ts +36 -0
- package/src/system/index.ts +62 -0
- package/src/system/index.workerd.ts +1 -0
- package/src/{file → system}/providers/FileSystemProvider.ts +24 -0
- package/src/{file → system}/providers/MemoryFileSystemProvider.ts +116 -3
- package/src/system/providers/MemoryShellProvider.ts +164 -0
- package/src/{file → system}/providers/NodeFileSystemProvider.spec.ts +2 -2
- package/src/{file → system}/providers/NodeFileSystemProvider.ts +47 -2
- package/src/system/providers/NodeShellProvider.ts +184 -0
- package/src/system/providers/ShellProvider.ts +74 -0
- package/src/{file → system}/services/FileDetector.spec.ts +2 -2
- package/src/thread/index.ts +11 -2
- package/src/topic/core/index.ts +12 -5
- package/src/vite/tasks/buildClient.ts +2 -7
- package/src/vite/tasks/buildServer.ts +19 -13
- package/src/vite/tasks/generateCloudflare.ts +10 -7
- package/src/vite/tasks/generateDocker.ts +4 -0
- package/src/websocket/index.ts +12 -8
- package/dist/file/index.d.ts.map +0 -1
- package/dist/file/index.js.map +0 -1
- package/src/cli/assets/apiIndexTs.ts +0 -16
- package/src/cli/assets/mainServerTs.ts +0 -24
- package/src/cli/assets/webAppRouterTs.ts +0 -16
- package/src/cli/assets/webHelloComponentTsx.ts +0 -20
- package/src/cli/providers/ViteTemplateProvider.ts +0 -27
- package/src/file/index.ts +0 -43
- /package/src/cli/{assets → templates}/apiHelloControllerTs.ts +0 -0
- /package/src/cli/{assets → templates}/biomeJson.ts +0 -0
- /package/src/cli/{assets → templates}/dummySpecTs.ts +0 -0
- /package/src/cli/{assets → templates}/editorconfig.ts +0 -0
- /package/src/cli/{assets → templates}/mainBrowserTs.ts +0 -0
- /package/src/cli/{assets → templates}/tsconfigJson.ts +0 -0
- /package/src/cli/{assets → templates}/webIndexTs.ts +0 -0
- /package/src/{file → system}/errors/FileError.ts +0 -0
- /package/src/{file → system}/services/FileDetector.ts +0 -0
|
@@ -0,0 +1,288 @@
|
|
|
1
|
+
import * as alepha0 from "alepha";
|
|
2
|
+
import { Alepha, KIND, Primitive } from "alepha";
|
|
3
|
+
import * as alepha_logger0 from "alepha/logger";
|
|
4
|
+
|
|
5
|
+
//#region ../../src/react/head/interfaces/Head.d.ts
|
|
6
|
+
/**
|
|
7
|
+
* Complete head configuration combining basic head elements with SEO fields.
|
|
8
|
+
*
|
|
9
|
+
* @example
|
|
10
|
+
* ```ts
|
|
11
|
+
* $head({
|
|
12
|
+
* title: "My App",
|
|
13
|
+
* description: "Build amazing apps",
|
|
14
|
+
* image: "https://example.com/og.png",
|
|
15
|
+
* url: "https://example.com/",
|
|
16
|
+
* siteName: "My App",
|
|
17
|
+
* twitter: { card: "summary_large_image" },
|
|
18
|
+
* })
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
interface Head extends SimpleHead, Seo {}
|
|
22
|
+
/**
|
|
23
|
+
* SEO configuration for automatic meta tag generation.
|
|
24
|
+
* Fields are used for meta description, OpenGraph, and Twitter Card tags.
|
|
25
|
+
*/
|
|
26
|
+
interface Seo {
|
|
27
|
+
/** Page description - used for meta description, og:description, twitter:description */
|
|
28
|
+
description?: string;
|
|
29
|
+
/** Primary image URL - used for og:image and twitter:image */
|
|
30
|
+
image?: string;
|
|
31
|
+
/** Canonical URL - used for og:url and link rel="canonical" */
|
|
32
|
+
url?: string;
|
|
33
|
+
/** Site name - used for og:site_name */
|
|
34
|
+
siteName?: string;
|
|
35
|
+
/** Locale - used for og:locale (e.g., "en_US") */
|
|
36
|
+
locale?: string;
|
|
37
|
+
/** Content type - used for og:type (default: "website") */
|
|
38
|
+
type?: "website" | "article" | "product" | "profile" | string;
|
|
39
|
+
/** Image width in pixels - used for og:image:width */
|
|
40
|
+
imageWidth?: number;
|
|
41
|
+
/** Image height in pixels - used for og:image:height */
|
|
42
|
+
imageHeight?: number;
|
|
43
|
+
/** Image alt text - used for og:image:alt and twitter:image:alt */
|
|
44
|
+
imageAlt?: string;
|
|
45
|
+
/** Twitter-specific overrides */
|
|
46
|
+
twitter?: {
|
|
47
|
+
/** Twitter card type */card?: "summary" | "summary_large_image" | "app" | "player"; /** @username of website */
|
|
48
|
+
site?: string; /** @username of content creator */
|
|
49
|
+
creator?: string; /** Override title for Twitter */
|
|
50
|
+
title?: string; /** Override description for Twitter */
|
|
51
|
+
description?: string; /** Override image for Twitter */
|
|
52
|
+
image?: string;
|
|
53
|
+
};
|
|
54
|
+
/** OpenGraph-specific overrides */
|
|
55
|
+
og?: {
|
|
56
|
+
/** Override title for OpenGraph */title?: string; /** Override description for OpenGraph */
|
|
57
|
+
description?: string; /** Override image for OpenGraph */
|
|
58
|
+
image?: string;
|
|
59
|
+
};
|
|
60
|
+
}
|
|
61
|
+
interface SimpleHead {
|
|
62
|
+
title?: string;
|
|
63
|
+
titleSeparator?: string;
|
|
64
|
+
/** Document charset - defaults to "UTF-8" if not specified */
|
|
65
|
+
charset?: string;
|
|
66
|
+
/** Viewport content - defaults to "width=device-width, initial-scale=1" if not specified */
|
|
67
|
+
viewport?: string;
|
|
68
|
+
htmlAttributes?: Record<string, string>;
|
|
69
|
+
bodyAttributes?: Record<string, string>;
|
|
70
|
+
/** Meta tags - supports both name and property attributes */
|
|
71
|
+
meta?: Array<HeadMeta>;
|
|
72
|
+
/** Link tags (e.g., stylesheets, preload, canonical) */
|
|
73
|
+
link?: Array<{
|
|
74
|
+
rel: string;
|
|
75
|
+
href: string;
|
|
76
|
+
type?: string;
|
|
77
|
+
as?: string;
|
|
78
|
+
crossorigin?: string;
|
|
79
|
+
}>;
|
|
80
|
+
/** Script tags - string for inline code, or object with attributes */
|
|
81
|
+
script?: Array<string | (Record<string, string | boolean | undefined> & {
|
|
82
|
+
/** Inline JavaScript code */content?: string;
|
|
83
|
+
})>;
|
|
84
|
+
}
|
|
85
|
+
interface HeadMeta {
|
|
86
|
+
/** Meta name attribute (e.g., "description", "twitter:card") */
|
|
87
|
+
name?: string;
|
|
88
|
+
/** Meta property attribute (e.g., "og:title", "og:image") */
|
|
89
|
+
property?: string;
|
|
90
|
+
/** Meta content value */
|
|
91
|
+
content: string;
|
|
92
|
+
}
|
|
93
|
+
//#endregion
|
|
94
|
+
//#region ../../src/react/head/helpers/SeoExpander.d.ts
|
|
95
|
+
/**
|
|
96
|
+
* Expands Head configuration into SEO meta tags.
|
|
97
|
+
*
|
|
98
|
+
* Generates:
|
|
99
|
+
* - `<meta name="description">` from head.description
|
|
100
|
+
* - `<meta property="og:*">` OpenGraph tags
|
|
101
|
+
* - `<meta name="twitter:*">` Twitter Card tags
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```ts
|
|
105
|
+
* const helper = new SeoExpander();
|
|
106
|
+
* const { meta, link } = helper.expand({
|
|
107
|
+
* title: "My App",
|
|
108
|
+
* description: "Build amazing apps",
|
|
109
|
+
* image: "https://example.com/og.png",
|
|
110
|
+
* url: "https://example.com/",
|
|
111
|
+
* });
|
|
112
|
+
* ```
|
|
113
|
+
*/
|
|
114
|
+
declare class SeoExpander {
|
|
115
|
+
expand(head: Head): {
|
|
116
|
+
meta: HeadMeta[];
|
|
117
|
+
link: Array<{
|
|
118
|
+
rel: string;
|
|
119
|
+
href: string;
|
|
120
|
+
}>;
|
|
121
|
+
};
|
|
122
|
+
protected expandOpenGraph(head: Head, meta: HeadMeta[]): void;
|
|
123
|
+
protected expandTwitter(head: Head, meta: HeadMeta[]): void;
|
|
124
|
+
}
|
|
125
|
+
//#endregion
|
|
126
|
+
//#region ../../src/react/head/hooks/useHead.d.ts
|
|
127
|
+
/**
|
|
128
|
+
* ```tsx
|
|
129
|
+
* const App = () => {
|
|
130
|
+
* const [head, setHead] = useHead({
|
|
131
|
+
* // will set the document title on the first render
|
|
132
|
+
* title: "My App",
|
|
133
|
+
* });
|
|
134
|
+
*
|
|
135
|
+
* return (
|
|
136
|
+
* // This will update the document title when the button is clicked
|
|
137
|
+
* <button onClick={() => setHead({ title: "Change Title" })}>
|
|
138
|
+
* Change Title {head.title}
|
|
139
|
+
* </button>
|
|
140
|
+
* );
|
|
141
|
+
* }
|
|
142
|
+
* ```
|
|
143
|
+
*/
|
|
144
|
+
declare const useHead: (options?: UseHeadOptions) => UseHeadReturn;
|
|
145
|
+
type UseHeadOptions = Head | ((previous?: Head) => Head);
|
|
146
|
+
type UseHeadReturn = [Head, (head?: Head | ((previous?: Head) => Head)) => void];
|
|
147
|
+
//#endregion
|
|
148
|
+
//#region ../../src/react/head/providers/HeadProvider.d.ts
|
|
149
|
+
/**
|
|
150
|
+
* Provides methods to fill and merge head information into the application state.
|
|
151
|
+
*
|
|
152
|
+
* Used both on server and client side to manage document head.
|
|
153
|
+
*
|
|
154
|
+
* @see {@link SeoExpander}
|
|
155
|
+
* @see {@link ServerHeadProvider}
|
|
156
|
+
* @see {@link BrowserHeadProvider}
|
|
157
|
+
*/
|
|
158
|
+
declare class HeadProvider {
|
|
159
|
+
protected readonly log: alepha_logger0.Logger;
|
|
160
|
+
protected readonly seoExpander: SeoExpander;
|
|
161
|
+
global?: Array<Head | (() => Head)>;
|
|
162
|
+
/**
|
|
163
|
+
* Track if we've warned about page-level htmlAttributes to avoid spam.
|
|
164
|
+
*/
|
|
165
|
+
protected warnedAboutHtmlAttributes: boolean;
|
|
166
|
+
/**
|
|
167
|
+
* Resolve global head configuration (from $head primitives only).
|
|
168
|
+
*
|
|
169
|
+
* This is used to get htmlAttributes early, before page loaders run.
|
|
170
|
+
* Only htmlAttributes from global $head are allowed; page-level htmlAttributes
|
|
171
|
+
* are ignored for early streaming optimization.
|
|
172
|
+
*
|
|
173
|
+
* @returns Merged global head with htmlAttributes
|
|
174
|
+
*/
|
|
175
|
+
resolveGlobalHead(): Head;
|
|
176
|
+
fillHead(state: HeadState): void;
|
|
177
|
+
protected mergeHead(state: HeadState, head: Head): void;
|
|
178
|
+
protected fillHeadByPage(page: HeadRoute, state: HeadState, props: Record<string, any>): void;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* Minimal route interface for head processing.
|
|
182
|
+
* Avoids circular dependency with alepha/react/router.
|
|
183
|
+
*/
|
|
184
|
+
interface HeadRoute {
|
|
185
|
+
head?: Head | ((props: Record<string, any>, previous?: Head) => Head);
|
|
186
|
+
}
|
|
187
|
+
/**
|
|
188
|
+
* Minimal state interface for head processing.
|
|
189
|
+
* Avoids circular dependency with alepha/react/router.
|
|
190
|
+
*/
|
|
191
|
+
interface HeadState {
|
|
192
|
+
head: Head;
|
|
193
|
+
layers: Array<{
|
|
194
|
+
route?: HeadRoute;
|
|
195
|
+
props?: Record<string, any>;
|
|
196
|
+
error?: Error;
|
|
197
|
+
}>;
|
|
198
|
+
}
|
|
199
|
+
//#endregion
|
|
200
|
+
//#region ../../src/react/head/primitives/$head.d.ts
|
|
201
|
+
/**
|
|
202
|
+
* Set global `<head>` options for the application.
|
|
203
|
+
*/
|
|
204
|
+
declare const $head: {
|
|
205
|
+
(options: HeadPrimitiveOptions): HeadPrimitive;
|
|
206
|
+
[KIND]: typeof HeadPrimitive;
|
|
207
|
+
};
|
|
208
|
+
type HeadPrimitiveOptions = Head | (() => Head);
|
|
209
|
+
declare class HeadPrimitive extends Primitive<HeadPrimitiveOptions> {
|
|
210
|
+
protected readonly provider: HeadProvider;
|
|
211
|
+
protected onInit(): void;
|
|
212
|
+
}
|
|
213
|
+
//#endregion
|
|
214
|
+
//#region ../../src/react/head/providers/BrowserHeadProvider.d.ts
|
|
215
|
+
/**
|
|
216
|
+
* Browser-side head provider that manages document head elements.
|
|
217
|
+
*
|
|
218
|
+
* Used by ReactBrowserProvider and ReactBrowserRouterProvider to update
|
|
219
|
+
* document title, meta tags, and other head elements during client-side
|
|
220
|
+
* navigation.
|
|
221
|
+
*/
|
|
222
|
+
declare class BrowserHeadProvider {
|
|
223
|
+
protected readonly alepha: Alepha;
|
|
224
|
+
protected readonly headProvider: HeadProvider;
|
|
225
|
+
protected get document(): Document;
|
|
226
|
+
/**
|
|
227
|
+
* Fill head state from route configurations and render to document.
|
|
228
|
+
* Combines fillHead from HeadProvider with renderHead to the DOM.
|
|
229
|
+
*
|
|
230
|
+
* Only runs in browser environment - no-op on server.
|
|
231
|
+
*/
|
|
232
|
+
fillAndRenderHead(state: {
|
|
233
|
+
head: Head;
|
|
234
|
+
layers: Array<any>;
|
|
235
|
+
}): void;
|
|
236
|
+
getHead(document: Document): Head;
|
|
237
|
+
renderHead(document: Document, head: Head): void;
|
|
238
|
+
protected renderScriptTag(document: Document, script: string | (Record<string, string | boolean | undefined> & {
|
|
239
|
+
content?: string;
|
|
240
|
+
})): void;
|
|
241
|
+
protected renderMetaTag(document: Document, meta: HeadMeta): void;
|
|
242
|
+
}
|
|
243
|
+
//#endregion
|
|
244
|
+
//#region ../../src/react/head/providers/ServerHeadProvider.d.ts
|
|
245
|
+
/**
|
|
246
|
+
* Server-side head provider that fills head content from route configurations.
|
|
247
|
+
*
|
|
248
|
+
* Used by ReactServerProvider to collect title, meta tags, and other head
|
|
249
|
+
* elements which are then rendered by ReactServerTemplateProvider.
|
|
250
|
+
*/
|
|
251
|
+
declare class ServerHeadProvider {
|
|
252
|
+
protected readonly headProvider: HeadProvider;
|
|
253
|
+
/**
|
|
254
|
+
* Resolve global head configuration (htmlAttributes only).
|
|
255
|
+
*
|
|
256
|
+
* Used for early streaming optimization - htmlAttributes can be sent
|
|
257
|
+
* before page loaders run since they come from global $head only.
|
|
258
|
+
*/
|
|
259
|
+
resolveGlobalHead(): Head;
|
|
260
|
+
/**
|
|
261
|
+
* Fill head state from route configurations.
|
|
262
|
+
* Delegates to HeadProvider to merge head data from all route layers.
|
|
263
|
+
*/
|
|
264
|
+
fillHead(state: {
|
|
265
|
+
head: SimpleHead;
|
|
266
|
+
layers: Array<any>;
|
|
267
|
+
}): void;
|
|
268
|
+
}
|
|
269
|
+
//#endregion
|
|
270
|
+
//#region ../../src/react/head/index.d.ts
|
|
271
|
+
/**
|
|
272
|
+
* | type | quality | stability |
|
|
273
|
+
* |------|---------|-----------|
|
|
274
|
+
* | frontend | standard | stable |
|
|
275
|
+
*
|
|
276
|
+
* HTML head element management.
|
|
277
|
+
*
|
|
278
|
+
* **Features:**
|
|
279
|
+
* - Title, meta tags, and links
|
|
280
|
+
* - SEO optimization
|
|
281
|
+
* - Social media tags
|
|
282
|
+
*
|
|
283
|
+
* @module alepha.react.head
|
|
284
|
+
*/
|
|
285
|
+
declare const AlephaReactHead: alepha0.Service<alepha0.Module>;
|
|
286
|
+
//#endregion
|
|
287
|
+
export { $head, AlephaReactHead, BrowserHeadProvider, Head, HeadMeta, HeadPrimitive, HeadPrimitiveOptions, Seo, SeoExpander, ServerHeadProvider, SimpleHead, UseHeadOptions, UseHeadReturn, useHead };
|
|
288
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/react/head/interfaces/Head.ts","../../../src/react/head/helpers/SeoExpander.ts","../../../src/react/head/hooks/useHead.ts","../../../src/react/head/providers/HeadProvider.ts","../../../src/react/head/primitives/$head.ts","../../../src/react/head/providers/BrowserHeadProvider.ts","../../../src/react/head/providers/ServerHeadProvider.ts","../../../src/react/head/index.ts"],"mappings":"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"}
|