alepha 0.13.6 → 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 +793 -780
- 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/scheduler/index.d.ts +6 -6
- 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.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;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as alepha1 from "alepha";
|
|
2
2
|
import { Alepha, Async, KIND, Primitive, Static } from "alepha";
|
|
3
3
|
import * as alepha_lock0 from "alepha/lock";
|
|
4
4
|
import { DateTime, DateTimeProvider, DurationLike } from "alepha/datetime";
|
|
@@ -23,8 +23,8 @@ declare class CronProvider {
|
|
|
23
23
|
protected readonly log: alepha_logger0.Logger;
|
|
24
24
|
protected readonly cronJobs: Array<CronJob>;
|
|
25
25
|
getCronJobs(): Array<CronJob>;
|
|
26
|
-
protected readonly start:
|
|
27
|
-
protected readonly stop:
|
|
26
|
+
protected readonly start: alepha1.HookPrimitive<"start">;
|
|
27
|
+
protected readonly stop: alepha1.HookPrimitive<"stop">;
|
|
28
28
|
protected boot(name: string | CronJob): void;
|
|
29
29
|
abort(name: string | CronJob): void;
|
|
30
30
|
/**
|
|
@@ -87,8 +87,8 @@ type SchedulerPrimitiveOptions = {
|
|
|
87
87
|
*/
|
|
88
88
|
lock?: boolean;
|
|
89
89
|
};
|
|
90
|
-
declare const envSchema:
|
|
91
|
-
SCHEDULER_PREFIX:
|
|
90
|
+
declare const envSchema: alepha1.TObject<{
|
|
91
|
+
SCHEDULER_PREFIX: alepha1.TOptional<alepha1.TString>;
|
|
92
92
|
}>;
|
|
93
93
|
declare module "alepha" {
|
|
94
94
|
interface Env extends Partial<Static<typeof envSchema>> {}
|
|
@@ -139,7 +139,7 @@ declare module "alepha" {
|
|
|
139
139
|
* @see {@link $scheduler}
|
|
140
140
|
* @module alepha.scheduler
|
|
141
141
|
*/
|
|
142
|
-
declare const AlephaScheduler:
|
|
142
|
+
declare const AlephaScheduler: alepha1.Service<alepha1.Module>;
|
|
143
143
|
//#endregion
|
|
144
144
|
export { $scheduler, AlephaScheduler, CRON, CronJob, CronProvider, SchedulerHandlerArguments, SchedulerPrimitive, SchedulerPrimitiveOptions };
|
|
145
145
|
//# 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({
|