alepha 0.15.1 → 0.15.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/audits/index.d.ts +342 -365
- 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 +180 -173
- 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 +294 -301
- 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 +1079 -769
- package/dist/api/users/index.d.ts.map +1 -1
- package/dist/api/users/index.js +2534 -218
- package/dist/api/users/index.js.map +1 -1
- package/dist/api/verifications/index.d.ts +10 -4
- 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 +432 -8
- package/dist/bucket/index.d.ts.map +1 -1
- package/dist/bucket/index.js +1856 -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 +488 -5612
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +2326 -311
- package/dist/cli/index.js.map +1 -1
- package/dist/command/index.d.ts +194 -46
- package/dist/command/index.d.ts.map +1 -1
- package/dist/command/index.js +1995 -60
- package/dist/command/index.js.map +1 -1
- package/dist/core/index.browser.js +42 -19
- 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 +62 -19
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.native.js +42 -19
- 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 +315 -20
- package/dist/email/index.d.ts.map +1 -1
- package/dist/email/index.js +1852 -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 +15 -35
- 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 +7 -4
- package/dist/orm/index.bun.js.map +1 -1
- package/dist/orm/index.d.ts +514 -540
- package/dist/orm/index.d.ts.map +1 -1
- package/dist/orm/index.js +24 -49
- 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 +1980 -0
- package/dist/react/router/index.browser.js.map +1 -0
- package/dist/react/router/index.d.ts +2068 -0
- package/dist/react/router/index.d.ts.map +1 -0
- package/dist/react/router/index.js +4932 -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 +22 -25
- 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 +110 -19
- package/dist/security/index.d.ts.map +1 -1
- package/dist/security/index.js +157 -26
- package/dist/security/index.js.map +1 -1
- package/dist/server/auth/index.d.ts +179 -174
- 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 +115 -14
- 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 +25 -19
- 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 +50 -45
- 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 +1848 -5
- package/dist/server/static/index.js.map +1 -1
- package/dist/server/swagger/index.d.ts +301 -6
- package/dist/server/swagger/index.d.ts.map +1 -1
- package/dist/server/swagger/index.js +1849 -6
- package/dist/server/swagger/index.js.map +1 -1
- package/dist/sms/index.d.ts +301 -7
- package/dist/sms/index.d.ts.map +1 -1
- package/dist/sms/index.js +1851 -7
- package/dist/sms/index.js.map +1 -1
- package/dist/system/index.browser.js +496 -0
- package/dist/system/index.browser.js.map +1 -0
- package/dist/{file → system}/index.d.ts +335 -16
- package/dist/system/index.d.ts.map +1 -0
- package/dist/{file → system}/index.js +412 -20
- 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 +4 -6271
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +8 -3
- 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 +80 -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 +52 -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 +1 -1
- package/src/cli/commands/build.ts +1 -5
- package/src/cli/commands/db.ts +17 -11
- 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 +544 -0
- package/src/cli/commands/init.ts +89 -55
- 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 +36 -8
- package/src/cli/services/AlephaCliUtils.ts +37 -122
- package/src/cli/services/PackageManagerUtils.ts +127 -11
- package/src/cli/services/ProjectScaffolder.ts +122 -77
- package/src/cli/services/ViteUtils.ts +82 -0
- package/src/cli/{assets/claudeMd.ts → templates/agentMd.ts} +32 -24
- 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 +50 -0
- package/src/cli/{assets → templates}/webHelloComponentTsx.ts +2 -2
- package/src/command/helpers/Runner.spec.ts +4 -0
- package/src/command/helpers/Runner.ts +3 -21
- package/src/command/index.ts +12 -4
- package/src/command/providers/CliProvider.spec.ts +1067 -0
- package/src/command/providers/CliProvider.ts +203 -40
- package/src/core/Alepha.ts +2 -2
- 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 +4 -2
- package/src/orm/index.ts +21 -47
- package/src/orm/providers/drivers/BunSqliteProvider.ts +1 -0
- 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 +142 -0
- package/src/react/router/primitives/$page.browser.spec.tsx +851 -0
- package/src/react/router/primitives/$page.spec.tsx +708 -0
- package/src/react/router/primitives/$page.ts +497 -0
- package/src/react/router/providers/ReactBrowserProvider.ts +309 -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/ReactServerProvider.spec.tsx +316 -0
- package/src/react/router/providers/ReactServerProvider.ts +558 -0
- package/src/react/router/providers/ReactServerTemplateProvider.ts +979 -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 +13 -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 +36 -22
- 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.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 +11 -0
- package/src/system/index.ts +62 -0
- package/src/{file → system}/providers/FileSystemProvider.ts +16 -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 +36 -0
- 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 +17 -1
- 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/mainServerTs.ts +0 -24
- package/src/cli/assets/webAppRouterTs.ts +0 -16
- 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}/apiIndexTs.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
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
import * as alepha0 from "alepha";
|
|
2
|
-
import { FileLike, StreamLike } from "alepha";
|
|
2
|
+
import { FileLike, Json, StreamLike } from "alepha";
|
|
3
3
|
import { Readable } from "node:stream";
|
|
4
|
+
import * as alepha_logger0 from "alepha/logger";
|
|
4
5
|
|
|
5
|
-
//#region ../../src/
|
|
6
|
+
//#region ../../src/system/errors/FileError.d.ts
|
|
6
7
|
declare class FileError extends Error {
|
|
7
8
|
constructor(message: string, cause?: Error);
|
|
8
9
|
}
|
|
9
10
|
//#endregion
|
|
10
|
-
//#region ../../src/
|
|
11
|
+
//#region ../../src/system/providers/FileSystemProvider.d.ts
|
|
11
12
|
/**
|
|
12
13
|
* Options for creating a file from a URL
|
|
13
14
|
*/
|
|
@@ -281,9 +282,23 @@ declare abstract class FileSystemProvider {
|
|
|
281
282
|
* @param data - The data to write (Buffer or string)
|
|
282
283
|
*/
|
|
283
284
|
abstract writeFile(path: string, data: Uint8Array | Buffer | string | FileLike): Promise<void>;
|
|
285
|
+
/**
|
|
286
|
+
* Reads the content of a file as a string.
|
|
287
|
+
*
|
|
288
|
+
* @param path - The file path to read
|
|
289
|
+
* @returns The file content as a string
|
|
290
|
+
*/
|
|
291
|
+
abstract readTextFile(path: string): Promise<string>;
|
|
292
|
+
/**
|
|
293
|
+
* Reads the content of a file as JSON.
|
|
294
|
+
*
|
|
295
|
+
* @param path - The file path to read
|
|
296
|
+
* @returns The parsed JSON content
|
|
297
|
+
*/
|
|
298
|
+
abstract readJsonFile<T = unknown>(path: string): Promise<T>;
|
|
284
299
|
}
|
|
285
300
|
//#endregion
|
|
286
|
-
//#region ../../src/
|
|
301
|
+
//#region ../../src/system/providers/MemoryFileSystemProvider.d.ts
|
|
287
302
|
interface MemoryFileSystemProviderOptions {
|
|
288
303
|
/**
|
|
289
304
|
* Error to throw on mkdir operations (for testing error handling)
|
|
@@ -322,6 +337,7 @@ interface MemoryFileSystemProviderOptions {
|
|
|
322
337
|
* ```
|
|
323
338
|
*/
|
|
324
339
|
declare class MemoryFileSystemProvider implements FileSystemProvider {
|
|
340
|
+
protected json: Json;
|
|
325
341
|
/**
|
|
326
342
|
* In-memory storage for files (path -> content)
|
|
327
343
|
*/
|
|
@@ -344,6 +360,17 @@ declare class MemoryFileSystemProvider implements FileSystemProvider {
|
|
|
344
360
|
path: string;
|
|
345
361
|
data: string;
|
|
346
362
|
}>;
|
|
363
|
+
/**
|
|
364
|
+
* Track readFile calls for test assertions
|
|
365
|
+
*/
|
|
366
|
+
readFileCalls: Array<string>;
|
|
367
|
+
/**
|
|
368
|
+
* Track rm calls for test assertions
|
|
369
|
+
*/
|
|
370
|
+
rmCalls: Array<{
|
|
371
|
+
path: string;
|
|
372
|
+
options?: RmOptions;
|
|
373
|
+
}>;
|
|
347
374
|
/**
|
|
348
375
|
* Track join calls for test assertions
|
|
349
376
|
*/
|
|
@@ -363,6 +390,7 @@ declare class MemoryFileSystemProvider implements FileSystemProvider {
|
|
|
363
390
|
constructor(options?: MemoryFileSystemProviderOptions);
|
|
364
391
|
/**
|
|
365
392
|
* Join path segments using forward slashes.
|
|
393
|
+
* Uses Node's path.join for proper normalization (handles .. and .)
|
|
366
394
|
*/
|
|
367
395
|
join(...paths: string[]): string;
|
|
368
396
|
/**
|
|
@@ -397,6 +425,14 @@ declare class MemoryFileSystemProvider implements FileSystemProvider {
|
|
|
397
425
|
* Read a file from memory.
|
|
398
426
|
*/
|
|
399
427
|
readFile(path: string): Promise<Buffer>;
|
|
428
|
+
/**
|
|
429
|
+
* Read a file from memory as text.
|
|
430
|
+
*/
|
|
431
|
+
readTextFile(path: string): Promise<string>;
|
|
432
|
+
/**
|
|
433
|
+
* Read a file from memory as JSON.
|
|
434
|
+
*/
|
|
435
|
+
readJsonFile<T = unknown>(path: string): Promise<T>;
|
|
400
436
|
/**
|
|
401
437
|
* Write a file to memory.
|
|
402
438
|
*/
|
|
@@ -405,13 +441,218 @@ declare class MemoryFileSystemProvider implements FileSystemProvider {
|
|
|
405
441
|
* Reset all in-memory state (useful between tests).
|
|
406
442
|
*/
|
|
407
443
|
reset(): void;
|
|
444
|
+
/**
|
|
445
|
+
* Check if a file was written during the test.
|
|
446
|
+
*
|
|
447
|
+
* @example
|
|
448
|
+
* ```typescript
|
|
449
|
+
* expect(fs.wasWritten("/project/tsconfig.json")).toBe(true);
|
|
450
|
+
* ```
|
|
451
|
+
*/
|
|
452
|
+
wasWritten(path: string): boolean;
|
|
453
|
+
/**
|
|
454
|
+
* Check if a file was written with content matching a pattern.
|
|
455
|
+
*
|
|
456
|
+
* @example
|
|
457
|
+
* ```typescript
|
|
458
|
+
* expect(fs.wasWrittenMatching("/project/tsconfig.json", /extends/)).toBe(true);
|
|
459
|
+
* ```
|
|
460
|
+
*/
|
|
461
|
+
wasWrittenMatching(path: string, pattern: RegExp): boolean;
|
|
462
|
+
/**
|
|
463
|
+
* Check if a file was read during the test.
|
|
464
|
+
*
|
|
465
|
+
* @example
|
|
466
|
+
* ```typescript
|
|
467
|
+
* expect(fs.wasRead("/project/package.json")).toBe(true);
|
|
468
|
+
* ```
|
|
469
|
+
*/
|
|
470
|
+
wasRead(path: string): boolean;
|
|
471
|
+
/**
|
|
472
|
+
* Check if a file was deleted during the test.
|
|
473
|
+
*
|
|
474
|
+
* @example
|
|
475
|
+
* ```typescript
|
|
476
|
+
* expect(fs.wasDeleted("/project/old-file.txt")).toBe(true);
|
|
477
|
+
* ```
|
|
478
|
+
*/
|
|
479
|
+
wasDeleted(path: string): boolean;
|
|
408
480
|
/**
|
|
409
481
|
* Get the content of a file as a string (convenience method for testing).
|
|
410
482
|
*/
|
|
411
483
|
getFileContent(path: string): string | undefined;
|
|
412
484
|
}
|
|
413
485
|
//#endregion
|
|
414
|
-
//#region ../../src/
|
|
486
|
+
//#region ../../src/system/providers/ShellProvider.d.ts
|
|
487
|
+
interface ShellRunOptions {
|
|
488
|
+
/**
|
|
489
|
+
* Working directory for the command.
|
|
490
|
+
*/
|
|
491
|
+
root?: string;
|
|
492
|
+
/**
|
|
493
|
+
* Additional environment variables.
|
|
494
|
+
*/
|
|
495
|
+
env?: Record<string, string>;
|
|
496
|
+
/**
|
|
497
|
+
* Resolve the executable from node_modules/.bin.
|
|
498
|
+
* Supports local project, pnpm nested, and monorepo structures.
|
|
499
|
+
* @default false
|
|
500
|
+
*/
|
|
501
|
+
resolve?: boolean;
|
|
502
|
+
/**
|
|
503
|
+
* Capture stdout instead of inheriting stdio.
|
|
504
|
+
* When true, returns stdout as string.
|
|
505
|
+
* When false, streams output to terminal.
|
|
506
|
+
* @default false
|
|
507
|
+
*/
|
|
508
|
+
capture?: boolean;
|
|
509
|
+
}
|
|
510
|
+
/**
|
|
511
|
+
* Abstract provider for executing shell commands and binaries.
|
|
512
|
+
*
|
|
513
|
+
* Implementations:
|
|
514
|
+
* - `NodeShellProvider` - Real shell execution using Node.js child_process
|
|
515
|
+
* - `MemoryShellProvider` - In-memory mock for testing
|
|
516
|
+
*
|
|
517
|
+
* @example
|
|
518
|
+
* ```typescript
|
|
519
|
+
* class MyService {
|
|
520
|
+
* protected readonly shell = $inject(ShellProvider);
|
|
521
|
+
*
|
|
522
|
+
* async build() {
|
|
523
|
+
* // Run shell command directly
|
|
524
|
+
* await this.shell.run("yarn install");
|
|
525
|
+
*
|
|
526
|
+
* // Run local binary with resolution
|
|
527
|
+
* await this.shell.run("vite build", { resolve: true });
|
|
528
|
+
*
|
|
529
|
+
* // Capture output
|
|
530
|
+
* const output = await this.shell.run("echo hello", { capture: true });
|
|
531
|
+
* }
|
|
532
|
+
* }
|
|
533
|
+
* ```
|
|
534
|
+
*/
|
|
535
|
+
declare abstract class ShellProvider {
|
|
536
|
+
/**
|
|
537
|
+
* Run a shell command or binary.
|
|
538
|
+
*
|
|
539
|
+
* @param command - The command to run
|
|
540
|
+
* @param options - Execution options
|
|
541
|
+
* @returns stdout if capture is true, empty string otherwise
|
|
542
|
+
*/
|
|
543
|
+
abstract run(command: string, options?: ShellRunOptions): Promise<string>;
|
|
544
|
+
/**
|
|
545
|
+
* Check if a command is installed and available in the system PATH.
|
|
546
|
+
*
|
|
547
|
+
* @param command - The command name to check
|
|
548
|
+
* @returns true if the command is available
|
|
549
|
+
*/
|
|
550
|
+
abstract isInstalled(command: string): Promise<boolean>;
|
|
551
|
+
}
|
|
552
|
+
//#endregion
|
|
553
|
+
//#region ../../src/system/providers/MemoryShellProvider.d.ts
|
|
554
|
+
interface MemoryShellCall {
|
|
555
|
+
command: string;
|
|
556
|
+
options: ShellRunOptions;
|
|
557
|
+
}
|
|
558
|
+
interface MemoryShellProviderOptions {
|
|
559
|
+
/**
|
|
560
|
+
* Simulated outputs for specific commands.
|
|
561
|
+
* Key is the command string, value is the stdout to return.
|
|
562
|
+
*/
|
|
563
|
+
outputs?: Record<string, string>;
|
|
564
|
+
/**
|
|
565
|
+
* Commands that should throw an error.
|
|
566
|
+
* Key is the command string, value is the error message.
|
|
567
|
+
*/
|
|
568
|
+
errors?: Record<string, string>;
|
|
569
|
+
/**
|
|
570
|
+
* Commands that are considered "installed" in the system PATH.
|
|
571
|
+
*/
|
|
572
|
+
installedCommands?: string[];
|
|
573
|
+
}
|
|
574
|
+
/**
|
|
575
|
+
* In-memory implementation of ShellProvider for testing.
|
|
576
|
+
*
|
|
577
|
+
* Records all commands that would be executed without actually running them.
|
|
578
|
+
* Can be configured to return specific outputs or throw errors for testing.
|
|
579
|
+
*
|
|
580
|
+
* @example
|
|
581
|
+
* ```typescript
|
|
582
|
+
* // In tests, substitute the real ShellProvider with MemoryShellProvider
|
|
583
|
+
* const alepha = Alepha.create().with({
|
|
584
|
+
* provide: ShellProvider,
|
|
585
|
+
* use: MemoryShellProvider,
|
|
586
|
+
* });
|
|
587
|
+
*
|
|
588
|
+
* // Configure mock behavior
|
|
589
|
+
* const shell = alepha.inject(MemoryShellProvider);
|
|
590
|
+
* shell.configure({
|
|
591
|
+
* outputs: { "echo hello": "hello\n" },
|
|
592
|
+
* errors: { "failing-cmd": "Command failed" },
|
|
593
|
+
* });
|
|
594
|
+
*
|
|
595
|
+
* // Or use the fluent API
|
|
596
|
+
* shell.outputs.set("another-cmd", "output");
|
|
597
|
+
* shell.errors.set("another-error", "Error message");
|
|
598
|
+
*
|
|
599
|
+
* // Run code that uses ShellProvider
|
|
600
|
+
* const service = alepha.inject(MyService);
|
|
601
|
+
* await service.doSomething();
|
|
602
|
+
*
|
|
603
|
+
* // Verify commands were called
|
|
604
|
+
* expect(shell.calls).toHaveLength(2);
|
|
605
|
+
* expect(shell.calls[0].command).toBe("yarn install");
|
|
606
|
+
* ```
|
|
607
|
+
*/
|
|
608
|
+
declare class MemoryShellProvider implements ShellProvider {
|
|
609
|
+
/**
|
|
610
|
+
* All recorded shell calls.
|
|
611
|
+
*/
|
|
612
|
+
calls: MemoryShellCall[];
|
|
613
|
+
/**
|
|
614
|
+
* Simulated outputs for specific commands.
|
|
615
|
+
*/
|
|
616
|
+
outputs: Map<string, string>;
|
|
617
|
+
/**
|
|
618
|
+
* Commands that should throw an error.
|
|
619
|
+
*/
|
|
620
|
+
errors: Map<string, string>;
|
|
621
|
+
/**
|
|
622
|
+
* Commands considered installed in the system PATH.
|
|
623
|
+
*/
|
|
624
|
+
installedCommands: Set<string>;
|
|
625
|
+
/**
|
|
626
|
+
* Configure the mock with predefined outputs, errors, and installed commands.
|
|
627
|
+
*/
|
|
628
|
+
configure(options: MemoryShellProviderOptions): this;
|
|
629
|
+
/**
|
|
630
|
+
* Record command and return simulated output.
|
|
631
|
+
*/
|
|
632
|
+
run(command: string, options?: ShellRunOptions): Promise<string>;
|
|
633
|
+
/**
|
|
634
|
+
* Check if a specific command was called.
|
|
635
|
+
*/
|
|
636
|
+
wasCalled(command: string): boolean;
|
|
637
|
+
/**
|
|
638
|
+
* Check if a command matching a pattern was called.
|
|
639
|
+
*/
|
|
640
|
+
wasCalledMatching(pattern: RegExp): boolean;
|
|
641
|
+
/**
|
|
642
|
+
* Get all calls matching a pattern.
|
|
643
|
+
*/
|
|
644
|
+
getCallsMatching(pattern: RegExp): MemoryShellCall[];
|
|
645
|
+
/**
|
|
646
|
+
* Check if a command is installed.
|
|
647
|
+
*/
|
|
648
|
+
isInstalled(command: string): Promise<boolean>;
|
|
649
|
+
/**
|
|
650
|
+
* Reset all recorded state.
|
|
651
|
+
*/
|
|
652
|
+
reset(): void;
|
|
653
|
+
}
|
|
654
|
+
//#endregion
|
|
655
|
+
//#region ../../src/system/services/FileDetector.d.ts
|
|
415
656
|
interface FileTypeResult {
|
|
416
657
|
/**
|
|
417
658
|
* The detected MIME type
|
|
@@ -538,7 +779,7 @@ declare class FileDetector {
|
|
|
538
779
|
protected matchesSignature(buffer: Buffer, signature: (number | null)[]): boolean;
|
|
539
780
|
}
|
|
540
781
|
//#endregion
|
|
541
|
-
//#region ../../src/
|
|
782
|
+
//#region ../../src/system/providers/NodeFileSystemProvider.d.ts
|
|
542
783
|
/**
|
|
543
784
|
* Node.js implementation of FileSystem interface.
|
|
544
785
|
*
|
|
@@ -565,6 +806,7 @@ declare class FileDetector {
|
|
|
565
806
|
*/
|
|
566
807
|
declare class NodeFileSystemProvider implements FileSystemProvider {
|
|
567
808
|
protected detector: FileDetector;
|
|
809
|
+
protected json: Json;
|
|
568
810
|
join(...paths: string[]): string;
|
|
569
811
|
/**
|
|
570
812
|
* Creates a FileLike object from various sources.
|
|
@@ -749,6 +991,32 @@ declare class NodeFileSystemProvider implements FileSystemProvider {
|
|
|
749
991
|
* ```
|
|
750
992
|
*/
|
|
751
993
|
writeFile(path: string, data: Uint8Array | Buffer | string | FileLike): Promise<void>;
|
|
994
|
+
/**
|
|
995
|
+
* Reads the content of a file as a string.
|
|
996
|
+
*
|
|
997
|
+
* @param path - The file path to read
|
|
998
|
+
* @returns The file content as a string
|
|
999
|
+
*
|
|
1000
|
+
* @example
|
|
1001
|
+
* ```typescript
|
|
1002
|
+
* const fs = alepha.inject(NodeFileSystemProvider);
|
|
1003
|
+
* const content = await fs.readTextFile("/tmp/file.txt");
|
|
1004
|
+
* ```
|
|
1005
|
+
*/
|
|
1006
|
+
readTextFile(path: string): Promise<string>;
|
|
1007
|
+
/**
|
|
1008
|
+
* Reads the content of a file as JSON.
|
|
1009
|
+
*
|
|
1010
|
+
* @param path - The file path to read
|
|
1011
|
+
* @returns The parsed JSON content
|
|
1012
|
+
*
|
|
1013
|
+
* @example
|
|
1014
|
+
* ```typescript
|
|
1015
|
+
* const fs = alepha.inject(NodeFileSystemProvider);
|
|
1016
|
+
* const config = await fs.readJsonFile<{ name: string }>("/tmp/config.json");
|
|
1017
|
+
* ```
|
|
1018
|
+
*/
|
|
1019
|
+
readJsonFile<T = unknown>(path: string): Promise<T>;
|
|
752
1020
|
/**
|
|
753
1021
|
* Creates a FileLike object from a Web File.
|
|
754
1022
|
*
|
|
@@ -821,19 +1089,70 @@ declare class NodeFileSystemProvider implements FileSystemProvider {
|
|
|
821
1089
|
protected bufferToArrayBuffer(buffer: Buffer): ArrayBuffer;
|
|
822
1090
|
}
|
|
823
1091
|
//#endregion
|
|
824
|
-
//#region ../../src/
|
|
1092
|
+
//#region ../../src/system/providers/NodeShellProvider.d.ts
|
|
825
1093
|
/**
|
|
826
|
-
*
|
|
1094
|
+
* Node.js implementation of ShellProvider.
|
|
1095
|
+
*
|
|
1096
|
+
* Executes shell commands using Node.js child_process module.
|
|
1097
|
+
* Supports binary resolution from node_modules/.bin for local packages.
|
|
1098
|
+
*/
|
|
1099
|
+
declare class NodeShellProvider implements ShellProvider {
|
|
1100
|
+
protected readonly log: alepha_logger0.Logger;
|
|
1101
|
+
protected readonly fs: FileSystemProvider;
|
|
1102
|
+
/**
|
|
1103
|
+
* Run a shell command or binary.
|
|
1104
|
+
*/
|
|
1105
|
+
run(command: string, options?: ShellRunOptions): Promise<string>;
|
|
1106
|
+
/**
|
|
1107
|
+
* Execute command with inherited stdio (streams to terminal).
|
|
1108
|
+
*/
|
|
1109
|
+
protected execInherit(executable: string, args: string[], options: {
|
|
1110
|
+
cwd: string;
|
|
1111
|
+
env?: Record<string, string>;
|
|
1112
|
+
}): Promise<string>;
|
|
1113
|
+
/**
|
|
1114
|
+
* Execute command and capture stdout.
|
|
1115
|
+
*/
|
|
1116
|
+
protected execCapture(command: string, options: {
|
|
1117
|
+
cwd: string;
|
|
1118
|
+
env?: Record<string, string>;
|
|
1119
|
+
}): Promise<string>;
|
|
1120
|
+
/**
|
|
1121
|
+
* Resolve executable path from node_modules/.bin.
|
|
1122
|
+
*
|
|
1123
|
+
* Search order:
|
|
1124
|
+
* 1. Local: node_modules/.bin/
|
|
1125
|
+
* 2. Pnpm nested: node_modules/alepha/node_modules/.bin/
|
|
1126
|
+
* 3. Monorepo: Walk up to 3 parent directories
|
|
1127
|
+
*/
|
|
1128
|
+
protected resolveExecutable(name: string, root: string): Promise<string>;
|
|
1129
|
+
/**
|
|
1130
|
+
* Check if executable exists at path.
|
|
1131
|
+
*/
|
|
1132
|
+
protected findExecutable(root: string, relativePath: string): Promise<string | undefined>;
|
|
1133
|
+
/**
|
|
1134
|
+
* Check if a command is installed and available in the system PATH.
|
|
1135
|
+
*/
|
|
1136
|
+
isInstalled(command: string): Promise<boolean>;
|
|
1137
|
+
}
|
|
1138
|
+
//#endregion
|
|
1139
|
+
//#region ../../src/system/index.d.ts
|
|
1140
|
+
/**
|
|
1141
|
+
* | type | quality | stability |
|
|
1142
|
+
* |------|---------|-----------|
|
|
1143
|
+
* | tooling | standard | stable |
|
|
1144
|
+
*
|
|
1145
|
+
* System-level abstractions for portable code across runtimes.
|
|
827
1146
|
*
|
|
828
|
-
*
|
|
829
|
-
*
|
|
1147
|
+
* **Features:**
|
|
1148
|
+
* - File system operations (read, write, exists, etc.)
|
|
1149
|
+
* - Shell command execution
|
|
1150
|
+
* - File type detection and MIME utilities
|
|
1151
|
+
* - Memory implementations for testing
|
|
830
1152
|
*
|
|
831
|
-
* @
|
|
832
|
-
* @see {@link FileSystemProvider}
|
|
833
|
-
* @see {@link NodeFileSystemProvider}
|
|
834
|
-
* @module alepha.file
|
|
1153
|
+
* @module alepha.system
|
|
835
1154
|
*/
|
|
836
|
-
declare const
|
|
1155
|
+
declare const AlephaSystem: alepha0.Service<alepha0.Module>;
|
|
837
1156
|
//#endregion
|
|
838
|
-
export {
|
|
1157
|
+
export { AlephaSystem, CpOptions, CreateFileFromArrayBufferOptions, CreateFileFromBufferOptions, CreateFileFromPathOptions, CreateFileFromResponseOptions, CreateFileFromStreamOptions, CreateFileFromTextOptions, CreateFileFromUrlOptions, CreateFileFromWebFileOptions, CreateFileOptions, FileDetector, FileError, FileSystemProvider, FileTypeResult, LsOptions, MemoryFileSystemProvider, MemoryFileSystemProviderOptions, MemoryShellCall, MemoryShellProvider, MemoryShellProviderOptions, MkdirOptions, NodeFileSystemProvider, NodeShellProvider, RmOptions, ShellProvider, ShellRunOptions };
|
|
839
1158
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../src/system/errors/FileError.ts","../../src/system/providers/FileSystemProvider.ts","../../src/system/providers/MemoryFileSystemProvider.ts","../../src/system/providers/ShellProvider.ts","../../src/system/providers/MemoryShellProvider.ts","../../src/system/services/FileDetector.ts","../../src/system/providers/NodeFileSystemProvider.ts","../../src/system/providers/NodeShellProvider.ts","../../src/system/index.ts"],"mappings":"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"}
|