@webiny/api-scheduler-aws 6.6.0-alpha.0 → 6.6.0-alpha.1
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/context.d.ts +8 -3
- package/context.js +2 -17
- package/context.js.map +1 -1
- package/features/SchedulerService/EventBridgeSchedulerService.js +3 -3
- package/features/SchedulerService/EventBridgeSchedulerService.js.map +1 -1
- package/features/SchedulerService/LazySchedulerService.d.ts +4 -0
- package/features/SchedulerService/LazySchedulerService.js +32 -0
- package/features/SchedulerService/LazySchedulerService.js.map +1 -0
- package/package.json +21 -22
package/context.d.ts
CHANGED
|
@@ -4,8 +4,13 @@ export interface IRegisterSchedulerAwsExtensionParams {
|
|
|
4
4
|
getClient(config?: SchedulerClientConfig): Pick<SchedulerClient, "send">;
|
|
5
5
|
}
|
|
6
6
|
/**
|
|
7
|
-
* Registers the AWS (EventBridge Scheduler) transport for the scheduler.
|
|
8
|
-
*
|
|
9
|
-
*
|
|
7
|
+
* Registers the AWS (EventBridge Scheduler) transport for the scheduler.
|
|
8
|
+
*
|
|
9
|
+
* `SchedulerService` is bound at register time to a lazy implementation that reads the deployed
|
|
10
|
+
* scheduler manifest on first use and delegates to either the EventBridge service or the no-op Void
|
|
11
|
+
* service. Previously this was a per-request `RequestContextInitializer`, because the manifest read
|
|
12
|
+
* is async and DI resolution is not — along with a `getTenant()` guard, since a fixed-time hook can
|
|
13
|
+
* fire before the tenant is established. Neither is needed once the async work moves into the
|
|
14
|
+
* methods, which were already async.
|
|
10
15
|
*/
|
|
11
16
|
export declare const registerSchedulerAwsExtension: (container: Container, params: IRegisterSchedulerAwsExtensionParams) => void;
|
package/context.js
CHANGED
|
@@ -1,22 +1,7 @@
|
|
|
1
|
-
import { RequestContextInitializer } from "@webiny/event-handler-core";
|
|
2
|
-
import { getManifest } from "./manifest.js";
|
|
3
1
|
import { SchedulerService } from "@webiny/api-scheduler/shared/abstractions.js";
|
|
4
|
-
import {
|
|
5
|
-
import { VoidSchedulerService } from "@webiny/api-scheduler/features/SchedulerService/VoidSchedulerService.js";
|
|
6
|
-
import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
|
|
2
|
+
import { createLazySchedulerService } from "./features/SchedulerService/LazySchedulerService.js";
|
|
7
3
|
const registerSchedulerAwsExtension = (container, params)=>{
|
|
8
|
-
container.registerInstance(
|
|
9
|
-
async init (ctx) {
|
|
10
|
-
const requestContainer = ctx.container;
|
|
11
|
-
if (!requestContainer.resolve(TenantContext).getTenant()) return;
|
|
12
|
-
const manifest = await getManifest();
|
|
13
|
-
if (manifest.error) requestContainer.registerInstance(SchedulerService, new VoidSchedulerService());
|
|
14
|
-
else requestContainer.registerInstance(SchedulerService, new EventBridgeSchedulerService(params.getClient, {
|
|
15
|
-
lambdaArn: manifest.data.lambdaArn,
|
|
16
|
-
roleArn: manifest.data.roleArn
|
|
17
|
-
}));
|
|
18
|
-
}
|
|
19
|
-
});
|
|
4
|
+
container.registerInstance(SchedulerService, createLazySchedulerService(params.getClient));
|
|
20
5
|
};
|
|
21
6
|
export { registerSchedulerAwsExtension };
|
|
22
7
|
|
package/context.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sources":["../src/context.ts"],"sourcesContent":["import type { Container } from \"@webiny/di\";\nimport
|
|
1
|
+
{"version":3,"file":"context.js","sources":["../src/context.ts"],"sourcesContent":["import type { Container } from \"@webiny/di\";\nimport type {\n SchedulerClient,\n SchedulerClientConfig\n} from \"@webiny/aws-sdk/client-scheduler/index.js\";\nimport { SchedulerService } from \"@webiny/api-scheduler/shared/abstractions.js\";\nimport { createLazySchedulerService } from \"~/features/SchedulerService/LazySchedulerService.js\";\n\nexport interface IRegisterSchedulerAwsExtensionParams {\n getClient(config?: SchedulerClientConfig): Pick<SchedulerClient, \"send\">;\n}\n\n/**\n * Registers the AWS (EventBridge Scheduler) transport for the scheduler.\n *\n * `SchedulerService` is bound at register time to a lazy implementation that reads the deployed\n * scheduler manifest on first use and delegates to either the EventBridge service or the no-op Void\n * service. Previously this was a per-request `RequestContextInitializer`, because the manifest read\n * is async and DI resolution is not — along with a `getTenant()` guard, since a fixed-time hook can\n * fire before the tenant is established. Neither is needed once the async work moves into the\n * methods, which were already async.\n */\nexport const registerSchedulerAwsExtension = (\n container: Container,\n params: IRegisterSchedulerAwsExtensionParams\n) => {\n container.registerInstance(SchedulerService, createLazySchedulerService(params.getClient));\n};\n"],"names":["registerSchedulerAwsExtension","container","params","SchedulerService","createLazySchedulerService"],"mappings":";;AAsBO,MAAMA,gCAAgC,CACzCC,WACAC;IAEAD,UAAU,gBAAgB,CAACE,kBAAkBC,2BAA2BF,OAAO,SAAS;AAC5F"}
|
|
@@ -21,7 +21,7 @@ class EventBridgeSchedulerService {
|
|
|
21
21
|
});
|
|
22
22
|
if (exists) return this.update(params);
|
|
23
23
|
await client.send(new CreateScheduleCommand({
|
|
24
|
-
Name:
|
|
24
|
+
Name: this.createScheduleName(params),
|
|
25
25
|
ScheduleExpression: this.createScheduleExpression(scheduleFor),
|
|
26
26
|
FlexibleTimeWindow: {
|
|
27
27
|
Mode: "OFF"
|
|
@@ -42,7 +42,7 @@ class EventBridgeSchedulerService {
|
|
|
42
42
|
});
|
|
43
43
|
const client = this.getClient();
|
|
44
44
|
await client.send(new UpdateScheduleCommand({
|
|
45
|
-
Name:
|
|
45
|
+
Name: this.createScheduleName(params),
|
|
46
46
|
ScheduleExpression: this.createScheduleExpression(scheduleFor),
|
|
47
47
|
FlexibleTimeWindow: {
|
|
48
48
|
Mode: "OFF"
|
|
@@ -100,7 +100,7 @@ class EventBridgeSchedulerService {
|
|
|
100
100
|
};
|
|
101
101
|
}
|
|
102
102
|
createScheduleName(params) {
|
|
103
|
-
return
|
|
103
|
+
return params.id;
|
|
104
104
|
}
|
|
105
105
|
}
|
|
106
106
|
export { EventBridgeSchedulerService };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"features/SchedulerService/EventBridgeSchedulerService.js","sources":["../../../src/features/SchedulerService/EventBridgeSchedulerService.ts"],"sourcesContent":["import { WebinyError } from \"@webiny/error\";\nimport {\n type ISchedulerServiceCreateParams,\n type ISchedulerServiceUpdateParams,\n SchedulerService\n} from \"@webiny/api-scheduler/shared/abstractions.js\";\nimport {\n CreateScheduleCommand,\n DeleteScheduleCommand,\n GetScheduleCommand,\n type SchedulerClient,\n UpdateScheduleCommand\n} from \"@webiny/aws-sdk/client-scheduler/index.js\";\nimport { SCHEDULED_ACTION_EVENT_IDENTIFIER } from \"@webiny/api-scheduler/constants.js\";\nimport type { IScheduledActionEventPayload } from \"~/createEventHandler.js\";\n\nexport interface ISchedulerConfig {\n lambdaArn: string;\n roleArn: string;\n}\n\nexport class EventBridgeSchedulerService implements SchedulerService.Interface {\n public constructor(\n private getClient: (config?: any) => Pick<SchedulerClient, \"send\">,\n private config: ISchedulerConfig\n ) {}\n\n public async create(params: SchedulerService.CreateParams): Promise<void> {\n const { id, scheduleFor, tenant, namespace } = params;\n\n if (scheduleFor <= new Date()) {\n throw new WebinyError(\n `Cannot create a schedule for \"${id}\" with date in the past`,\n \"INVALID_SCHEDULE_DATE\",\n {\n scheduleFor,\n tenant,\n id\n }\n );\n }\n\n const client = this.getClient();\n\n const exists = await this.exists({\n id,\n tenant,\n namespace\n });\n if (exists) {\n return this.update(params);\n }\n\n await client.send(\n new CreateScheduleCommand({\n Name:
|
|
1
|
+
{"version":3,"file":"features/SchedulerService/EventBridgeSchedulerService.js","sources":["../../../src/features/SchedulerService/EventBridgeSchedulerService.ts"],"sourcesContent":["import { WebinyError } from \"@webiny/error\";\nimport {\n type ISchedulerServiceCreateParams,\n type ISchedulerServiceUpdateParams,\n SchedulerService\n} from \"@webiny/api-scheduler/shared/abstractions.js\";\nimport {\n CreateScheduleCommand,\n DeleteScheduleCommand,\n GetScheduleCommand,\n type SchedulerClient,\n UpdateScheduleCommand\n} from \"@webiny/aws-sdk/client-scheduler/index.js\";\nimport { SCHEDULED_ACTION_EVENT_IDENTIFIER } from \"@webiny/api-scheduler/constants.js\";\nimport type { IScheduledActionEventPayload } from \"~/createEventHandler.js\";\n\nexport interface ISchedulerConfig {\n lambdaArn: string;\n roleArn: string;\n}\n\nexport class EventBridgeSchedulerService implements SchedulerService.Interface {\n public constructor(\n private getClient: (config?: any) => Pick<SchedulerClient, \"send\">,\n private config: ISchedulerConfig\n ) {}\n\n public async create(params: SchedulerService.CreateParams): Promise<void> {\n const { id, scheduleFor, tenant, namespace } = params;\n\n if (scheduleFor <= new Date()) {\n throw new WebinyError(\n `Cannot create a schedule for \"${id}\" with date in the past`,\n \"INVALID_SCHEDULE_DATE\",\n {\n scheduleFor,\n tenant,\n id\n }\n );\n }\n\n const client = this.getClient();\n\n const exists = await this.exists({\n id,\n tenant,\n namespace\n });\n if (exists) {\n return this.update(params);\n }\n\n await client.send(\n new CreateScheduleCommand({\n Name: this.createScheduleName(params),\n ScheduleExpression: this.createScheduleExpression(scheduleFor),\n FlexibleTimeWindow: {\n Mode: \"OFF\"\n },\n Target: {\n Arn: this.config.lambdaArn,\n RoleArn: this.config.roleArn,\n Input: this.createScheduledActionEventInput(params)\n },\n ActionAfterCompletion: \"DELETE\"\n })\n );\n }\n\n public async update(params: SchedulerService.UpdateParams): Promise<void> {\n const { id, scheduleFor } = params;\n\n if (scheduleFor <= new Date()) {\n throw new WebinyError(\n `Cannot update an existing schedule for \"${id}\" with date in the past`,\n \"INVALID_SCHEDULE_DATE\",\n {\n scheduleFor,\n id\n }\n );\n }\n\n const client = this.getClient();\n\n await client.send(\n new UpdateScheduleCommand({\n Name: this.createScheduleName(params),\n ScheduleExpression: this.createScheduleExpression(scheduleFor),\n FlexibleTimeWindow: {\n Mode: \"OFF\"\n },\n Target: {\n Arn: this.config.lambdaArn,\n RoleArn: this.config.roleArn,\n Input: this.createScheduledActionEventInput(params)\n },\n ActionAfterCompletion: \"DELETE\"\n })\n );\n }\n\n public async delete(params: SchedulerService.DeleteParams): Promise<void> {\n const client = this.getClient();\n\n const exists = await this.exists(params);\n if (!exists) {\n throw new WebinyError(\n `Cannot delete schedule \"${params.id}\", tenant \"${params.tenant}\", because it does not exist.`\n );\n }\n\n const name = this.createScheduleName(params);\n\n try {\n await client.send(new DeleteScheduleCommand({ Name: name }));\n } catch (ex) {\n if (ex.name === \"ResourceNotFoundException\") {\n return;\n }\n throw WebinyError.from(ex);\n }\n }\n\n public async exists(params: SchedulerService.ExistsParams): Promise<boolean> {\n const client = this.getClient();\n\n const name = this.createScheduleName(params);\n\n try {\n await client.send(new GetScheduleCommand({ Name: name }));\n return true;\n } catch (ex) {\n if (ex.name === \"ResourceNotFoundException\") {\n return false;\n }\n throw ex;\n }\n }\n\n private createScheduleExpression(scheduleFor: Date): string {\n return `at(${scheduleFor.toISOString().replace(/\\.\\d{3}Z$/, \"\")})`;\n }\n\n private createScheduledActionEventInput(\n params: ISchedulerServiceCreateParams | ISchedulerServiceUpdateParams\n ): string {\n return JSON.stringify({\n [SCHEDULED_ACTION_EVENT_IDENTIFIER]: this.createScheduledActionEventPayload(params)\n });\n }\n\n private createScheduledActionEventPayload(\n params: SchedulerService.CreateParams | SchedulerService.UpdateParams\n ): IScheduledActionEventPayload {\n const { id, scheduleFor, tenant, namespace } = params;\n\n return {\n id,\n tenant,\n namespace,\n scheduleFor: scheduleFor.toISOString()\n };\n }\n\n private createScheduleName(params: SchedulerService.ExistsParams): string {\n // AWS EventBridge Scheduler names must match [0-9a-zA-Z-_.]+ and be <= 64 chars. `id`\n // (ScheduledActionId: \"wby-schedule-<hash>\") already satisfies both and is unique per\n // namespace + action type + target, so use it verbatim. Do NOT interpolate `namespace`\n // (contains \"/\", e.g. \"Cms/Entry/<modelId>\") or `tenant` — that produced names with illegal\n // characters that exceeded the length limit (ValidationException).\n return params.id;\n }\n}\n"],"names":["EventBridgeSchedulerService","getClient","config","params","id","scheduleFor","tenant","namespace","Date","WebinyError","client","exists","CreateScheduleCommand","UpdateScheduleCommand","name","DeleteScheduleCommand","ex","GetScheduleCommand","JSON","SCHEDULED_ACTION_EVENT_IDENTIFIER"],"mappings":"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"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import type { SchedulerClient, SchedulerClientConfig } from "@webiny/aws-sdk/client-scheduler/index.js";
|
|
2
|
+
import { SchedulerService } from "@webiny/api-scheduler/shared/abstractions.js";
|
|
3
|
+
export type GetSchedulerClient = (config?: SchedulerClientConfig) => Pick<SchedulerClient, "send">;
|
|
4
|
+
export declare const createLazySchedulerService: (getClient: GetSchedulerClient) => SchedulerService.Interface;
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { VoidSchedulerService } from "@webiny/api-scheduler/features/SchedulerService/VoidSchedulerService.js";
|
|
2
|
+
import { getManifest } from "../../manifest.js";
|
|
3
|
+
import { EventBridgeSchedulerService } from "./EventBridgeSchedulerService.js";
|
|
4
|
+
class LazySchedulerServiceImpl {
|
|
5
|
+
constructor(getClient){
|
|
6
|
+
this.getClient = getClient;
|
|
7
|
+
}
|
|
8
|
+
async service() {
|
|
9
|
+
const manifest = await getManifest();
|
|
10
|
+
if (manifest.error) return new VoidSchedulerService();
|
|
11
|
+
return new EventBridgeSchedulerService(this.getClient, {
|
|
12
|
+
lambdaArn: manifest.data.lambdaArn,
|
|
13
|
+
roleArn: manifest.data.roleArn
|
|
14
|
+
});
|
|
15
|
+
}
|
|
16
|
+
async create(params) {
|
|
17
|
+
return (await this.service()).create(params);
|
|
18
|
+
}
|
|
19
|
+
async update(params) {
|
|
20
|
+
return (await this.service()).update(params);
|
|
21
|
+
}
|
|
22
|
+
async delete(params) {
|
|
23
|
+
return (await this.service()).delete(params);
|
|
24
|
+
}
|
|
25
|
+
async exists(params) {
|
|
26
|
+
return (await this.service()).exists(params);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
const createLazySchedulerService = (getClient)=>new LazySchedulerServiceImpl(getClient);
|
|
30
|
+
export { createLazySchedulerService };
|
|
31
|
+
|
|
32
|
+
//# sourceMappingURL=LazySchedulerService.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/SchedulerService/LazySchedulerService.js","sources":["../../../src/features/SchedulerService/LazySchedulerService.ts"],"sourcesContent":["import type {\n SchedulerClient,\n SchedulerClientConfig\n} from \"@webiny/aws-sdk/client-scheduler/index.js\";\nimport { SchedulerService } from \"@webiny/api-scheduler/shared/abstractions.js\";\nimport { VoidSchedulerService } from \"@webiny/api-scheduler/features/SchedulerService/VoidSchedulerService.js\";\nimport { getManifest } from \"~/manifest.js\";\nimport { EventBridgeSchedulerService } from \"./EventBridgeSchedulerService.js\";\n\nexport type GetSchedulerClient = (config?: SchedulerClientConfig) => Pick<SchedulerClient, \"send\">;\n\n/**\n * Picks the real EventBridge service or the no-op Void service, deciding on first use rather than\n * up front.\n *\n * The choice depends on the deployed scheduler manifest, and reading it is async — which is why\n * this used to be a per-request `RequestContextInitializer` that resolved the manifest and then\n * registered whichever service it implied. Every method here is already async, so the decision can\n * simply be awaited at the point of use instead.\n *\n * No memoization: `ServiceDiscovery.load()` caches the manifest in a process-wide static, so\n * `getManifest()` is cheap after the first call.\n */\nclass LazySchedulerServiceImpl implements SchedulerService.Interface {\n constructor(private getClient: GetSchedulerClient) {}\n\n private async service(): Promise<SchedulerService.Interface> {\n const manifest = await getManifest();\n\n if (manifest.error) {\n return new VoidSchedulerService();\n }\n\n return new EventBridgeSchedulerService(this.getClient, {\n lambdaArn: manifest.data.lambdaArn,\n roleArn: manifest.data.roleArn\n });\n }\n\n async create(params: SchedulerService.CreateParams): Promise<void> {\n return (await this.service()).create(params);\n }\n\n async update(params: SchedulerService.UpdateParams): Promise<void> {\n return (await this.service()).update(params);\n }\n\n async delete(params: SchedulerService.DeleteParams): Promise<void> {\n return (await this.service()).delete(params);\n }\n\n async exists(params: SchedulerService.ExistsParams): Promise<boolean> {\n return (await this.service()).exists(params);\n }\n}\n\nexport const createLazySchedulerService = (\n getClient: GetSchedulerClient\n): SchedulerService.Interface => new LazySchedulerServiceImpl(getClient);\n"],"names":["LazySchedulerServiceImpl","getClient","manifest","getManifest","VoidSchedulerService","EventBridgeSchedulerService","params","createLazySchedulerService"],"mappings":";;;AAuBA,MAAMA;IACF,YAAoBC,SAA6B,CAAE;aAA/BA,SAAS,GAATA;IAAgC;IAEpD,MAAc,UAA+C;QACzD,MAAMC,WAAW,MAAMC;QAEvB,IAAID,SAAS,KAAK,EACd,OAAO,IAAIE;QAGf,OAAO,IAAIC,4BAA4B,IAAI,CAAC,SAAS,EAAE;YACnD,WAAWH,SAAS,IAAI,CAAC,SAAS;YAClC,SAASA,SAAS,IAAI,CAAC,OAAO;QAClC;IACJ;IAEA,MAAM,OAAOI,MAAqC,EAAiB;QAC/D,OAAQ,OAAM,IAAI,CAAC,OAAO,EAAC,EAAG,MAAM,CAACA;IACzC;IAEA,MAAM,OAAOA,MAAqC,EAAiB;QAC/D,OAAQ,OAAM,IAAI,CAAC,OAAO,EAAC,EAAG,MAAM,CAACA;IACzC;IAEA,MAAM,OAAOA,MAAqC,EAAiB;QAC/D,OAAQ,OAAM,IAAI,CAAC,OAAO,EAAC,EAAG,MAAM,CAACA;IACzC;IAEA,MAAM,OAAOA,MAAqC,EAAoB;QAClE,OAAQ,OAAM,IAAI,CAAC,OAAO,EAAC,EAAG,MAAM,CAACA;IACzC;AACJ;AAEO,MAAMC,6BAA6B,CACtCN,YAC6B,IAAID,yBAAyBC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/api-scheduler-aws",
|
|
3
|
-
"version": "6.6.0-alpha.
|
|
3
|
+
"version": "6.6.0-alpha.1",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./index.js",
|
|
@@ -18,33 +18,32 @@
|
|
|
18
18
|
"description": "AWS EventBridge implementation for the Webiny action scheduler.",
|
|
19
19
|
"license": "MIT",
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@webiny/api": "6.6.0-alpha.
|
|
22
|
-
"@webiny/api-core": "6.6.0-alpha.
|
|
23
|
-
"@webiny/api-headless-cms": "6.6.0-alpha.
|
|
24
|
-
"@webiny/api-scheduler": "6.6.0-alpha.
|
|
25
|
-
"@webiny/aws-sdk": "6.6.0-alpha.
|
|
26
|
-
"@webiny/error": "6.6.0-alpha.
|
|
27
|
-
"@webiny/utils": "6.6.0-alpha.
|
|
21
|
+
"@webiny/api": "6.6.0-alpha.1",
|
|
22
|
+
"@webiny/api-core": "6.6.0-alpha.1",
|
|
23
|
+
"@webiny/api-headless-cms": "6.6.0-alpha.1",
|
|
24
|
+
"@webiny/api-scheduler": "6.6.0-alpha.1",
|
|
25
|
+
"@webiny/aws-sdk": "6.6.0-alpha.1",
|
|
26
|
+
"@webiny/error": "6.6.0-alpha.1",
|
|
27
|
+
"@webiny/utils": "6.6.0-alpha.1",
|
|
28
28
|
"zod": "4.4.3"
|
|
29
29
|
},
|
|
30
30
|
"devDependencies": {
|
|
31
|
-
"@webiny/api-core": "6.6.0-alpha.
|
|
32
|
-
"@webiny/api-core-testing": "6.6.0-alpha.
|
|
33
|
-
"@webiny/api-graphql": "6.6.0-alpha.
|
|
34
|
-
"@webiny/api-headless-cms": "6.6.0-alpha.
|
|
35
|
-
"@webiny/build-tools": "6.6.0-alpha.
|
|
36
|
-
"@webiny/db-dynamodb": "6.6.0-alpha.
|
|
37
|
-
"@webiny/di": "1.0
|
|
38
|
-
"@webiny/event-handler-aws": "6.6.0-alpha.
|
|
39
|
-
"@webiny/event-handler-core": "6.6.0-alpha.
|
|
40
|
-
"@webiny/feature": "6.6.0-alpha.
|
|
41
|
-
"@webiny/handler": "6.6.0-alpha.
|
|
42
|
-
"@webiny/
|
|
43
|
-
"@webiny/wcp": "6.6.0-alpha.0",
|
|
31
|
+
"@webiny/api-core": "6.6.0-alpha.1",
|
|
32
|
+
"@webiny/api-core-testing": "6.6.0-alpha.1",
|
|
33
|
+
"@webiny/api-graphql": "6.6.0-alpha.1",
|
|
34
|
+
"@webiny/api-headless-cms": "6.6.0-alpha.1",
|
|
35
|
+
"@webiny/build-tools": "6.6.0-alpha.1",
|
|
36
|
+
"@webiny/db-dynamodb": "6.6.0-alpha.1",
|
|
37
|
+
"@webiny/di": "1.1.0",
|
|
38
|
+
"@webiny/event-handler-aws": "6.6.0-alpha.1",
|
|
39
|
+
"@webiny/event-handler-core": "6.6.0-alpha.1",
|
|
40
|
+
"@webiny/feature": "6.6.0-alpha.1",
|
|
41
|
+
"@webiny/handler": "6.6.0-alpha.1",
|
|
42
|
+
"@webiny/wcp": "6.6.0-alpha.1",
|
|
44
43
|
"aws-sdk-client-mock": "4.1.0",
|
|
45
44
|
"graphql": "16.14.2",
|
|
46
45
|
"typescript": "7.0.2",
|
|
47
|
-
"vitest": "4.1.
|
|
46
|
+
"vitest": "4.1.11"
|
|
48
47
|
},
|
|
49
48
|
"publishConfig": {
|
|
50
49
|
"access": "public"
|