alepha 0.15.3 → 0.15.5
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 +26 -11
- package/dist/api/audits/index.d.ts +335 -335
- package/dist/api/audits/index.d.ts.map +1 -1
- package/dist/api/audits/index.js +11 -3
- package/dist/api/audits/index.js.map +1 -1
- package/dist/api/files/index.d.ts +3 -3
- package/dist/api/files/index.js +4 -3
- package/dist/api/files/index.js.map +1 -1
- package/dist/api/jobs/index.d.ts +198 -155
- package/dist/api/jobs/index.d.ts.map +1 -1
- package/dist/api/jobs/index.js +103 -5
- package/dist/api/jobs/index.js.map +1 -1
- package/dist/api/keys/index.d.ts +198 -198
- package/dist/api/keys/index.d.ts.map +1 -1
- package/dist/api/keys/index.js +3 -3
- package/dist/api/keys/index.js.map +1 -1
- package/dist/api/notifications/index.browser.js +1 -0
- package/dist/api/notifications/index.browser.js.map +1 -1
- package/dist/api/notifications/index.d.ts +3 -3
- package/dist/api/notifications/index.js +4 -3
- package/dist/api/notifications/index.js.map +1 -1
- package/dist/api/parameters/index.d.ts +263 -263
- package/dist/api/parameters/index.d.ts.map +1 -1
- package/dist/api/parameters/index.js +41 -30
- package/dist/api/parameters/index.js.map +1 -1
- package/dist/api/users/index.d.ts +383 -77
- package/dist/api/users/index.d.ts.map +1 -1
- package/dist/api/users/index.js +284 -72
- package/dist/api/users/index.js.map +1 -1
- package/dist/api/verifications/index.d.ts +131 -131
- package/dist/api/verifications/index.d.ts.map +1 -1
- package/dist/api/verifications/index.js +3 -3
- package/dist/api/verifications/index.js.map +1 -1
- package/dist/batch/index.d.ts +3 -3
- package/dist/batch/index.js +3 -3
- package/dist/batch/index.js.map +1 -1
- package/dist/bucket/index.d.ts +3 -3
- package/dist/bucket/index.js +6 -6
- package/dist/bucket/index.js.map +1 -1
- package/dist/cache/core/index.d.ts +3 -3
- package/dist/cache/core/index.js +3 -3
- package/dist/cache/core/index.js.map +1 -1
- package/dist/cli/index.d.ts +5612 -20
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +122 -91
- package/dist/cli/index.js.map +1 -1
- package/dist/command/index.d.ts +11 -4
- package/dist/command/index.d.ts.map +1 -1
- package/dist/command/index.js +8 -6
- package/dist/command/index.js.map +1 -1
- package/dist/core/index.browser.js.map +1 -1
- package/dist/core/index.d.ts +4 -8
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +3 -3
- package/dist/core/index.js.map +1 -1
- package/dist/core/index.native.js.map +1 -1
- package/dist/datetime/index.d.ts +3 -3
- package/dist/datetime/index.js +3 -3
- package/dist/datetime/index.js.map +1 -1
- package/dist/email/index.d.ts +16 -16
- package/dist/email/index.d.ts.map +1 -1
- package/dist/email/index.js +10562 -10
- package/dist/email/index.js.map +1 -1
- package/dist/fake/index.d.ts +3 -3
- package/dist/fake/index.js +3 -3
- package/dist/fake/index.js.map +1 -1
- package/dist/lock/core/index.d.ts +9 -4
- package/dist/lock/core/index.d.ts.map +1 -1
- package/dist/lock/core/index.js +12 -4
- package/dist/lock/core/index.js.map +1 -1
- package/dist/logger/index.d.ts +3 -3
- package/dist/logger/index.js +6 -3
- package/dist/logger/index.js.map +1 -1
- package/dist/mcp/index.d.ts +3 -3
- package/dist/mcp/index.js +3 -3
- package/dist/mcp/index.js.map +1 -1
- package/dist/orm/index.d.ts +12 -12
- package/dist/orm/index.js +4 -4
- package/dist/orm/index.js.map +1 -1
- package/dist/queue/core/index.d.ts +3 -3
- package/dist/queue/core/index.js +3 -3
- package/dist/queue/core/index.js.map +1 -1
- package/dist/react/auth/index.browser.js +2 -1
- package/dist/react/auth/index.browser.js.map +1 -1
- package/dist/react/auth/index.d.ts +3 -3
- package/dist/react/auth/index.js +5 -4
- package/dist/react/auth/index.js.map +1 -1
- package/dist/react/core/index.d.ts +6 -6
- package/dist/react/core/index.js +3 -3
- package/dist/react/core/index.js.map +1 -1
- package/dist/react/form/index.d.ts +3 -3
- package/dist/react/form/index.js +3 -3
- package/dist/react/form/index.js.map +1 -1
- package/dist/react/head/index.d.ts +3 -3
- package/dist/react/head/index.js +3 -3
- package/dist/react/head/index.js.map +1 -1
- package/dist/react/i18n/index.d.ts +3 -3
- package/dist/react/i18n/index.js +3 -3
- package/dist/react/i18n/index.js.map +1 -1
- package/dist/react/intro/index.css +337 -0
- package/dist/react/intro/index.css.map +1 -0
- package/dist/react/intro/index.d.ts +10 -0
- package/dist/react/intro/index.d.ts.map +1 -0
- package/dist/react/intro/index.js +222 -0
- package/dist/react/intro/index.js.map +1 -0
- package/dist/react/router/index.browser.js +2 -2
- package/dist/react/router/index.browser.js.map +1 -1
- package/dist/react/router/index.d.ts +11 -1
- package/dist/react/router/index.d.ts.map +1 -1
- package/dist/react/router/index.js +21 -11
- package/dist/react/router/index.js.map +1 -1
- package/dist/redis/index.d.ts +22 -22
- package/dist/redis/index.js +3 -3
- package/dist/redis/index.js.map +1 -1
- package/dist/retry/index.d.ts +3 -3
- package/dist/retry/index.js +3 -3
- package/dist/retry/index.js.map +1 -1
- package/dist/scheduler/index.d.ts +16 -4
- package/dist/scheduler/index.d.ts.map +1 -1
- package/dist/scheduler/index.js +45 -7
- package/dist/scheduler/index.js.map +1 -1
- package/dist/security/index.d.ts +3 -3
- package/dist/security/index.js +5 -5
- package/dist/security/index.js.map +1 -1
- package/dist/server/auth/index.d.ts +3 -3
- package/dist/server/auth/index.js +3 -3
- package/dist/server/auth/index.js.map +1 -1
- package/dist/server/cache/index.d.ts +3 -3
- package/dist/server/cache/index.js +3 -3
- package/dist/server/cache/index.js.map +1 -1
- package/dist/server/compress/index.d.ts +3 -3
- package/dist/server/compress/index.d.ts.map +1 -1
- package/dist/server/compress/index.js +4 -3
- package/dist/server/compress/index.js.map +1 -1
- package/dist/server/cookies/index.d.ts +3 -3
- package/dist/server/cookies/index.js +3 -3
- package/dist/server/cookies/index.js.map +1 -1
- package/dist/server/core/index.d.ts +14 -25
- package/dist/server/core/index.d.ts.map +1 -1
- package/dist/server/core/index.js +13 -29
- package/dist/server/core/index.js.map +1 -1
- package/dist/server/cors/index.d.ts +3 -3
- package/dist/server/cors/index.js +3 -3
- package/dist/server/cors/index.js.map +1 -1
- package/dist/server/health/index.d.ts +20 -20
- package/dist/server/health/index.js +3 -3
- package/dist/server/health/index.js.map +1 -1
- package/dist/server/helmet/index.d.ts +3 -3
- package/dist/server/helmet/index.js +3 -3
- package/dist/server/helmet/index.js.map +1 -1
- package/dist/server/links/index.d.ts +42 -42
- package/dist/server/links/index.d.ts.map +1 -1
- package/dist/server/links/index.js +4 -4
- package/dist/server/links/index.js.map +1 -1
- package/dist/server/metrics/index.d.ts +3 -3
- package/dist/server/metrics/index.js +3 -3
- package/dist/server/metrics/index.js.map +1 -1
- package/dist/server/multipart/index.d.ts +3 -3
- package/dist/server/multipart/index.js +3 -3
- package/dist/server/multipart/index.js.map +1 -1
- package/dist/server/proxy/index.d.ts +3 -3
- package/dist/server/proxy/index.js +3 -3
- package/dist/server/proxy/index.js.map +1 -1
- package/dist/server/rate-limit/index.d.ts +3 -3
- package/dist/server/rate-limit/index.js +3 -3
- package/dist/server/rate-limit/index.js.map +1 -1
- package/dist/server/static/index.d.ts +3 -3
- package/dist/server/static/index.js +6 -6
- package/dist/server/static/index.js.map +1 -1
- package/dist/server/swagger/index.d.ts +3 -3
- package/dist/server/swagger/index.js +6 -6
- package/dist/server/swagger/index.js.map +1 -1
- package/dist/sms/index.d.ts +3 -3
- package/dist/sms/index.js +6 -6
- package/dist/sms/index.js.map +1 -1
- package/dist/system/index.d.ts +3 -3
- package/dist/system/index.js +3 -3
- package/dist/system/index.js.map +1 -1
- package/dist/thread/index.d.ts +3 -3
- package/dist/thread/index.js +3 -3
- package/dist/thread/index.js.map +1 -1
- package/dist/topic/core/index.d.ts +3 -3
- package/dist/topic/core/index.js +3 -3
- package/dist/topic/core/index.js.map +1 -1
- package/dist/vite/index.d.ts +6286 -4
- package/dist/vite/index.d.ts.map +1 -1
- package/dist/vite/index.js +28 -2
- package/dist/vite/index.js.map +1 -1
- package/dist/websocket/index.d.ts +37 -37
- package/dist/websocket/index.d.ts.map +1 -1
- package/dist/websocket/index.js +3 -3
- package/dist/websocket/index.js.map +1 -1
- package/package.json +12 -4
- package/src/api/audits/controllers/AdminAuditController.ts +8 -0
- package/src/api/audits/index.ts +3 -3
- package/src/api/files/controllers/AdminFileStatsController.ts +1 -0
- package/src/api/files/index.ts +3 -3
- package/src/api/jobs/controllers/AdminJobController.ts +18 -2
- package/src/api/jobs/index.ts +4 -3
- package/src/api/jobs/services/JobAudits.spec.ts +89 -0
- package/src/api/jobs/services/JobAudits.ts +101 -0
- package/src/api/keys/index.ts +3 -3
- package/src/api/notifications/controllers/AdminNotificationController.ts +1 -0
- package/src/api/notifications/index.ts +3 -3
- package/src/api/parameters/controllers/AdminConfigController.ts +10 -0
- package/src/api/parameters/index.ts +5 -3
- package/src/api/users/__tests__/ApiKeys-integration.spec.ts +1 -1
- package/src/api/users/__tests__/ApiKeys.spec.ts +1 -1
- package/src/api/users/__tests__/EmailVerification.spec.ts +16 -1
- package/src/api/users/__tests__/PasswordReset.spec.ts +11 -0
- package/src/api/users/atoms/realmAuthSettingsAtom.ts +10 -0
- package/src/api/users/controllers/AdminIdentityController.ts +3 -0
- package/src/api/users/controllers/AdminSessionController.ts +3 -0
- package/src/api/users/controllers/AdminUserController.ts +5 -0
- package/src/api/users/index.ts +8 -9
- package/src/api/users/primitives/$realm.ts +117 -19
- package/src/api/users/providers/RealmProvider.ts +15 -7
- package/src/api/users/services/CredentialService.spec.ts +11 -0
- package/src/api/users/services/CredentialService.ts +47 -24
- package/src/api/users/services/IdentityService.ts +12 -4
- package/src/api/users/services/RegistrationService.spec.ts +11 -0
- package/src/api/users/services/RegistrationService.ts +33 -12
- package/src/api/users/services/SessionService.ts +83 -12
- package/src/api/users/services/UserAudits.ts +47 -0
- package/src/api/users/services/UserFiles.ts +19 -0
- package/src/api/users/services/UserJobs.spec.ts +107 -0
- package/src/api/users/services/UserJobs.ts +62 -0
- package/src/api/users/services/UserParameters.ts +23 -0
- package/src/api/users/services/UserService.ts +34 -17
- package/src/api/verifications/index.ts +3 -3
- package/src/batch/index.ts +3 -3
- package/src/bucket/index.ts +3 -3
- package/src/cache/core/index.ts +3 -3
- package/src/cli/commands/build.ts +1 -0
- package/src/cli/commands/db.ts +9 -0
- package/src/cli/commands/init.spec.ts +2 -17
- package/src/cli/commands/init.ts +37 -1
- package/src/cli/providers/ViteDevServerProvider.ts +36 -2
- package/src/cli/services/AlephaCliUtils.ts +17 -0
- package/src/cli/services/PackageManagerUtils.ts +15 -1
- package/src/cli/services/ProjectScaffolder.ts +8 -13
- package/src/cli/templates/agentMd.ts +2 -25
- package/src/cli/templates/apiAppSecurityTs.ts +37 -2
- package/src/cli/templates/mainCss.ts +2 -32
- package/src/cli/templates/webAppRouterTs.ts +5 -5
- package/src/cli/templates/webHomeComponentTsx.ts +10 -0
- package/src/command/helpers/Runner.ts +14 -1
- package/src/command/index.ts +3 -3
- package/src/core/helpers/primitive.ts +0 -5
- package/src/core/index.ts +3 -3
- package/src/datetime/index.ts +3 -3
- package/src/email/index.ts +3 -3
- package/src/email/index.workerd.ts +36 -0
- package/src/email/providers/LocalEmailProvider.ts +2 -2
- package/src/email/providers/WorkermailerEmailProvider.ts +221 -0
- package/src/fake/index.ts +3 -3
- package/src/lock/core/index.ts +3 -3
- package/src/lock/core/primitives/$lock.ts +13 -1
- package/src/logger/index.ts +3 -3
- package/src/logger/providers/PrettyFormatterProvider.ts +7 -0
- package/src/mcp/index.ts +3 -3
- package/src/orm/index.ts +3 -3
- package/src/orm/providers/drivers/NodeSqliteProvider.ts +1 -1
- package/src/queue/core/index.ts +3 -3
- package/src/react/auth/index.ts +3 -3
- package/src/react/auth/services/ReactAuth.ts +3 -1
- package/src/react/core/index.ts +3 -3
- package/src/react/form/index.ts +3 -3
- package/src/react/head/index.ts +3 -3
- package/src/react/i18n/index.ts +3 -3
- package/src/react/intro/components/GettingStarted.css +334 -0
- package/src/react/intro/components/GettingStarted.tsx +276 -0
- package/src/react/intro/index.ts +1 -0
- package/src/react/router/atoms/ssrManifestAtom.ts +7 -0
- package/src/react/router/index.browser.ts +2 -0
- package/src/react/router/index.ts +2 -0
- package/src/react/router/providers/ReactServerProvider.ts +14 -4
- package/src/react/router/providers/SSRManifestProvider.ts +7 -0
- package/src/redis/index.ts +3 -3
- package/src/retry/index.ts +3 -3
- package/src/router/index.ts +3 -3
- package/src/scheduler/index.ts +3 -3
- package/src/scheduler/index.workerd.ts +43 -0
- package/src/scheduler/providers/CronProvider.ts +53 -6
- package/src/scheduler/providers/WorkerdCronProvider.ts +102 -0
- package/src/security/index.ts +3 -3
- package/src/security/providers/JwtProvider.ts +2 -2
- package/src/server/auth/index.ts +3 -3
- package/src/server/cache/index.ts +3 -3
- package/src/server/compress/index.ts +3 -3
- package/src/server/compress/providers/ServerCompressProvider.ts +6 -0
- package/src/server/cookies/index.ts +3 -3
- package/src/server/core/index.ts +3 -3
- package/src/server/core/primitives/$action.spec.ts +3 -2
- package/src/server/core/primitives/$action.ts +6 -2
- package/src/server/core/providers/NodeHttpServerProvider.ts +2 -15
- package/src/server/core/providers/ServerProvider.ts +4 -2
- package/src/server/core/providers/ServerRouterProvider.ts +5 -27
- package/src/server/cors/index.ts +3 -3
- package/src/server/health/index.ts +3 -3
- package/src/server/helmet/index.ts +3 -3
- package/src/server/links/index.ts +3 -3
- package/src/server/links/providers/ServerLinksProvider.spec.ts +332 -0
- package/src/server/links/providers/ServerLinksProvider.ts +1 -1
- package/src/server/metrics/index.ts +3 -3
- package/src/server/multipart/index.ts +3 -3
- package/src/server/proxy/index.ts +3 -3
- package/src/server/rate-limit/index.ts +3 -3
- package/src/server/static/index.ts +3 -3
- package/src/server/swagger/index.ts +3 -3
- package/src/sms/index.ts +3 -3
- package/src/system/index.ts +3 -3
- package/src/thread/index.ts +3 -3
- package/src/topic/core/index.ts +3 -3
- package/src/vite/tasks/generateCloudflare.ts +38 -2
- package/src/websocket/index.ts +3 -3
- package/src/cli/templates/webHelloComponentTsx.ts +0 -30
- /package/src/api/users/{notifications → services}/UserNotifications.ts +0 -0
package/dist/api/jobs/index.d.ts
CHANGED
|
@@ -1,5 +1,7 @@
|
|
|
1
|
-
import * as
|
|
1
|
+
import * as alepha179 from "alepha";
|
|
2
2
|
import { Alepha, Async, KIND, Primitive, Static, TNull, TObject, TOptional, TSchema, TUnion } from "alepha";
|
|
3
|
+
import * as alepha_api_audits0 from "alepha/api/audits";
|
|
4
|
+
import { AuditLogOptions } from "alepha/api/audits";
|
|
3
5
|
import * as alepha_server0 from "alepha/server";
|
|
4
6
|
import * as alepha_orm0 from "alepha/orm";
|
|
5
7
|
import "alepha/logger";
|
|
@@ -229,76 +231,76 @@ interface PgRefOptions {
|
|
|
229
231
|
type PgAttr<T extends TSchema, TAttr extends PgSymbolKeys> = T & { [K in TAttr]: PgSymbols[K] };
|
|
230
232
|
//#endregion
|
|
231
233
|
//#region ../../src/api/jobs/schemas/jobExecutionQuerySchema.d.ts
|
|
232
|
-
declare const jobExecutionQuerySchema:
|
|
233
|
-
page:
|
|
234
|
-
size:
|
|
235
|
-
sort:
|
|
236
|
-
status:
|
|
237
|
-
job:
|
|
234
|
+
declare const jobExecutionQuerySchema: alepha179.TObject<{
|
|
235
|
+
page: alepha179.TOptional<alepha179.TInteger>;
|
|
236
|
+
size: alepha179.TOptional<alepha179.TInteger>;
|
|
237
|
+
sort: alepha179.TOptional<alepha179.TString>;
|
|
238
|
+
status: alepha179.TOptional<alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">>;
|
|
239
|
+
job: alepha179.TOptional<alepha179.TString>;
|
|
238
240
|
}>;
|
|
239
241
|
type JobExecutionQuery = Static<typeof jobExecutionQuerySchema>;
|
|
240
242
|
//#endregion
|
|
241
243
|
//#region ../../src/api/jobs/services/JobService.d.ts
|
|
242
244
|
declare class JobService {
|
|
243
245
|
protected readonly alepha: Alepha;
|
|
244
|
-
protected readonly executionRepository: alepha_orm0.Repository<
|
|
245
|
-
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
246
|
-
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
247
|
-
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
248
|
-
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
249
|
-
finishedAt:
|
|
250
|
-
job:
|
|
251
|
-
status:
|
|
252
|
-
error:
|
|
253
|
-
logs:
|
|
254
|
-
level:
|
|
255
|
-
message:
|
|
256
|
-
service:
|
|
257
|
-
module:
|
|
258
|
-
context:
|
|
259
|
-
app:
|
|
260
|
-
data:
|
|
261
|
-
timestamp:
|
|
246
|
+
protected readonly executionRepository: alepha_orm0.Repository<alepha179.TObject<{
|
|
247
|
+
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_PRIMARY_KEY>, typeof alepha_orm0.PG_DEFAULT>;
|
|
248
|
+
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TInteger, typeof alepha_orm0.PG_VERSION>, typeof alepha_orm0.PG_DEFAULT>;
|
|
249
|
+
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_CREATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
250
|
+
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_UPDATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
251
|
+
finishedAt: alepha179.TOptional<alepha179.TString>;
|
|
252
|
+
job: alepha179.TString;
|
|
253
|
+
status: alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">;
|
|
254
|
+
error: alepha179.TOptional<alepha179.TString>;
|
|
255
|
+
logs: alepha179.TOptional<alepha179.TArray<alepha179.TObject<{
|
|
256
|
+
level: alepha179.TUnsafe<"SILENT" | "TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR">;
|
|
257
|
+
message: alepha179.TString;
|
|
258
|
+
service: alepha179.TString;
|
|
259
|
+
module: alepha179.TString;
|
|
260
|
+
context: alepha179.TOptional<alepha179.TString>;
|
|
261
|
+
app: alepha179.TOptional<alepha179.TString>;
|
|
262
|
+
data: alepha179.TOptional<alepha179.TAny>;
|
|
263
|
+
timestamp: alepha179.TNumber;
|
|
262
264
|
}>>>;
|
|
263
265
|
}>>;
|
|
264
266
|
getJobs(): Promise<string[]>;
|
|
265
|
-
getJobExecutions(query?: JobExecutionQuery): Promise<
|
|
266
|
-
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
267
|
-
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
268
|
-
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
269
|
-
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
270
|
-
finishedAt:
|
|
271
|
-
job:
|
|
272
|
-
status:
|
|
273
|
-
error:
|
|
274
|
-
logs:
|
|
275
|
-
level:
|
|
276
|
-
message:
|
|
277
|
-
service:
|
|
278
|
-
module:
|
|
279
|
-
context:
|
|
280
|
-
app:
|
|
281
|
-
data:
|
|
282
|
-
timestamp:
|
|
267
|
+
getJobExecutions(query?: JobExecutionQuery): Promise<alepha179.Page<alepha_orm0.PgStatic<alepha179.TObject<{
|
|
268
|
+
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_PRIMARY_KEY>, typeof alepha_orm0.PG_DEFAULT>;
|
|
269
|
+
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TInteger, typeof alepha_orm0.PG_VERSION>, typeof alepha_orm0.PG_DEFAULT>;
|
|
270
|
+
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_CREATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
271
|
+
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_UPDATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
272
|
+
finishedAt: alepha179.TOptional<alepha179.TString>;
|
|
273
|
+
job: alepha179.TString;
|
|
274
|
+
status: alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">;
|
|
275
|
+
error: alepha179.TOptional<alepha179.TString>;
|
|
276
|
+
logs: alepha179.TOptional<alepha179.TArray<alepha179.TObject<{
|
|
277
|
+
level: alepha179.TUnsafe<"SILENT" | "TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR">;
|
|
278
|
+
message: alepha179.TString;
|
|
279
|
+
service: alepha179.TString;
|
|
280
|
+
module: alepha179.TString;
|
|
281
|
+
context: alepha179.TOptional<alepha179.TString>;
|
|
282
|
+
app: alepha179.TOptional<alepha179.TString>;
|
|
283
|
+
data: alepha179.TOptional<alepha179.TAny>;
|
|
284
|
+
timestamp: alepha179.TNumber;
|
|
283
285
|
}>>>;
|
|
284
|
-
}>, alepha_orm0.PgRelationMap<
|
|
285
|
-
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
286
|
-
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
287
|
-
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
288
|
-
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
289
|
-
finishedAt:
|
|
290
|
-
job:
|
|
291
|
-
status:
|
|
292
|
-
error:
|
|
293
|
-
logs:
|
|
294
|
-
level:
|
|
295
|
-
message:
|
|
296
|
-
service:
|
|
297
|
-
module:
|
|
298
|
-
context:
|
|
299
|
-
app:
|
|
300
|
-
data:
|
|
301
|
-
timestamp:
|
|
286
|
+
}>, alepha_orm0.PgRelationMap<alepha179.TObject<{
|
|
287
|
+
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_PRIMARY_KEY>, typeof alepha_orm0.PG_DEFAULT>;
|
|
288
|
+
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TInteger, typeof alepha_orm0.PG_VERSION>, typeof alepha_orm0.PG_DEFAULT>;
|
|
289
|
+
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_CREATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
290
|
+
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_UPDATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
291
|
+
finishedAt: alepha179.TOptional<alepha179.TString>;
|
|
292
|
+
job: alepha179.TString;
|
|
293
|
+
status: alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">;
|
|
294
|
+
error: alepha179.TOptional<alepha179.TString>;
|
|
295
|
+
logs: alepha179.TOptional<alepha179.TArray<alepha179.TObject<{
|
|
296
|
+
level: alepha179.TUnsafe<"SILENT" | "TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR">;
|
|
297
|
+
message: alepha179.TString;
|
|
298
|
+
service: alepha179.TString;
|
|
299
|
+
module: alepha179.TString;
|
|
300
|
+
context: alepha179.TOptional<alepha179.TString>;
|
|
301
|
+
app: alepha179.TOptional<alepha179.TString>;
|
|
302
|
+
data: alepha179.TOptional<alepha179.TAny>;
|
|
303
|
+
timestamp: alepha179.TNumber;
|
|
302
304
|
}>>>;
|
|
303
305
|
}>>>>>;
|
|
304
306
|
triggerJob(name: string): Promise<{
|
|
@@ -310,77 +312,78 @@ declare class JobService {
|
|
|
310
312
|
declare class AdminJobController {
|
|
311
313
|
protected readonly url: string;
|
|
312
314
|
protected readonly group: string;
|
|
315
|
+
protected readonly alepha: Alepha;
|
|
313
316
|
protected readonly jobService: JobService;
|
|
314
317
|
readonly getJobs: alepha_server0.ActionPrimitiveFn<{
|
|
315
|
-
response:
|
|
318
|
+
response: alepha179.TArray<alepha179.TString>;
|
|
316
319
|
}>;
|
|
317
320
|
readonly getJobExecutions: alepha_server0.ActionPrimitiveFn<{
|
|
318
|
-
query:
|
|
319
|
-
page:
|
|
320
|
-
size:
|
|
321
|
-
sort:
|
|
322
|
-
status:
|
|
323
|
-
job:
|
|
321
|
+
query: alepha179.TObject<{
|
|
322
|
+
page: alepha179.TOptional<alepha179.TInteger>;
|
|
323
|
+
size: alepha179.TOptional<alepha179.TInteger>;
|
|
324
|
+
sort: alepha179.TOptional<alepha179.TString>;
|
|
325
|
+
status: alepha179.TOptional<alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">>;
|
|
326
|
+
job: alepha179.TOptional<alepha179.TString>;
|
|
324
327
|
}>;
|
|
325
|
-
response:
|
|
326
|
-
id: PgAttr<PgAttr<
|
|
327
|
-
version: PgAttr<PgAttr<
|
|
328
|
-
createdAt: PgAttr<PgAttr<
|
|
329
|
-
updatedAt: PgAttr<PgAttr<
|
|
330
|
-
finishedAt:
|
|
331
|
-
job:
|
|
332
|
-
status:
|
|
333
|
-
error:
|
|
334
|
-
logs:
|
|
335
|
-
level:
|
|
336
|
-
message:
|
|
337
|
-
service:
|
|
338
|
-
module:
|
|
339
|
-
context:
|
|
340
|
-
app:
|
|
341
|
-
data:
|
|
342
|
-
timestamp:
|
|
328
|
+
response: alepha179.TPage<alepha179.TObject<{
|
|
329
|
+
id: PgAttr<PgAttr<alepha179.TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
|
|
330
|
+
version: PgAttr<PgAttr<alepha179.TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
|
|
331
|
+
createdAt: PgAttr<PgAttr<alepha179.TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
|
|
332
|
+
updatedAt: PgAttr<PgAttr<alepha179.TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
|
|
333
|
+
finishedAt: alepha179.TOptional<alepha179.TString>;
|
|
334
|
+
job: alepha179.TString;
|
|
335
|
+
status: alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">;
|
|
336
|
+
error: alepha179.TOptional<alepha179.TString>;
|
|
337
|
+
logs: alepha179.TOptional<alepha179.TArray<alepha179.TObject<{
|
|
338
|
+
level: alepha179.TUnsafe<"SILENT" | "TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR">;
|
|
339
|
+
message: alepha179.TString;
|
|
340
|
+
service: alepha179.TString;
|
|
341
|
+
module: alepha179.TString;
|
|
342
|
+
context: alepha179.TOptional<alepha179.TString>;
|
|
343
|
+
app: alepha179.TOptional<alepha179.TString>;
|
|
344
|
+
data: alepha179.TOptional<alepha179.TAny>;
|
|
345
|
+
timestamp: alepha179.TNumber;
|
|
343
346
|
}>>>;
|
|
344
347
|
}>>;
|
|
345
348
|
}>;
|
|
346
349
|
readonly triggerJob: alepha_server0.ActionPrimitiveFn<{
|
|
347
|
-
body:
|
|
348
|
-
name:
|
|
350
|
+
body: alepha179.TObject<{
|
|
351
|
+
name: alepha179.TString;
|
|
349
352
|
}>;
|
|
350
|
-
response:
|
|
351
|
-
ok:
|
|
352
|
-
id:
|
|
353
|
-
count:
|
|
353
|
+
response: alepha179.TObject<{
|
|
354
|
+
ok: alepha179.TBoolean;
|
|
355
|
+
id: alepha179.TOptional<alepha179.TUnion<[alepha179.TString, alepha179.TInteger]>>;
|
|
356
|
+
count: alepha179.TOptional<alepha179.TNumber>;
|
|
354
357
|
}>;
|
|
355
358
|
}>;
|
|
356
359
|
}
|
|
357
360
|
//#endregion
|
|
358
361
|
//#region ../../src/api/jobs/entities/jobExecutions.d.ts
|
|
359
|
-
declare const jobExecutions: alepha_orm0.EntityPrimitive<
|
|
360
|
-
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
361
|
-
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
362
|
-
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
363
|
-
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
364
|
-
finishedAt:
|
|
365
|
-
job:
|
|
366
|
-
status:
|
|
367
|
-
error:
|
|
368
|
-
logs:
|
|
369
|
-
level:
|
|
370
|
-
message:
|
|
371
|
-
service:
|
|
372
|
-
module:
|
|
373
|
-
context:
|
|
374
|
-
app:
|
|
375
|
-
data:
|
|
376
|
-
timestamp:
|
|
362
|
+
declare const jobExecutions: alepha_orm0.EntityPrimitive<alepha179.TObject<{
|
|
363
|
+
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_PRIMARY_KEY>, typeof alepha_orm0.PG_DEFAULT>;
|
|
364
|
+
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TInteger, typeof alepha_orm0.PG_VERSION>, typeof alepha_orm0.PG_DEFAULT>;
|
|
365
|
+
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_CREATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
366
|
+
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_UPDATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
367
|
+
finishedAt: alepha179.TOptional<alepha179.TString>;
|
|
368
|
+
job: alepha179.TString;
|
|
369
|
+
status: alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">;
|
|
370
|
+
error: alepha179.TOptional<alepha179.TString>;
|
|
371
|
+
logs: alepha179.TOptional<alepha179.TArray<alepha179.TObject<{
|
|
372
|
+
level: alepha179.TUnsafe<"SILENT" | "TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR">;
|
|
373
|
+
message: alepha179.TString;
|
|
374
|
+
service: alepha179.TString;
|
|
375
|
+
module: alepha179.TString;
|
|
376
|
+
context: alepha179.TOptional<alepha179.TString>;
|
|
377
|
+
app: alepha179.TOptional<alepha179.TString>;
|
|
378
|
+
data: alepha179.TOptional<alepha179.TAny>;
|
|
379
|
+
timestamp: alepha179.TNumber;
|
|
377
380
|
}>>>;
|
|
378
381
|
}>>;
|
|
379
382
|
type JobExecutionEntity = Static<typeof jobExecutions.schema>;
|
|
380
383
|
//#endregion
|
|
381
384
|
//#region ../../src/api/jobs/providers/JobProvider.d.ts
|
|
382
|
-
declare const envSchema:
|
|
383
|
-
JOB_PREFIX:
|
|
385
|
+
declare const envSchema: alepha179.TObject<{
|
|
386
|
+
JOB_PREFIX: alepha179.TOptional<alepha179.TString>;
|
|
384
387
|
}>;
|
|
385
388
|
declare module "alepha" {
|
|
386
389
|
interface Env extends Partial<Static<typeof envSchema>> {}
|
|
@@ -393,24 +396,24 @@ declare class JobProvider {
|
|
|
393
396
|
protected readonly alepha: Alepha;
|
|
394
397
|
protected readonly dateTimeProvider: DateTimeProvider;
|
|
395
398
|
protected readonly cronProvider: CronProvider;
|
|
396
|
-
protected readonly executionRepository: alepha_orm0.Repository<
|
|
397
|
-
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
398
|
-
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
399
|
-
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
400
|
-
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<
|
|
401
|
-
finishedAt:
|
|
402
|
-
job:
|
|
403
|
-
status:
|
|
404
|
-
error:
|
|
405
|
-
logs:
|
|
406
|
-
level:
|
|
407
|
-
message:
|
|
408
|
-
service:
|
|
409
|
-
module:
|
|
410
|
-
context:
|
|
411
|
-
app:
|
|
412
|
-
data:
|
|
413
|
-
timestamp:
|
|
399
|
+
protected readonly executionRepository: alepha_orm0.Repository<alepha179.TObject<{
|
|
400
|
+
id: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_PRIMARY_KEY>, typeof alepha_orm0.PG_DEFAULT>;
|
|
401
|
+
version: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TInteger, typeof alepha_orm0.PG_VERSION>, typeof alepha_orm0.PG_DEFAULT>;
|
|
402
|
+
createdAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_CREATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
403
|
+
updatedAt: alepha_orm0.PgAttr<alepha_orm0.PgAttr<alepha179.TString, typeof alepha_orm0.PG_UPDATED_AT>, typeof alepha_orm0.PG_DEFAULT>;
|
|
404
|
+
finishedAt: alepha179.TOptional<alepha179.TString>;
|
|
405
|
+
job: alepha179.TString;
|
|
406
|
+
status: alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">;
|
|
407
|
+
error: alepha179.TOptional<alepha179.TString>;
|
|
408
|
+
logs: alepha179.TOptional<alepha179.TArray<alepha179.TObject<{
|
|
409
|
+
level: alepha179.TUnsafe<"SILENT" | "TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR">;
|
|
410
|
+
message: alepha179.TString;
|
|
411
|
+
service: alepha179.TString;
|
|
412
|
+
module: alepha179.TString;
|
|
413
|
+
context: alepha179.TOptional<alepha179.TString>;
|
|
414
|
+
app: alepha179.TOptional<alepha179.TString>;
|
|
415
|
+
data: alepha179.TOptional<alepha179.TAny>;
|
|
416
|
+
timestamp: alepha179.TNumber;
|
|
414
417
|
}>>>;
|
|
415
418
|
}>>;
|
|
416
419
|
protected readonly env: {
|
|
@@ -504,39 +507,79 @@ interface JobHandlerArguments {
|
|
|
504
507
|
}
|
|
505
508
|
//#endregion
|
|
506
509
|
//#region ../../src/api/jobs/schemas/jobExecutionResourceSchema.d.ts
|
|
507
|
-
declare const jobExecutionResourceSchema:
|
|
508
|
-
id: PgAttr<PgAttr<
|
|
509
|
-
version: PgAttr<PgAttr<
|
|
510
|
-
createdAt: PgAttr<PgAttr<
|
|
511
|
-
updatedAt: PgAttr<PgAttr<
|
|
512
|
-
finishedAt:
|
|
513
|
-
job:
|
|
514
|
-
status:
|
|
515
|
-
error:
|
|
516
|
-
logs:
|
|
517
|
-
level:
|
|
518
|
-
message:
|
|
519
|
-
service:
|
|
520
|
-
module:
|
|
521
|
-
context:
|
|
522
|
-
app:
|
|
523
|
-
data:
|
|
524
|
-
timestamp:
|
|
510
|
+
declare const jobExecutionResourceSchema: alepha179.TObject<{
|
|
511
|
+
id: PgAttr<PgAttr<alepha179.TString, typeof PG_PRIMARY_KEY>, typeof PG_DEFAULT>;
|
|
512
|
+
version: PgAttr<PgAttr<alepha179.TInteger, typeof PG_VERSION>, typeof PG_DEFAULT>;
|
|
513
|
+
createdAt: PgAttr<PgAttr<alepha179.TString, typeof PG_CREATED_AT>, typeof PG_DEFAULT>;
|
|
514
|
+
updatedAt: PgAttr<PgAttr<alepha179.TString, typeof PG_UPDATED_AT>, typeof PG_DEFAULT>;
|
|
515
|
+
finishedAt: alepha179.TOptional<alepha179.TString>;
|
|
516
|
+
job: alepha179.TString;
|
|
517
|
+
status: alepha179.TUnsafe<"STARTED" | "FAILED" | "COMPLETED">;
|
|
518
|
+
error: alepha179.TOptional<alepha179.TString>;
|
|
519
|
+
logs: alepha179.TOptional<alepha179.TArray<alepha179.TObject<{
|
|
520
|
+
level: alepha179.TUnsafe<"SILENT" | "TRACE" | "DEBUG" | "INFO" | "WARN" | "ERROR">;
|
|
521
|
+
message: alepha179.TString;
|
|
522
|
+
service: alepha179.TString;
|
|
523
|
+
module: alepha179.TString;
|
|
524
|
+
context: alepha179.TOptional<alepha179.TString>;
|
|
525
|
+
app: alepha179.TOptional<alepha179.TString>;
|
|
526
|
+
data: alepha179.TOptional<alepha179.TAny>;
|
|
527
|
+
timestamp: alepha179.TNumber;
|
|
525
528
|
}>>>;
|
|
526
529
|
}>;
|
|
527
530
|
type JobExecutionResource = Static<typeof jobExecutionResourceSchema>;
|
|
528
531
|
//#endregion
|
|
529
532
|
//#region ../../src/api/jobs/schemas/triggerJobSchema.d.ts
|
|
530
|
-
declare const triggerJobSchema:
|
|
531
|
-
name:
|
|
533
|
+
declare const triggerJobSchema: alepha179.TObject<{
|
|
534
|
+
name: alepha179.TString;
|
|
532
535
|
}>;
|
|
533
536
|
type TriggerJob = Static<typeof triggerJobSchema>;
|
|
534
537
|
//#endregion
|
|
538
|
+
//#region ../../src/api/jobs/services/JobAudits.d.ts
|
|
539
|
+
/**
|
|
540
|
+
* Job-specific audit service.
|
|
541
|
+
*
|
|
542
|
+
* Provides type-safe audit logging for job-related events.
|
|
543
|
+
* This service is lazy-loaded when the audits feature is enabled.
|
|
544
|
+
*
|
|
545
|
+
* @example
|
|
546
|
+
* ```ts
|
|
547
|
+
* const jobAudits = alepha.inject(JobAudits);
|
|
548
|
+
* await jobAudits.logTrigger("my-job", { description: "Manually triggered" });
|
|
549
|
+
* ```
|
|
550
|
+
*/
|
|
551
|
+
declare class JobAudits {
|
|
552
|
+
protected readonly audit: alepha_api_audits0.AuditPrimitive;
|
|
553
|
+
/**
|
|
554
|
+
* Log a manual job trigger event.
|
|
555
|
+
*/
|
|
556
|
+
logTrigger(jobName: string, options?: Omit<AuditLogOptions, "resourceType" | "resourceId">): Promise<void>;
|
|
557
|
+
/**
|
|
558
|
+
* Log a job pause event.
|
|
559
|
+
*/
|
|
560
|
+
logPause(jobName: string, options?: Omit<AuditLogOptions, "resourceType" | "resourceId">): Promise<void>;
|
|
561
|
+
/**
|
|
562
|
+
* Log a job resume event.
|
|
563
|
+
*/
|
|
564
|
+
logResume(jobName: string, options?: Omit<AuditLogOptions, "resourceType" | "resourceId">): Promise<void>;
|
|
565
|
+
/**
|
|
566
|
+
* Log a job cancellation event.
|
|
567
|
+
*/
|
|
568
|
+
logCancel(jobName: string, options?: Omit<AuditLogOptions, "resourceType" | "resourceId">): Promise<void>;
|
|
569
|
+
/**
|
|
570
|
+
* Log a job schedule change event.
|
|
571
|
+
*/
|
|
572
|
+
logScheduleChange(jobName: string, options?: Omit<AuditLogOptions, "resourceType" | "resourceId"> & {
|
|
573
|
+
oldCron?: string;
|
|
574
|
+
newCron?: string;
|
|
575
|
+
}): Promise<void>;
|
|
576
|
+
}
|
|
577
|
+
//#endregion
|
|
535
578
|
//#region ../../src/api/jobs/index.d.ts
|
|
536
579
|
/**
|
|
537
|
-
* |
|
|
538
|
-
*
|
|
539
|
-
* |
|
|
580
|
+
* | Stability | Since | Runtime |
|
|
581
|
+
* |-----------|-------|---------|
|
|
582
|
+
* | 3 - stable | 0.8.0 | node, bun|
|
|
540
583
|
*
|
|
541
584
|
* Job execution monitoring.
|
|
542
585
|
*
|
|
@@ -548,7 +591,7 @@ type TriggerJob = Static<typeof triggerJobSchema>;
|
|
|
548
591
|
*
|
|
549
592
|
* @module alepha.api.jobs
|
|
550
593
|
*/
|
|
551
|
-
declare const AlephaApiJobs:
|
|
594
|
+
declare const AlephaApiJobs: alepha179.Service<alepha179.Module>;
|
|
552
595
|
//#endregion
|
|
553
|
-
export { $job, AdminJobController, AlephaApiJobs, Job, JobExecutionEntity, JobExecutionQuery, JobExecutionResource, JobHandlerArguments, JobPrimitive, JobPrimitiveOptions, JobProvider, JobRegistration, JobService, TriggerJob, jobExecutionQuerySchema, jobExecutionResourceSchema, jobExecutions, triggerJobSchema };
|
|
596
|
+
export { $job, AdminJobController, AlephaApiJobs, Job, JobAudits, JobExecutionEntity, JobExecutionQuery, JobExecutionResource, JobHandlerArguments, JobPrimitive, JobPrimitiveOptions, JobProvider, JobRegistration, JobService, TriggerJob, jobExecutionQuerySchema, jobExecutionResourceSchema, jobExecutions, triggerJobSchema };
|
|
554
597
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/orm/schemas/insertSchema.ts","../../../src/orm/schemas/updateSchema.ts","../../../src/orm/primitives/$entity.ts","../../../src/orm/constants/PG_SYMBOLS.ts","../../../src/orm/helpers/pgAttr.ts","../../../src/api/jobs/schemas/jobExecutionQuerySchema.ts","../../../src/api/jobs/services/JobService.ts","../../../src/api/jobs/controllers/AdminJobController.ts","../../../src/api/jobs/entities/jobExecutions.ts","../../../src/api/jobs/providers/JobProvider.ts","../../../src/api/jobs/primitives/$job.ts","../../../src/api/jobs/schemas/jobExecutionResourceSchema.ts","../../../src/api/jobs/schemas/triggerJobSchema.ts","../../../src/api/jobs/index.ts"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../../../src/orm/schemas/insertSchema.ts","../../../src/orm/schemas/updateSchema.ts","../../../src/orm/primitives/$entity.ts","../../../src/orm/constants/PG_SYMBOLS.ts","../../../src/orm/helpers/pgAttr.ts","../../../src/api/jobs/schemas/jobExecutionQuerySchema.ts","../../../src/api/jobs/services/JobService.ts","../../../src/api/jobs/controllers/AdminJobController.ts","../../../src/api/jobs/entities/jobExecutions.ts","../../../src/api/jobs/providers/JobProvider.ts","../../../src/api/jobs/primitives/$job.ts","../../../src/api/jobs/schemas/jobExecutionResourceSchema.ts","../../../src/api/jobs/schemas/triggerJobSchema.ts","../../../src/api/jobs/services/JobAudits.ts","../../../src/api/jobs/index.ts"],"mappings":"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"}
|
package/dist/api/jobs/index.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { $env, $inject, $module, Alepha, KIND, Primitive, createPrimitive, t } from "alepha";
|
|
2
|
+
import { $audit, AlephaApiAudits } from "alepha/api/audits";
|
|
2
3
|
import { $action, okSchema } from "alepha/server";
|
|
3
4
|
import { $entity, $repository, db, pageQuerySchema } from "alepha/orm";
|
|
4
5
|
import { logEntrySchema } from "alepha/logger";
|
|
@@ -48,6 +49,95 @@ const jobExecutionResourceSchema = t.extend(jobExecutions.schema, {}, {
|
|
|
48
49
|
//#region ../../src/api/jobs/schemas/triggerJobSchema.ts
|
|
49
50
|
const triggerJobSchema = t.object({ name: t.string() });
|
|
50
51
|
|
|
52
|
+
//#endregion
|
|
53
|
+
//#region ../../src/api/jobs/services/JobAudits.ts
|
|
54
|
+
/**
|
|
55
|
+
* Job-specific audit service.
|
|
56
|
+
*
|
|
57
|
+
* Provides type-safe audit logging for job-related events.
|
|
58
|
+
* This service is lazy-loaded when the audits feature is enabled.
|
|
59
|
+
*
|
|
60
|
+
* @example
|
|
61
|
+
* ```ts
|
|
62
|
+
* const jobAudits = alepha.inject(JobAudits);
|
|
63
|
+
* await jobAudits.logTrigger("my-job", { description: "Manually triggered" });
|
|
64
|
+
* ```
|
|
65
|
+
*/
|
|
66
|
+
var JobAudits = class {
|
|
67
|
+
audit = $audit({
|
|
68
|
+
type: "job",
|
|
69
|
+
description: "Background job execution events",
|
|
70
|
+
actions: [
|
|
71
|
+
"trigger",
|
|
72
|
+
"pause",
|
|
73
|
+
"resume",
|
|
74
|
+
"cancel",
|
|
75
|
+
"schedule_change"
|
|
76
|
+
]
|
|
77
|
+
});
|
|
78
|
+
/**
|
|
79
|
+
* Log a manual job trigger event.
|
|
80
|
+
*/
|
|
81
|
+
async logTrigger(jobName, options = {}) {
|
|
82
|
+
await this.audit.log("trigger", {
|
|
83
|
+
...options,
|
|
84
|
+
resourceType: "job",
|
|
85
|
+
resourceId: jobName,
|
|
86
|
+
description: options.description ?? `Manually triggered job: ${jobName}`
|
|
87
|
+
});
|
|
88
|
+
}
|
|
89
|
+
/**
|
|
90
|
+
* Log a job pause event.
|
|
91
|
+
*/
|
|
92
|
+
async logPause(jobName, options = {}) {
|
|
93
|
+
await this.audit.log("pause", {
|
|
94
|
+
...options,
|
|
95
|
+
resourceType: "job",
|
|
96
|
+
resourceId: jobName,
|
|
97
|
+
description: options.description ?? `Paused job: ${jobName}`
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* Log a job resume event.
|
|
102
|
+
*/
|
|
103
|
+
async logResume(jobName, options = {}) {
|
|
104
|
+
await this.audit.log("resume", {
|
|
105
|
+
...options,
|
|
106
|
+
resourceType: "job",
|
|
107
|
+
resourceId: jobName,
|
|
108
|
+
description: options.description ?? `Resumed job: ${jobName}`
|
|
109
|
+
});
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Log a job cancellation event.
|
|
113
|
+
*/
|
|
114
|
+
async logCancel(jobName, options = {}) {
|
|
115
|
+
await this.audit.log("cancel", {
|
|
116
|
+
...options,
|
|
117
|
+
resourceType: "job",
|
|
118
|
+
resourceId: jobName,
|
|
119
|
+
description: options.description ?? `Cancelled job: ${jobName}`
|
|
120
|
+
});
|
|
121
|
+
}
|
|
122
|
+
/**
|
|
123
|
+
* Log a job schedule change event.
|
|
124
|
+
*/
|
|
125
|
+
async logScheduleChange(jobName, options = {}) {
|
|
126
|
+
const { oldCron, newCron, ...rest } = options;
|
|
127
|
+
await this.audit.log("schedule_change", {
|
|
128
|
+
...rest,
|
|
129
|
+
resourceType: "job",
|
|
130
|
+
resourceId: jobName,
|
|
131
|
+
description: rest.description ?? `Changed schedule for job: ${jobName}`,
|
|
132
|
+
metadata: {
|
|
133
|
+
oldCron,
|
|
134
|
+
newCron,
|
|
135
|
+
...rest.metadata
|
|
136
|
+
}
|
|
137
|
+
});
|
|
138
|
+
}
|
|
139
|
+
};
|
|
140
|
+
|
|
51
141
|
//#endregion
|
|
52
142
|
//#region ../../src/api/jobs/providers/JobProvider.ts
|
|
53
143
|
const envSchema = t.object({ JOB_PREFIX: t.optional(t.text({ description: "Prefix for job lock keys" })) });
|
|
@@ -213,16 +303,19 @@ var JobService = class {
|
|
|
213
303
|
var AdminJobController = class {
|
|
214
304
|
url = "/jobs";
|
|
215
305
|
group = "admin:jobs";
|
|
306
|
+
alepha = $inject(Alepha);
|
|
216
307
|
jobService = $inject(JobService);
|
|
217
308
|
getJobs = $action({
|
|
218
309
|
path: this.url,
|
|
219
310
|
group: this.group,
|
|
311
|
+
secure: true,
|
|
220
312
|
schema: { response: t.array(t.string()) },
|
|
221
313
|
handler: () => this.jobService.getJobs()
|
|
222
314
|
});
|
|
223
315
|
getJobExecutions = $action({
|
|
224
316
|
path: `${this.url}/executions`,
|
|
225
317
|
group: this.group,
|
|
318
|
+
secure: true,
|
|
226
319
|
schema: {
|
|
227
320
|
query: jobExecutionQuerySchema,
|
|
228
321
|
response: t.page(jobExecutionResourceSchema)
|
|
@@ -233,20 +326,25 @@ var AdminJobController = class {
|
|
|
233
326
|
method: "POST",
|
|
234
327
|
path: `${this.url}/trigger`,
|
|
235
328
|
group: this.group,
|
|
329
|
+
secure: true,
|
|
236
330
|
schema: {
|
|
237
331
|
body: triggerJobSchema,
|
|
238
332
|
response: okSchema
|
|
239
333
|
},
|
|
240
|
-
handler: ({ body }) =>
|
|
334
|
+
handler: async ({ body }) => {
|
|
335
|
+
const result = await this.jobService.triggerJob(body.name);
|
|
336
|
+
if (this.alepha.has(AlephaApiAudits)) await this.alepha.inject(JobAudits).logTrigger(body.name);
|
|
337
|
+
return result;
|
|
338
|
+
}
|
|
241
339
|
});
|
|
242
340
|
};
|
|
243
341
|
|
|
244
342
|
//#endregion
|
|
245
343
|
//#region ../../src/api/jobs/index.ts
|
|
246
344
|
/**
|
|
247
|
-
* |
|
|
248
|
-
*
|
|
249
|
-
* |
|
|
345
|
+
* | Stability | Since | Runtime |
|
|
346
|
+
* |-----------|-------|---------|
|
|
347
|
+
* | 3 - stable | 0.8.0 | node, bun|
|
|
250
348
|
*
|
|
251
349
|
* Job execution monitoring.
|
|
252
350
|
*
|
|
@@ -268,5 +366,5 @@ const AlephaApiJobs = $module({
|
|
|
268
366
|
});
|
|
269
367
|
|
|
270
368
|
//#endregion
|
|
271
|
-
export { $job, AdminJobController, AlephaApiJobs, JobPrimitive, JobProvider, JobService, jobExecutionQuerySchema, jobExecutionResourceSchema, jobExecutions, triggerJobSchema };
|
|
369
|
+
export { $job, AdminJobController, AlephaApiJobs, JobAudits, JobPrimitive, JobProvider, JobService, jobExecutionQuerySchema, jobExecutionResourceSchema, jobExecutions, triggerJobSchema };
|
|
272
370
|
//# sourceMappingURL=index.js.map
|