alepha 0.13.5 → 0.13.7
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.browser.js +116 -0
- package/dist/api-audits/index.browser.js.map +1 -0
- package/dist/api-audits/index.d.ts +1194 -0
- package/dist/api-audits/index.js +674 -0
- package/dist/api-audits/index.js.map +1 -0
- package/dist/api-notifications/index.d.ts +147 -147
- package/dist/api-parameters/index.browser.js +36 -5
- package/dist/api-parameters/index.browser.js.map +1 -1
- package/dist/api-parameters/index.d.ts +711 -33
- package/dist/api-parameters/index.js +831 -17
- package/dist/api-parameters/index.js.map +1 -1
- package/dist/api-users/index.d.ts +16 -3
- package/dist/api-users/index.js +699 -19
- package/dist/api-users/index.js.map +1 -1
- package/dist/api-verifications/index.js +2 -1
- package/dist/api-verifications/index.js.map +1 -1
- package/dist/bin/index.js +1 -0
- package/dist/bin/index.js.map +1 -1
- package/dist/cli/index.d.ts +85 -31
- package/dist/cli/index.js +205 -33
- package/dist/cli/index.js.map +1 -1
- package/dist/command/index.d.ts +67 -6
- package/dist/command/index.js +30 -3
- package/dist/command/index.js.map +1 -1
- package/dist/core/index.browser.js +241 -61
- package/dist/core/index.browser.js.map +1 -1
- package/dist/core/index.d.ts +170 -90
- package/dist/core/index.js +264 -67
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.native.js +248 -65
- package/dist/core/index.native.js.map +1 -1
- package/dist/email/index.js +15 -10554
- package/dist/email/index.js.map +1 -1
- package/dist/logger/index.d.ts +4 -4
- package/dist/logger/index.js +77 -72
- package/dist/logger/index.js.map +1 -1
- package/dist/orm/index.d.ts +5 -1
- package/dist/orm/index.js +24 -7
- package/dist/orm/index.js.map +1 -1
- package/dist/queue/index.d.ts +4 -4
- package/dist/redis/index.d.ts +10 -10
- package/dist/security/index.d.ts +28 -28
- package/dist/server/index.d.ts +10 -1
- package/dist/server/index.js +20 -6
- package/dist/server/index.js.map +1 -1
- package/dist/server-auth/index.d.ts +163 -152
- package/dist/server-auth/index.js +40 -10
- package/dist/server-auth/index.js.map +1 -1
- package/dist/server-cookies/index.js +5 -1
- package/dist/server-cookies/index.js.map +1 -1
- package/dist/server-links/index.d.ts +33 -33
- package/dist/server-security/index.d.ts +9 -9
- package/dist/thread/index.js +2 -2
- package/dist/thread/index.js.map +1 -1
- package/dist/vite/index.d.ts +2 -2
- package/dist/vite/index.js +102 -45
- package/dist/vite/index.js.map +1 -1
- package/dist/websocket/index.browser.js +3 -3
- package/dist/websocket/index.browser.js.map +1 -1
- package/dist/websocket/index.d.ts +7 -7
- package/dist/websocket/index.js +4 -4
- package/dist/websocket/index.js.map +1 -1
- package/package.json +14 -9
- package/src/api-audits/controllers/AuditController.ts +186 -0
- package/src/api-audits/entities/audits.ts +132 -0
- package/src/api-audits/index.browser.ts +18 -0
- package/src/api-audits/index.ts +58 -0
- package/src/api-audits/primitives/$audit.ts +159 -0
- package/src/api-audits/schemas/auditQuerySchema.ts +23 -0
- package/src/api-audits/schemas/auditResourceSchema.ts +9 -0
- package/src/api-audits/schemas/createAuditSchema.ts +27 -0
- package/src/api-audits/services/AuditService.ts +412 -0
- package/src/api-parameters/controllers/ConfigController.ts +324 -0
- package/src/api-parameters/entities/parameters.ts +93 -10
- package/src/api-parameters/index.ts +43 -4
- package/src/api-parameters/primitives/$config.ts +291 -19
- package/src/api-parameters/schedulers/ConfigActivationScheduler.ts +30 -0
- package/src/api-parameters/services/ConfigStore.ts +491 -0
- package/src/api-users/atoms/realmAuthSettingsAtom.ts +19 -0
- package/src/api-users/controllers/UserRealmController.ts +0 -2
- package/src/api-users/index.ts +2 -0
- package/src/api-users/primitives/$userRealm.ts +18 -3
- package/src/api-users/providers/UserRealmProvider.ts +6 -3
- package/src/api-users/services/RegistrationService.ts +2 -1
- package/src/api-users/services/SessionService.ts +4 -0
- package/src/api-users/services/UserService.ts +3 -0
- package/src/api-verifications/index.ts +7 -1
- package/src/bin/index.ts +1 -0
- package/src/cli/assets/biomeJson.ts +1 -1
- package/src/cli/assets/dummySpecTs.ts +7 -0
- package/src/cli/assets/editorconfig.ts +13 -0
- package/src/cli/assets/mainTs.ts +14 -0
- package/src/cli/commands/BiomeCommands.ts +2 -0
- package/src/cli/commands/CoreCommands.ts +28 -9
- package/src/cli/commands/VerifyCommands.ts +2 -1
- package/src/cli/commands/ViteCommands.ts +8 -9
- package/src/cli/services/AlephaCliUtils.ts +214 -23
- package/src/command/helpers/Asker.ts +0 -1
- package/src/command/primitives/$command.ts +67 -0
- package/src/command/providers/CliProvider.ts +39 -8
- package/src/core/Alepha.ts +40 -30
- package/src/core/helpers/jsonSchemaToTypeBox.ts +307 -0
- package/src/core/index.shared.ts +1 -0
- package/src/core/index.ts +30 -3
- package/src/core/providers/EventManager.ts +1 -1
- package/src/core/providers/StateManager.ts +23 -12
- package/src/core/providers/TypeProvider.ts +26 -34
- package/src/logger/index.ts +8 -6
- package/src/logger/primitives/$logger.ts +1 -1
- package/src/logger/providers/{SimpleFormatterProvider.ts → PrettyFormatterProvider.ts} +10 -1
- package/src/orm/index.ts +6 -0
- package/src/orm/services/PgRelationManager.ts +2 -2
- package/src/orm/services/PostgresModelBuilder.ts +11 -7
- package/src/orm/services/Repository.ts +16 -7
- package/src/orm/services/SqliteModelBuilder.ts +10 -0
- package/src/server/index.ts +6 -0
- package/src/server/primitives/$action.ts +10 -1
- package/src/server/providers/ServerBodyParserProvider.ts +11 -5
- package/src/server/providers/ServerRouterProvider.ts +13 -7
- package/src/server-auth/primitives/$auth.ts +7 -0
- package/src/server-auth/providers/ServerAuthProvider.ts +51 -8
- package/src/server-cookies/index.ts +2 -1
- package/src/thread/primitives/$thread.ts +2 -2
- package/src/vite/index.ts +0 -2
- package/src/vite/tasks/buildServer.ts +3 -4
- package/src/vite/tasks/generateCloudflare.ts +35 -19
- package/src/vite/tasks/generateDocker.ts +18 -4
- package/src/vite/tasks/generateSitemap.ts +5 -7
- package/src/vite/tasks/generateVercel.ts +76 -41
- package/src/vite/tasks/runAlepha.ts +16 -1
- package/src/websocket/providers/NodeWebSocketServerProvider.ts +3 -11
- package/src/websocket/services/WebSocketClient.ts +3 -3
- package/dist/cli/dist-BlfFtOk2.js +0 -2770
- package/dist/cli/dist-BlfFtOk2.js.map +0 -1
- package/src/api-parameters/controllers/ParameterController.ts +0 -45
- package/src/api-parameters/services/ParameterStore.ts +0 -23
package/dist/queue/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as alepha1 from "alepha";
|
|
2
2
|
import { Alepha, KIND, Primitive, Service, Static, TSchema } from "alepha";
|
|
3
|
-
import * as
|
|
3
|
+
import * as alepha_logger0 from "alepha/logger";
|
|
4
4
|
import { DateTimeProvider } from "alepha/datetime";
|
|
5
5
|
|
|
6
6
|
//#region ../../src/queue/interfaces/QueueJob.d.ts
|
|
@@ -600,7 +600,7 @@ interface JobWaiter {
|
|
|
600
600
|
* - Scenarios where job persistence across restarts is not required
|
|
601
601
|
*/
|
|
602
602
|
declare class MemoryQueueProvider extends QueueProvider {
|
|
603
|
-
protected readonly log:
|
|
603
|
+
protected readonly log: alepha_logger0.Logger;
|
|
604
604
|
protected messageQueues: Record<string, string[]>;
|
|
605
605
|
protected messageWaiters: Set<MessageWaiter>;
|
|
606
606
|
protected jobs: Map<string, Map<string, QueueJob>>;
|
|
@@ -947,7 +947,7 @@ interface QueuePrimitiveOptions<T extends TSchema> {
|
|
|
947
947
|
removeOnFail?: boolean | number;
|
|
948
948
|
}
|
|
949
949
|
declare class QueuePrimitive<T extends TSchema> extends Primitive<QueuePrimitiveOptions<T>> {
|
|
950
|
-
protected readonly log:
|
|
950
|
+
protected readonly log: alepha_logger0.Logger;
|
|
951
951
|
readonly provider: QueueProvider | MemoryQueueProvider;
|
|
952
952
|
/**
|
|
953
953
|
* Push one or more payloads to the queue for background processing.
|
|
@@ -1180,7 +1180,7 @@ declare module "alepha" {
|
|
|
1180
1180
|
interface Env extends Partial<Static<typeof envSchema>> {}
|
|
1181
1181
|
}
|
|
1182
1182
|
declare class WorkerProvider {
|
|
1183
|
-
protected readonly log:
|
|
1183
|
+
protected readonly log: alepha_logger0.Logger;
|
|
1184
1184
|
protected readonly env: {
|
|
1185
1185
|
QUEUE_WORKER_BLOCKING_TIMEOUT: number;
|
|
1186
1186
|
QUEUE_WORKER_CONCURRENCY: number;
|
package/dist/redis/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as alepha3 from "alepha";
|
|
2
2
|
import { Alepha, Static } from "alepha";
|
|
3
3
|
import { RedisClientType, SetOptions, createClient } from "@redis/client";
|
|
4
4
|
import * as alepha_logger0 from "alepha/logger";
|
|
5
5
|
|
|
6
6
|
//#region ../../src/redis/providers/RedisProvider.d.ts
|
|
7
|
-
declare const envSchema:
|
|
8
|
-
REDIS_PORT:
|
|
9
|
-
REDIS_HOST:
|
|
10
|
-
REDIS_PASSWORD:
|
|
7
|
+
declare const envSchema: alepha3.TObject<{
|
|
8
|
+
REDIS_PORT: alepha3.TInteger;
|
|
9
|
+
REDIS_HOST: alepha3.TString;
|
|
10
|
+
REDIS_PASSWORD: alepha3.TOptional<alepha3.TString>;
|
|
11
11
|
}>;
|
|
12
12
|
declare module "alepha" {
|
|
13
13
|
interface Env extends Partial<Static<typeof envSchema>> {}
|
|
@@ -30,8 +30,8 @@ declare class RedisProvider {
|
|
|
30
30
|
};
|
|
31
31
|
protected readonly client: RedisClient;
|
|
32
32
|
get publisher(): RedisClient;
|
|
33
|
-
protected readonly start:
|
|
34
|
-
protected readonly stop:
|
|
33
|
+
protected readonly start: alepha3.HookPrimitive<"start">;
|
|
34
|
+
protected readonly stop: alepha3.HookPrimitive<"stop">;
|
|
35
35
|
/**
|
|
36
36
|
* Connect to the Redis server.
|
|
37
37
|
*/
|
|
@@ -59,8 +59,8 @@ declare class RedisSubscriberProvider {
|
|
|
59
59
|
protected readonly redisProvider: RedisProvider;
|
|
60
60
|
protected readonly client: RedisClient;
|
|
61
61
|
get subscriber(): RedisClient;
|
|
62
|
-
protected readonly start:
|
|
63
|
-
protected readonly stop:
|
|
62
|
+
protected readonly start: alepha3.HookPrimitive<"start">;
|
|
63
|
+
protected readonly stop: alepha3.HookPrimitive<"stop">;
|
|
64
64
|
connect(): Promise<void>;
|
|
65
65
|
close(): Promise<void>;
|
|
66
66
|
/**
|
|
@@ -76,7 +76,7 @@ declare class RedisSubscriberProvider {
|
|
|
76
76
|
* @see {@link RedisProvider}
|
|
77
77
|
* @module alepha.redis
|
|
78
78
|
*/
|
|
79
|
-
declare const AlephaRedis:
|
|
79
|
+
declare const AlephaRedis: alepha3.Service<alepha3.Module>;
|
|
80
80
|
//#endregion
|
|
81
81
|
export { AlephaRedis, RedisClient, RedisClientOptions, RedisProvider, RedisSetOptions, RedisSubscriberProvider };
|
|
82
82
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/security/index.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as alepha1 from "alepha";
|
|
2
2
|
import { Alepha, KIND, Primitive, Static } from "alepha";
|
|
3
3
|
import * as alepha_logger0 from "alepha/logger";
|
|
4
4
|
import { DateTimeProvider, Duration, DurationLike } from "alepha/datetime";
|
|
@@ -7,15 +7,15 @@ import { CryptoKey, FlattenedJWSInput, JSONWebKeySet, JWSHeaderParameters, JWTHe
|
|
|
7
7
|
import { JWTVerifyOptions } from "jose/jwt/verify";
|
|
8
8
|
|
|
9
9
|
//#region ../../src/security/schemas/userAccountInfoSchema.d.ts
|
|
10
|
-
declare const userAccountInfoSchema:
|
|
11
|
-
id:
|
|
12
|
-
name:
|
|
13
|
-
email:
|
|
14
|
-
username:
|
|
15
|
-
picture:
|
|
16
|
-
sessionId:
|
|
17
|
-
organizations:
|
|
18
|
-
roles:
|
|
10
|
+
declare const userAccountInfoSchema: alepha1.TObject<{
|
|
11
|
+
id: alepha1.TString;
|
|
12
|
+
name: alepha1.TOptional<alepha1.TString>;
|
|
13
|
+
email: alepha1.TOptional<alepha1.TString>;
|
|
14
|
+
username: alepha1.TOptional<alepha1.TString>;
|
|
15
|
+
picture: alepha1.TOptional<alepha1.TString>;
|
|
16
|
+
sessionId: alepha1.TOptional<alepha1.TString>;
|
|
17
|
+
organizations: alepha1.TOptional<alepha1.TArray<alepha1.TString>>;
|
|
18
|
+
roles: alepha1.TOptional<alepha1.TArray<alepha1.TString>>;
|
|
19
19
|
}>;
|
|
20
20
|
type UserAccount = Static<typeof userAccountInfoSchema>;
|
|
21
21
|
//#endregion
|
|
@@ -64,24 +64,24 @@ interface UserAccountToken extends UserAccount {
|
|
|
64
64
|
}
|
|
65
65
|
//#endregion
|
|
66
66
|
//#region ../../src/security/schemas/permissionSchema.d.ts
|
|
67
|
-
declare const permissionSchema:
|
|
68
|
-
name:
|
|
69
|
-
group:
|
|
70
|
-
description:
|
|
71
|
-
method:
|
|
72
|
-
path:
|
|
67
|
+
declare const permissionSchema: alepha1.TObject<{
|
|
68
|
+
name: alepha1.TString;
|
|
69
|
+
group: alepha1.TOptional<alepha1.TString>;
|
|
70
|
+
description: alepha1.TOptional<alepha1.TString>;
|
|
71
|
+
method: alepha1.TOptional<alepha1.TString>;
|
|
72
|
+
path: alepha1.TOptional<alepha1.TString>;
|
|
73
73
|
}>;
|
|
74
74
|
type Permission = Static<typeof permissionSchema>;
|
|
75
75
|
//#endregion
|
|
76
76
|
//#region ../../src/security/schemas/roleSchema.d.ts
|
|
77
|
-
declare const roleSchema:
|
|
78
|
-
name:
|
|
79
|
-
description:
|
|
80
|
-
default:
|
|
81
|
-
permissions:
|
|
82
|
-
name:
|
|
83
|
-
ownership:
|
|
84
|
-
exclude:
|
|
77
|
+
declare const roleSchema: alepha1.TObject<{
|
|
78
|
+
name: alepha1.TString;
|
|
79
|
+
description: alepha1.TOptional<alepha1.TString>;
|
|
80
|
+
default: alepha1.TOptional<alepha1.TBoolean>;
|
|
81
|
+
permissions: alepha1.TArray<alepha1.TObject<{
|
|
82
|
+
name: alepha1.TString;
|
|
83
|
+
ownership: alepha1.TOptional<alepha1.TBoolean>;
|
|
84
|
+
exclude: alepha1.TOptional<alepha1.TArray<alepha1.TString>>;
|
|
85
85
|
}>>;
|
|
86
86
|
}>;
|
|
87
87
|
type Role = Static<typeof roleSchema>;
|
|
@@ -154,8 +154,8 @@ interface JwtParseResult {
|
|
|
154
154
|
//#endregion
|
|
155
155
|
//#region ../../src/security/providers/SecurityProvider.d.ts
|
|
156
156
|
declare const DEFAULT_APP_SECRET = "05759934015388327323179852515731";
|
|
157
|
-
declare const envSchema:
|
|
158
|
-
APP_SECRET:
|
|
157
|
+
declare const envSchema: alepha1.TObject<{
|
|
158
|
+
APP_SECRET: alepha1.TString;
|
|
159
159
|
}>;
|
|
160
160
|
declare module "alepha" {
|
|
161
161
|
interface Env extends Partial<Static<typeof envSchema>> {}
|
|
@@ -179,7 +179,7 @@ declare class SecurityProvider {
|
|
|
179
179
|
* The realms configured for the security provider.
|
|
180
180
|
*/
|
|
181
181
|
protected readonly realms: Realm[];
|
|
182
|
-
protected start:
|
|
182
|
+
protected start: alepha1.HookPrimitive<"start">;
|
|
183
183
|
/**
|
|
184
184
|
* Adds a role to one or more realms.
|
|
185
185
|
*
|
|
@@ -592,7 +592,7 @@ declare module "alepha" {
|
|
|
592
592
|
* @see {@link $permission}
|
|
593
593
|
* @module alepha.security
|
|
594
594
|
*/
|
|
595
|
-
declare const AlephaSecurity:
|
|
595
|
+
declare const AlephaSecurity: alepha1.Service<alepha1.Module>;
|
|
596
596
|
//#endregion
|
|
597
597
|
export { $permission, $realm, $role, $serviceAccount, AccessTokenResponse, AlephaSecurity, CreateTokenOptions, CryptoProvider, DEFAULT_APP_SECRET, ExtendedJWTPayload, InvalidCredentialsError, InvalidPermissionError, JwtParseResult, JwtProvider, JwtSignOptions, KeyLoader, KeyLoaderHolder, Oauth2ServiceAccountPrimitiveOptions, Permission, PermissionPrimitive, PermissionPrimitiveOptions, Realm, RealmExternal, RealmInternal, RealmPrimitive, RealmPrimitiveOptions, RealmSettings, Role, RolePrimitive, RolePrimitiveOptions, SecurityCheckResult, SecurityError, SecurityProvider, ServiceAccountPrimitive, ServiceAccountPrimitiveOptions, ServiceAccountStore, UserAccount, UserAccountToken, permissionSchema, roleSchema, userAccountInfoSchema };
|
|
598
598
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/server/index.d.ts
CHANGED
|
@@ -406,7 +406,16 @@ interface HttpAction {
|
|
|
406
406
|
* - Automatic content-type handling (JSON, form-data, plain text)
|
|
407
407
|
*
|
|
408
408
|
* **URL Generation**
|
|
409
|
-
*
|
|
409
|
+
*
|
|
410
|
+
* **Important:** All `$action` paths are automatically prefixed with `/api`.
|
|
411
|
+
*
|
|
412
|
+
* ```ts
|
|
413
|
+
* $action({ path: "/users" }) // → GET /api/users
|
|
414
|
+
* $action({ path: "/users/:id" }) // → GET /api/users/:id
|
|
415
|
+
* $action({ path: "/hello" }) // → GET /api/hello
|
|
416
|
+
* ```
|
|
417
|
+
*
|
|
418
|
+
* This prefix is configurable via the `SERVER_API_PREFIX` environment variable.
|
|
410
419
|
* HTTP method defaults to GET, or POST if body schema is provided.
|
|
411
420
|
*
|
|
412
421
|
* **Common Use Cases**
|
package/dist/server/index.js
CHANGED
|
@@ -510,7 +510,9 @@ var ServerRouterProvider = class extends RouterProvider {
|
|
|
510
510
|
} catch (error) {
|
|
511
511
|
throw new ValidationError("Invalid request header", error);
|
|
512
512
|
}
|
|
513
|
-
if (route.schema?.body)
|
|
513
|
+
if (route.schema?.body) if (t.schema.isString(route.schema.body)) {
|
|
514
|
+
if (typeof request.body !== "string") throw new ValidationError("Request body is not a string");
|
|
515
|
+
} else try {
|
|
514
516
|
request.body = this.alepha.codec.decode(route.schema.body, request.body);
|
|
515
517
|
} catch (error) {
|
|
516
518
|
throw new ValidationError("Invalid request body", error);
|
|
@@ -957,7 +959,16 @@ var HttpClient = class {
|
|
|
957
959
|
* - Automatic content-type handling (JSON, form-data, plain text)
|
|
958
960
|
*
|
|
959
961
|
* **URL Generation**
|
|
960
|
-
*
|
|
962
|
+
*
|
|
963
|
+
* **Important:** All `$action` paths are automatically prefixed with `/api`.
|
|
964
|
+
*
|
|
965
|
+
* ```ts
|
|
966
|
+
* $action({ path: "/users" }) // → GET /api/users
|
|
967
|
+
* $action({ path: "/users/:id" }) // → GET /api/users/:id
|
|
968
|
+
* $action({ path: "/hello" }) // → GET /api/hello
|
|
969
|
+
* ```
|
|
970
|
+
*
|
|
971
|
+
* This prefix is configurable via the `SERVER_API_PREFIX` environment variable.
|
|
961
972
|
* HTTP method defaults to GET, or POST if body schema is provided.
|
|
962
973
|
*
|
|
963
974
|
* **Common Use Cases**
|
|
@@ -1363,7 +1374,7 @@ var ServerBodyParserProvider = class {
|
|
|
1363
1374
|
else if (request.raw.node?.req) stream = ReadableStream$1.from(request.raw.node.req);
|
|
1364
1375
|
if (!stream) return;
|
|
1365
1376
|
if (route.schema?.body) try {
|
|
1366
|
-
const body = await this.parse(stream, request.headers);
|
|
1377
|
+
const body = await this.parse(stream, request.headers, route.schema.body);
|
|
1367
1378
|
if (body) request.body = body;
|
|
1368
1379
|
} catch (error) {
|
|
1369
1380
|
if (error instanceof HttpError) throw error;
|
|
@@ -1374,12 +1385,12 @@ var ServerBodyParserProvider = class {
|
|
|
1374
1385
|
}
|
|
1375
1386
|
}
|
|
1376
1387
|
});
|
|
1377
|
-
async parse(stream, headers) {
|
|
1388
|
+
async parse(stream, headers, schema) {
|
|
1378
1389
|
const contentType = headers["content-type"];
|
|
1379
1390
|
const contentEncoding = headers["content-encoding"];
|
|
1380
1391
|
if (!contentType) return void 0;
|
|
1392
|
+
if (contentType.startsWith("text/plain") || t.schema.isString(schema)) return this.parseText(stream, contentEncoding);
|
|
1381
1393
|
if (contentType.startsWith("application/json")) return this.parseJson(stream, contentEncoding);
|
|
1382
|
-
if (contentType.startsWith("text/plain")) return this.parseText(stream, contentEncoding);
|
|
1383
1394
|
if (contentType.startsWith("application/x-www-form-urlencoded")) return this.parseUrlEncoded(stream, contentEncoding);
|
|
1384
1395
|
}
|
|
1385
1396
|
async parseText(stream, contentEncoding) {
|
|
@@ -1628,7 +1639,10 @@ const AlephaServer = $module({
|
|
|
1628
1639
|
ServerLoggerProvider,
|
|
1629
1640
|
ServerNotReadyProvider,
|
|
1630
1641
|
ServerTimingProvider,
|
|
1631
|
-
HttpClient
|
|
1642
|
+
HttpClient,
|
|
1643
|
+
UserAgentParser,
|
|
1644
|
+
ServerRequestParser,
|
|
1645
|
+
ServerRouterProvider
|
|
1632
1646
|
],
|
|
1633
1647
|
register: (alepha) => {
|
|
1634
1648
|
if (!alepha.isServerless() && !alepha.isViteDev()) if (alepha.isBun()) alepha.with({
|