@webiny/api-website-builder-scheduler 6.3.0 → 6.4.0-beta.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.
Files changed (51) hide show
  1. package/constants.js +8 -4
  2. package/constants.js.map +1 -1
  3. package/context.js +14 -15
  4. package/context.js.map +1 -1
  5. package/exports/api/website-builder/scheduler.js +0 -2
  6. package/features/CancelScheduledActionOnChange/CancelScheduledActionOnPageDeleteEventHandler.js +25 -33
  7. package/features/CancelScheduledActionOnChange/CancelScheduledActionOnPageDeleteEventHandler.js.map +1 -1
  8. package/features/CancelScheduledActionOnChange/CancelScheduledActionOnPagePublishEventHandler.js +25 -34
  9. package/features/CancelScheduledActionOnChange/CancelScheduledActionOnPagePublishEventHandler.js.map +1 -1
  10. package/features/CancelScheduledActionOnChange/CancelScheduledActionOnPageUnpublishEventHandler.js +25 -34
  11. package/features/CancelScheduledActionOnChange/CancelScheduledActionOnPageUnpublishEventHandler.js.map +1 -1
  12. package/features/CancelScheduledActionOnChange/CancelScheduledActionOnRedirectDeleteEventHandler.js +24 -33
  13. package/features/CancelScheduledActionOnChange/CancelScheduledActionOnRedirectDeleteEventHandler.js.map +1 -1
  14. package/features/CancelScheduledActionOnChange/feature.js +9 -16
  15. package/features/CancelScheduledActionOnChange/feature.js.map +1 -1
  16. package/features/NamespaceHandler/PageNamespaceHandler.js +29 -28
  17. package/features/NamespaceHandler/PageNamespaceHandler.js.map +1 -1
  18. package/features/NamespaceHandler/RedirectNamespaceHandler.js +29 -28
  19. package/features/NamespaceHandler/RedirectNamespaceHandler.js.map +1 -1
  20. package/features/PublishActionHandler/PublishPageActionHandler.js +20 -21
  21. package/features/PublishActionHandler/PublishPageActionHandler.js.map +1 -1
  22. package/features/PublishActionHandler/PublishRedirectActionHandler.js +20 -22
  23. package/features/PublishActionHandler/PublishRedirectActionHandler.js.map +1 -1
  24. package/features/SchedulePublishPageUseCase/SchedulePublishPageUseCase.js +21 -20
  25. package/features/SchedulePublishPageUseCase/SchedulePublishPageUseCase.js.map +1 -1
  26. package/features/SchedulePublishPageUseCase/abstractions.js +3 -3
  27. package/features/SchedulePublishPageUseCase/abstractions.js.map +1 -1
  28. package/features/SchedulePublishRedirectUseCase/SchedulePublishRedirectUseCase.js +21 -20
  29. package/features/SchedulePublishRedirectUseCase/SchedulePublishRedirectUseCase.js.map +1 -1
  30. package/features/SchedulePublishRedirectUseCase/abstractions.js +3 -3
  31. package/features/SchedulePublishRedirectUseCase/abstractions.js.map +1 -1
  32. package/features/ScheduleUnpublishPageUseCase/ScheduleUnpublishPageUseCase.js +21 -20
  33. package/features/ScheduleUnpublishPageUseCase/ScheduleUnpublishPageUseCase.js.map +1 -1
  34. package/features/ScheduleUnpublishPageUseCase/abstractions.js +3 -3
  35. package/features/ScheduleUnpublishPageUseCase/abstractions.js.map +1 -1
  36. package/features/ScheduleUnpublishRedirectUseCase/ScheduleUnpublishRedirectUseCase.js +21 -20
  37. package/features/ScheduleUnpublishRedirectUseCase/ScheduleUnpublishRedirectUseCase.js.map +1 -1
  38. package/features/ScheduleUnpublishRedirectUseCase/abstractions.js +3 -3
  39. package/features/ScheduleUnpublishRedirectUseCase/abstractions.js.map +1 -1
  40. package/features/UnpublishActionHandler/UnpublishPageActionHandler.js +20 -20
  41. package/features/UnpublishActionHandler/UnpublishPageActionHandler.js.map +1 -1
  42. package/features/UnpublishActionHandler/UnpublishRedirectActionHandler.js +20 -21
  43. package/features/UnpublishActionHandler/UnpublishRedirectActionHandler.js.map +1 -1
  44. package/index.js +4 -3
  45. package/index.js.map +1 -1
  46. package/package.json +18 -18
  47. package/types.js +0 -3
  48. package/utils/namespace.js +7 -12
  49. package/utils/namespace.js.map +1 -1
  50. package/exports/api/website-builder/scheduler.js.map +0 -1
  51. package/types.js.map +0 -1
@@ -1,38 +1,39 @@
1
- import { NamespaceHandler as NamespaceHandlerAbstraction } from "@webiny/api-scheduler/exports/api/scheduler.js";
1
+ import { NamespaceHandler } from "@webiny/api-scheduler/exports/api/scheduler.js";
2
2
  import { extractModelIdFromNamespace } from "../../utils/namespace.js";
3
3
  import { Result } from "@webiny/feature/exports/api.js";
4
4
  import { SCHEDULED_ACTION_TYPE_REDIRECT } from "../../constants.js";
5
5
  import { GetRedirectByIdUseCase } from "@webiny/api-website-builder/exports/api/website-builder/redirect.js";
6
6
  class RedirectNamespaceHandlerImpl {
7
- constructor(getRedirectByIdUseCase) {
8
- this.getRedirectByIdUseCase = getRedirectByIdUseCase;
9
- }
10
- canHandle(namespace) {
11
- const type = extractModelIdFromNamespace(namespace);
12
- return type === SCHEDULED_ACTION_TYPE_REDIRECT;
13
- }
14
- async execute(params) {
15
- const type = extractModelIdFromNamespace(params.namespace);
16
- const redirectResult = await this.getRedirectByIdUseCase.execute(params.targetId);
17
- if (redirectResult.isFail()) {
18
- return Result.fail(redirectResult.error);
7
+ constructor(getRedirectByIdUseCase){
8
+ this.getRedirectByIdUseCase = getRedirectByIdUseCase;
9
+ }
10
+ canHandle(namespace) {
11
+ const type = extractModelIdFromNamespace(namespace);
12
+ return type === SCHEDULED_ACTION_TYPE_REDIRECT;
13
+ }
14
+ async execute(params) {
15
+ const type = extractModelIdFromNamespace(params.namespace);
16
+ const redirectResult = await this.getRedirectByIdUseCase.execute(params.targetId);
17
+ if (redirectResult.isFail()) return Result.fail(redirectResult.error);
18
+ const redirect = redirectResult.value;
19
+ const title = redirect.redirectFrom || "Unknown redirect title";
20
+ return Result.ok({
21
+ namespace: params.namespace,
22
+ title,
23
+ type,
24
+ actionType: params.actionType,
25
+ targetId: params.targetId,
26
+ scheduleId: params.scheduleId,
27
+ immediately: params.immediately || false
28
+ });
19
29
  }
20
- const redirect = redirectResult.value;
21
- const title = redirect.redirectFrom || "Unknown redirect title";
22
- return Result.ok({
23
- namespace: params.namespace,
24
- title,
25
- type,
26
- actionType: params.actionType,
27
- targetId: params.targetId,
28
- scheduleId: params.scheduleId,
29
- immediately: params.immediately || false
30
- });
31
- }
32
30
  }
33
- export const RedirectNamespaceHandler = NamespaceHandlerAbstraction.createImplementation({
34
- implementation: RedirectNamespaceHandlerImpl,
35
- dependencies: [GetRedirectByIdUseCase]
31
+ const RedirectNamespaceHandler = NamespaceHandler.createImplementation({
32
+ implementation: RedirectNamespaceHandlerImpl,
33
+ dependencies: [
34
+ GetRedirectByIdUseCase
35
+ ]
36
36
  });
37
+ export { RedirectNamespaceHandler };
37
38
 
38
39
  //# sourceMappingURL=RedirectNamespaceHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["NamespaceHandler","NamespaceHandlerAbstraction","extractModelIdFromNamespace","Result","SCHEDULED_ACTION_TYPE_REDIRECT","GetRedirectByIdUseCase","RedirectNamespaceHandlerImpl","constructor","getRedirectByIdUseCase","canHandle","namespace","type","execute","params","redirectResult","targetId","isFail","fail","error","redirect","value","title","redirectFrom","ok","actionType","scheduleId","immediately","RedirectNamespaceHandler","createImplementation","implementation","dependencies"],"sources":["RedirectNamespaceHandler.ts"],"sourcesContent":["import { NamespaceHandler as NamespaceHandlerAbstraction } from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { extractModelIdFromNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport { SCHEDULED_ACTION_TYPE_REDIRECT } from \"~/constants.js\";\nimport type { IScheduledActionPayload } from \"~/types.js\";\nimport { GetRedirectByIdUseCase } from \"@webiny/api-website-builder/exports/api/website-builder/redirect.js\";\n\nclass RedirectNamespaceHandlerImpl implements NamespaceHandlerAbstraction.Interface<GenericRecord> {\n public constructor(private getRedirectByIdUseCase: GetRedirectByIdUseCase.Interface) {}\n\n public canHandle(namespace: string): boolean {\n const type = extractModelIdFromNamespace(namespace);\n\n return type === SCHEDULED_ACTION_TYPE_REDIRECT;\n }\n\n public async execute(\n params: NamespaceHandlerAbstraction.Params\n ): NamespaceHandlerAbstraction.Response<IScheduledActionPayload> {\n const type = extractModelIdFromNamespace(params.namespace)!;\n\n const redirectResult = await this.getRedirectByIdUseCase.execute(params.targetId);\n if (redirectResult.isFail()) {\n return Result.fail(redirectResult.error as any);\n }\n const redirect = redirectResult.value;\n\n const title = redirect.redirectFrom || \"Unknown redirect title\";\n\n return Result.ok({\n namespace: params.namespace,\n title,\n type,\n actionType: params.actionType,\n targetId: params.targetId,\n scheduleId: params.scheduleId,\n immediately: params.immediately || false\n });\n }\n}\n\nexport const RedirectNamespaceHandler = NamespaceHandlerAbstraction.createImplementation({\n implementation: RedirectNamespaceHandlerImpl,\n dependencies: [GetRedirectByIdUseCase]\n});\n"],"mappings":"AAAA,SAASA,gBAAgB,IAAIC,2BAA2B,QAAQ,gDAAgD;AAChH,SAASC,2BAA2B;AACpC,SAASC,MAAM,QAAQ,gCAAgC;AAEvD,SAASC,8BAA8B;AAEvC,SAASC,sBAAsB,QAAQ,qEAAqE;AAE5G,MAAMC,4BAA4B,CAAiE;EACxFC,WAAWA,CAASC,sBAAwD,EAAE;IAAA,KAA1DA,sBAAwD,GAAxDA,sBAAwD;EAAG;EAE/EC,SAASA,CAACC,SAAiB,EAAW;IACzC,MAAMC,IAAI,GAAGT,2BAA2B,CAACQ,SAAS,CAAC;IAEnD,OAAOC,IAAI,KAAKP,8BAA8B;EAClD;EAEA,MAAaQ,OAAOA,CAChBC,MAA0C,EACmB;IAC7D,MAAMF,IAAI,GAAGT,2BAA2B,CAACW,MAAM,CAACH,SAAS,CAAE;IAE3D,MAAMI,cAAc,GAAG,MAAM,IAAI,CAACN,sBAAsB,CAACI,OAAO,CAACC,MAAM,CAACE,QAAQ,CAAC;IACjF,IAAID,cAAc,CAACE,MAAM,CAAC,CAAC,EAAE;MACzB,OAAOb,MAAM,CAACc,IAAI,CAACH,cAAc,CAACI,KAAY,CAAC;IACnD;IACA,MAAMC,QAAQ,GAAGL,cAAc,CAACM,KAAK;IAErC,MAAMC,KAAK,GAAGF,QAAQ,CAACG,YAAY,IAAI,wBAAwB;IAE/D,OAAOnB,MAAM,CAACoB,EAAE,CAAC;MACbb,SAAS,EAAEG,MAAM,CAACH,SAAS;MAC3BW,KAAK;MACLV,IAAI;MACJa,UAAU,EAAEX,MAAM,CAACW,UAAU;MAC7BT,QAAQ,EAAEF,MAAM,CAACE,QAAQ;MACzBU,UAAU,EAAEZ,MAAM,CAACY,UAAU;MAC7BC,WAAW,EAAEb,MAAM,CAACa,WAAW,IAAI;IACvC,CAAC,CAAC;EACN;AACJ;AAEA,OAAO,MAAMC,wBAAwB,GAAG1B,2BAA2B,CAAC2B,oBAAoB,CAAC;EACrFC,cAAc,EAAEvB,4BAA4B;EAC5CwB,YAAY,EAAE,CAACzB,sBAAsB;AACzC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/NamespaceHandler/RedirectNamespaceHandler.js","sources":["../../../src/features/NamespaceHandler/RedirectNamespaceHandler.ts"],"sourcesContent":["import { NamespaceHandler as NamespaceHandlerAbstraction } from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { extractModelIdFromNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport type { GenericRecord } from \"@webiny/api/types.js\";\nimport { SCHEDULED_ACTION_TYPE_REDIRECT } from \"~/constants.js\";\nimport type { IScheduledActionPayload } from \"~/types.js\";\nimport { GetRedirectByIdUseCase } from \"@webiny/api-website-builder/exports/api/website-builder/redirect.js\";\n\nclass RedirectNamespaceHandlerImpl implements NamespaceHandlerAbstraction.Interface<GenericRecord> {\n public constructor(private getRedirectByIdUseCase: GetRedirectByIdUseCase.Interface) {}\n\n public canHandle(namespace: string): boolean {\n const type = extractModelIdFromNamespace(namespace);\n\n return type === SCHEDULED_ACTION_TYPE_REDIRECT;\n }\n\n public async execute(\n params: NamespaceHandlerAbstraction.Params\n ): NamespaceHandlerAbstraction.Response<IScheduledActionPayload> {\n const type = extractModelIdFromNamespace(params.namespace)!;\n\n const redirectResult = await this.getRedirectByIdUseCase.execute(params.targetId);\n if (redirectResult.isFail()) {\n return Result.fail(redirectResult.error as any);\n }\n const redirect = redirectResult.value;\n\n const title = redirect.redirectFrom || \"Unknown redirect title\";\n\n return Result.ok({\n namespace: params.namespace,\n title,\n type,\n actionType: params.actionType,\n targetId: params.targetId,\n scheduleId: params.scheduleId,\n immediately: params.immediately || false\n });\n }\n}\n\nexport const RedirectNamespaceHandler = NamespaceHandlerAbstraction.createImplementation({\n implementation: RedirectNamespaceHandlerImpl,\n dependencies: [GetRedirectByIdUseCase]\n});\n"],"names":["RedirectNamespaceHandlerImpl","getRedirectByIdUseCase","namespace","type","extractModelIdFromNamespace","SCHEDULED_ACTION_TYPE_REDIRECT","params","redirectResult","Result","redirect","title","RedirectNamespaceHandler","NamespaceHandlerAbstraction","GetRedirectByIdUseCase"],"mappings":";;;;;AAQA,MAAMA;IACF,YAA2BC,sBAAwD,CAAE;aAA1DA,sBAAsB,GAAtBA;IAA2D;IAE/E,UAAUC,SAAiB,EAAW;QACzC,MAAMC,OAAOC,4BAA4BF;QAEzC,OAAOC,SAASE;IACpB;IAEA,MAAa,QACTC,MAA0C,EACmB;QAC7D,MAAMH,OAAOC,4BAA4BE,OAAO,SAAS;QAEzD,MAAMC,iBAAiB,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAACD,OAAO,QAAQ;QAChF,IAAIC,eAAe,MAAM,IACrB,OAAOC,OAAO,IAAI,CAACD,eAAe,KAAK;QAE3C,MAAME,WAAWF,eAAe,KAAK;QAErC,MAAMG,QAAQD,SAAS,YAAY,IAAI;QAEvC,OAAOD,OAAO,EAAE,CAAC;YACb,WAAWF,OAAO,SAAS;YAC3BI;YACAP;YACA,YAAYG,OAAO,UAAU;YAC7B,UAAUA,OAAO,QAAQ;YACzB,YAAYA,OAAO,UAAU;YAC7B,aAAaA,OAAO,WAAW,IAAI;QACvC;IACJ;AACJ;AAEO,MAAMK,2BAA2BC,iBAAAA,oBAAgD,CAAC;IACrF,gBAAgBZ;IAChB,cAAc;QAACa;KAAuB;AAC1C"}
@@ -2,30 +2,29 @@ import { ScheduledActionHandler, ScheduledActionTypePublish } from "@webiny/api-
2
2
  import { PublishPageUseCase } from "@webiny/api-website-builder/exports/api/website-builder/page.js";
3
3
  import { extractModelIdFromNamespace } from "../../utils/namespace.js";
4
4
  import { SCHEDULED_ACTION_TYPE_PAGE } from "../../constants.js";
5
-
6
- /**
7
- * Handles the scheduled "publish" action for Website Builder pages.
8
- */
9
5
  class PublishPageActionHandlerImpl {
10
- constructor(publishPageUseCase) {
11
- this.publishPageUseCase = publishPageUseCase;
12
- }
13
- canHandle(namespace, actionType) {
14
- return extractModelIdFromNamespace(namespace) === SCHEDULED_ACTION_TYPE_PAGE && actionType === ScheduledActionTypePublish;
15
- }
16
- async handle(action) {
17
- const result = await this.publishPageUseCase.execute({
18
- id: action.targetId
19
- });
20
- if (result.isFail()) {
21
- console.error(`Failed to publish page "${action.targetId}":`, result.error);
22
- throw new Error(`Failed to publish page: ${action.targetId}`);
6
+ constructor(publishPageUseCase){
7
+ this.publishPageUseCase = publishPageUseCase;
8
+ }
9
+ canHandle(namespace, actionType) {
10
+ return extractModelIdFromNamespace(namespace) === SCHEDULED_ACTION_TYPE_PAGE && actionType === ScheduledActionTypePublish;
11
+ }
12
+ async handle(action) {
13
+ const result = await this.publishPageUseCase.execute({
14
+ id: action.targetId
15
+ });
16
+ if (result.isFail()) {
17
+ console.error(`Failed to publish page "${action.targetId}":`, result.error);
18
+ throw new Error(`Failed to publish page: ${action.targetId}`);
19
+ }
23
20
  }
24
- }
25
21
  }
26
- export const PublishPageActionHandler = ScheduledActionHandler.createImplementation({
27
- implementation: PublishPageActionHandlerImpl,
28
- dependencies: [PublishPageUseCase]
22
+ const PublishPageActionHandler = ScheduledActionHandler.createImplementation({
23
+ implementation: PublishPageActionHandlerImpl,
24
+ dependencies: [
25
+ PublishPageUseCase
26
+ ]
29
27
  });
28
+ export { PublishPageActionHandler };
30
29
 
31
30
  //# sourceMappingURL=PublishPageActionHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ScheduledActionHandler","ScheduledActionTypePublish","PublishPageUseCase","extractModelIdFromNamespace","SCHEDULED_ACTION_TYPE_PAGE","PublishPageActionHandlerImpl","constructor","publishPageUseCase","canHandle","namespace","actionType","handle","action","result","execute","id","targetId","isFail","console","error","Error","PublishPageActionHandler","createImplementation","implementation","dependencies"],"sources":["PublishPageActionHandler.ts"],"sourcesContent":["import {\n ScheduledActionHandler,\n ScheduledActionType,\n type IScheduledAction,\n ScheduledActionTypePublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { PublishPageUseCase } from \"@webiny/api-website-builder/exports/api/website-builder/page.js\";\nimport type { IScheduledActionPayload } from \"~/types.js\";\nimport { extractModelIdFromNamespace } from \"~/utils/namespace.js\";\nimport { SCHEDULED_ACTION_TYPE_PAGE } from \"~/constants.js\";\n\n/**\n * Handles the scheduled \"publish\" action for Website Builder pages.\n */\nclass PublishPageActionHandlerImpl implements ScheduledActionHandler.Interface {\n constructor(private publishPageUseCase: PublishPageUseCase.Interface) {}\n\n public canHandle(namespace: string, actionType: ScheduledActionType): boolean {\n return (\n extractModelIdFromNamespace(namespace) === SCHEDULED_ACTION_TYPE_PAGE &&\n actionType === ScheduledActionTypePublish\n );\n }\n\n public async handle(action: IScheduledAction<IScheduledActionPayload>): Promise<void> {\n const result = await this.publishPageUseCase.execute({ id: action.targetId });\n if (result.isFail()) {\n console.error(`Failed to publish page \"${action.targetId}\":`, result.error);\n throw new Error(`Failed to publish page: ${action.targetId}`);\n }\n }\n}\n\nexport const PublishPageActionHandler = ScheduledActionHandler.createImplementation({\n implementation: PublishPageActionHandlerImpl,\n dependencies: [PublishPageUseCase]\n});\n"],"mappings":"AAAA,SACIA,sBAAsB,EAGtBC,0BAA0B,QACvB,gDAAgD;AACvD,SAASC,kBAAkB,QAAQ,iEAAiE;AAEpG,SAASC,2BAA2B;AACpC,SAASC,0BAA0B;;AAEnC;AACA;AACA;AACA,MAAMC,4BAA4B,CAA6C;EAC3EC,WAAWA,CAASC,kBAAgD,EAAE;IAAA,KAAlDA,kBAAgD,GAAhDA,kBAAgD;EAAG;EAEhEC,SAASA,CAACC,SAAiB,EAAEC,UAA+B,EAAW;IAC1E,OACIP,2BAA2B,CAACM,SAAS,CAAC,KAAKL,0BAA0B,IACrEM,UAAU,KAAKT,0BAA0B;EAEjD;EAEA,MAAaU,MAAMA,CAACC,MAAiD,EAAiB;IAClF,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACN,kBAAkB,CAACO,OAAO,CAAC;MAAEC,EAAE,EAAEH,MAAM,CAACI;IAAS,CAAC,CAAC;IAC7E,IAAIH,MAAM,CAACI,MAAM,CAAC,CAAC,EAAE;MACjBC,OAAO,CAACC,KAAK,CAAC,2BAA2BP,MAAM,CAACI,QAAQ,IAAI,EAAEH,MAAM,CAACM,KAAK,CAAC;MAC3E,MAAM,IAAIC,KAAK,CAAC,2BAA2BR,MAAM,CAACI,QAAQ,EAAE,CAAC;IACjE;EACJ;AACJ;AAEA,OAAO,MAAMK,wBAAwB,GAAGrB,sBAAsB,CAACsB,oBAAoB,CAAC;EAChFC,cAAc,EAAElB,4BAA4B;EAC5CmB,YAAY,EAAE,CAACtB,kBAAkB;AACrC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/PublishActionHandler/PublishPageActionHandler.js","sources":["../../../src/features/PublishActionHandler/PublishPageActionHandler.ts"],"sourcesContent":["import {\n ScheduledActionHandler,\n ScheduledActionType,\n type IScheduledAction,\n ScheduledActionTypePublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { PublishPageUseCase } from \"@webiny/api-website-builder/exports/api/website-builder/page.js\";\nimport type { IScheduledActionPayload } from \"~/types.js\";\nimport { extractModelIdFromNamespace } from \"~/utils/namespace.js\";\nimport { SCHEDULED_ACTION_TYPE_PAGE } from \"~/constants.js\";\n\n/**\n * Handles the scheduled \"publish\" action for Website Builder pages.\n */\nclass PublishPageActionHandlerImpl implements ScheduledActionHandler.Interface {\n constructor(private publishPageUseCase: PublishPageUseCase.Interface) {}\n\n public canHandle(namespace: string, actionType: ScheduledActionType): boolean {\n return (\n extractModelIdFromNamespace(namespace) === SCHEDULED_ACTION_TYPE_PAGE &&\n actionType === ScheduledActionTypePublish\n );\n }\n\n public async handle(action: IScheduledAction<IScheduledActionPayload>): Promise<void> {\n const result = await this.publishPageUseCase.execute({ id: action.targetId });\n if (result.isFail()) {\n console.error(`Failed to publish page \"${action.targetId}\":`, result.error);\n throw new Error(`Failed to publish page: ${action.targetId}`);\n }\n }\n}\n\nexport const PublishPageActionHandler = ScheduledActionHandler.createImplementation({\n implementation: PublishPageActionHandlerImpl,\n dependencies: [PublishPageUseCase]\n});\n"],"names":["PublishPageActionHandlerImpl","publishPageUseCase","namespace","actionType","extractModelIdFromNamespace","SCHEDULED_ACTION_TYPE_PAGE","ScheduledActionTypePublish","action","result","console","Error","PublishPageActionHandler","ScheduledActionHandler","PublishPageUseCase"],"mappings":";;;;AAcA,MAAMA;IACF,YAAoBC,kBAAgD,CAAE;aAAlDA,kBAAkB,GAAlBA;IAAmD;IAEhE,UAAUC,SAAiB,EAAEC,UAA+B,EAAW;QAC1E,OACIC,4BAA4BF,eAAeG,8BAC3CF,eAAeG;IAEvB;IAEA,MAAa,OAAOC,MAAiD,EAAiB;QAClF,MAAMC,SAAS,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC;YAAE,IAAID,OAAO,QAAQ;QAAC;QAC3E,IAAIC,OAAO,MAAM,IAAI;YACjBC,QAAQ,KAAK,CAAC,CAAC,wBAAwB,EAAEF,OAAO,QAAQ,CAAC,EAAE,CAAC,EAAEC,OAAO,KAAK;YAC1E,MAAM,IAAIE,MAAM,CAAC,wBAAwB,EAAEH,OAAO,QAAQ,EAAE;QAChE;IACJ;AACJ;AAEO,MAAMI,2BAA2BC,uBAAuB,oBAAoB,CAAC;IAChF,gBAAgBZ;IAChB,cAAc;QAACa;KAAmB;AACtC"}
@@ -2,31 +2,29 @@ import { ScheduledActionHandler, ScheduledActionTypePublish } from "@webiny/api-
2
2
  import { UpdateRedirectUseCase } from "@webiny/api-website-builder/exports/api/website-builder/redirect.js";
3
3
  import { extractModelIdFromNamespace } from "../../utils/namespace.js";
4
4
  import { SCHEDULED_ACTION_TYPE_REDIRECT } from "../../constants.js";
5
-
6
- /**
7
- * Handles the scheduled "publish" action for Website Builder redirects.
8
- * Publishing a redirect means enabling it (isEnabled: true).
9
- */
10
5
  class PublishRedirectActionHandlerImpl {
11
- constructor(updateRedirectUseCase) {
12
- this.updateRedirectUseCase = updateRedirectUseCase;
13
- }
14
- canHandle(namespace, actionType) {
15
- return extractModelIdFromNamespace(namespace) === SCHEDULED_ACTION_TYPE_REDIRECT && actionType === ScheduledActionTypePublish;
16
- }
17
- async handle(action) {
18
- const result = await this.updateRedirectUseCase.execute(action.targetId, {
19
- isEnabled: true
20
- });
21
- if (result.isFail()) {
22
- console.error(`Failed to enable redirect "${action.targetId}":`, result.error);
23
- throw new Error(`Failed to enable redirect: ${action.targetId}`);
6
+ constructor(updateRedirectUseCase){
7
+ this.updateRedirectUseCase = updateRedirectUseCase;
8
+ }
9
+ canHandle(namespace, actionType) {
10
+ return extractModelIdFromNamespace(namespace) === SCHEDULED_ACTION_TYPE_REDIRECT && actionType === ScheduledActionTypePublish;
11
+ }
12
+ async handle(action) {
13
+ const result = await this.updateRedirectUseCase.execute(action.targetId, {
14
+ isEnabled: true
15
+ });
16
+ if (result.isFail()) {
17
+ console.error(`Failed to enable redirect "${action.targetId}":`, result.error);
18
+ throw new Error(`Failed to enable redirect: ${action.targetId}`);
19
+ }
24
20
  }
25
- }
26
21
  }
27
- export const PublishRedirectActionHandler = ScheduledActionHandler.createImplementation({
28
- implementation: PublishRedirectActionHandlerImpl,
29
- dependencies: [UpdateRedirectUseCase]
22
+ const PublishRedirectActionHandler = ScheduledActionHandler.createImplementation({
23
+ implementation: PublishRedirectActionHandlerImpl,
24
+ dependencies: [
25
+ UpdateRedirectUseCase
26
+ ]
30
27
  });
28
+ export { PublishRedirectActionHandler };
31
29
 
32
30
  //# sourceMappingURL=PublishRedirectActionHandler.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ScheduledActionHandler","ScheduledActionTypePublish","UpdateRedirectUseCase","extractModelIdFromNamespace","SCHEDULED_ACTION_TYPE_REDIRECT","PublishRedirectActionHandlerImpl","constructor","updateRedirectUseCase","canHandle","namespace","actionType","handle","action","result","execute","targetId","isEnabled","isFail","console","error","Error","PublishRedirectActionHandler","createImplementation","implementation","dependencies"],"sources":["PublishRedirectActionHandler.ts"],"sourcesContent":["import {\n ScheduledActionHandler,\n ScheduledActionType,\n type IScheduledAction,\n ScheduledActionTypePublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { UpdateRedirectUseCase } from \"@webiny/api-website-builder/exports/api/website-builder/redirect.js\";\nimport type { IScheduledActionPayload } from \"~/types.js\";\nimport { extractModelIdFromNamespace } from \"~/utils/namespace.js\";\nimport { SCHEDULED_ACTION_TYPE_REDIRECT } from \"~/constants.js\";\n\n/**\n * Handles the scheduled \"publish\" action for Website Builder redirects.\n * Publishing a redirect means enabling it (isEnabled: true).\n */\nclass PublishRedirectActionHandlerImpl implements ScheduledActionHandler.Interface {\n constructor(private updateRedirectUseCase: UpdateRedirectUseCase.Interface) {}\n\n public canHandle(namespace: string, actionType: ScheduledActionType): boolean {\n return (\n extractModelIdFromNamespace(namespace) === SCHEDULED_ACTION_TYPE_REDIRECT &&\n actionType === ScheduledActionTypePublish\n );\n }\n\n public async handle(action: IScheduledAction<IScheduledActionPayload>): Promise<void> {\n const result = await this.updateRedirectUseCase.execute(action.targetId, {\n isEnabled: true\n });\n if (result.isFail()) {\n console.error(`Failed to enable redirect \"${action.targetId}\":`, result.error);\n throw new Error(`Failed to enable redirect: ${action.targetId}`);\n }\n }\n}\n\nexport const PublishRedirectActionHandler = ScheduledActionHandler.createImplementation({\n implementation: PublishRedirectActionHandlerImpl,\n dependencies: [UpdateRedirectUseCase]\n});\n"],"mappings":"AAAA,SACIA,sBAAsB,EAGtBC,0BAA0B,QACvB,gDAAgD;AACvD,SAASC,qBAAqB,QAAQ,qEAAqE;AAE3G,SAASC,2BAA2B;AACpC,SAASC,8BAA8B;;AAEvC;AACA;AACA;AACA;AACA,MAAMC,gCAAgC,CAA6C;EAC/EC,WAAWA,CAASC,qBAAsD,EAAE;IAAA,KAAxDA,qBAAsD,GAAtDA,qBAAsD;EAAG;EAEtEC,SAASA,CAACC,SAAiB,EAAEC,UAA+B,EAAW;IAC1E,OACIP,2BAA2B,CAACM,SAAS,CAAC,KAAKL,8BAA8B,IACzEM,UAAU,KAAKT,0BAA0B;EAEjD;EAEA,MAAaU,MAAMA,CAACC,MAAiD,EAAiB;IAClF,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACN,qBAAqB,CAACO,OAAO,CAACF,MAAM,CAACG,QAAQ,EAAE;MACrEC,SAAS,EAAE;IACf,CAAC,CAAC;IACF,IAAIH,MAAM,CAACI,MAAM,CAAC,CAAC,EAAE;MACjBC,OAAO,CAACC,KAAK,CAAC,8BAA8BP,MAAM,CAACG,QAAQ,IAAI,EAAEF,MAAM,CAACM,KAAK,CAAC;MAC9E,MAAM,IAAIC,KAAK,CAAC,8BAA8BR,MAAM,CAACG,QAAQ,EAAE,CAAC;IACpE;EACJ;AACJ;AAEA,OAAO,MAAMM,4BAA4B,GAAGrB,sBAAsB,CAACsB,oBAAoB,CAAC;EACpFC,cAAc,EAAElB,gCAAgC;EAChDmB,YAAY,EAAE,CAACtB,qBAAqB;AACxC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/PublishActionHandler/PublishRedirectActionHandler.js","sources":["../../../src/features/PublishActionHandler/PublishRedirectActionHandler.ts"],"sourcesContent":["import {\n ScheduledActionHandler,\n ScheduledActionType,\n type IScheduledAction,\n ScheduledActionTypePublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { UpdateRedirectUseCase } from \"@webiny/api-website-builder/exports/api/website-builder/redirect.js\";\nimport type { IScheduledActionPayload } from \"~/types.js\";\nimport { extractModelIdFromNamespace } from \"~/utils/namespace.js\";\nimport { SCHEDULED_ACTION_TYPE_REDIRECT } from \"~/constants.js\";\n\n/**\n * Handles the scheduled \"publish\" action for Website Builder redirects.\n * Publishing a redirect means enabling it (isEnabled: true).\n */\nclass PublishRedirectActionHandlerImpl implements ScheduledActionHandler.Interface {\n constructor(private updateRedirectUseCase: UpdateRedirectUseCase.Interface) {}\n\n public canHandle(namespace: string, actionType: ScheduledActionType): boolean {\n return (\n extractModelIdFromNamespace(namespace) === SCHEDULED_ACTION_TYPE_REDIRECT &&\n actionType === ScheduledActionTypePublish\n );\n }\n\n public async handle(action: IScheduledAction<IScheduledActionPayload>): Promise<void> {\n const result = await this.updateRedirectUseCase.execute(action.targetId, {\n isEnabled: true\n });\n if (result.isFail()) {\n console.error(`Failed to enable redirect \"${action.targetId}\":`, result.error);\n throw new Error(`Failed to enable redirect: ${action.targetId}`);\n }\n }\n}\n\nexport const PublishRedirectActionHandler = ScheduledActionHandler.createImplementation({\n implementation: PublishRedirectActionHandlerImpl,\n dependencies: [UpdateRedirectUseCase]\n});\n"],"names":["PublishRedirectActionHandlerImpl","updateRedirectUseCase","namespace","actionType","extractModelIdFromNamespace","SCHEDULED_ACTION_TYPE_REDIRECT","ScheduledActionTypePublish","action","result","console","Error","PublishRedirectActionHandler","ScheduledActionHandler","UpdateRedirectUseCase"],"mappings":";;;;AAeA,MAAMA;IACF,YAAoBC,qBAAsD,CAAE;aAAxDA,qBAAqB,GAArBA;IAAyD;IAEtE,UAAUC,SAAiB,EAAEC,UAA+B,EAAW;QAC1E,OACIC,4BAA4BF,eAAeG,kCAC3CF,eAAeG;IAEvB;IAEA,MAAa,OAAOC,MAAiD,EAAiB;QAClF,MAAMC,SAAS,MAAM,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAACD,OAAO,QAAQ,EAAE;YACrE,WAAW;QACf;QACA,IAAIC,OAAO,MAAM,IAAI;YACjBC,QAAQ,KAAK,CAAC,CAAC,2BAA2B,EAAEF,OAAO,QAAQ,CAAC,EAAE,CAAC,EAAEC,OAAO,KAAK;YAC7E,MAAM,IAAIE,MAAM,CAAC,2BAA2B,EAAEH,OAAO,QAAQ,EAAE;QACnE;IACJ;AACJ;AAEO,MAAMI,+BAA+BC,uBAAuB,oBAAoB,CAAC;IACpF,gBAAgBZ;IAChB,cAAc;QAACa;KAAsB;AACzC"}
@@ -1,30 +1,31 @@
1
- import { SchedulePublishPageUseCase as UseCaseAbstraction } from "./abstractions.js";
1
+ import { SchedulePublishPageUseCase } from "./abstractions.js";
2
2
  import { ScheduleActionUseCase, ScheduledActionTypePublish } from "@webiny/api-scheduler/exports/api/scheduler.js";
3
3
  import { createNamespace } from "../../utils/namespace.js";
4
4
  import { Result } from "@webiny/feature/exports/api.js";
5
5
  import { SCHEDULED_ACTION_TYPE_PAGE } from "../../constants.js";
6
6
  class SchedulePublishPageUseCaseImpl {
7
- constructor(scheduleAction) {
8
- this.scheduleAction = scheduleAction;
9
- }
10
- async execute(params) {
11
- const scheduleResult = await this.scheduleAction.execute({
12
- namespace: createNamespace(SCHEDULED_ACTION_TYPE_PAGE),
13
- actionType: ScheduledActionTypePublish,
14
- scheduleFor: params.scheduleFor,
15
- targetId: params.id
16
- });
17
- if (scheduleResult.isFail()) {
18
- return Result.fail(scheduleResult.error);
7
+ constructor(scheduleAction){
8
+ this.scheduleAction = scheduleAction;
9
+ }
10
+ async execute(params) {
11
+ const scheduleResult = await this.scheduleAction.execute({
12
+ namespace: createNamespace(SCHEDULED_ACTION_TYPE_PAGE),
13
+ actionType: ScheduledActionTypePublish,
14
+ scheduleFor: params.scheduleFor,
15
+ targetId: params.id
16
+ });
17
+ if (scheduleResult.isFail()) return Result.fail(scheduleResult.error);
18
+ return Result.ok({
19
+ scheduledAction: scheduleResult.value
20
+ });
19
21
  }
20
- return Result.ok({
21
- scheduledAction: scheduleResult.value
22
- });
23
- }
24
22
  }
25
- export const SchedulePublishPageUseCase = UseCaseAbstraction.createImplementation({
26
- implementation: SchedulePublishPageUseCaseImpl,
27
- dependencies: [ScheduleActionUseCase]
23
+ const SchedulePublishPageUseCase_SchedulePublishPageUseCase = SchedulePublishPageUseCase.createImplementation({
24
+ implementation: SchedulePublishPageUseCaseImpl,
25
+ dependencies: [
26
+ ScheduleActionUseCase
27
+ ]
28
28
  });
29
+ export { SchedulePublishPageUseCase_SchedulePublishPageUseCase as SchedulePublishPageUseCase };
29
30
 
30
31
  //# sourceMappingURL=SchedulePublishPageUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["SchedulePublishPageUseCase","UseCaseAbstraction","ScheduleActionUseCase","ScheduledActionTypePublish","createNamespace","Result","SCHEDULED_ACTION_TYPE_PAGE","SchedulePublishPageUseCaseImpl","constructor","scheduleAction","execute","params","scheduleResult","namespace","actionType","scheduleFor","targetId","id","isFail","fail","error","ok","scheduledAction","value","createImplementation","implementation","dependencies"],"sources":["SchedulePublishPageUseCase.ts"],"sourcesContent":["import { SchedulePublishPageUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport {\n ScheduleActionUseCase,\n ScheduledActionTypePublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { createNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport { SCHEDULED_ACTION_TYPE_PAGE } from \"~/constants.js\";\n\nclass SchedulePublishPageUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(private scheduleAction: ScheduleActionUseCase.Interface) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Result {\n const scheduleResult = await this.scheduleAction.execute({\n namespace: createNamespace(SCHEDULED_ACTION_TYPE_PAGE),\n actionType: ScheduledActionTypePublish,\n scheduleFor: params.scheduleFor,\n targetId: params.id\n });\n if (scheduleResult.isFail()) {\n return Result.fail(scheduleResult.error);\n }\n return Result.ok({ scheduledAction: scheduleResult.value });\n }\n}\n\nexport const SchedulePublishPageUseCase = UseCaseAbstraction.createImplementation({\n implementation: SchedulePublishPageUseCaseImpl,\n dependencies: [ScheduleActionUseCase]\n});\n"],"mappings":"AAAA,SAASA,0BAA0B,IAAIC,kBAAkB;AACzD,SACIC,qBAAqB,EACrBC,0BAA0B,QACvB,gDAAgD;AACvD,SAASC,eAAe;AACxB,SAASC,MAAM,QAAQ,gCAAgC;AACvD,SAASC,0BAA0B;AAEnC,MAAMC,8BAA8B,CAAyC;EAClEC,WAAWA,CAASC,cAA+C,EAAE;IAAA,KAAjDA,cAA+C,GAA/CA,cAA+C;EAAG;EAE7E,MAAaC,OAAOA,CAACC,MAAiC,EAA6B;IAC/E,MAAMC,cAAc,GAAG,MAAM,IAAI,CAACH,cAAc,CAACC,OAAO,CAAC;MACrDG,SAAS,EAAET,eAAe,CAACE,0BAA0B,CAAC;MACtDQ,UAAU,EAAEX,0BAA0B;MACtCY,WAAW,EAAEJ,MAAM,CAACI,WAAW;MAC/BC,QAAQ,EAAEL,MAAM,CAACM;IACrB,CAAC,CAAC;IACF,IAAIL,cAAc,CAACM,MAAM,CAAC,CAAC,EAAE;MACzB,OAAOb,MAAM,CAACc,IAAI,CAACP,cAAc,CAACQ,KAAK,CAAC;IAC5C;IACA,OAAOf,MAAM,CAACgB,EAAE,CAAC;MAAEC,eAAe,EAAEV,cAAc,CAACW;IAAM,CAAC,CAAC;EAC/D;AACJ;AAEA,OAAO,MAAMvB,0BAA0B,GAAGC,kBAAkB,CAACuB,oBAAoB,CAAC;EAC9EC,cAAc,EAAElB,8BAA8B;EAC9CmB,YAAY,EAAE,CAACxB,qBAAqB;AACxC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/SchedulePublishPageUseCase/SchedulePublishPageUseCase.js","sources":["../../../src/features/SchedulePublishPageUseCase/SchedulePublishPageUseCase.ts"],"sourcesContent":["import { SchedulePublishPageUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport {\n ScheduleActionUseCase,\n ScheduledActionTypePublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { createNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport { SCHEDULED_ACTION_TYPE_PAGE } from \"~/constants.js\";\n\nclass SchedulePublishPageUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(private scheduleAction: ScheduleActionUseCase.Interface) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Result {\n const scheduleResult = await this.scheduleAction.execute({\n namespace: createNamespace(SCHEDULED_ACTION_TYPE_PAGE),\n actionType: ScheduledActionTypePublish,\n scheduleFor: params.scheduleFor,\n targetId: params.id\n });\n if (scheduleResult.isFail()) {\n return Result.fail(scheduleResult.error);\n }\n return Result.ok({ scheduledAction: scheduleResult.value });\n }\n}\n\nexport const SchedulePublishPageUseCase = UseCaseAbstraction.createImplementation({\n implementation: SchedulePublishPageUseCaseImpl,\n dependencies: [ScheduleActionUseCase]\n});\n"],"names":["SchedulePublishPageUseCaseImpl","scheduleAction","params","scheduleResult","createNamespace","SCHEDULED_ACTION_TYPE_PAGE","ScheduledActionTypePublish","Result","SchedulePublishPageUseCase","UseCaseAbstraction","ScheduleActionUseCase"],"mappings":";;;;;AASA,MAAMA;IACF,YAA2BC,cAA+C,CAAE;aAAjDA,cAAc,GAAdA;IAAkD;IAE7E,MAAa,QAAQC,MAAiC,EAA6B;QAC/E,MAAMC,iBAAiB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YACrD,WAAWC,gBAAgBC;YAC3B,YAAYC;YACZ,aAAaJ,OAAO,WAAW;YAC/B,UAAUA,OAAO,EAAE;QACvB;QACA,IAAIC,eAAe,MAAM,IACrB,OAAOI,OAAO,IAAI,CAACJ,eAAe,KAAK;QAE3C,OAAOI,OAAO,EAAE,CAAC;YAAE,iBAAiBJ,eAAe,KAAK;QAAC;IAC7D;AACJ;AAEO,MAAMK,wDAA6BC,2BAAAA,oBAAuC,CAAC;IAC9E,gBAAgBT;IAChB,cAAc;QAACU;KAAsB;AACzC"}
@@ -1,5 +1,5 @@
1
- import { createAbstraction, Result } from "@webiny/feature/api";
2
- /** Schedule a page for future publishing. */
3
- export const SchedulePublishPageUseCase = createAbstraction("WbScheduler/SchedulePublishPageUseCase");
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const SchedulePublishPageUseCase = createAbstraction("WbScheduler/SchedulePublishPageUseCase");
3
+ export { SchedulePublishPageUseCase };
4
4
 
5
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","Result","SchedulePublishPageUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type {\n IScheduledAction,\n ScheduleActionError\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\n\nexport interface ISchedulePublishPageUseCaseParams {\n id: string;\n scheduleFor: Date;\n}\n\nexport interface ISchedulePublishPageUseCaseResult {\n scheduledAction: IScheduledAction;\n}\n\nexport type ISchedulePublishPageUseCaseResponse = Promise<\n Result<ISchedulePublishPageUseCaseResult, ScheduleActionError>\n>;\n\nexport interface ISchedulePublishPageUseCase {\n execute(params: ISchedulePublishPageUseCaseParams): ISchedulePublishPageUseCaseResponse;\n}\n\n/** Schedule a page for future publishing. */\nexport const SchedulePublishPageUseCase = createAbstraction<ISchedulePublishPageUseCase>(\n \"WbScheduler/SchedulePublishPageUseCase\"\n);\n\nexport namespace SchedulePublishPageUseCase {\n export type Interface = ISchedulePublishPageUseCase;\n export type Error = ScheduleActionError;\n export type Params = ISchedulePublishPageUseCaseParams;\n export type Result = ISchedulePublishPageUseCaseResponse;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,EAAEC,MAAM,QAAQ,qBAAqB;AAuB/D;AACA,OAAO,MAAMC,0BAA0B,GAAGF,iBAAiB,CACvD,wCACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/SchedulePublishPageUseCase/abstractions.js","sources":["../../../src/features/SchedulePublishPageUseCase/abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type {\n IScheduledAction,\n ScheduleActionError\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\n\nexport interface ISchedulePublishPageUseCaseParams {\n id: string;\n scheduleFor: Date;\n}\n\nexport interface ISchedulePublishPageUseCaseResult {\n scheduledAction: IScheduledAction;\n}\n\nexport type ISchedulePublishPageUseCaseResponse = Promise<\n Result<ISchedulePublishPageUseCaseResult, ScheduleActionError>\n>;\n\nexport interface ISchedulePublishPageUseCase {\n execute(params: ISchedulePublishPageUseCaseParams): ISchedulePublishPageUseCaseResponse;\n}\n\n/** Schedule a page for future publishing. */\nexport const SchedulePublishPageUseCase = createAbstraction<ISchedulePublishPageUseCase>(\n \"WbScheduler/SchedulePublishPageUseCase\"\n);\n\nexport namespace SchedulePublishPageUseCase {\n export type Interface = ISchedulePublishPageUseCase;\n export type Error = ScheduleActionError;\n export type Params = ISchedulePublishPageUseCaseParams;\n export type Result = ISchedulePublishPageUseCaseResponse;\n}\n"],"names":["SchedulePublishPageUseCase","createAbstraction"],"mappings":";AAwBO,MAAMA,6BAA6BC,kBACtC"}
@@ -1,30 +1,31 @@
1
- import { SchedulePublishRedirectUseCase as UseCaseAbstraction } from "./abstractions.js";
1
+ import { SchedulePublishRedirectUseCase } from "./abstractions.js";
2
2
  import { ScheduleActionUseCase, ScheduledActionTypePublish } from "@webiny/api-scheduler/exports/api/scheduler.js";
3
3
  import { createNamespace } from "../../utils/namespace.js";
4
4
  import { Result } from "@webiny/feature/exports/api.js";
5
5
  import { SCHEDULED_ACTION_TYPE_REDIRECT } from "../../constants.js";
6
6
  class SchedulePublishRedirectUseCaseImpl {
7
- constructor(scheduleAction) {
8
- this.scheduleAction = scheduleAction;
9
- }
10
- async execute(params) {
11
- const scheduleResult = await this.scheduleAction.execute({
12
- namespace: createNamespace(SCHEDULED_ACTION_TYPE_REDIRECT),
13
- actionType: ScheduledActionTypePublish,
14
- scheduleFor: params.scheduleFor,
15
- targetId: params.id
16
- });
17
- if (scheduleResult.isFail()) {
18
- return Result.fail(scheduleResult.error);
7
+ constructor(scheduleAction){
8
+ this.scheduleAction = scheduleAction;
9
+ }
10
+ async execute(params) {
11
+ const scheduleResult = await this.scheduleAction.execute({
12
+ namespace: createNamespace(SCHEDULED_ACTION_TYPE_REDIRECT),
13
+ actionType: ScheduledActionTypePublish,
14
+ scheduleFor: params.scheduleFor,
15
+ targetId: params.id
16
+ });
17
+ if (scheduleResult.isFail()) return Result.fail(scheduleResult.error);
18
+ return Result.ok({
19
+ scheduledAction: scheduleResult.value
20
+ });
19
21
  }
20
- return Result.ok({
21
- scheduledAction: scheduleResult.value
22
- });
23
- }
24
22
  }
25
- export const SchedulePublishRedirectUseCase = UseCaseAbstraction.createImplementation({
26
- implementation: SchedulePublishRedirectUseCaseImpl,
27
- dependencies: [ScheduleActionUseCase]
23
+ const SchedulePublishRedirectUseCase_SchedulePublishRedirectUseCase = SchedulePublishRedirectUseCase.createImplementation({
24
+ implementation: SchedulePublishRedirectUseCaseImpl,
25
+ dependencies: [
26
+ ScheduleActionUseCase
27
+ ]
28
28
  });
29
+ export { SchedulePublishRedirectUseCase_SchedulePublishRedirectUseCase as SchedulePublishRedirectUseCase };
29
30
 
30
31
  //# sourceMappingURL=SchedulePublishRedirectUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["SchedulePublishRedirectUseCase","UseCaseAbstraction","ScheduleActionUseCase","ScheduledActionTypePublish","createNamespace","Result","SCHEDULED_ACTION_TYPE_REDIRECT","SchedulePublishRedirectUseCaseImpl","constructor","scheduleAction","execute","params","scheduleResult","namespace","actionType","scheduleFor","targetId","id","isFail","fail","error","ok","scheduledAction","value","createImplementation","implementation","dependencies"],"sources":["SchedulePublishRedirectUseCase.ts"],"sourcesContent":["import { SchedulePublishRedirectUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport {\n ScheduleActionUseCase,\n ScheduledActionTypePublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { createNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport { SCHEDULED_ACTION_TYPE_REDIRECT } from \"~/constants.js\";\n\nclass SchedulePublishRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(private scheduleAction: ScheduleActionUseCase.Interface) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Result {\n const scheduleResult = await this.scheduleAction.execute({\n namespace: createNamespace(SCHEDULED_ACTION_TYPE_REDIRECT),\n actionType: ScheduledActionTypePublish,\n scheduleFor: params.scheduleFor,\n targetId: params.id\n });\n if (scheduleResult.isFail()) {\n return Result.fail(scheduleResult.error);\n }\n return Result.ok({ scheduledAction: scheduleResult.value });\n }\n}\n\nexport const SchedulePublishRedirectUseCase = UseCaseAbstraction.createImplementation({\n implementation: SchedulePublishRedirectUseCaseImpl,\n dependencies: [ScheduleActionUseCase]\n});\n"],"mappings":"AAAA,SAASA,8BAA8B,IAAIC,kBAAkB;AAC7D,SACIC,qBAAqB,EACrBC,0BAA0B,QACvB,gDAAgD;AACvD,SAASC,eAAe;AACxB,SAASC,MAAM,QAAQ,gCAAgC;AACvD,SAASC,8BAA8B;AAEvC,MAAMC,kCAAkC,CAAyC;EACtEC,WAAWA,CAASC,cAA+C,EAAE;IAAA,KAAjDA,cAA+C,GAA/CA,cAA+C;EAAG;EAE7E,MAAaC,OAAOA,CAACC,MAAiC,EAA6B;IAC/E,MAAMC,cAAc,GAAG,MAAM,IAAI,CAACH,cAAc,CAACC,OAAO,CAAC;MACrDG,SAAS,EAAET,eAAe,CAACE,8BAA8B,CAAC;MAC1DQ,UAAU,EAAEX,0BAA0B;MACtCY,WAAW,EAAEJ,MAAM,CAACI,WAAW;MAC/BC,QAAQ,EAAEL,MAAM,CAACM;IACrB,CAAC,CAAC;IACF,IAAIL,cAAc,CAACM,MAAM,CAAC,CAAC,EAAE;MACzB,OAAOb,MAAM,CAACc,IAAI,CAACP,cAAc,CAACQ,KAAK,CAAC;IAC5C;IACA,OAAOf,MAAM,CAACgB,EAAE,CAAC;MAAEC,eAAe,EAAEV,cAAc,CAACW;IAAM,CAAC,CAAC;EAC/D;AACJ;AAEA,OAAO,MAAMvB,8BAA8B,GAAGC,kBAAkB,CAACuB,oBAAoB,CAAC;EAClFC,cAAc,EAAElB,kCAAkC;EAClDmB,YAAY,EAAE,CAACxB,qBAAqB;AACxC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/SchedulePublishRedirectUseCase/SchedulePublishRedirectUseCase.js","sources":["../../../src/features/SchedulePublishRedirectUseCase/SchedulePublishRedirectUseCase.ts"],"sourcesContent":["import { SchedulePublishRedirectUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport {\n ScheduleActionUseCase,\n ScheduledActionTypePublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { createNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport { SCHEDULED_ACTION_TYPE_REDIRECT } from \"~/constants.js\";\n\nclass SchedulePublishRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(private scheduleAction: ScheduleActionUseCase.Interface) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Result {\n const scheduleResult = await this.scheduleAction.execute({\n namespace: createNamespace(SCHEDULED_ACTION_TYPE_REDIRECT),\n actionType: ScheduledActionTypePublish,\n scheduleFor: params.scheduleFor,\n targetId: params.id\n });\n if (scheduleResult.isFail()) {\n return Result.fail(scheduleResult.error);\n }\n return Result.ok({ scheduledAction: scheduleResult.value });\n }\n}\n\nexport const SchedulePublishRedirectUseCase = UseCaseAbstraction.createImplementation({\n implementation: SchedulePublishRedirectUseCaseImpl,\n dependencies: [ScheduleActionUseCase]\n});\n"],"names":["SchedulePublishRedirectUseCaseImpl","scheduleAction","params","scheduleResult","createNamespace","SCHEDULED_ACTION_TYPE_REDIRECT","ScheduledActionTypePublish","Result","SchedulePublishRedirectUseCase","UseCaseAbstraction","ScheduleActionUseCase"],"mappings":";;;;;AASA,MAAMA;IACF,YAA2BC,cAA+C,CAAE;aAAjDA,cAAc,GAAdA;IAAkD;IAE7E,MAAa,QAAQC,MAAiC,EAA6B;QAC/E,MAAMC,iBAAiB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YACrD,WAAWC,gBAAgBC;YAC3B,YAAYC;YACZ,aAAaJ,OAAO,WAAW;YAC/B,UAAUA,OAAO,EAAE;QACvB;QACA,IAAIC,eAAe,MAAM,IACrB,OAAOI,OAAO,IAAI,CAACJ,eAAe,KAAK;QAE3C,OAAOI,OAAO,EAAE,CAAC;YAAE,iBAAiBJ,eAAe,KAAK;QAAC;IAC7D;AACJ;AAEO,MAAMK,gEAAiCC,+BAAAA,oBAAuC,CAAC;IAClF,gBAAgBT;IAChB,cAAc;QAACU;KAAsB;AACzC"}
@@ -1,5 +1,5 @@
1
- import { createAbstraction, Result } from "@webiny/feature/api";
2
- /** Schedule a redirect for future publishing. */
3
- export const SchedulePublishRedirectUseCase = createAbstraction("WbScheduler/SchedulePublishRedirectUseCase");
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const SchedulePublishRedirectUseCase = createAbstraction("WbScheduler/SchedulePublishRedirectUseCase");
3
+ export { SchedulePublishRedirectUseCase };
4
4
 
5
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","Result","SchedulePublishRedirectUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type {\n IScheduledAction,\n ScheduleActionError\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\n\nexport interface ISchedulePublishRedirectUseCaseParams {\n id: string;\n scheduleFor: Date;\n}\n\nexport interface ISchedulePublishRedirectUseCaseResult {\n scheduledAction: IScheduledAction;\n}\n\nexport type ISchedulePublishRedirectUseCaseResponse = Promise<\n Result<ISchedulePublishRedirectUseCaseResult, ScheduleActionError>\n>;\n\nexport interface ISchedulePublishRedirectUseCase {\n execute(params: ISchedulePublishRedirectUseCaseParams): ISchedulePublishRedirectUseCaseResponse;\n}\n\n/** Schedule a redirect for future publishing. */\nexport const SchedulePublishRedirectUseCase = createAbstraction<ISchedulePublishRedirectUseCase>(\n \"WbScheduler/SchedulePublishRedirectUseCase\"\n);\n\nexport namespace SchedulePublishRedirectUseCase {\n export type Interface = ISchedulePublishRedirectUseCase;\n export type Error = ScheduleActionError;\n export type Params = ISchedulePublishRedirectUseCaseParams;\n export type Result = ISchedulePublishRedirectUseCaseResponse;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,EAAEC,MAAM,QAAQ,qBAAqB;AAuB/D;AACA,OAAO,MAAMC,8BAA8B,GAAGF,iBAAiB,CAC3D,4CACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/SchedulePublishRedirectUseCase/abstractions.js","sources":["../../../src/features/SchedulePublishRedirectUseCase/abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type {\n IScheduledAction,\n ScheduleActionError\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\n\nexport interface ISchedulePublishRedirectUseCaseParams {\n id: string;\n scheduleFor: Date;\n}\n\nexport interface ISchedulePublishRedirectUseCaseResult {\n scheduledAction: IScheduledAction;\n}\n\nexport type ISchedulePublishRedirectUseCaseResponse = Promise<\n Result<ISchedulePublishRedirectUseCaseResult, ScheduleActionError>\n>;\n\nexport interface ISchedulePublishRedirectUseCase {\n execute(params: ISchedulePublishRedirectUseCaseParams): ISchedulePublishRedirectUseCaseResponse;\n}\n\n/** Schedule a redirect for future publishing. */\nexport const SchedulePublishRedirectUseCase = createAbstraction<ISchedulePublishRedirectUseCase>(\n \"WbScheduler/SchedulePublishRedirectUseCase\"\n);\n\nexport namespace SchedulePublishRedirectUseCase {\n export type Interface = ISchedulePublishRedirectUseCase;\n export type Error = ScheduleActionError;\n export type Params = ISchedulePublishRedirectUseCaseParams;\n export type Result = ISchedulePublishRedirectUseCaseResponse;\n}\n"],"names":["SchedulePublishRedirectUseCase","createAbstraction"],"mappings":";AAwBO,MAAMA,iCAAiCC,kBAC1C"}
@@ -1,30 +1,31 @@
1
- import { ScheduleUnpublishPageUseCase as UseCaseAbstraction } from "./abstractions.js";
1
+ import { ScheduleUnpublishPageUseCase } from "./abstractions.js";
2
2
  import { ScheduleActionUseCase, ScheduledActionTypeUnpublish } from "@webiny/api-scheduler/exports/api/scheduler.js";
3
3
  import { createNamespace } from "../../utils/namespace.js";
4
4
  import { Result } from "@webiny/feature/exports/api.js";
5
5
  import { SCHEDULED_ACTION_TYPE_PAGE } from "../../constants.js";
6
6
  class ScheduleUnpublishPageUseCaseImpl {
7
- constructor(scheduleAction) {
8
- this.scheduleAction = scheduleAction;
9
- }
10
- async execute(params) {
11
- const scheduleResult = await this.scheduleAction.execute({
12
- namespace: createNamespace(SCHEDULED_ACTION_TYPE_PAGE),
13
- actionType: ScheduledActionTypeUnpublish,
14
- scheduleFor: params.scheduleFor,
15
- targetId: params.id
16
- });
17
- if (scheduleResult.isFail()) {
18
- return Result.fail(scheduleResult.error);
7
+ constructor(scheduleAction){
8
+ this.scheduleAction = scheduleAction;
9
+ }
10
+ async execute(params) {
11
+ const scheduleResult = await this.scheduleAction.execute({
12
+ namespace: createNamespace(SCHEDULED_ACTION_TYPE_PAGE),
13
+ actionType: ScheduledActionTypeUnpublish,
14
+ scheduleFor: params.scheduleFor,
15
+ targetId: params.id
16
+ });
17
+ if (scheduleResult.isFail()) return Result.fail(scheduleResult.error);
18
+ return Result.ok({
19
+ scheduledAction: scheduleResult.value
20
+ });
19
21
  }
20
- return Result.ok({
21
- scheduledAction: scheduleResult.value
22
- });
23
- }
24
22
  }
25
- export const ScheduleUnpublishPageUseCase = UseCaseAbstraction.createImplementation({
26
- implementation: ScheduleUnpublishPageUseCaseImpl,
27
- dependencies: [ScheduleActionUseCase]
23
+ const ScheduleUnpublishPageUseCase_ScheduleUnpublishPageUseCase = ScheduleUnpublishPageUseCase.createImplementation({
24
+ implementation: ScheduleUnpublishPageUseCaseImpl,
25
+ dependencies: [
26
+ ScheduleActionUseCase
27
+ ]
28
28
  });
29
+ export { ScheduleUnpublishPageUseCase_ScheduleUnpublishPageUseCase as ScheduleUnpublishPageUseCase };
29
30
 
30
31
  //# sourceMappingURL=ScheduleUnpublishPageUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ScheduleUnpublishPageUseCase","UseCaseAbstraction","ScheduleActionUseCase","ScheduledActionTypeUnpublish","createNamespace","Result","SCHEDULED_ACTION_TYPE_PAGE","ScheduleUnpublishPageUseCaseImpl","constructor","scheduleAction","execute","params","scheduleResult","namespace","actionType","scheduleFor","targetId","id","isFail","fail","error","ok","scheduledAction","value","createImplementation","implementation","dependencies"],"sources":["ScheduleUnpublishPageUseCase.ts"],"sourcesContent":["import { ScheduleUnpublishPageUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport {\n ScheduleActionUseCase,\n ScheduledActionTypeUnpublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { createNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport { SCHEDULED_ACTION_TYPE_PAGE } from \"~/constants.js\";\n\nclass ScheduleUnpublishPageUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(private scheduleAction: ScheduleActionUseCase.Interface) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Result {\n const scheduleResult = await this.scheduleAction.execute({\n namespace: createNamespace(SCHEDULED_ACTION_TYPE_PAGE),\n actionType: ScheduledActionTypeUnpublish,\n scheduleFor: params.scheduleFor,\n targetId: params.id\n });\n if (scheduleResult.isFail()) {\n return Result.fail(scheduleResult.error);\n }\n return Result.ok({ scheduledAction: scheduleResult.value });\n }\n}\n\nexport const ScheduleUnpublishPageUseCase = UseCaseAbstraction.createImplementation({\n implementation: ScheduleUnpublishPageUseCaseImpl,\n dependencies: [ScheduleActionUseCase]\n});\n"],"mappings":"AAAA,SAASA,4BAA4B,IAAIC,kBAAkB;AAC3D,SACIC,qBAAqB,EACrBC,4BAA4B,QACzB,gDAAgD;AACvD,SAASC,eAAe;AACxB,SAASC,MAAM,QAAQ,gCAAgC;AACvD,SAASC,0BAA0B;AAEnC,MAAMC,gCAAgC,CAAyC;EACpEC,WAAWA,CAASC,cAA+C,EAAE;IAAA,KAAjDA,cAA+C,GAA/CA,cAA+C;EAAG;EAE7E,MAAaC,OAAOA,CAACC,MAAiC,EAA6B;IAC/E,MAAMC,cAAc,GAAG,MAAM,IAAI,CAACH,cAAc,CAACC,OAAO,CAAC;MACrDG,SAAS,EAAET,eAAe,CAACE,0BAA0B,CAAC;MACtDQ,UAAU,EAAEX,4BAA4B;MACxCY,WAAW,EAAEJ,MAAM,CAACI,WAAW;MAC/BC,QAAQ,EAAEL,MAAM,CAACM;IACrB,CAAC,CAAC;IACF,IAAIL,cAAc,CAACM,MAAM,CAAC,CAAC,EAAE;MACzB,OAAOb,MAAM,CAACc,IAAI,CAACP,cAAc,CAACQ,KAAK,CAAC;IAC5C;IACA,OAAOf,MAAM,CAACgB,EAAE,CAAC;MAAEC,eAAe,EAAEV,cAAc,CAACW;IAAM,CAAC,CAAC;EAC/D;AACJ;AAEA,OAAO,MAAMvB,4BAA4B,GAAGC,kBAAkB,CAACuB,oBAAoB,CAAC;EAChFC,cAAc,EAAElB,gCAAgC;EAChDmB,YAAY,EAAE,CAACxB,qBAAqB;AACxC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/ScheduleUnpublishPageUseCase/ScheduleUnpublishPageUseCase.js","sources":["../../../src/features/ScheduleUnpublishPageUseCase/ScheduleUnpublishPageUseCase.ts"],"sourcesContent":["import { ScheduleUnpublishPageUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport {\n ScheduleActionUseCase,\n ScheduledActionTypeUnpublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { createNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport { SCHEDULED_ACTION_TYPE_PAGE } from \"~/constants.js\";\n\nclass ScheduleUnpublishPageUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(private scheduleAction: ScheduleActionUseCase.Interface) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Result {\n const scheduleResult = await this.scheduleAction.execute({\n namespace: createNamespace(SCHEDULED_ACTION_TYPE_PAGE),\n actionType: ScheduledActionTypeUnpublish,\n scheduleFor: params.scheduleFor,\n targetId: params.id\n });\n if (scheduleResult.isFail()) {\n return Result.fail(scheduleResult.error);\n }\n return Result.ok({ scheduledAction: scheduleResult.value });\n }\n}\n\nexport const ScheduleUnpublishPageUseCase = UseCaseAbstraction.createImplementation({\n implementation: ScheduleUnpublishPageUseCaseImpl,\n dependencies: [ScheduleActionUseCase]\n});\n"],"names":["ScheduleUnpublishPageUseCaseImpl","scheduleAction","params","scheduleResult","createNamespace","SCHEDULED_ACTION_TYPE_PAGE","ScheduledActionTypeUnpublish","Result","ScheduleUnpublishPageUseCase","UseCaseAbstraction","ScheduleActionUseCase"],"mappings":";;;;;AASA,MAAMA;IACF,YAA2BC,cAA+C,CAAE;aAAjDA,cAAc,GAAdA;IAAkD;IAE7E,MAAa,QAAQC,MAAiC,EAA6B;QAC/E,MAAMC,iBAAiB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YACrD,WAAWC,gBAAgBC;YAC3B,YAAYC;YACZ,aAAaJ,OAAO,WAAW;YAC/B,UAAUA,OAAO,EAAE;QACvB;QACA,IAAIC,eAAe,MAAM,IACrB,OAAOI,OAAO,IAAI,CAACJ,eAAe,KAAK;QAE3C,OAAOI,OAAO,EAAE,CAAC;YAAE,iBAAiBJ,eAAe,KAAK;QAAC;IAC7D;AACJ;AAEO,MAAMK,4DAA+BC,6BAAAA,oBAAuC,CAAC;IAChF,gBAAgBT;IAChB,cAAc;QAACU;KAAsB;AACzC"}
@@ -1,5 +1,5 @@
1
- import { createAbstraction, Result } from "@webiny/feature/api";
2
- /** Schedule a page for future unpublishing. */
3
- export const ScheduleUnpublishPageUseCase = createAbstraction("WbScheduler/ScheduleUnpublishPageUseCase");
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const ScheduleUnpublishPageUseCase = createAbstraction("WbScheduler/ScheduleUnpublishPageUseCase");
3
+ export { ScheduleUnpublishPageUseCase };
4
4
 
5
5
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","Result","ScheduleUnpublishPageUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type {\n IScheduledAction,\n ScheduleActionError\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\n\nexport interface IScheduleUnpublishPageUseCaseParams {\n id: string;\n scheduleFor: Date;\n}\n\nexport interface IScheduleUnpublishPageUseCaseResult {\n scheduledAction: IScheduledAction;\n}\n\nexport type IScheduleUnpublishPageUseCaseResponse = Promise<\n Result<IScheduleUnpublishPageUseCaseResult, ScheduleActionError>\n>;\n\nexport interface IScheduleUnpublishPageUseCase {\n execute(params: IScheduleUnpublishPageUseCaseParams): IScheduleUnpublishPageUseCaseResponse;\n}\n\n/** Schedule a page for future unpublishing. */\nexport const ScheduleUnpublishPageUseCase = createAbstraction<IScheduleUnpublishPageUseCase>(\n \"WbScheduler/ScheduleUnpublishPageUseCase\"\n);\n\nexport namespace ScheduleUnpublishPageUseCase {\n export type Interface = IScheduleUnpublishPageUseCase;\n export type Error = ScheduleActionError;\n export type Params = IScheduleUnpublishPageUseCaseParams;\n export type Result = IScheduleUnpublishPageUseCaseResponse;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,EAAEC,MAAM,QAAQ,qBAAqB;AAuB/D;AACA,OAAO,MAAMC,4BAA4B,GAAGF,iBAAiB,CACzD,0CACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/ScheduleUnpublishPageUseCase/abstractions.js","sources":["../../../src/features/ScheduleUnpublishPageUseCase/abstractions.ts"],"sourcesContent":["import { createAbstraction, Result } from \"@webiny/feature/api\";\nimport type {\n IScheduledAction,\n ScheduleActionError\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\n\nexport interface IScheduleUnpublishPageUseCaseParams {\n id: string;\n scheduleFor: Date;\n}\n\nexport interface IScheduleUnpublishPageUseCaseResult {\n scheduledAction: IScheduledAction;\n}\n\nexport type IScheduleUnpublishPageUseCaseResponse = Promise<\n Result<IScheduleUnpublishPageUseCaseResult, ScheduleActionError>\n>;\n\nexport interface IScheduleUnpublishPageUseCase {\n execute(params: IScheduleUnpublishPageUseCaseParams): IScheduleUnpublishPageUseCaseResponse;\n}\n\n/** Schedule a page for future unpublishing. */\nexport const ScheduleUnpublishPageUseCase = createAbstraction<IScheduleUnpublishPageUseCase>(\n \"WbScheduler/ScheduleUnpublishPageUseCase\"\n);\n\nexport namespace ScheduleUnpublishPageUseCase {\n export type Interface = IScheduleUnpublishPageUseCase;\n export type Error = ScheduleActionError;\n export type Params = IScheduleUnpublishPageUseCaseParams;\n export type Result = IScheduleUnpublishPageUseCaseResponse;\n}\n"],"names":["ScheduleUnpublishPageUseCase","createAbstraction"],"mappings":";AAwBO,MAAMA,+BAA+BC,kBACxC"}
@@ -1,30 +1,31 @@
1
- import { ScheduleUnpublishRedirectUseCase as UseCaseAbstraction } from "./abstractions.js";
1
+ import { ScheduleUnpublishRedirectUseCase } from "./abstractions.js";
2
2
  import { ScheduleActionUseCase, ScheduledActionTypeUnpublish } from "@webiny/api-scheduler/exports/api/scheduler.js";
3
3
  import { createNamespace } from "../../utils/namespace.js";
4
4
  import { Result } from "@webiny/feature/exports/api.js";
5
5
  import { SCHEDULED_ACTION_TYPE_REDIRECT } from "../../constants.js";
6
6
  class ScheduleUnpublishRedirectUseCaseImpl {
7
- constructor(scheduleAction) {
8
- this.scheduleAction = scheduleAction;
9
- }
10
- async execute(params) {
11
- const scheduleResult = await this.scheduleAction.execute({
12
- namespace: createNamespace(SCHEDULED_ACTION_TYPE_REDIRECT),
13
- actionType: ScheduledActionTypeUnpublish,
14
- scheduleFor: params.scheduleFor,
15
- targetId: params.id
16
- });
17
- if (scheduleResult.isFail()) {
18
- return Result.fail(scheduleResult.error);
7
+ constructor(scheduleAction){
8
+ this.scheduleAction = scheduleAction;
9
+ }
10
+ async execute(params) {
11
+ const scheduleResult = await this.scheduleAction.execute({
12
+ namespace: createNamespace(SCHEDULED_ACTION_TYPE_REDIRECT),
13
+ actionType: ScheduledActionTypeUnpublish,
14
+ scheduleFor: params.scheduleFor,
15
+ targetId: params.id
16
+ });
17
+ if (scheduleResult.isFail()) return Result.fail(scheduleResult.error);
18
+ return Result.ok({
19
+ scheduledAction: scheduleResult.value
20
+ });
19
21
  }
20
- return Result.ok({
21
- scheduledAction: scheduleResult.value
22
- });
23
- }
24
22
  }
25
- export const ScheduleUnpublishRedirectUseCase = UseCaseAbstraction.createImplementation({
26
- implementation: ScheduleUnpublishRedirectUseCaseImpl,
27
- dependencies: [ScheduleActionUseCase]
23
+ const ScheduleUnpublishRedirectUseCase_ScheduleUnpublishRedirectUseCase = ScheduleUnpublishRedirectUseCase.createImplementation({
24
+ implementation: ScheduleUnpublishRedirectUseCaseImpl,
25
+ dependencies: [
26
+ ScheduleActionUseCase
27
+ ]
28
28
  });
29
+ export { ScheduleUnpublishRedirectUseCase_ScheduleUnpublishRedirectUseCase as ScheduleUnpublishRedirectUseCase };
29
30
 
30
31
  //# sourceMappingURL=ScheduleUnpublishRedirectUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["ScheduleUnpublishRedirectUseCase","UseCaseAbstraction","ScheduleActionUseCase","ScheduledActionTypeUnpublish","createNamespace","Result","SCHEDULED_ACTION_TYPE_REDIRECT","ScheduleUnpublishRedirectUseCaseImpl","constructor","scheduleAction","execute","params","scheduleResult","namespace","actionType","scheduleFor","targetId","id","isFail","fail","error","ok","scheduledAction","value","createImplementation","implementation","dependencies"],"sources":["ScheduleUnpublishRedirectUseCase.ts"],"sourcesContent":["import { ScheduleUnpublishRedirectUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport {\n ScheduleActionUseCase,\n ScheduledActionTypeUnpublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { createNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport { SCHEDULED_ACTION_TYPE_REDIRECT } from \"~/constants.js\";\n\nclass ScheduleUnpublishRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(private scheduleAction: ScheduleActionUseCase.Interface) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Result {\n const scheduleResult = await this.scheduleAction.execute({\n namespace: createNamespace(SCHEDULED_ACTION_TYPE_REDIRECT),\n actionType: ScheduledActionTypeUnpublish,\n scheduleFor: params.scheduleFor,\n targetId: params.id\n });\n if (scheduleResult.isFail()) {\n return Result.fail(scheduleResult.error);\n }\n return Result.ok({ scheduledAction: scheduleResult.value });\n }\n}\n\nexport const ScheduleUnpublishRedirectUseCase = UseCaseAbstraction.createImplementation({\n implementation: ScheduleUnpublishRedirectUseCaseImpl,\n dependencies: [ScheduleActionUseCase]\n});\n"],"mappings":"AAAA,SAASA,gCAAgC,IAAIC,kBAAkB;AAC/D,SACIC,qBAAqB,EACrBC,4BAA4B,QACzB,gDAAgD;AACvD,SAASC,eAAe;AACxB,SAASC,MAAM,QAAQ,gCAAgC;AACvD,SAASC,8BAA8B;AAEvC,MAAMC,oCAAoC,CAAyC;EACxEC,WAAWA,CAASC,cAA+C,EAAE;IAAA,KAAjDA,cAA+C,GAA/CA,cAA+C;EAAG;EAE7E,MAAaC,OAAOA,CAACC,MAAiC,EAA6B;IAC/E,MAAMC,cAAc,GAAG,MAAM,IAAI,CAACH,cAAc,CAACC,OAAO,CAAC;MACrDG,SAAS,EAAET,eAAe,CAACE,8BAA8B,CAAC;MAC1DQ,UAAU,EAAEX,4BAA4B;MACxCY,WAAW,EAAEJ,MAAM,CAACI,WAAW;MAC/BC,QAAQ,EAAEL,MAAM,CAACM;IACrB,CAAC,CAAC;IACF,IAAIL,cAAc,CAACM,MAAM,CAAC,CAAC,EAAE;MACzB,OAAOb,MAAM,CAACc,IAAI,CAACP,cAAc,CAACQ,KAAK,CAAC;IAC5C;IACA,OAAOf,MAAM,CAACgB,EAAE,CAAC;MAAEC,eAAe,EAAEV,cAAc,CAACW;IAAM,CAAC,CAAC;EAC/D;AACJ;AAEA,OAAO,MAAMvB,gCAAgC,GAAGC,kBAAkB,CAACuB,oBAAoB,CAAC;EACpFC,cAAc,EAAElB,oCAAoC;EACpDmB,YAAY,EAAE,CAACxB,qBAAqB;AACxC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/ScheduleUnpublishRedirectUseCase/ScheduleUnpublishRedirectUseCase.js","sources":["../../../src/features/ScheduleUnpublishRedirectUseCase/ScheduleUnpublishRedirectUseCase.ts"],"sourcesContent":["import { ScheduleUnpublishRedirectUseCase as UseCaseAbstraction } from \"./abstractions.js\";\nimport {\n ScheduleActionUseCase,\n ScheduledActionTypeUnpublish\n} from \"@webiny/api-scheduler/exports/api/scheduler.js\";\nimport { createNamespace } from \"~/utils/namespace.js\";\nimport { Result } from \"@webiny/feature/exports/api.js\";\nimport { SCHEDULED_ACTION_TYPE_REDIRECT } from \"~/constants.js\";\n\nclass ScheduleUnpublishRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n public constructor(private scheduleAction: ScheduleActionUseCase.Interface) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Result {\n const scheduleResult = await this.scheduleAction.execute({\n namespace: createNamespace(SCHEDULED_ACTION_TYPE_REDIRECT),\n actionType: ScheduledActionTypeUnpublish,\n scheduleFor: params.scheduleFor,\n targetId: params.id\n });\n if (scheduleResult.isFail()) {\n return Result.fail(scheduleResult.error);\n }\n return Result.ok({ scheduledAction: scheduleResult.value });\n }\n}\n\nexport const ScheduleUnpublishRedirectUseCase = UseCaseAbstraction.createImplementation({\n implementation: ScheduleUnpublishRedirectUseCaseImpl,\n dependencies: [ScheduleActionUseCase]\n});\n"],"names":["ScheduleUnpublishRedirectUseCaseImpl","scheduleAction","params","scheduleResult","createNamespace","SCHEDULED_ACTION_TYPE_REDIRECT","ScheduledActionTypeUnpublish","Result","ScheduleUnpublishRedirectUseCase","UseCaseAbstraction","ScheduleActionUseCase"],"mappings":";;;;;AASA,MAAMA;IACF,YAA2BC,cAA+C,CAAE;aAAjDA,cAAc,GAAdA;IAAkD;IAE7E,MAAa,QAAQC,MAAiC,EAA6B;QAC/E,MAAMC,iBAAiB,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;YACrD,WAAWC,gBAAgBC;YAC3B,YAAYC;YACZ,aAAaJ,OAAO,WAAW;YAC/B,UAAUA,OAAO,EAAE;QACvB;QACA,IAAIC,eAAe,MAAM,IACrB,OAAOI,OAAO,IAAI,CAACJ,eAAe,KAAK;QAE3C,OAAOI,OAAO,EAAE,CAAC;YAAE,iBAAiBJ,eAAe,KAAK;QAAC;IAC7D;AACJ;AAEO,MAAMK,oEAAmCC,iCAAAA,oBAAuC,CAAC;IACpF,gBAAgBT;IAChB,cAAc;QAACU;KAAsB;AACzC"}
@@ -1,5 +1,5 @@
1
- import { createAbstraction, Result } from "@webiny/feature/api";
2
- /** Schedule a redirect for future unpublishing. */
3
- export const ScheduleUnpublishRedirectUseCase = createAbstraction("WbScheduler/ScheduleUnpublishRedirectUseCase");
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const ScheduleUnpublishRedirectUseCase = createAbstraction("WbScheduler/ScheduleUnpublishRedirectUseCase");
3
+ export { ScheduleUnpublishRedirectUseCase };
4
4
 
5
5
  //# sourceMappingURL=abstractions.js.map