@webiny/api-website-builder-scheduler 0.0.0-unstable.b6d7105cee → 0.0.0-unstable.e9333b3f0b
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/WebsiteBuilderSchedulerFeature.d.ts +5 -0
- package/{context.js → WebsiteBuilderSchedulerFeature.js} +21 -16
- package/WebsiteBuilderSchedulerFeature.js.map +1 -0
- package/features/permissions/WbSchedulerPermissions.d.ts +13 -0
- package/features/permissions/WbSchedulerPermissions.js +26 -0
- package/features/permissions/WbSchedulerPermissions.js.map +1 -0
- package/index.d.ts +1 -2
- package/index.js +1 -7
- package/package.json +14 -17
- package/context.d.ts +0 -2
- package/context.js.map +0 -1
- package/index.js.map +0 -1
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { CancelScheduledActionOnChangeFeature } from "./features/CancelScheduledActionOnChange/feature.js";
|
|
3
|
+
import { WbSchedulerPermissions } from "./features/permissions/WbSchedulerPermissions.js";
|
|
3
4
|
import { PageNamespaceHandler } from "./features/NamespaceHandler/PageNamespaceHandler.js";
|
|
4
5
|
import { RedirectNamespaceHandler } from "./features/NamespaceHandler/RedirectNamespaceHandler.js";
|
|
5
6
|
import { PublishPageActionHandler } from "./features/PublishActionHandler/PublishPageActionHandler.js";
|
|
@@ -10,19 +11,23 @@ import { SchedulePublishPageUseCase } from "./features/SchedulePublishPageUseCas
|
|
|
10
11
|
import { ScheduleUnpublishPageUseCase } from "./features/ScheduleUnpublishPageUseCase/ScheduleUnpublishPageUseCase.js";
|
|
11
12
|
import { SchedulePublishRedirectUseCase } from "./features/SchedulePublishRedirectUseCase/SchedulePublishRedirectUseCase.js";
|
|
12
13
|
import { ScheduleUnpublishRedirectUseCase } from "./features/ScheduleUnpublishRedirectUseCase/ScheduleUnpublishRedirectUseCase.js";
|
|
13
|
-
const
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
14
|
+
const WebsiteBuilderSchedulerFeature = createFeature({
|
|
15
|
+
name: "WebsiteBuilderScheduler",
|
|
16
|
+
register (container) {
|
|
17
|
+
container.register(PageNamespaceHandler);
|
|
18
|
+
container.register(RedirectNamespaceHandler);
|
|
19
|
+
container.register(PublishPageActionHandler);
|
|
20
|
+
container.register(PublishRedirectActionHandler);
|
|
21
|
+
container.register(UnpublishPageActionHandler);
|
|
22
|
+
container.register(UnpublishRedirectActionHandler);
|
|
23
|
+
container.register(SchedulePublishPageUseCase);
|
|
24
|
+
container.register(ScheduleUnpublishPageUseCase);
|
|
25
|
+
container.register(SchedulePublishRedirectUseCase);
|
|
26
|
+
container.register(ScheduleUnpublishRedirectUseCase);
|
|
27
|
+
CancelScheduledActionOnChangeFeature.register(container);
|
|
28
|
+
container.register(WbSchedulerPermissions);
|
|
29
|
+
}
|
|
30
|
+
});
|
|
31
|
+
export { WebsiteBuilderSchedulerFeature };
|
|
27
32
|
|
|
28
|
-
//# sourceMappingURL=
|
|
33
|
+
//# sourceMappingURL=WebsiteBuilderSchedulerFeature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"WebsiteBuilderSchedulerFeature.js","sources":["../src/WebsiteBuilderSchedulerFeature.ts"],"sourcesContent":["import { type Container, createFeature } from \"@webiny/feature/api\";\nimport { CancelScheduledActionOnChangeFeature } from \"~/features/CancelScheduledActionOnChange/feature.js\";\nimport { WbSchedulerPermissions } from \"~/features/permissions/WbSchedulerPermissions.js\";\nimport { PageNamespaceHandler } from \"~/features/NamespaceHandler/PageNamespaceHandler.js\";\nimport { RedirectNamespaceHandler } from \"~/features/NamespaceHandler/RedirectNamespaceHandler.js\";\nimport { PublishPageActionHandler } from \"~/features/PublishActionHandler/PublishPageActionHandler.js\";\nimport { PublishRedirectActionHandler } from \"~/features/PublishActionHandler/PublishRedirectActionHandler.js\";\nimport { UnpublishPageActionHandler } from \"~/features/UnpublishActionHandler/UnpublishPageActionHandler.js\";\nimport { UnpublishRedirectActionHandler } from \"~/features/UnpublishActionHandler/UnpublishRedirectActionHandler.js\";\nimport { SchedulePublishPageUseCase } from \"~/features/SchedulePublishPageUseCase/SchedulePublishPageUseCase.js\";\nimport { ScheduleUnpublishPageUseCase } from \"~/features/ScheduleUnpublishPageUseCase/ScheduleUnpublishPageUseCase.js\";\nimport { SchedulePublishRedirectUseCase } from \"~/features/SchedulePublishRedirectUseCase/SchedulePublishRedirectUseCase.js\";\nimport { ScheduleUnpublishRedirectUseCase } from \"~/features/ScheduleUnpublishRedirectUseCase/ScheduleUnpublishRedirectUseCase.js\";\n\nexport const WebsiteBuilderSchedulerFeature = createFeature({\n name: \"WebsiteBuilderScheduler\",\n register(container: Container) {\n // Pure DI registration (was a request-time ContextPlugin — none of it needs ctx/post-auth).\n container.register(PageNamespaceHandler);\n container.register(RedirectNamespaceHandler);\n container.register(PublishPageActionHandler);\n container.register(PublishRedirectActionHandler);\n container.register(UnpublishPageActionHandler);\n container.register(UnpublishRedirectActionHandler);\n container.register(SchedulePublishPageUseCase);\n container.register(ScheduleUnpublishPageUseCase);\n container.register(SchedulePublishRedirectUseCase);\n container.register(ScheduleUnpublishRedirectUseCase);\n\n CancelScheduledActionOnChangeFeature.register(container);\n container.register(WbSchedulerPermissions);\n }\n});\n"],"names":["WebsiteBuilderSchedulerFeature","createFeature","container","PageNamespaceHandler","RedirectNamespaceHandler","PublishPageActionHandler","PublishRedirectActionHandler","UnpublishPageActionHandler","UnpublishRedirectActionHandler","SchedulePublishPageUseCase","ScheduleUnpublishPageUseCase","SchedulePublishRedirectUseCase","ScheduleUnpublishRedirectUseCase","CancelScheduledActionOnChangeFeature","WbSchedulerPermissions"],"mappings":";;;;;;;;;;;;;AAcO,MAAMA,iCAAiCC,cAAc;IACxD,MAAM;IACN,UAASC,SAAoB;QAEzBA,UAAU,QAAQ,CAACC;QACnBD,UAAU,QAAQ,CAACE;QACnBF,UAAU,QAAQ,CAACG;QACnBH,UAAU,QAAQ,CAACI;QACnBJ,UAAU,QAAQ,CAACK;QACnBL,UAAU,QAAQ,CAACM;QACnBN,UAAU,QAAQ,CAACO;QACnBP,UAAU,QAAQ,CAACQ;QACnBR,UAAU,QAAQ,CAACS;QACnBT,UAAU,QAAQ,CAACU;QAEnBC,qCAAqC,QAAQ,CAACX;QAC9CA,UAAU,QAAQ,CAACY;IACvB;AACJ"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { SchedulerPermissions } from "@webiny/api-scheduler/features/permissions/abstractions.js";
|
|
2
|
+
import { WbPermissions } from "@webiny/api-website-builder/features/permissions/abstractions.js";
|
|
3
|
+
declare class WbSchedulerPermissionsImpl implements SchedulerPermissions.Interface {
|
|
4
|
+
private permissions;
|
|
5
|
+
constructor(permissions: WbPermissions.Interface);
|
|
6
|
+
canHandle(namespace: string): boolean;
|
|
7
|
+
canRead(): Promise<boolean>;
|
|
8
|
+
onlyOwnRecords(): Promise<boolean>;
|
|
9
|
+
}
|
|
10
|
+
export declare const WbSchedulerPermissions: typeof WbSchedulerPermissionsImpl & {
|
|
11
|
+
__abstraction: import("@webiny/di").Abstraction<import("@webiny/api-scheduler/features/permissions/abstractions.js").ISchedulerPermissions>;
|
|
12
|
+
};
|
|
13
|
+
export {};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { SchedulerPermissions } from "@webiny/api-scheduler/features/permissions/abstractions.js";
|
|
2
|
+
import { WbPermissions } from "@webiny/api-website-builder/features/permissions/abstractions.js";
|
|
3
|
+
import { WEBSITE_BUILDER_NAMESPACE } from "../../constants.js";
|
|
4
|
+
class WbSchedulerPermissionsImpl {
|
|
5
|
+
constructor(permissions){
|
|
6
|
+
this.permissions = permissions;
|
|
7
|
+
}
|
|
8
|
+
canHandle(namespace) {
|
|
9
|
+
return namespace.startsWith(WEBSITE_BUILDER_NAMESPACE);
|
|
10
|
+
}
|
|
11
|
+
async canRead() {
|
|
12
|
+
return this.permissions.canPublish("page");
|
|
13
|
+
}
|
|
14
|
+
async onlyOwnRecords() {
|
|
15
|
+
return this.permissions.onlyOwnRecords("page");
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
const WbSchedulerPermissions = SchedulerPermissions.createImplementation({
|
|
19
|
+
implementation: WbSchedulerPermissionsImpl,
|
|
20
|
+
dependencies: [
|
|
21
|
+
WbPermissions
|
|
22
|
+
]
|
|
23
|
+
});
|
|
24
|
+
export { WbSchedulerPermissions };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=WbSchedulerPermissions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/permissions/WbSchedulerPermissions.js","sources":["../../../src/features/permissions/WbSchedulerPermissions.ts"],"sourcesContent":["import { SchedulerPermissions } from \"@webiny/api-scheduler/features/permissions/abstractions.js\";\nimport { WbPermissions } from \"@webiny/api-website-builder/features/permissions/abstractions.js\";\nimport { WEBSITE_BUILDER_NAMESPACE } from \"~/constants.js\";\n\nclass WbSchedulerPermissionsImpl implements SchedulerPermissions.Interface {\n constructor(private permissions: WbPermissions.Interface) {}\n\n canHandle(namespace: string): boolean {\n return namespace.startsWith(WEBSITE_BUILDER_NAMESPACE);\n }\n\n async canRead(): Promise<boolean> {\n return this.permissions.canPublish(\"page\");\n }\n\n async onlyOwnRecords(): Promise<boolean> {\n return this.permissions.onlyOwnRecords(\"page\");\n }\n}\n\nexport const WbSchedulerPermissions = SchedulerPermissions.createImplementation({\n implementation: WbSchedulerPermissionsImpl,\n dependencies: [WbPermissions]\n});\n"],"names":["WbSchedulerPermissionsImpl","permissions","namespace","WEBSITE_BUILDER_NAMESPACE","WbSchedulerPermissions","SchedulerPermissions","WbPermissions"],"mappings":";;;AAIA,MAAMA;IACF,YAAoBC,WAAoC,CAAE;aAAtCA,WAAW,GAAXA;IAAuC;IAE3D,UAAUC,SAAiB,EAAW;QAClC,OAAOA,UAAU,UAAU,CAACC;IAChC;IAEA,MAAM,UAA4B;QAC9B,OAAO,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC;IACvC;IAEA,MAAM,iBAAmC;QACrC,OAAO,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC;IAC3C;AACJ;AAEO,MAAMC,yBAAyBC,qBAAqB,oBAAoB,CAAC;IAC5E,gBAAgBL;IAChB,cAAc;QAACM;KAAc;AACjC"}
|
package/index.d.ts
CHANGED
|
@@ -1,2 +1 @@
|
|
|
1
|
-
|
|
2
|
-
export declare const createWebsiteBuilderScheduler: () => ContextPlugin[];
|
|
1
|
+
export { WebsiteBuilderSchedulerFeature } from "./WebsiteBuilderSchedulerFeature.js";
|
package/index.js
CHANGED
|
@@ -1,7 +1 @@
|
|
|
1
|
-
|
|
2
|
-
const createWebsiteBuilderScheduler = ()=>[
|
|
3
|
-
createWebsiteBuilderScheduleContext()
|
|
4
|
-
];
|
|
5
|
-
export { createWebsiteBuilderScheduler };
|
|
6
|
-
|
|
7
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { WebsiteBuilderSchedulerFeature } from "./WebsiteBuilderSchedulerFeature.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@webiny/api-website-builder-scheduler",
|
|
3
|
-
"version": "0.0.0-unstable.
|
|
3
|
+
"version": "0.0.0-unstable.e9333b3f0b",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"exports": {
|
|
6
6
|
".": "./index.js",
|
|
@@ -17,25 +17,22 @@
|
|
|
17
17
|
},
|
|
18
18
|
"license": "MIT",
|
|
19
19
|
"dependencies": {
|
|
20
|
-
"@webiny/api": "0.0.0-unstable.
|
|
21
|
-
"@webiny/api-scheduler": "0.0.0-unstable.
|
|
22
|
-
"@webiny/api-website-builder": "0.0.0-unstable.
|
|
23
|
-
"@webiny/feature": "0.0.0-unstable.
|
|
24
|
-
"@webiny/handler-graphql": "0.0.0-unstable.b6d7105cee"
|
|
20
|
+
"@webiny/api": "0.0.0-unstable.e9333b3f0b",
|
|
21
|
+
"@webiny/api-scheduler": "0.0.0-unstable.e9333b3f0b",
|
|
22
|
+
"@webiny/api-website-builder": "0.0.0-unstable.e9333b3f0b",
|
|
23
|
+
"@webiny/feature": "0.0.0-unstable.e9333b3f0b"
|
|
25
24
|
},
|
|
26
25
|
"devDependencies": {
|
|
27
|
-
"@webiny/api-core": "0.0.0-unstable.
|
|
28
|
-
"@webiny/api-headless-cms": "0.0.0-unstable.
|
|
29
|
-
"@webiny/api-
|
|
30
|
-
"@webiny/
|
|
31
|
-
"@webiny/
|
|
32
|
-
"@webiny/
|
|
33
|
-
"@webiny/
|
|
34
|
-
"@webiny/
|
|
35
|
-
"@webiny/project-utils": "0.0.0-unstable.b6d7105cee",
|
|
36
|
-
"@webiny/wcp": "0.0.0-unstable.b6d7105cee",
|
|
26
|
+
"@webiny/api-core": "0.0.0-unstable.e9333b3f0b",
|
|
27
|
+
"@webiny/api-headless-cms": "0.0.0-unstable.e9333b3f0b",
|
|
28
|
+
"@webiny/api-headless-cms-testing": "0.0.0-unstable.e9333b3f0b",
|
|
29
|
+
"@webiny/api-opensearch": "0.0.0-unstable.e9333b3f0b",
|
|
30
|
+
"@webiny/background-tasks": "0.0.0-unstable.e9333b3f0b",
|
|
31
|
+
"@webiny/build-tools": "0.0.0-unstable.e9333b3f0b",
|
|
32
|
+
"@webiny/di": "1.1.0",
|
|
33
|
+
"@webiny/wcp": "0.0.0-unstable.e9333b3f0b",
|
|
37
34
|
"typescript": "7.0.2",
|
|
38
|
-
"vitest": "4.1.
|
|
35
|
+
"vitest": "4.1.11"
|
|
39
36
|
},
|
|
40
37
|
"publishConfig": {
|
|
41
38
|
"access": "public"
|
package/context.d.ts
DELETED
package/context.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"context.js","sources":["../src/context.ts"],"sourcesContent":["import { ContextPlugin } from \"@webiny/api\";\nimport { CancelScheduledActionOnChangeFeature } from \"~/features/CancelScheduledActionOnChange/feature.js\";\nimport { PageNamespaceHandler } from \"~/features/NamespaceHandler/PageNamespaceHandler.js\";\nimport { RedirectNamespaceHandler } from \"~/features/NamespaceHandler/RedirectNamespaceHandler.js\";\nimport { PublishPageActionHandler } from \"~/features/PublishActionHandler/PublishPageActionHandler.js\";\nimport { PublishRedirectActionHandler } from \"~/features/PublishActionHandler/PublishRedirectActionHandler.js\";\nimport { UnpublishPageActionHandler } from \"~/features/UnpublishActionHandler/UnpublishPageActionHandler.js\";\nimport { UnpublishRedirectActionHandler } from \"~/features/UnpublishActionHandler/UnpublishRedirectActionHandler.js\";\nimport { SchedulePublishPageUseCase } from \"~/features/SchedulePublishPageUseCase/SchedulePublishPageUseCase.js\";\nimport { ScheduleUnpublishPageUseCase } from \"~/features/ScheduleUnpublishPageUseCase/ScheduleUnpublishPageUseCase.js\";\nimport { SchedulePublishRedirectUseCase } from \"~/features/SchedulePublishRedirectUseCase/SchedulePublishRedirectUseCase.js\";\nimport { ScheduleUnpublishRedirectUseCase } from \"~/features/ScheduleUnpublishRedirectUseCase/ScheduleUnpublishRedirectUseCase.js\";\n\nexport const createWebsiteBuilderScheduleContext = () => {\n return new ContextPlugin(async context => {\n context.container.register(PageNamespaceHandler);\n context.container.register(RedirectNamespaceHandler);\n context.container.register(PublishPageActionHandler);\n context.container.register(PublishRedirectActionHandler);\n context.container.register(UnpublishPageActionHandler);\n context.container.register(UnpublishRedirectActionHandler);\n context.container.register(SchedulePublishPageUseCase);\n context.container.register(ScheduleUnpublishPageUseCase);\n context.container.register(SchedulePublishRedirectUseCase);\n context.container.register(ScheduleUnpublishRedirectUseCase);\n\n CancelScheduledActionOnChangeFeature.register(context.container);\n });\n};\n"],"names":["createWebsiteBuilderScheduleContext","ContextPlugin","context","PageNamespaceHandler","RedirectNamespaceHandler","PublishPageActionHandler","PublishRedirectActionHandler","UnpublishPageActionHandler","UnpublishRedirectActionHandler","SchedulePublishPageUseCase","ScheduleUnpublishPageUseCase","SchedulePublishRedirectUseCase","ScheduleUnpublishRedirectUseCase","CancelScheduledActionOnChangeFeature"],"mappings":";;;;;;;;;;;;AAaO,MAAMA,sCAAsC,IACxC,IAAIC,cAAc,OAAMC;QAC3BA,QAAQ,SAAS,CAAC,QAAQ,CAACC;QAC3BD,QAAQ,SAAS,CAAC,QAAQ,CAACE;QAC3BF,QAAQ,SAAS,CAAC,QAAQ,CAACG;QAC3BH,QAAQ,SAAS,CAAC,QAAQ,CAACI;QAC3BJ,QAAQ,SAAS,CAAC,QAAQ,CAACK;QAC3BL,QAAQ,SAAS,CAAC,QAAQ,CAACM;QAC3BN,QAAQ,SAAS,CAAC,QAAQ,CAACO;QAC3BP,QAAQ,SAAS,CAAC,QAAQ,CAACQ;QAC3BR,QAAQ,SAAS,CAAC,QAAQ,CAACS;QAC3BT,QAAQ,SAAS,CAAC,QAAQ,CAACU;QAE3BC,qCAAqC,QAAQ,CAACX,QAAQ,SAAS;IACnE"}
|
package/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/index.ts"],"sourcesContent":["import { createWebsiteBuilderScheduleContext } from \"~/context.js\";\nimport { ContextPlugin } from \"@webiny/api\";\n\nexport const createWebsiteBuilderScheduler = (): ContextPlugin[] => {\n return [createWebsiteBuilderScheduleContext()];\n};\n"],"names":["createWebsiteBuilderScheduler","createWebsiteBuilderScheduleContext"],"mappings":";AAGO,MAAMA,gCAAgC,IAClC;QAACC;KAAsC"}
|