@webiny/api-core 6.3.0-beta.2 → 6.3.0-beta.3
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/ApiCoreFeature.js +2 -0
- package/ApiCoreFeature.js.map +1 -1
- package/features/masker/Masker.d.ts +8 -0
- package/features/masker/Masker.js +21 -0
- package/features/masker/Masker.js.map +1 -0
- package/features/masker/abstractions.d.ts +11 -0
- package/features/masker/abstractions.js +4 -0
- package/features/masker/abstractions.js.map +1 -0
- package/features/masker/feature.d.ts +4 -0
- package/features/masker/feature.js +10 -0
- package/features/masker/feature.js.map +1 -0
- package/features/masker/index.d.ts +1 -0
- package/features/masker/index.js +3 -0
- package/features/masker/index.js.map +1 -0
- package/features/task/TaskController/abstractions.js.map +1 -1
- package/features/task/TaskDefinition/abstractions.d.ts +6 -1
- package/features/task/TaskDefinition/abstractions.js.map +1 -1
- package/models/base/BaseModel.js.map +1 -1
- package/models/cms/FieldDefinitionsBuilder.js +2 -2
- package/models/cms/FieldDefinitionsBuilder.js.map +1 -1
- package/models/cms/PrivateCmsModelBuilder.js +1 -1
- package/models/cms/PrivateCmsModelBuilder.js.map +1 -1
- package/package.json +20 -21
package/ApiCoreFeature.js
CHANGED
|
@@ -10,11 +10,13 @@ import { KeyValueStoreFeature } from "./features/keyValueStore/feature.js";
|
|
|
10
10
|
import { BuildParamsFeature } from "./features/buildParams/feature.js";
|
|
11
11
|
import { EncryptionFeature } from "./features/encryption/feature.js";
|
|
12
12
|
import { FeatureFlagsFeature } from "./features/featureFlags/feature.js";
|
|
13
|
+
import { MaskerFeature } from "./features/masker/feature.js";
|
|
13
14
|
import { AiFeature } from "./features/ai/feature.js";
|
|
14
15
|
export const ApiCoreFeature = createFeature({
|
|
15
16
|
name: "ApiCore",
|
|
16
17
|
register(container, config) {
|
|
17
18
|
// Register features
|
|
19
|
+
MaskerFeature.register(container);
|
|
18
20
|
AiFeature.register(container);
|
|
19
21
|
LoggerFeature.register(container);
|
|
20
22
|
EventPublisherFeature.register(container);
|
package/ApiCoreFeature.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createFeature","EventPublisherFeature","LoggerFeature","SecurityFeature","SystemFeature","TenancyFeature","AdminUsersFeature","IdpAuthenticatorFeature","KeyValueStoreFeature","BuildParamsFeature","EncryptionFeature","FeatureFlagsFeature","AiFeature","ApiCoreFeature","name","register","container","config","tenancyStorageOperations","securityStorageOperations","usersStorageOperations","keyValueStorageOperations"],"sources":["ApiCoreFeature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { Container } from \"@webiny/di\";\nimport { EventPublisherFeature } from \"~/features/eventPublisher/feature.js\";\nimport { LoggerFeature } from \"~/features/logger/feature.js\";\nimport { SecurityFeature } from \"~/features/security/SecurityFeature.js\";\nimport { SystemFeature } from \"~/features/system/SystemFeature.js\";\nimport { TenancyFeature } from \"./features/tenancy/TenancyFeature.js\";\nimport { AdminUsersFeature } from \"~/features/users/AdminUsersFeature.js\";\nimport type { ApiCoreStorageOperations } from \"~/types/core.js\";\nimport { IdpAuthenticatorFeature } from \"~/idp/feature.js\";\nimport { KeyValueStoreFeature } from \"~/features/keyValueStore/feature.js\";\nimport { BuildParamsFeature } from \"~/features/buildParams/feature.js\";\nimport { EncryptionFeature } from \"~/features/encryption/feature.js\";\nimport { FeatureFlagsFeature } from \"~/features/featureFlags/feature.js\";\nimport { AiFeature } from \"~/features/ai/feature.js\";\n\nexport const ApiCoreFeature = createFeature({\n name: \"ApiCore\",\n register(container: Container, config: ApiCoreStorageOperations) {\n // Register features\n AiFeature.register(container);\n LoggerFeature.register(container);\n EventPublisherFeature.register(container);\n BuildParamsFeature.register(container);\n EncryptionFeature.register(container);\n FeatureFlagsFeature.register(container);\n TenancyFeature.register(container, config.tenancyStorageOperations);\n SecurityFeature.register(container, config.securityStorageOperations);\n AdminUsersFeature.register(container, config.usersStorageOperations);\n KeyValueStoreFeature.register(container, config.keyValueStorageOperations);\n SystemFeature.register(container);\n IdpAuthenticatorFeature.register(container);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AAEnD,SAASC,qBAAqB;AAC9B,SAASC,aAAa;AACtB,SAASC,eAAe;AACxB,SAASC,aAAa;AACtB,SAASC,cAAc;AACvB,SAASC,iBAAiB;AAE1B,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAC7B,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAC1B,SAASC,mBAAmB;AAC5B,SAASC,SAAS;AAElB,OAAO,MAAMC,cAAc,
|
|
1
|
+
{"version":3,"names":["createFeature","EventPublisherFeature","LoggerFeature","SecurityFeature","SystemFeature","TenancyFeature","AdminUsersFeature","IdpAuthenticatorFeature","KeyValueStoreFeature","BuildParamsFeature","EncryptionFeature","FeatureFlagsFeature","MaskerFeature","AiFeature","ApiCoreFeature","name","register","container","config","tenancyStorageOperations","securityStorageOperations","usersStorageOperations","keyValueStorageOperations"],"sources":["ApiCoreFeature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { Container } from \"@webiny/di\";\nimport { EventPublisherFeature } from \"~/features/eventPublisher/feature.js\";\nimport { LoggerFeature } from \"~/features/logger/feature.js\";\nimport { SecurityFeature } from \"~/features/security/SecurityFeature.js\";\nimport { SystemFeature } from \"~/features/system/SystemFeature.js\";\nimport { TenancyFeature } from \"./features/tenancy/TenancyFeature.js\";\nimport { AdminUsersFeature } from \"~/features/users/AdminUsersFeature.js\";\nimport type { ApiCoreStorageOperations } from \"~/types/core.js\";\nimport { IdpAuthenticatorFeature } from \"~/idp/feature.js\";\nimport { KeyValueStoreFeature } from \"~/features/keyValueStore/feature.js\";\nimport { BuildParamsFeature } from \"~/features/buildParams/feature.js\";\nimport { EncryptionFeature } from \"~/features/encryption/feature.js\";\nimport { FeatureFlagsFeature } from \"~/features/featureFlags/feature.js\";\nimport { MaskerFeature } from \"~/features/masker/feature.js\";\nimport { AiFeature } from \"~/features/ai/feature.js\";\n\nexport const ApiCoreFeature = createFeature({\n name: \"ApiCore\",\n register(container: Container, config: ApiCoreStorageOperations) {\n // Register features\n MaskerFeature.register(container);\n AiFeature.register(container);\n LoggerFeature.register(container);\n EventPublisherFeature.register(container);\n BuildParamsFeature.register(container);\n EncryptionFeature.register(container);\n FeatureFlagsFeature.register(container);\n TenancyFeature.register(container, config.tenancyStorageOperations);\n SecurityFeature.register(container, config.securityStorageOperations);\n AdminUsersFeature.register(container, config.usersStorageOperations);\n KeyValueStoreFeature.register(container, config.keyValueStorageOperations);\n SystemFeature.register(container);\n IdpAuthenticatorFeature.register(container);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AAEnD,SAASC,qBAAqB;AAC9B,SAASC,aAAa;AACtB,SAASC,eAAe;AACxB,SAASC,aAAa;AACtB,SAASC,cAAc;AACvB,SAASC,iBAAiB;AAE1B,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAC7B,SAASC,kBAAkB;AAC3B,SAASC,iBAAiB;AAC1B,SAASC,mBAAmB;AAC5B,SAASC,aAAa;AACtB,SAASC,SAAS;AAElB,OAAO,MAAMC,cAAc,GAAGd,aAAa,CAAC;EACxCe,IAAI,EAAE,SAAS;EACfC,QAAQA,CAACC,SAAoB,EAAEC,MAAgC,EAAE;IAC7D;IACAN,aAAa,CAACI,QAAQ,CAACC,SAAS,CAAC;IACjCJ,SAAS,CAACG,QAAQ,CAACC,SAAS,CAAC;IAC7Bf,aAAa,CAACc,QAAQ,CAACC,SAAS,CAAC;IACjChB,qBAAqB,CAACe,QAAQ,CAACC,SAAS,CAAC;IACzCR,kBAAkB,CAACO,QAAQ,CAACC,SAAS,CAAC;IACtCP,iBAAiB,CAACM,QAAQ,CAACC,SAAS,CAAC;IACrCN,mBAAmB,CAACK,QAAQ,CAACC,SAAS,CAAC;IACvCZ,cAAc,CAACW,QAAQ,CAACC,SAAS,EAAEC,MAAM,CAACC,wBAAwB,CAAC;IACnEhB,eAAe,CAACa,QAAQ,CAACC,SAAS,EAAEC,MAAM,CAACE,yBAAyB,CAAC;IACrEd,iBAAiB,CAACU,QAAQ,CAACC,SAAS,EAAEC,MAAM,CAACG,sBAAsB,CAAC;IACpEb,oBAAoB,CAACQ,QAAQ,CAACC,SAAS,EAAEC,MAAM,CAACI,yBAAyB,CAAC;IAC1ElB,aAAa,CAACY,QAAQ,CAACC,SAAS,CAAC;IACjCV,uBAAuB,CAACS,QAAQ,CAACC,SAAS,CAAC;EAC/C;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { Masker } from "./abstractions.js";
|
|
2
|
+
declare class MaskerImpl implements Masker.Interface {
|
|
3
|
+
mask(value: string, pattern?: number[]): string;
|
|
4
|
+
}
|
|
5
|
+
declare const _default: typeof MaskerImpl & {
|
|
6
|
+
__abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IMasker>;
|
|
7
|
+
};
|
|
8
|
+
export default _default;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Masker } from "./abstractions.js";
|
|
2
|
+
class MaskerImpl {
|
|
3
|
+
mask(value, pattern) {
|
|
4
|
+
if (!pattern) {
|
|
5
|
+
return "●".repeat(value.length);
|
|
6
|
+
}
|
|
7
|
+
const [start = 0, end = 0] = pattern;
|
|
8
|
+
if (start + end >= value.length) {
|
|
9
|
+
return "●".repeat(12);
|
|
10
|
+
}
|
|
11
|
+
const prefix = value.slice(0, start);
|
|
12
|
+
const suffix = end > 0 ? value.slice(-end) : "";
|
|
13
|
+
return `${prefix}${"●".repeat(12)}${suffix}`;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
export default Masker.createImplementation({
|
|
17
|
+
implementation: MaskerImpl,
|
|
18
|
+
dependencies: []
|
|
19
|
+
});
|
|
20
|
+
|
|
21
|
+
//# sourceMappingURL=Masker.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Masker","MaskerImpl","mask","value","pattern","repeat","length","start","end","prefix","slice","suffix","createImplementation","implementation","dependencies"],"sources":["Masker.ts"],"sourcesContent":["import { Masker } from \"./abstractions.js\";\n\nclass MaskerImpl implements Masker.Interface {\n mask(value: string, pattern?: number[]): string {\n if (!pattern) {\n return \"●\".repeat(value.length);\n }\n\n const [start = 0, end = 0] = pattern;\n if (start + end >= value.length) {\n return \"●\".repeat(12);\n }\n\n const prefix = value.slice(0, start);\n const suffix = end > 0 ? value.slice(-end) : \"\";\n return `${prefix}${\"●\".repeat(12)}${suffix}`;\n }\n}\n\nexport default Masker.createImplementation({\n implementation: MaskerImpl,\n dependencies: []\n});\n"],"mappings":"AAAA,SAASA,MAAM;AAEf,MAAMC,UAAU,CAA6B;EACzCC,IAAIA,CAACC,KAAa,EAAEC,OAAkB,EAAU;IAC5C,IAAI,CAACA,OAAO,EAAE;MACV,OAAO,GAAG,CAACC,MAAM,CAACF,KAAK,CAACG,MAAM,CAAC;IACnC;IAEA,MAAM,CAACC,KAAK,GAAG,CAAC,EAAEC,GAAG,GAAG,CAAC,CAAC,GAAGJ,OAAO;IACpC,IAAIG,KAAK,GAAGC,GAAG,IAAIL,KAAK,CAACG,MAAM,EAAE;MAC7B,OAAO,GAAG,CAACD,MAAM,CAAC,EAAE,CAAC;IACzB;IAEA,MAAMI,MAAM,GAAGN,KAAK,CAACO,KAAK,CAAC,CAAC,EAAEH,KAAK,CAAC;IACpC,MAAMI,MAAM,GAAGH,GAAG,GAAG,CAAC,GAAGL,KAAK,CAACO,KAAK,CAAC,CAACF,GAAG,CAAC,GAAG,EAAE;IAC/C,OAAO,GAAGC,MAAM,GAAG,GAAG,CAACJ,MAAM,CAAC,EAAE,CAAC,GAAGM,MAAM,EAAE;EAChD;AACJ;AAEA,eAAeX,MAAM,CAACY,oBAAoB,CAAC;EACvCC,cAAc,EAAEZ,UAAU;EAC1Ba,YAAY,EAAE;AAClB,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export interface IMasker {
|
|
2
|
+
/**
|
|
3
|
+
* @param value Value to mask
|
|
4
|
+
* @param mask Masking pattern. The first number represents visible characters from the start, second - from the end.
|
|
5
|
+
*/
|
|
6
|
+
mask(value: string, mask?: number[]): string;
|
|
7
|
+
}
|
|
8
|
+
export declare const Masker: import("@webiny/di").Abstraction<IMasker>;
|
|
9
|
+
export declare namespace Masker {
|
|
10
|
+
type Interface = IMasker;
|
|
11
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createAbstraction","Masker"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\n\nexport interface IMasker {\n /**\n * @param value Value to mask\n * @param mask Masking pattern. The first number represents visible characters from the start, second - from the end.\n */\n mask(value: string, mask?: number[]): string;\n}\n\nexport const Masker = createAbstraction<IMasker>(\"Masker\");\n\nexport namespace Masker {\n export type Interface = IMasker;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;AAUvD,OAAO,MAAMC,MAAM,GAAGD,iBAAiB,CAAU,QAAQ,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createFeature } from "@webiny/feature/api";
|
|
2
|
+
import MaskerImplementation from "./Masker.js";
|
|
3
|
+
export const MaskerFeature = createFeature({
|
|
4
|
+
name: "MaskerFeature",
|
|
5
|
+
register(container) {
|
|
6
|
+
container.register(MaskerImplementation);
|
|
7
|
+
}
|
|
8
|
+
});
|
|
9
|
+
|
|
10
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["createFeature","MaskerImplementation","MaskerFeature","name","register","container"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport MaskerImplementation from \"./Masker.js\";\n\nexport const MaskerFeature = createFeature({\n name: \"MaskerFeature\",\n register(container) {\n container.register(MaskerImplementation);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,OAAOC,oBAAoB;AAE3B,OAAO,MAAMC,aAAa,GAAGF,aAAa,CAAC;EACvCG,IAAI,EAAE,eAAe;EACrBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACH,oBAAoB,CAAC;EAC5C;AACJ,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { Masker } from "./abstractions.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Masker"],"sources":["index.ts"],"sourcesContent":["export { Masker } from \"./abstractions.js\";\n"],"mappings":"AAAA,SAASA,MAAM","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","TaskController"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { ITaskInput, ITaskOutput } from \"../TaskDefinition/index.js\";\n\n/**\n * TaskController provides runtime capabilities to task definitions.\n * The actual interface is defined by the tasks package implementation via module augmentation.\n *\n * Import this from @webiny/api-core, but the full interface comes from @webiny/tasks.\n */\nexport interface ITaskController<\n //
|
|
1
|
+
{"version":3,"names":["createAbstraction","TaskController"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { ITaskInput, ITaskOutput } from \"../TaskDefinition/index.js\";\n\n/**\n * TaskController provides runtime capabilities to task definitions.\n * The actual interface is defined by the tasks package implementation via module augmentation.\n *\n * Import this from @webiny/api-core, but the full interface comes from @webiny/tasks.\n */\nexport interface ITaskController<\n // oxlint-disable-next-line typescript/no-unused-vars\n I extends ITaskInput = ITaskInput,\n // oxlint-disable-next-line typescript/no-unused-vars\n O extends ITaskOutput = ITaskOutput\n> {\n // Empty - augmented by tasks package\n}\n\n/** Runtime controller providing capabilities to running tasks. */\nexport const TaskController = createAbstraction<ITaskController>(\"TaskController\");\n\nexport namespace TaskController {\n export type Interface<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskController<I, O>;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAGvD;AACA;AACA;AACA;AACA;AACA;;AAUA;AACA,OAAO,MAAMC,cAAc,GAAGD,iBAAiB,CAAkB,gBAAgB,CAAC","ignoreList":[]}
|
|
@@ -66,6 +66,8 @@ export interface ITaskResultAborted {
|
|
|
66
66
|
status: TaskResultStatus.ABORTED;
|
|
67
67
|
}
|
|
68
68
|
export type ITaskResult<I = ITaskInput, O extends ITaskOutput = ITaskOutput> = ITaskResultDone<O> | ITaskResultContinue<I> | ITaskResultError | ITaskResultAborted;
|
|
69
|
+
export type ISelfCleanupEvent = "onSuccess" | "onError" | "onAbort";
|
|
70
|
+
export type ISelfCleanup = "always" | "never" | ISelfCleanupEvent | ISelfCleanupEvent[];
|
|
69
71
|
export type ITaskLifecycleHook<I extends ITaskInput = ITaskInput, O extends ITaskOutput = ITaskOutput> = {
|
|
70
72
|
task: ITask<I, O>;
|
|
71
73
|
};
|
|
@@ -79,13 +81,14 @@ export interface ITaskDefinition<I extends ITaskInput = ITaskInput, O extends IT
|
|
|
79
81
|
maxIterations?: number;
|
|
80
82
|
databaseLogs?: boolean;
|
|
81
83
|
isPrivate?: boolean;
|
|
84
|
+
selfCleanup?: ISelfCleanup;
|
|
82
85
|
/**
|
|
83
86
|
* Core run method - receives ONLY input params
|
|
84
87
|
* All runtime dependencies (logging, state management, etc.) come from TaskController
|
|
85
88
|
*/
|
|
86
89
|
run(params: ITaskRunParams<I, O>): Promise<ITaskResult<I, O>>;
|
|
87
90
|
/**
|
|
88
|
-
* Optional lifecycle hooks - receive task data, no context
|
|
91
|
+
* Optional lifecycle hooks - receive task data, no context.
|
|
89
92
|
*/
|
|
90
93
|
onBeforeTrigger?(params: ITaskBeforeTriggerParams<I>): Promise<void>;
|
|
91
94
|
onDone?(params: ITaskLifecycleHook<I, O>): Promise<void>;
|
|
@@ -129,4 +132,6 @@ export declare namespace TaskDefinition {
|
|
|
129
132
|
type TaskCreateData<I = ITaskInput> = ITaskCreateData<I>;
|
|
130
133
|
type BeforeTriggerParams<I = ITaskInput> = ITaskBeforeTriggerParams<I>;
|
|
131
134
|
type LifecycleHookParams<I extends ITaskInput = ITaskInput, O extends ITaskOutput = ITaskOutput> = ITaskLifecycleHook<I, O>;
|
|
135
|
+
type SelfCleanupEvent = ISelfCleanupEvent;
|
|
136
|
+
type SelfCleanup = ISelfCleanup;
|
|
132
137
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createAbstraction","TaskResultStatus","TaskDefinition"],"sources":["abstractions.ts"],"sourcesContent":["import zod from \"zod\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { GenericRecord } from \"@webiny/api/types\";\nimport type { ITask } from \"~/features/task/TaskService/index.js\";\nimport { TaskController } from \"~/features/task/TaskController/index.js\";\n\nexport type ITaskInput = GenericRecord;\n\nexport interface IResponseError {\n message: string;\n code?: string | null;\n data?: GenericRecord | null;\n stack?: string;\n}\n\nexport interface ITaskOutput {\n error?: IResponseError;\n [key: string]: any;\n}\n\n/**\n * Task run params - ONLY the input data\n * All runtime dependencies come from TaskController (injected separately)\n */\nexport interface ITaskRunParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> {\n input: I;\n controller: TaskController.Interface<I, O>;\n}\n\n/**\n * Data for creating a new task\n */\nexport interface ITaskCreateData<I = ITaskInput> {\n definitionId: string;\n name: string;\n input: I;\n parentId?: string;\n}\n\n/**\n * Parameters for onBeforeTrigger lifecycle hook\n */\nexport interface ITaskBeforeTriggerParams<I = ITaskInput> {\n data: ITaskCreateData<I>;\n}\n\n/**\n * Task result status enum\n */\nexport enum TaskResultStatus {\n DONE = \"done\",\n CONTINUE = \"continue\",\n ERROR = \"error\",\n ABORTED = \"aborted\"\n}\n\n/**\n * Specific result types\n */\nexport interface ITaskResultDone<O extends ITaskOutput = ITaskOutput> {\n status: TaskResultStatus.DONE;\n message?: string;\n output?: O;\n}\n\nexport interface ITaskResultContinue<I = ITaskInput> {\n status: TaskResultStatus.CONTINUE;\n input: I;\n wait?: number; // seconds to wait before next iteration\n}\n\nexport interface ITaskResultError {\n status: TaskResultStatus.ERROR;\n error: IResponseError;\n}\n\nexport interface ITaskResultAborted {\n status: TaskResultStatus.ABORTED;\n}\n\nexport type ITaskResult<I = ITaskInput, O extends ITaskOutput = ITaskOutput> =\n | ITaskResultDone<O>\n | ITaskResultContinue<I>\n | ITaskResultError\n | ITaskResultAborted;\n\nexport type ITaskLifecycleHook<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> = {
|
|
1
|
+
{"version":3,"names":["createAbstraction","TaskResultStatus","TaskDefinition"],"sources":["abstractions.ts"],"sourcesContent":["import zod from \"zod\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { GenericRecord } from \"@webiny/api/types\";\nimport type { ITask } from \"~/features/task/TaskService/index.js\";\nimport { TaskController } from \"~/features/task/TaskController/index.js\";\n\nexport type ITaskInput = GenericRecord;\n\nexport interface IResponseError {\n message: string;\n code?: string | null;\n data?: GenericRecord | null;\n stack?: string;\n}\n\nexport interface ITaskOutput {\n error?: IResponseError;\n [key: string]: any;\n}\n\n/**\n * Task run params - ONLY the input data\n * All runtime dependencies come from TaskController (injected separately)\n */\nexport interface ITaskRunParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> {\n input: I;\n controller: TaskController.Interface<I, O>;\n}\n\n/**\n * Data for creating a new task\n */\nexport interface ITaskCreateData<I = ITaskInput> {\n definitionId: string;\n name: string;\n input: I;\n parentId?: string;\n}\n\n/**\n * Parameters for onBeforeTrigger lifecycle hook\n */\nexport interface ITaskBeforeTriggerParams<I = ITaskInput> {\n data: ITaskCreateData<I>;\n}\n\n/**\n * Task result status enum\n */\nexport enum TaskResultStatus {\n DONE = \"done\",\n CONTINUE = \"continue\",\n ERROR = \"error\",\n ABORTED = \"aborted\"\n}\n\n/**\n * Specific result types\n */\nexport interface ITaskResultDone<O extends ITaskOutput = ITaskOutput> {\n status: TaskResultStatus.DONE;\n message?: string;\n output?: O;\n}\n\nexport interface ITaskResultContinue<I = ITaskInput> {\n status: TaskResultStatus.CONTINUE;\n input: I;\n wait?: number; // seconds to wait before next iteration\n}\n\nexport interface ITaskResultError {\n status: TaskResultStatus.ERROR;\n error: IResponseError;\n}\n\nexport interface ITaskResultAborted {\n status: TaskResultStatus.ABORTED;\n}\n\nexport type ITaskResult<I = ITaskInput, O extends ITaskOutput = ITaskOutput> =\n | ITaskResultDone<O>\n | ITaskResultContinue<I>\n | ITaskResultError\n | ITaskResultAborted;\n\nexport type ISelfCleanupEvent = \"onSuccess\" | \"onError\" | \"onAbort\";\n\nexport type ISelfCleanup = \"always\" | \"never\" | ISelfCleanupEvent | ISelfCleanupEvent[];\n\nexport type ITaskLifecycleHook<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> = {\n task: ITask<I, O>;\n};\n\n/**\n * Core TaskDefinition - minimal interface\n */\nexport interface ITaskDefinition<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> {\n id: string;\n title: string;\n description?: string;\n maxIterations?: number;\n databaseLogs?: boolean;\n isPrivate?: boolean;\n selfCleanup?: ISelfCleanup;\n\n /**\n * Core run method - receives ONLY input params\n * All runtime dependencies (logging, state management, etc.) come from TaskController\n */\n run(params: ITaskRunParams<I, O>): Promise<ITaskResult<I, O>>;\n\n /**\n * Optional lifecycle hooks - receive task data, no context.\n */\n onBeforeTrigger?(params: ITaskBeforeTriggerParams<I>): Promise<void>;\n onDone?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onError?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onAbort?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n onMaxIterations?(params: ITaskLifecycleHook<I, O>): Promise<void>;\n /**\n * Create a validation schema for the task input.\n * This will be used to validate the input before the task is triggered.\n */\n createInputValidation?(\n params: ITaskCreateInputValidationParams\n ): GenericRecord<keyof I, zod.Schema> | zod.Schema;\n}\n\nexport interface ITaskCreateInputValidationParams {\n validator: typeof zod;\n}\n\n/** Define a long-running background task with lifecycle hooks. */\nexport const TaskDefinition = createAbstraction<ITaskDefinition>(\"TaskDefinition\");\n\n/**\n * IRunnableTaskDefinition represents a TaskDefinition after decoration/processing.\n * All optional runtime properties are guaranteed to have values (with defaults applied).\n * Used internally by the task runner to ensure consistent behavior.\n */\nexport interface IRunnableTaskDefinition<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n> extends ITaskDefinition<I, O> {\n // Override optional properties to be required with guaranteed values\n isPrivate: boolean;\n databaseLogs: boolean;\n maxIterations: number;\n}\n\nexport namespace TaskDefinition {\n export type Interface<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskDefinition<I, O>;\n\n export type TaskInput = ITaskInput;\n\n export type TaskOutput = ITaskOutput;\n\n export type Runnable<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = IRunnableTaskDefinition<I, O>;\n\n export type RunParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskRunParams<I, O>;\n\n export type Result<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskResult<I, O>;\n\n export type Task<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITask<I, O>;\n\n export type ResultDone<O extends ITaskOutput = ITaskOutput> = ITaskResultDone<O>;\n export type ResultContinue<I = ITaskInput> = ITaskResultContinue<I>;\n export type ResultError = ITaskResultError;\n export type ResultAborted = ITaskResultAborted;\n export type CreateInputValidationParams = ITaskCreateInputValidationParams;\n export type TaskCreateData<I = ITaskInput> = ITaskCreateData<I>;\n export type BeforeTriggerParams<I = ITaskInput> = ITaskBeforeTriggerParams<I>;\n export type LifecycleHookParams<\n I extends ITaskInput = ITaskInput,\n O extends ITaskOutput = ITaskOutput\n > = ITaskLifecycleHook<I, O>;\n\n export type SelfCleanupEvent = ISelfCleanupEvent;\n export type SelfCleanup = ISelfCleanup;\n}\n"],"mappings":"AACA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAmBvD;AACA;AACA;AACA;;AASA;AACA;AACA;;AAQA;AACA;AACA;;AAKA;AACA;AACA;AACA,WAAYC,gBAAgB,0BAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAhBA,gBAAgB;EAAA,OAAhBA,gBAAgB;AAAA;;AAO5B;AACA;AACA;;AAuCA;AACA;AACA;;AAwCA;AACA,OAAO,MAAMC,cAAc,GAAGF,iBAAiB,CAAkB,gBAAgB,CAAC;;AAElF;AACA;AACA;AACA;AACA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Result","WebinyError","BaseModel","__schema","Error","constructor","data","validateData","populate","Object","assign","validate","toData","ok","error","fail","validateOrThrow","clone","Constructor","def","type","result","shape","key","structuredClone","updateWith","partial","updated","safeParse","success","message","code","issues"],"sources":["BaseModel.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { WebinyError } from \"@webiny/error\";\nimport z from \"zod\";\n\ntype DataProperties<T> = Omit<T, \"__schema\">;\n\nexport type IModelData<T> = {\n //
|
|
1
|
+
{"version":3,"names":["Result","WebinyError","BaseModel","__schema","Error","constructor","data","validateData","populate","Object","assign","validate","toData","ok","error","fail","validateOrThrow","clone","Constructor","def","type","result","shape","key","structuredClone","updateWith","partial","updated","safeParse","success","message","code","issues"],"sources":["BaseModel.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { WebinyError } from \"@webiny/error\";\nimport z from \"zod\";\n\ntype DataProperties<T> = Omit<T, \"__schema\">;\n\nexport type IModelData<T> = {\n // oxlint-disable-next-line typescript/no-unsafe-function-type\n [K in keyof DataProperties<T> as T[K] extends Function ? never : K]: T[K];\n};\n\nexport type IModelInput<T> = IModelData<T>;\n\nexport abstract class BaseModel<TModel extends z.ZodObject<any> = any> {\n get __schema(): TModel {\n throw new Error(\"Schema getter is not implemented!\");\n }\n\n constructor(data: IModelData<TModel>) {\n this.validateData(data);\n this.populate(data);\n }\n\n populate(data: IModelData<TModel>): void {\n Object.assign(this, data);\n }\n\n validate(): Result<true, WebinyError> {\n try {\n this.validateData(this.toData());\n return Result.ok(true);\n } catch (error) {\n return Result.fail(error);\n }\n }\n\n validateOrThrow(): void {\n this.validateData(this.toData());\n }\n\n clone(): this {\n const Constructor = this.constructor as new (data: IModelData<TModel>) => this;\n return new Constructor(this.toData());\n }\n\n toData(): IModelData<TModel> {\n if (this.__schema && this.__schema.def?.type === \"object\") {\n const result = {} as IModelData<TModel>;\n const shape = this.__schema.shape;\n for (const key in shape) {\n // always use structuredClone for safety.\n // @ts-expect-error allow index.\n result[key] = structuredClone(this[key]);\n }\n return result;\n }\n\n return { ...(this as any) } as IModelData<TModel>;\n }\n\n updateWith(partial: Partial<IModelData<this>>): void {\n const updated = { ...this.toData(), ...partial };\n this.validateData(updated);\n this.populate(updated);\n }\n\n protected validateData(data: IModelData<TModel>): void {\n const result = this.__schema.safeParse(data);\n if (!result.success) {\n throw new WebinyError({\n message: \"Validation error\",\n code: \"DOMAIN_MODEL_VALIDATION_ERROR\",\n data: result.error.issues\n });\n }\n }\n}\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,WAAW,QAAQ,eAAe;AAY3C,OAAO,MAAeC,SAAS,CAAwC;EACnE,IAAIC,QAAQA,CAAA,EAAW;IACnB,MAAM,IAAIC,KAAK,CAAC,mCAAmC,CAAC;EACxD;EAEAC,WAAWA,CAACC,IAAwB,EAAE;IAClC,IAAI,CAACC,YAAY,CAACD,IAAI,CAAC;IACvB,IAAI,CAACE,QAAQ,CAACF,IAAI,CAAC;EACvB;EAEAE,QAAQA,CAACF,IAAwB,EAAQ;IACrCG,MAAM,CAACC,MAAM,CAAC,IAAI,EAAEJ,IAAI,CAAC;EAC7B;EAEAK,QAAQA,CAAA,EAA8B;IAClC,IAAI;MACA,IAAI,CAACJ,YAAY,CAAC,IAAI,CAACK,MAAM,CAAC,CAAC,CAAC;MAChC,OAAOZ,MAAM,CAACa,EAAE,CAAC,IAAI,CAAC;IAC1B,CAAC,CAAC,OAAOC,KAAK,EAAE;MACZ,OAAOd,MAAM,CAACe,IAAI,CAACD,KAAK,CAAC;IAC7B;EACJ;EAEAE,eAAeA,CAAA,EAAS;IACpB,IAAI,CAACT,YAAY,CAAC,IAAI,CAACK,MAAM,CAAC,CAAC,CAAC;EACpC;EAEAK,KAAKA,CAAA,EAAS;IACV,MAAMC,WAAW,GAAG,IAAI,CAACb,WAAqD;IAC9E,OAAO,IAAIa,WAAW,CAAC,IAAI,CAACN,MAAM,CAAC,CAAC,CAAC;EACzC;EAEAA,MAAMA,CAAA,EAAuB;IACzB,IAAI,IAAI,CAACT,QAAQ,IAAI,IAAI,CAACA,QAAQ,CAACgB,GAAG,EAAEC,IAAI,KAAK,QAAQ,EAAE;MACvD,MAAMC,MAAM,GAAG,CAAC,CAAuB;MACvC,MAAMC,KAAK,GAAG,IAAI,CAACnB,QAAQ,CAACmB,KAAK;MACjC,KAAK,MAAMC,GAAG,IAAID,KAAK,EAAE;QACrB;QACA;QACAD,MAAM,CAACE,GAAG,CAAC,GAAGC,eAAe,CAAC,IAAI,CAACD,GAAG,CAAC,CAAC;MAC5C;MACA,OAAOF,MAAM;IACjB;IAEA,OAAO;MAAE,GAAI;IAAa,CAAC;EAC/B;EAEAI,UAAUA,CAACC,OAAkC,EAAQ;IACjD,MAAMC,OAAO,GAAG;MAAE,GAAG,IAAI,CAACf,MAAM,CAAC,CAAC;MAAE,GAAGc;IAAQ,CAAC;IAChD,IAAI,CAACnB,YAAY,CAACoB,OAAO,CAAC;IAC1B,IAAI,CAACnB,QAAQ,CAACmB,OAAO,CAAC;EAC1B;EAEUpB,YAAYA,CAACD,IAAwB,EAAQ;IACnD,MAAMe,MAAM,GAAG,IAAI,CAAClB,QAAQ,CAACyB,SAAS,CAACtB,IAAI,CAAC;IAC5C,IAAI,CAACe,MAAM,CAACQ,OAAO,EAAE;MACjB,MAAM,IAAI5B,WAAW,CAAC;QAClB6B,OAAO,EAAE,kBAAkB;QAC3BC,IAAI,EAAE,+BAA+B;QACrCzB,IAAI,EAAEe,MAAM,CAACP,KAAK,CAACkB;MACvB,CAAC,CAAC;IACN;EACJ;AACJ","ignoreList":[]}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
//
|
|
2
|
+
// oxlint-disable-next-line
|
|
3
3
|
export class FieldDefinitionsBuilder {
|
|
4
4
|
fields = new Map();
|
|
5
5
|
constructor(registry) {
|
|
@@ -56,6 +56,6 @@ export function createFieldDefinitions(factory) {
|
|
|
56
56
|
}
|
|
57
57
|
|
|
58
58
|
// TODO: check the unused generic
|
|
59
|
-
//
|
|
59
|
+
// oxlint-disable-next-line
|
|
60
60
|
|
|
61
61
|
//# sourceMappingURL=FieldDefinitionsBuilder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["z","FieldDefinitionsBuilder","fields","Map","constructor","registry","field","name","configure","registerField","__fromObject","shape","fieldId","fieldBuilder","Object","entries","config","toConfig","set","zodSchema","getZodSchema","__toZodSchema","schemaShape","object","__getFields","Array","from","values","map","f","__getFieldsMap","createFieldDefinitions","factory","__type"],"sources":["FieldDefinitionsBuilder.ts"],"sourcesContent":["import { z } from \"zod\";\nimport type { FieldBuilder } from \"./FieldBuilder.js\";\nimport type { IFieldBuilderRegistry } from \"./abstractions.js\";\nimport type { FieldConfig, FieldBuilderConfig } from \"./types.js\";\n\n//
|
|
1
|
+
{"version":3,"names":["z","FieldDefinitionsBuilder","fields","Map","constructor","registry","field","name","configure","registerField","__fromObject","shape","fieldId","fieldBuilder","Object","entries","config","toConfig","set","zodSchema","getZodSchema","__toZodSchema","schemaShape","object","__getFields","Array","from","values","map","f","__getFieldsMap","createFieldDefinitions","factory","__type"],"sources":["FieldDefinitionsBuilder.ts"],"sourcesContent":["import { z } from \"zod\";\nimport type { FieldBuilder } from \"./FieldBuilder.js\";\nimport type { IFieldBuilderRegistry } from \"./abstractions.js\";\nimport type { FieldConfig, FieldBuilderConfig } from \"./types.js\";\n\n// oxlint-disable-next-line\nexport class FieldDefinitionsBuilder<TFields extends z.ZodRawShape = {}> {\n private fields = new Map<string, FieldBuilderConfig>();\n\n constructor(private registry: IFieldBuilderRegistry) {}\n\n // Keep the old .field() method for internal use\n field<K extends string, TZod extends z.ZodTypeAny>(\n name: K,\n configure: (field: IFieldBuilderRegistry) => FieldBuilder<TZod>\n ): FieldDefinitionsBuilder<TFields & Record<K, TZod>> {\n this.registerField(name, configure(this.registry));\n // @ts-expect-error\n return this;\n }\n\n // Internal method to build from object\n __fromObject<TShape extends Record<string, FieldBuilder<any>>>(\n shape: TShape\n ): FieldDefinitionsBuilder<{ [K in keyof TShape]: ReturnType<TShape[K][\"getZodSchema\"]> }> {\n for (const [fieldId, fieldBuilder] of Object.entries(shape)) {\n this.registerField(fieldId, fieldBuilder);\n }\n // @ts-expect-error\n return this;\n }\n\n private registerField(fieldId: string, fieldBuilder: FieldBuilder<any>): void {\n const config = fieldBuilder.toConfig();\n config.fieldId = fieldId;\n this.fields.set(fieldId, { fieldId, config, zodSchema: fieldBuilder.getZodSchema() });\n }\n\n __toZodSchema(): z.ZodObject<TFields> {\n const schemaShape = {} as TFields;\n\n for (const [fieldId, { zodSchema }] of this.fields) {\n schemaShape[fieldId as keyof TFields] = zodSchema as unknown as TFields[keyof TFields];\n }\n\n return z.object(schemaShape);\n }\n\n __getFields(): FieldConfig[] {\n return Array.from(this.fields.values()).map(f => f.config);\n }\n\n __getFieldsMap(): Map<string, FieldBuilderConfig> {\n return new Map(this.fields);\n }\n}\n\n// Updated factory function - now takes an object!\nexport function createFieldDefinitions<TShape extends Record<string, FieldBuilder<any>>>(\n factory: (fields: IFieldBuilderRegistry) => TShape\n): FieldDefinitionsFactory<{ [K in keyof TShape]: ReturnType<TShape[K][\"getZodSchema\"]> }> {\n return {\n __type: \"FieldDefinitionsFactory\" as const,\n factory\n };\n}\n\n// TODO: check the unused generic\n// oxlint-disable-next-line\nexport interface FieldDefinitionsFactory<TFields extends z.ZodRawShape> {\n __type: \"FieldDefinitionsFactory\";\n factory: (fields: IFieldBuilderRegistry) => Record<string, FieldBuilder<any>>;\n}\n\nexport type InferFieldSchema<T> =\n T extends FieldDefinitionsFactory<infer TFields> ? z.ZodObject<TFields> : never;\n"],"mappings":"AAAA,SAASA,CAAC,QAAQ,KAAK;AAKvB;AACA,OAAO,MAAMC,uBAAuB,CAAqC;EAC7DC,MAAM,GAAG,IAAIC,GAAG,CAA6B,CAAC;EAEtDC,WAAWA,CAASC,QAA+B,EAAE;IAAA,KAAjCA,QAA+B,GAA/BA,QAA+B;EAAG;;EAEtD;EACAC,KAAKA,CACDC,IAAO,EACPC,SAA+D,EACb;IAClD,IAAI,CAACC,aAAa,CAACF,IAAI,EAAEC,SAAS,CAAC,IAAI,CAACH,QAAQ,CAAC,CAAC;IAClD;IACA,OAAO,IAAI;EACf;;EAEA;EACAK,YAAYA,CACRC,KAAa,EAC0E;IACvF,KAAK,MAAM,CAACC,OAAO,EAAEC,YAAY,CAAC,IAAIC,MAAM,CAACC,OAAO,CAACJ,KAAK,CAAC,EAAE;MACzD,IAAI,CAACF,aAAa,CAACG,OAAO,EAAEC,YAAY,CAAC;IAC7C;IACA;IACA,OAAO,IAAI;EACf;EAEQJ,aAAaA,CAACG,OAAe,EAAEC,YAA+B,EAAQ;IAC1E,MAAMG,MAAM,GAAGH,YAAY,CAACI,QAAQ,CAAC,CAAC;IACtCD,MAAM,CAACJ,OAAO,GAAGA,OAAO;IACxB,IAAI,CAACV,MAAM,CAACgB,GAAG,CAACN,OAAO,EAAE;MAAEA,OAAO;MAAEI,MAAM;MAAEG,SAAS,EAAEN,YAAY,CAACO,YAAY,CAAC;IAAE,CAAC,CAAC;EACzF;EAEAC,aAAaA,CAAA,EAAyB;IAClC,MAAMC,WAAW,GAAG,CAAC,CAAY;IAEjC,KAAK,MAAM,CAACV,OAAO,EAAE;MAAEO;IAAU,CAAC,CAAC,IAAI,IAAI,CAACjB,MAAM,EAAE;MAChDoB,WAAW,CAACV,OAAO,CAAkB,GAAGO,SAA8C;IAC1F;IAEA,OAAOnB,CAAC,CAACuB,MAAM,CAACD,WAAW,CAAC;EAChC;EAEAE,WAAWA,CAAA,EAAkB;IACzB,OAAOC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACxB,MAAM,CAACyB,MAAM,CAAC,CAAC,CAAC,CAACC,GAAG,CAACC,CAAC,IAAIA,CAAC,CAACb,MAAM,CAAC;EAC9D;EAEAc,cAAcA,CAAA,EAAoC;IAC9C,OAAO,IAAI3B,GAAG,CAAC,IAAI,CAACD,MAAM,CAAC;EAC/B;AACJ;;AAEA;AACA,OAAO,SAAS6B,sBAAsBA,CAClCC,OAAkD,EACqC;EACvF,OAAO;IACHC,MAAM,EAAE,yBAAkC;IAC1CD;EACJ,CAAC;AACL;;AAEA;AACA","ignoreList":[]}
|
|
@@ -19,7 +19,7 @@ class PrivateCmsModelBuilderImpl {
|
|
|
19
19
|
}
|
|
20
20
|
class PrivateCmsModelConfiguration {
|
|
21
21
|
metadata = {};
|
|
22
|
-
//
|
|
22
|
+
// oxlint-disable-next-line
|
|
23
23
|
modelMethods = {};
|
|
24
24
|
extensionFields = new Map();
|
|
25
25
|
constructor(modelId, fieldBuilderRegistry, fieldDefinitionsBuilder) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["z","FieldDefinitionsBuilder","createImplementation","FieldBuilderRegistry","PrivateCmsModelBuilder","BuilderAbstraction","ModelBuilder","PrivateCmsModelBuilderImpl","constructor","fieldBuilderRegistry","create","modelId","fieldDefinitions","builder","fieldShape","factory","fieldDefinitionsBuilder","__fromObject","PrivateCmsModelConfiguration","metadata","modelMethods","extensionFields","Map","withMethods","methods","Object","assign","extendFields","fieldId","fieldBuilder","entries","config","toConfig","zodSchema","getZodSchema","set","build","baseSchema","__toZodSchema","finalSchema","size","extensionsShape","optional","extensionsSchema","object","extend","extensions","modelBuilder","keys","length","ModelClass","allFields","__getFields","type","label","validation","settings","fromEntries","Array","from","map","id","fields","values","f","modelType","Model","name","icon","description","schema","getSchema","data","abstraction","implementation","dependencies"],"sources":["PrivateCmsModelBuilder.ts"],"sourcesContent":["import { z } from \"zod\";\nimport {\n FieldDefinitionsBuilder,\n type FieldDefinitionsFactory\n} from \"./FieldDefinitionsBuilder.js\";\nimport type { BaseModel } from \"../base/BaseModel.js\";\nimport type { IModelData } from \"../base/abstractions.js\";\nimport type { PrivateCmsModel, CmsModelMetadata, FieldBuilderConfig } from \"./types.js\";\n// Import your existing ModelBuilder\nimport { FieldBuilder } from \"./FieldBuilder.js\";\nimport { createImplementation } from \"@webiny/di\";\nimport {\n FieldBuilderRegistry,\n type IFieldBuilderRegistry,\n PrivateCmsModelBuilder as BuilderAbstraction\n} from \"~/models/cms/abstractions.js\";\nimport { ModelBuilder } from \"~/models/base/ModelBuilder.js\";\n\nexport interface IPrivateCmsModelBuilder {\n create<TModel extends BaseModel<any>, TFields extends z.ZodRawShape = any>(\n modelId: string,\n fieldDefinitions: FieldDefinitionsFactory<TFields>\n ): IPrivateCmsModelConfiguration<TModel>;\n}\n\nexport interface IPrivateCmsModelConfiguration<TModel extends BaseModel<any>> {\n withMethods<TMethods extends object>(\n methods: TMethods & ThisType<TModel & TMethods>\n ): IPrivateCmsModelConfiguration<TModel>;\n extendFields(\n factory: (fields: IFieldBuilderRegistry) => Record<string, FieldBuilder<any>>\n ): IPrivateCmsModelConfiguration<TModel>;\n build(): PrivateCmsModel<TModel>;\n}\n\nclass PrivateCmsModelBuilderImpl implements IPrivateCmsModelBuilder {\n constructor(private fieldBuilderRegistry: IFieldBuilderRegistry) {}\n\n create<TModel extends BaseModel<any>, TFields extends z.ZodRawShape = any>(\n modelId: string,\n fieldDefinitions: FieldDefinitionsFactory<TFields>\n ): IPrivateCmsModelConfiguration<TModel> {\n const builder = new FieldDefinitionsBuilder(this.fieldBuilderRegistry);\n const fieldShape = fieldDefinitions.factory(this.fieldBuilderRegistry);\n const fieldDefinitionsBuilder = builder.__fromObject(fieldShape);\n\n return new PrivateCmsModelConfiguration<TModel>(\n modelId,\n this.fieldBuilderRegistry,\n fieldDefinitionsBuilder\n );\n }\n}\n\nclass PrivateCmsModelConfiguration<\n TModel extends BaseModel<any>\n> implements IPrivateCmsModelConfiguration<TModel> {\n private metadata: CmsModelMetadata = {};\n // eslint-disable-next-line\n private modelMethods: Record<string, Function> = {};\n private extensionFields = new Map<string, FieldBuilderConfig>();\n\n constructor(\n private modelId: string,\n private fieldBuilderRegistry: IFieldBuilderRegistry,\n private fieldDefinitionsBuilder: FieldDefinitionsBuilder\n ) {}\n\n withMethods<TMethods extends object>(\n methods: TMethods & ThisType<TModel & TMethods>\n ): IPrivateCmsModelConfiguration<TModel> {\n Object.assign(this.modelMethods, methods);\n return this as any;\n }\n\n extendFields(\n factory: (fields: IFieldBuilderRegistry) => Record<string, FieldBuilder<any>>\n ): IPrivateCmsModelConfiguration<TModel> {\n // Use the factory to get field shape - same as createFieldDefinitions!\n const fieldShape = factory(this.fieldBuilderRegistry);\n\n // Convert to field configs\n for (const [fieldId, fieldBuilder] of Object.entries(fieldShape)) {\n const config = fieldBuilder.toConfig();\n config.fieldId = fieldId;\n const zodSchema = fieldBuilder.getZodSchema();\n\n this.extensionFields.set(fieldId, {\n fieldId,\n config,\n zodSchema\n });\n }\n\n return this as any;\n }\n\n build(): PrivateCmsModel<TModel> {\n const baseSchema = this.fieldDefinitionsBuilder.__toZodSchema();\n let finalSchema = baseSchema;\n\n if (this.extensionFields.size > 0) {\n const extensionsShape: Record<string, z.ZodTypeAny> = {};\n\n for (const [fieldId, { zodSchema }] of this.extensionFields) {\n // Make each extension field optional\n extensionsShape[fieldId] = zodSchema.optional();\n }\n\n const extensionsSchema = z.object(extensionsShape).optional();\n\n finalSchema = baseSchema.extend({\n extensions: extensionsSchema\n }) as any;\n }\n\n let modelBuilder = new ModelBuilder<any>(this.modelId, finalSchema);\n\n if (Object.keys(this.modelMethods).length > 0) {\n modelBuilder = modelBuilder.withMethods(this.modelMethods);\n }\n\n const ModelClass = modelBuilder.build();\n\n const allFields = [\n ...this.fieldDefinitionsBuilder.__getFields(),\n ...(this.extensionFields.size > 0\n ? [\n {\n fieldId: \"extensions\",\n type: \"object\",\n label: \"Extensions\",\n validation: [],\n settings: {},\n zodSchema: z\n .object(\n Object.fromEntries(\n Array.from(this.extensionFields.entries()).map(\n ([id, { zodSchema }]) => [id, zodSchema.optional()]\n )\n )\n )\n .optional(),\n fields: Array.from(this.extensionFields.values()).map(f => f.config)\n }\n ]\n : [])\n ];\n\n return {\n type: \"private\" as const,\n modelType: \"private\" as const,\n Model: ModelClass as any,\n modelId: this.modelId,\n name: this.modelId,\n icon: this.metadata.icon,\n description: this.metadata.description,\n fields: allFields,\n schema: modelBuilder.getSchema() as TModel[\"__schema\"],\n create: (data: IModelData<TModel>) => ModelClass.create(data) as TModel\n };\n }\n}\n\nexport const PrivateCmsModelBuilder = createImplementation({\n abstraction: BuilderAbstraction,\n implementation: PrivateCmsModelBuilderImpl,\n dependencies: [FieldBuilderRegistry]\n});\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["z","FieldDefinitionsBuilder","createImplementation","FieldBuilderRegistry","PrivateCmsModelBuilder","BuilderAbstraction","ModelBuilder","PrivateCmsModelBuilderImpl","constructor","fieldBuilderRegistry","create","modelId","fieldDefinitions","builder","fieldShape","factory","fieldDefinitionsBuilder","__fromObject","PrivateCmsModelConfiguration","metadata","modelMethods","extensionFields","Map","withMethods","methods","Object","assign","extendFields","fieldId","fieldBuilder","entries","config","toConfig","zodSchema","getZodSchema","set","build","baseSchema","__toZodSchema","finalSchema","size","extensionsShape","optional","extensionsSchema","object","extend","extensions","modelBuilder","keys","length","ModelClass","allFields","__getFields","type","label","validation","settings","fromEntries","Array","from","map","id","fields","values","f","modelType","Model","name","icon","description","schema","getSchema","data","abstraction","implementation","dependencies"],"sources":["PrivateCmsModelBuilder.ts"],"sourcesContent":["import { z } from \"zod\";\nimport {\n FieldDefinitionsBuilder,\n type FieldDefinitionsFactory\n} from \"./FieldDefinitionsBuilder.js\";\nimport type { BaseModel } from \"../base/BaseModel.js\";\nimport type { IModelData } from \"../base/abstractions.js\";\nimport type { PrivateCmsModel, CmsModelMetadata, FieldBuilderConfig } from \"./types.js\";\n// Import your existing ModelBuilder\nimport { FieldBuilder } from \"./FieldBuilder.js\";\nimport { createImplementation } from \"@webiny/di\";\nimport {\n FieldBuilderRegistry,\n type IFieldBuilderRegistry,\n PrivateCmsModelBuilder as BuilderAbstraction\n} from \"~/models/cms/abstractions.js\";\nimport { ModelBuilder } from \"~/models/base/ModelBuilder.js\";\n\nexport interface IPrivateCmsModelBuilder {\n create<TModel extends BaseModel<any>, TFields extends z.ZodRawShape = any>(\n modelId: string,\n fieldDefinitions: FieldDefinitionsFactory<TFields>\n ): IPrivateCmsModelConfiguration<TModel>;\n}\n\nexport interface IPrivateCmsModelConfiguration<TModel extends BaseModel<any>> {\n withMethods<TMethods extends object>(\n methods: TMethods & ThisType<TModel & TMethods>\n ): IPrivateCmsModelConfiguration<TModel>;\n extendFields(\n factory: (fields: IFieldBuilderRegistry) => Record<string, FieldBuilder<any>>\n ): IPrivateCmsModelConfiguration<TModel>;\n build(): PrivateCmsModel<TModel>;\n}\n\nclass PrivateCmsModelBuilderImpl implements IPrivateCmsModelBuilder {\n constructor(private fieldBuilderRegistry: IFieldBuilderRegistry) {}\n\n create<TModel extends BaseModel<any>, TFields extends z.ZodRawShape = any>(\n modelId: string,\n fieldDefinitions: FieldDefinitionsFactory<TFields>\n ): IPrivateCmsModelConfiguration<TModel> {\n const builder = new FieldDefinitionsBuilder(this.fieldBuilderRegistry);\n const fieldShape = fieldDefinitions.factory(this.fieldBuilderRegistry);\n const fieldDefinitionsBuilder = builder.__fromObject(fieldShape);\n\n return new PrivateCmsModelConfiguration<TModel>(\n modelId,\n this.fieldBuilderRegistry,\n fieldDefinitionsBuilder\n );\n }\n}\n\nclass PrivateCmsModelConfiguration<\n TModel extends BaseModel<any>\n> implements IPrivateCmsModelConfiguration<TModel> {\n private metadata: CmsModelMetadata = {};\n // oxlint-disable-next-line\n private modelMethods: Record<string, Function> = {};\n private extensionFields = new Map<string, FieldBuilderConfig>();\n\n constructor(\n private modelId: string,\n private fieldBuilderRegistry: IFieldBuilderRegistry,\n private fieldDefinitionsBuilder: FieldDefinitionsBuilder\n ) {}\n\n withMethods<TMethods extends object>(\n methods: TMethods & ThisType<TModel & TMethods>\n ): IPrivateCmsModelConfiguration<TModel> {\n Object.assign(this.modelMethods, methods);\n return this as any;\n }\n\n extendFields(\n factory: (fields: IFieldBuilderRegistry) => Record<string, FieldBuilder<any>>\n ): IPrivateCmsModelConfiguration<TModel> {\n // Use the factory to get field shape - same as createFieldDefinitions!\n const fieldShape = factory(this.fieldBuilderRegistry);\n\n // Convert to field configs\n for (const [fieldId, fieldBuilder] of Object.entries(fieldShape)) {\n const config = fieldBuilder.toConfig();\n config.fieldId = fieldId;\n const zodSchema = fieldBuilder.getZodSchema();\n\n this.extensionFields.set(fieldId, {\n fieldId,\n config,\n zodSchema\n });\n }\n\n return this as any;\n }\n\n build(): PrivateCmsModel<TModel> {\n const baseSchema = this.fieldDefinitionsBuilder.__toZodSchema();\n let finalSchema = baseSchema;\n\n if (this.extensionFields.size > 0) {\n const extensionsShape: Record<string, z.ZodTypeAny> = {};\n\n for (const [fieldId, { zodSchema }] of this.extensionFields) {\n // Make each extension field optional\n extensionsShape[fieldId] = zodSchema.optional();\n }\n\n const extensionsSchema = z.object(extensionsShape).optional();\n\n finalSchema = baseSchema.extend({\n extensions: extensionsSchema\n }) as any;\n }\n\n let modelBuilder = new ModelBuilder<any>(this.modelId, finalSchema);\n\n if (Object.keys(this.modelMethods).length > 0) {\n modelBuilder = modelBuilder.withMethods(this.modelMethods);\n }\n\n const ModelClass = modelBuilder.build();\n\n const allFields = [\n ...this.fieldDefinitionsBuilder.__getFields(),\n ...(this.extensionFields.size > 0\n ? [\n {\n fieldId: \"extensions\",\n type: \"object\",\n label: \"Extensions\",\n validation: [],\n settings: {},\n zodSchema: z\n .object(\n Object.fromEntries(\n Array.from(this.extensionFields.entries()).map(\n ([id, { zodSchema }]) => [id, zodSchema.optional()]\n )\n )\n )\n .optional(),\n fields: Array.from(this.extensionFields.values()).map(f => f.config)\n }\n ]\n : [])\n ];\n\n return {\n type: \"private\" as const,\n modelType: \"private\" as const,\n Model: ModelClass as any,\n modelId: this.modelId,\n name: this.modelId,\n icon: this.metadata.icon,\n description: this.metadata.description,\n fields: allFields,\n schema: modelBuilder.getSchema() as TModel[\"__schema\"],\n create: (data: IModelData<TModel>) => ModelClass.create(data) as TModel\n };\n }\n}\n\nexport const PrivateCmsModelBuilder = createImplementation({\n abstraction: BuilderAbstraction,\n implementation: PrivateCmsModelBuilderImpl,\n dependencies: [FieldBuilderRegistry]\n});\n"],"mappings":"AAAA,SAASA,CAAC,QAAQ,KAAK;AACvB,SACIC,uBAAuB;;AAM3B;;AAEA,SAASC,oBAAoB,QAAQ,YAAY;AACjD,SACIC,oBAAoB,EAEpBC,sBAAsB,IAAIC,kBAAkB;AAEhD,SAASC,YAAY;AAmBrB,MAAMC,0BAA0B,CAAoC;EAChEC,WAAWA,CAASC,oBAA2C,EAAE;IAAA,KAA7CA,oBAA2C,GAA3CA,oBAA2C;EAAG;EAElEC,MAAMA,CACFC,OAAe,EACfC,gBAAkD,EACb;IACrC,MAAMC,OAAO,GAAG,IAAIZ,uBAAuB,CAAC,IAAI,CAACQ,oBAAoB,CAAC;IACtE,MAAMK,UAAU,GAAGF,gBAAgB,CAACG,OAAO,CAAC,IAAI,CAACN,oBAAoB,CAAC;IACtE,MAAMO,uBAAuB,GAAGH,OAAO,CAACI,YAAY,CAACH,UAAU,CAAC;IAEhE,OAAO,IAAII,4BAA4B,CACnCP,OAAO,EACP,IAAI,CAACF,oBAAoB,EACzBO,uBACJ,CAAC;EACL;AACJ;AAEA,MAAME,4BAA4B,CAEiB;EACvCC,QAAQ,GAAqB,CAAC,CAAC;EACvC;EACQC,YAAY,GAA6B,CAAC,CAAC;EAC3CC,eAAe,GAAG,IAAIC,GAAG,CAA6B,CAAC;EAE/Dd,WAAWA,CACCG,OAAe,EACfF,oBAA2C,EAC3CO,uBAAgD,EAC1D;IAAA,KAHUL,OAAe,GAAfA,OAAe;IAAA,KACfF,oBAA2C,GAA3CA,oBAA2C;IAAA,KAC3CO,uBAAgD,GAAhDA,uBAAgD;EACzD;EAEHO,WAAWA,CACPC,OAA+C,EACV;IACrCC,MAAM,CAACC,MAAM,CAAC,IAAI,CAACN,YAAY,EAAEI,OAAO,CAAC;IACzC,OAAO,IAAI;EACf;EAEAG,YAAYA,CACRZ,OAA6E,EACxC;IACrC;IACA,MAAMD,UAAU,GAAGC,OAAO,CAAC,IAAI,CAACN,oBAAoB,CAAC;;IAErD;IACA,KAAK,MAAM,CAACmB,OAAO,EAAEC,YAAY,CAAC,IAAIJ,MAAM,CAACK,OAAO,CAAChB,UAAU,CAAC,EAAE;MAC9D,MAAMiB,MAAM,GAAGF,YAAY,CAACG,QAAQ,CAAC,CAAC;MACtCD,MAAM,CAACH,OAAO,GAAGA,OAAO;MACxB,MAAMK,SAAS,GAAGJ,YAAY,CAACK,YAAY,CAAC,CAAC;MAE7C,IAAI,CAACb,eAAe,CAACc,GAAG,CAACP,OAAO,EAAE;QAC9BA,OAAO;QACPG,MAAM;QACNE;MACJ,CAAC,CAAC;IACN;IAEA,OAAO,IAAI;EACf;EAEAG,KAAKA,CAAA,EAA4B;IAC7B,MAAMC,UAAU,GAAG,IAAI,CAACrB,uBAAuB,CAACsB,aAAa,CAAC,CAAC;IAC/D,IAAIC,WAAW,GAAGF,UAAU;IAE5B,IAAI,IAAI,CAAChB,eAAe,CAACmB,IAAI,GAAG,CAAC,EAAE;MAC/B,MAAMC,eAA6C,GAAG,CAAC,CAAC;MAExD,KAAK,MAAM,CAACb,OAAO,EAAE;QAAEK;MAAU,CAAC,CAAC,IAAI,IAAI,CAACZ,eAAe,EAAE;QACzD;QACAoB,eAAe,CAACb,OAAO,CAAC,GAAGK,SAAS,CAACS,QAAQ,CAAC,CAAC;MACnD;MAEA,MAAMC,gBAAgB,GAAG3C,CAAC,CAAC4C,MAAM,CAACH,eAAe,CAAC,CAACC,QAAQ,CAAC,CAAC;MAE7DH,WAAW,GAAGF,UAAU,CAACQ,MAAM,CAAC;QAC5BC,UAAU,EAAEH;MAChB,CAAC,CAAQ;IACb;IAEA,IAAII,YAAY,GAAG,IAAIzC,YAAY,CAAM,IAAI,CAACK,OAAO,EAAE4B,WAAW,CAAC;IAEnE,IAAId,MAAM,CAACuB,IAAI,CAAC,IAAI,CAAC5B,YAAY,CAAC,CAAC6B,MAAM,GAAG,CAAC,EAAE;MAC3CF,YAAY,GAAGA,YAAY,CAACxB,WAAW,CAAC,IAAI,CAACH,YAAY,CAAC;IAC9D;IAEA,MAAM8B,UAAU,GAAGH,YAAY,CAACX,KAAK,CAAC,CAAC;IAEvC,MAAMe,SAAS,GAAG,CACd,GAAG,IAAI,CAACnC,uBAAuB,CAACoC,WAAW,CAAC,CAAC,EAC7C,IAAI,IAAI,CAAC/B,eAAe,CAACmB,IAAI,GAAG,CAAC,GAC3B,CACI;MACIZ,OAAO,EAAE,YAAY;MACrByB,IAAI,EAAE,QAAQ;MACdC,KAAK,EAAE,YAAY;MACnBC,UAAU,EAAE,EAAE;MACdC,QAAQ,EAAE,CAAC,CAAC;MACZvB,SAAS,EAAEjC,CAAC,CACP4C,MAAM,CACHnB,MAAM,CAACgC,WAAW,CACdC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACtC,eAAe,CAACS,OAAO,CAAC,CAAC,CAAC,CAAC8B,GAAG,CAC1C,CAAC,CAACC,EAAE,EAAE;QAAE5B;MAAU,CAAC,CAAC,KAAK,CAAC4B,EAAE,EAAE5B,SAAS,CAACS,QAAQ,CAAC,CAAC,CACtD,CACJ,CACJ,CAAC,CACAA,QAAQ,CAAC,CAAC;MACfoB,MAAM,EAAEJ,KAAK,CAACC,IAAI,CAAC,IAAI,CAACtC,eAAe,CAAC0C,MAAM,CAAC,CAAC,CAAC,CAACH,GAAG,CAACI,CAAC,IAAIA,CAAC,CAACjC,MAAM;IACvE,CAAC,CACJ,GACD,EAAE,CAAC,CACZ;IAED,OAAO;MACHsB,IAAI,EAAE,SAAkB;MACxBY,SAAS,EAAE,SAAkB;MAC7BC,KAAK,EAAEhB,UAAiB;MACxBvC,OAAO,EAAE,IAAI,CAACA,OAAO;MACrBwD,IAAI,EAAE,IAAI,CAACxD,OAAO;MAClByD,IAAI,EAAE,IAAI,CAACjD,QAAQ,CAACiD,IAAI;MACxBC,WAAW,EAAE,IAAI,CAAClD,QAAQ,CAACkD,WAAW;MACtCP,MAAM,EAAEX,SAAS;MACjBmB,MAAM,EAAEvB,YAAY,CAACwB,SAAS,CAAC,CAAuB;MACtD7D,MAAM,EAAG8D,IAAwB,IAAKtB,UAAU,CAACxC,MAAM,CAAC8D,IAAI;IAChE,CAAC;EACL;AACJ;AAEA,OAAO,MAAMpE,sBAAsB,GAAGF,oBAAoB,CAAC;EACvDuE,WAAW,EAAEpE,kBAAkB;EAC/BqE,cAAc,EAAEnE,0BAA0B;EAC1CoE,YAAY,EAAE,CAACxE,oBAAoB;AACvC,CAAC,CAAC","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/api-core",
|
|
3
|
-
"version": "6.3.0-beta.
|
|
3
|
+
"version": "6.3.0-beta.3",
|
|
4
4
|
"type": "module",
|
|
5
|
-
"main": "index.js",
|
|
6
5
|
"repository": {
|
|
7
6
|
"type": "git",
|
|
8
7
|
"url": "https://github.com/webiny/webiny-js.git"
|
|
@@ -15,22 +14,22 @@
|
|
|
15
14
|
"./*": "./*"
|
|
16
15
|
},
|
|
17
16
|
"dependencies": {
|
|
18
|
-
"@ai-sdk/anthropic": "3.0.
|
|
19
|
-
"@ai-sdk/openai": "3.0.
|
|
20
|
-
"@webiny/api": "6.3.0-beta.
|
|
17
|
+
"@ai-sdk/anthropic": "3.0.74",
|
|
18
|
+
"@ai-sdk/openai": "3.0.60",
|
|
19
|
+
"@webiny/api": "6.3.0-beta.3",
|
|
21
20
|
"@webiny/di": "0.2.3",
|
|
22
|
-
"@webiny/error": "6.3.0-beta.
|
|
23
|
-
"@webiny/feature": "6.3.0-beta.
|
|
24
|
-
"@webiny/feature-flags": "6.3.0-beta.
|
|
25
|
-
"@webiny/handler": "6.3.0-beta.
|
|
26
|
-
"@webiny/handler-db": "6.3.0-beta.
|
|
27
|
-
"@webiny/handler-graphql": "6.3.0-beta.
|
|
28
|
-
"@webiny/plugins": "6.3.0-beta.
|
|
29
|
-
"@webiny/utils": "6.3.0-beta.
|
|
30
|
-
"@webiny/wcp": "6.3.0-beta.
|
|
31
|
-
"ai": "6.0.
|
|
21
|
+
"@webiny/error": "6.3.0-beta.3",
|
|
22
|
+
"@webiny/feature": "6.3.0-beta.3",
|
|
23
|
+
"@webiny/feature-flags": "6.3.0-beta.3",
|
|
24
|
+
"@webiny/handler": "6.3.0-beta.3",
|
|
25
|
+
"@webiny/handler-db": "6.3.0-beta.3",
|
|
26
|
+
"@webiny/handler-graphql": "6.3.0-beta.3",
|
|
27
|
+
"@webiny/plugins": "6.3.0-beta.3",
|
|
28
|
+
"@webiny/utils": "6.3.0-beta.3",
|
|
29
|
+
"@webiny/wcp": "6.3.0-beta.3",
|
|
30
|
+
"ai": "6.0.175",
|
|
32
31
|
"dataloader": "2.2.3",
|
|
33
|
-
"jose": "6.2.
|
|
32
|
+
"jose": "6.2.3",
|
|
34
33
|
"jsonwebtoken": "9.0.3",
|
|
35
34
|
"lodash": "4.18.1",
|
|
36
35
|
"minimatch": "10.2.5",
|
|
@@ -40,10 +39,10 @@
|
|
|
40
39
|
},
|
|
41
40
|
"devDependencies": {
|
|
42
41
|
"@types/jsonwebtoken": "9.0.10",
|
|
43
|
-
"@webiny/build-tools": "6.3.0-beta.
|
|
44
|
-
"@webiny/db-dynamodb": "6.3.0-beta.
|
|
45
|
-
"@webiny/handler-aws": "6.3.0-beta.
|
|
46
|
-
"@webiny/project-utils": "6.3.0-beta.
|
|
42
|
+
"@webiny/build-tools": "6.3.0-beta.3",
|
|
43
|
+
"@webiny/db-dynamodb": "6.3.0-beta.3",
|
|
44
|
+
"@webiny/handler-aws": "6.3.0-beta.3",
|
|
45
|
+
"@webiny/project-utils": "6.3.0-beta.3",
|
|
47
46
|
"jest-dynalite": "3.6.1",
|
|
48
47
|
"rimraf": "6.1.3",
|
|
49
48
|
"typescript": "6.0.3",
|
|
@@ -53,5 +52,5 @@
|
|
|
53
52
|
"access": "public",
|
|
54
53
|
"directory": "dist"
|
|
55
54
|
},
|
|
56
|
-
"gitHead": "
|
|
55
|
+
"gitHead": "e154ec3326903876c357d35422dc60d29e061419"
|
|
57
56
|
}
|