@webiny/api-website-builder 0.0.0-unstable.e53eceafb5 → 0.0.0-unstable.eb196ccd2f

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 (57) hide show
  1. package/context/WebsiteBuilder.d.ts +2 -0
  2. package/context/WebsiteBuilder.js +30 -0
  3. package/context/WebsiteBuilder.js.map +1 -1
  4. package/context/pages/PagesStorage.d.ts +12 -5
  5. package/context/pages/PagesStorage.js +28 -19
  6. package/context/pages/PagesStorage.js.map +1 -1
  7. package/context/pages/pages.context.js +3 -1
  8. package/context/pages/pages.context.js.map +1 -1
  9. package/context/pages/pages.crud.js +1 -1
  10. package/context/pages/pages.crud.js.map +1 -1
  11. package/context/pages/pages.types.d.ts +1 -1
  12. package/context/pages/pages.types.js.map +1 -1
  13. package/context/redirects/redirects.context.js +2 -2
  14. package/context/redirects/redirects.context.js.map +1 -1
  15. package/context/redirects/redirects.crud.js +7 -0
  16. package/context/redirects/redirects.crud.js.map +1 -1
  17. package/context/redirects/redirects.types.d.ts +4 -0
  18. package/context/redirects/redirects.types.js.map +1 -1
  19. package/context/types.d.ts +2 -1
  20. package/context/types.js.map +1 -1
  21. package/features/redirects/GetActiveRedirects/GetActiveRedirects.d.ts +7 -0
  22. package/features/redirects/GetActiveRedirects/GetActiveRedirects.js +26 -0
  23. package/features/redirects/GetActiveRedirects/GetActiveRedirects.js.map +1 -0
  24. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.d.ts +4 -0
  25. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.js +7 -0
  26. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.js.map +1 -0
  27. package/features/redirects/GetActiveRedirects/index.d.ts +7 -0
  28. package/features/redirects/GetActiveRedirects/index.js +13 -0
  29. package/features/redirects/GetActiveRedirects/index.js.map +1 -0
  30. package/features/redirects/InvalidateRedirectsCache.d.ts +7 -0
  31. package/features/redirects/InvalidateRedirectsCache.js +24 -0
  32. package/features/redirects/InvalidateRedirectsCache.js.map +1 -0
  33. package/features/redirects/index.d.ts +1 -0
  34. package/features/redirects/index.js +11 -0
  35. package/features/redirects/index.js.map +1 -1
  36. package/graphql/createGraphQL.d.ts +1 -1
  37. package/graphql/pages/pages.gql.js +1 -1
  38. package/graphql/pages/pages.gql.js.map +1 -1
  39. package/graphql/redirects/redirects.gql.js +0 -8
  40. package/graphql/redirects/redirects.gql.js.map +1 -1
  41. package/graphql/redirects/redirects.typeDefs.d.ts +1 -1
  42. package/graphql/redirects/redirects.typeDefs.js +16 -1
  43. package/graphql/redirects/redirects.typeDefs.js.map +1 -1
  44. package/index.d.ts +2 -1
  45. package/index.js +2 -1
  46. package/index.js.map +1 -1
  47. package/package.json +23 -22
  48. package/rest/ActiveRedirectDto.d.ts +6 -0
  49. package/rest/ActiveRedirectDto.js +7 -0
  50. package/rest/ActiveRedirectDto.js.map +1 -0
  51. package/rest/ActiveRedirectRestMapper.d.ts +5 -0
  52. package/rest/ActiveRedirectRestMapper.js +19 -0
  53. package/rest/ActiveRedirectRestMapper.js.map +1 -0
  54. package/rest/getRedirects.d.ts +2 -0
  55. package/rest/getRedirects.js +38 -0
  56. package/rest/getRedirects.js.map +1 -0
  57. package/utils/resolve.d.ts +1 -1
@@ -7,6 +7,8 @@ export declare class WebsiteBuilder {
7
7
  private redirectsContext;
8
8
  private constructor();
9
9
  private init;
10
+ private invalidateCacheOnRedirectEvents;
11
+ private invalidateCache;
10
12
  get pages(): WbPageCrud;
11
13
  get redirects(): WbRedirectCrud;
12
14
  static create(context: WebsiteBuilderContext): Promise<WebsiteBuilder>;
@@ -7,6 +7,7 @@ exports.WebsiteBuilder = void 0;
7
7
  var _apiHeadlessCms = require("@webiny/api-headless-cms");
8
8
  var _pages = require("./pages/pages.context");
9
9
  var _redirects = require("./redirects/redirects.context");
10
+ var _redirects2 = require("../features/redirects");
10
11
  class WebsiteBuilder {
11
12
  constructor(context) {
12
13
  this.context = context;
@@ -14,6 +15,35 @@ class WebsiteBuilder {
14
15
  async init() {
15
16
  this.pagesContext = await _pages.PagesContext.create(this.context);
16
17
  this.redirectsContext = await _redirects.RedirectsContext.create(this.context);
18
+ this.invalidateCacheOnRedirectEvents();
19
+ }
20
+ invalidateCacheOnRedirectEvents() {
21
+ this.redirects.onRedirectAfterCreate.subscribe(async ({
22
+ redirect
23
+ }) => {
24
+ if (redirect.isEnabled) {
25
+ await this.invalidateCache();
26
+ }
27
+ });
28
+ this.redirects.onRedirectAfterUpdate.subscribe(async ({
29
+ redirect,
30
+ original
31
+ }) => {
32
+ if (redirect.redirectFrom !== original.redirectFrom || redirect.redirectTo !== original.redirectTo || redirect.isEnabled !== original.isEnabled) {
33
+ await this.invalidateCache();
34
+ }
35
+ });
36
+ this.redirects.onRedirectAfterDelete.subscribe(async ({
37
+ redirect
38
+ }) => {
39
+ if (redirect.isEnabled) {
40
+ await this.invalidateCache();
41
+ }
42
+ });
43
+ }
44
+ async invalidateCache() {
45
+ const invalidateRedirectsCache = new _redirects2.InvalidateRedirectsCache(this.context.tasks);
46
+ await invalidateRedirectsCache.execute();
17
47
  }
18
48
  get pages() {
19
49
  return this.pagesContext;
@@ -1 +1 @@
1
- {"version":3,"names":["_apiHeadlessCms","require","_pages","_redirects","WebsiteBuilder","constructor","context","init","pagesContext","PagesContext","create","redirectsContext","RedirectsContext","pages","redirects","websiteBuilder","isHeadlessCmsReady","exports"],"sources":["WebsiteBuilder.ts"],"sourcesContent":["import { isHeadlessCmsReady } from \"@webiny/api-headless-cms\";\nimport type { WebsiteBuilderContext } from \"~/context/types\";\nimport type { WbPageCrud } from \"./pages/pages.types\";\nimport type { WbRedirectCrud } from \"./redirects/redirects.types\";\nimport { PagesContext } from \"./pages/pages.context\";\nimport { RedirectsContext } from \"~/context/redirects/redirects.context\";\n\nexport class WebsiteBuilder {\n private readonly context: WebsiteBuilderContext;\n private pagesContext: WbPageCrud | undefined;\n private redirectsContext: WbRedirectCrud | undefined;\n\n private constructor(context: WebsiteBuilderContext) {\n this.context = context;\n }\n\n private async init() {\n this.pagesContext = await PagesContext.create(this.context);\n this.redirectsContext = await RedirectsContext.create(this.context);\n }\n\n get pages() {\n return this.pagesContext!;\n }\n\n get redirects() {\n return this.redirectsContext!;\n }\n\n static async create(context: WebsiteBuilderContext): Promise<WebsiteBuilder> {\n const websiteBuilder = new WebsiteBuilder(context);\n\n if (!(await isHeadlessCmsReady(context))) {\n return websiteBuilder;\n }\n\n await websiteBuilder.init();\n return websiteBuilder;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AAEO,MAAMG,cAAc,CAAC;EAKhBC,WAAWA,CAACC,OAA8B,EAAE;IAChD,IAAI,CAACA,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAcC,IAAIA,CAAA,EAAG;IACjB,IAAI,CAACC,YAAY,GAAG,MAAMC,mBAAY,CAACC,MAAM,CAAC,IAAI,CAACJ,OAAO,CAAC;IAC3D,IAAI,CAACK,gBAAgB,GAAG,MAAMC,2BAAgB,CAACF,MAAM,CAAC,IAAI,CAACJ,OAAO,CAAC;EACvE;EAEA,IAAIO,KAAKA,CAAA,EAAG;IACR,OAAO,IAAI,CAACL,YAAY;EAC5B;EAEA,IAAIM,SAASA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACH,gBAAgB;EAChC;EAEA,aAAaD,MAAMA,CAACJ,OAA8B,EAA2B;IACzE,MAAMS,cAAc,GAAG,IAAIX,cAAc,CAACE,OAAO,CAAC;IAElD,IAAI,EAAE,MAAM,IAAAU,kCAAkB,EAACV,OAAO,CAAC,CAAC,EAAE;MACtC,OAAOS,cAAc;IACzB;IAEA,MAAMA,cAAc,CAACR,IAAI,CAAC,CAAC;IAC3B,OAAOQ,cAAc;EACzB;AACJ;AAACE,OAAA,CAAAb,cAAA,GAAAA,cAAA","ignoreList":[]}
1
+ {"version":3,"names":["_apiHeadlessCms","require","_pages","_redirects","_redirects2","WebsiteBuilder","constructor","context","init","pagesContext","PagesContext","create","redirectsContext","RedirectsContext","invalidateCacheOnRedirectEvents","redirects","onRedirectAfterCreate","subscribe","redirect","isEnabled","invalidateCache","onRedirectAfterUpdate","original","redirectFrom","redirectTo","onRedirectAfterDelete","invalidateRedirectsCache","InvalidateRedirectsCache","tasks","execute","pages","websiteBuilder","isHeadlessCmsReady","exports"],"sources":["WebsiteBuilder.ts"],"sourcesContent":["import { isHeadlessCmsReady } from \"@webiny/api-headless-cms\";\nimport type { WebsiteBuilderContext } from \"~/context/types\";\nimport type { WbPageCrud } from \"./pages/pages.types\";\nimport type { WbRedirectCrud } from \"./redirects/redirects.types\";\nimport { PagesContext } from \"./pages/pages.context\";\nimport { RedirectsContext } from \"~/context/redirects/redirects.context\";\nimport { InvalidateRedirectsCache } from \"~/features/redirects\";\n\nexport class WebsiteBuilder {\n private readonly context: WebsiteBuilderContext;\n private pagesContext: WbPageCrud | undefined;\n private redirectsContext: WbRedirectCrud | undefined;\n\n private constructor(context: WebsiteBuilderContext) {\n this.context = context;\n }\n\n private async init() {\n this.pagesContext = await PagesContext.create(this.context);\n this.redirectsContext = await RedirectsContext.create(this.context);\n this.invalidateCacheOnRedirectEvents();\n }\n\n private invalidateCacheOnRedirectEvents() {\n this.redirects.onRedirectAfterCreate.subscribe(async ({ redirect }) => {\n if (redirect.isEnabled) {\n await this.invalidateCache();\n }\n });\n\n this.redirects.onRedirectAfterUpdate.subscribe(async ({ redirect, original }) => {\n if (\n redirect.redirectFrom !== original.redirectFrom ||\n redirect.redirectTo !== original.redirectTo ||\n redirect.isEnabled !== original.isEnabled\n ) {\n await this.invalidateCache();\n }\n });\n\n this.redirects.onRedirectAfterDelete.subscribe(async ({ redirect }) => {\n if (redirect.isEnabled) {\n await this.invalidateCache();\n }\n });\n }\n\n private async invalidateCache() {\n const invalidateRedirectsCache = new InvalidateRedirectsCache(this.context.tasks);\n await invalidateRedirectsCache.execute();\n }\n\n get pages() {\n return this.pagesContext!;\n }\n\n get redirects() {\n return this.redirectsContext!;\n }\n\n static async create(context: WebsiteBuilderContext): Promise<WebsiteBuilder> {\n const websiteBuilder = new WebsiteBuilder(context);\n\n if (!(await isHeadlessCmsReady(context))) {\n return websiteBuilder;\n }\n\n await websiteBuilder.init();\n return websiteBuilder;\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAIA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,UAAA,GAAAF,OAAA;AACA,IAAAG,WAAA,GAAAH,OAAA;AAEO,MAAMI,cAAc,CAAC;EAKhBC,WAAWA,CAACC,OAA8B,EAAE;IAChD,IAAI,CAACA,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAcC,IAAIA,CAAA,EAAG;IACjB,IAAI,CAACC,YAAY,GAAG,MAAMC,mBAAY,CAACC,MAAM,CAAC,IAAI,CAACJ,OAAO,CAAC;IAC3D,IAAI,CAACK,gBAAgB,GAAG,MAAMC,2BAAgB,CAACF,MAAM,CAAC,IAAI,CAACJ,OAAO,CAAC;IACnE,IAAI,CAACO,+BAA+B,CAAC,CAAC;EAC1C;EAEQA,+BAA+BA,CAAA,EAAG;IACtC,IAAI,CAACC,SAAS,CAACC,qBAAqB,CAACC,SAAS,CAAC,OAAO;MAAEC;IAAS,CAAC,KAAK;MACnE,IAAIA,QAAQ,CAACC,SAAS,EAAE;QACpB,MAAM,IAAI,CAACC,eAAe,CAAC,CAAC;MAChC;IACJ,CAAC,CAAC;IAEF,IAAI,CAACL,SAAS,CAACM,qBAAqB,CAACJ,SAAS,CAAC,OAAO;MAAEC,QAAQ;MAAEI;IAAS,CAAC,KAAK;MAC7E,IACIJ,QAAQ,CAACK,YAAY,KAAKD,QAAQ,CAACC,YAAY,IAC/CL,QAAQ,CAACM,UAAU,KAAKF,QAAQ,CAACE,UAAU,IAC3CN,QAAQ,CAACC,SAAS,KAAKG,QAAQ,CAACH,SAAS,EAC3C;QACE,MAAM,IAAI,CAACC,eAAe,CAAC,CAAC;MAChC;IACJ,CAAC,CAAC;IAEF,IAAI,CAACL,SAAS,CAACU,qBAAqB,CAACR,SAAS,CAAC,OAAO;MAAEC;IAAS,CAAC,KAAK;MACnE,IAAIA,QAAQ,CAACC,SAAS,EAAE;QACpB,MAAM,IAAI,CAACC,eAAe,CAAC,CAAC;MAChC;IACJ,CAAC,CAAC;EACN;EAEA,MAAcA,eAAeA,CAAA,EAAG;IAC5B,MAAMM,wBAAwB,GAAG,IAAIC,oCAAwB,CAAC,IAAI,CAACpB,OAAO,CAACqB,KAAK,CAAC;IACjF,MAAMF,wBAAwB,CAACG,OAAO,CAAC,CAAC;EAC5C;EAEA,IAAIC,KAAKA,CAAA,EAAG;IACR,OAAO,IAAI,CAACrB,YAAY;EAC5B;EAEA,IAAIM,SAASA,CAAA,EAAG;IACZ,OAAO,IAAI,CAACH,gBAAgB;EAChC;EAEA,aAAaD,MAAMA,CAACJ,OAA8B,EAA2B;IACzE,MAAMwB,cAAc,GAAG,IAAI1B,cAAc,CAACE,OAAO,CAAC;IAElD,IAAI,EAAE,MAAM,IAAAyB,kCAAkB,EAACzB,OAAO,CAAC,CAAC,EAAE;MACtC,OAAOwB,cAAc;IACzB;IAEA,MAAMA,cAAc,CAACvB,IAAI,CAAC,CAAC;IAC3B,OAAOuB,cAAc;EACzB;AACJ;AAACE,OAAA,CAAA5B,cAAA,GAAAA,cAAA","ignoreList":[]}
@@ -1,15 +1,20 @@
1
1
  import type { CmsModel, HeadlessCms } from "@webiny/api-headless-cms/types";
2
2
  import type { WbPage, WbPagesStorageOperations, WbPagesStorageOperationsCreateParams, WbPagesStorageOperationsCreateRevisionFromParams, WbPagesStorageOperationsDeleteParams, WbPagesStorageOperationsGetParams, WbPagesStorageOperationsListParams, WbPagesStorageOperationsListResponse, WbPagesStorageOperationsMoveParams, WbPagesStorageOperationsPublishParams, WbPagesStorageOperationsUnpublishParams, WbPagesStorageOperationsUpdateParams } from "./pages.types";
3
3
  import type { PluginsContainer } from "@webiny/plugins";
4
+ type PagesStorageParams = {
5
+ model: CmsModel;
6
+ cms: HeadlessCms;
7
+ plugins: PluginsContainer;
8
+ getTenantId: () => string;
9
+ getLocaleCode: () => string;
10
+ };
4
11
  export declare class PagesStorage implements WbPagesStorageOperations {
5
12
  private readonly cms;
6
13
  private readonly model;
7
14
  private readonly plugins;
8
- static create(params: {
9
- model: CmsModel;
10
- cms: HeadlessCms;
11
- plugins: PluginsContainer;
12
- }): Promise<PagesStorage>;
15
+ private getTenantId;
16
+ private getLocaleCode;
17
+ static create(params: PagesStorageParams): Promise<PagesStorage>;
13
18
  private constructor();
14
19
  get: (params: WbPagesStorageOperationsGetParams) => Promise<WbPage | null>;
15
20
  getById: (id: string) => Promise<WbPage | null>;
@@ -22,5 +27,7 @@ export declare class PagesStorage implements WbPagesStorageOperations {
22
27
  move: ({ id, folderId }: WbPagesStorageOperationsMoveParams) => Promise<void>;
23
28
  createRevisionFrom: ({ id }: WbPagesStorageOperationsCreateRevisionFromParams) => Promise<WbPage>;
24
29
  delete: ({ id }: WbPagesStorageOperationsDeleteParams) => Promise<void>;
30
+ private getModel;
25
31
  private getWbPageFieldValues;
26
32
  }
33
+ export {};
@@ -9,33 +9,35 @@ var _omit = _interopRequireDefault(require("lodash/omit"));
9
9
  var _apiHeadlessCms = require("@webiny/api-headless-cms");
10
10
  class PagesStorage {
11
11
  static async create(params) {
12
- return new PagesStorage(params.model, params.cms, params.plugins);
12
+ return new PagesStorage(params);
13
13
  }
14
- constructor(model, cms, plugins) {
15
- this.plugins = plugins;
16
- this.model = model;
17
- this.cms = cms;
14
+ constructor(params) {
15
+ this.plugins = params.plugins;
16
+ this.model = params.model;
17
+ this.cms = params.cms;
18
+ this.getTenantId = params.getTenantId;
19
+ this.getLocaleCode = params.getLocaleCode;
18
20
  }
19
21
  get = async params => {
20
- const rawEntry = await this.cms.getEntry(this.model, params);
22
+ const rawEntry = await this.cms.getEntry(this.getModel(), params);
21
23
  const entry = await (0, _apiHeadlessCms.entryFromStorageTransform)({
22
24
  plugins: this.plugins
23
- }, this.model, rawEntry);
25
+ }, this.getModel(), rawEntry);
24
26
  return entry ? this.getWbPageFieldValues(entry) : null;
25
27
  };
26
28
  getById = async id => {
27
- const rawEntry = await this.cms.getEntryById(this.model, id);
29
+ const rawEntry = await this.cms.getEntryById(this.getModel(), id);
28
30
  const entry = await (0, _apiHeadlessCms.entryFromStorageTransform)({
29
31
  plugins: this.plugins
30
- }, this.model, rawEntry);
32
+ }, this.getModel(), rawEntry);
31
33
  return entry ? this.getWbPageFieldValues(entry) : null;
32
34
  };
33
35
  getRevisions = async pageId => {
34
- const revisions = await this.cms.getEntryRevisions(this.model, pageId);
36
+ const revisions = await this.cms.getEntryRevisions(this.getModel(), pageId);
35
37
  return revisions.map(entry => this.getWbPageFieldValues(entry));
36
38
  };
37
39
  list = async params => {
38
- const [entries, meta] = await this.cms.listEntries(this.model, {
40
+ const [entries, meta] = await this.cms.listEntries(this.getModel(), {
39
41
  after: params.after,
40
42
  limit: params.limit,
41
43
  sort: params.sort,
@@ -47,47 +49,54 @@ class PagesStorage {
47
49
  create = async ({
48
50
  data
49
51
  }) => {
50
- const entry = await this.cms.createEntry(this.model, data);
52
+ const entry = await this.cms.createEntry(this.getModel(), data);
51
53
  return this.getWbPageFieldValues(entry);
52
54
  };
53
55
  update = async ({
54
56
  id,
55
57
  data
56
58
  }) => {
57
- const entry = await this.cms.getEntryById(this.model, id);
59
+ const entry = await this.cms.getEntryById(this.getModel(), id);
58
60
  const values = (0, _omit.default)(data, ["id", "tenant", "locale", "webinyVersion"]);
59
- const updatedEntry = await this.cms.updateEntry(this.model, entry.id, values);
61
+ const updatedEntry = await this.cms.updateEntry(this.getModel(), entry.id, values);
60
62
  return this.getWbPageFieldValues(updatedEntry);
61
63
  };
62
64
  publish = async ({
63
65
  id
64
66
  }) => {
65
- const entry = await this.cms.publishEntry(this.model, id);
67
+ const entry = await this.cms.publishEntry(this.getModel(), id);
66
68
  return this.getWbPageFieldValues(entry);
67
69
  };
68
70
  unpublish = async ({
69
71
  id
70
72
  }) => {
71
- const entry = await this.cms.unpublishEntry(this.model, id);
73
+ const entry = await this.cms.unpublishEntry(this.getModel(), id);
72
74
  return this.getWbPageFieldValues(entry);
73
75
  };
74
76
  move = async ({
75
77
  id,
76
78
  folderId
77
79
  }) => {
78
- await this.cms.moveEntry(this.model, id, folderId);
80
+ await this.cms.moveEntry(this.getModel(), id, folderId);
79
81
  };
80
82
  createRevisionFrom = async ({
81
83
  id
82
84
  }) => {
83
- const entry = await this.cms.createEntryRevisionFrom(this.model, id, {});
85
+ const entry = await this.cms.createEntryRevisionFrom(this.getModel(), id, {});
84
86
  return this.getWbPageFieldValues(entry);
85
87
  };
86
88
  delete = async ({
87
89
  id
88
90
  }) => {
89
- await this.cms.deleteEntry(this.model, id);
91
+ await this.cms.deleteEntry(this.getModel(), id);
90
92
  };
93
+ getModel() {
94
+ return {
95
+ ...this.model,
96
+ tenant: this.getTenantId(),
97
+ locale: this.getLocaleCode()
98
+ };
99
+ }
91
100
  getWbPageFieldValues(entry) {
92
101
  return {
93
102
  id: entry.id,
@@ -1 +1 @@
1
- {"version":3,"names":["_omit","_interopRequireDefault","require","_apiHeadlessCms","PagesStorage","create","params","model","cms","plugins","constructor","get","rawEntry","getEntry","entry","entryFromStorageTransform","getWbPageFieldValues","getById","id","getEntryById","getRevisions","pageId","revisions","getEntryRevisions","map","list","entries","meta","listEntries","after","limit","sort","where","search","data","createEntry","update","values","omit","updatedEntry","updateEntry","publish","publishEntry","unpublish","unpublishEntry","move","folderId","moveEntry","createRevisionFrom","createEntryRevisionFrom","delete","deleteEntry","entryId","wbyAco_location","location","status","version","createdOn","createdBy","savedOn","savedBy","modifiedOn","modifiedBy","locked","tenant","locale","webinyVersion","exports"],"sources":["PagesStorage.ts"],"sourcesContent":["import omit from \"lodash/omit\";\nimport type { CmsEntry, CmsModel, HeadlessCms } from \"@webiny/api-headless-cms/types\";\nimport type {\n WbPage,\n WbPagesStorageOperations,\n WbPagesStorageOperationsCreateParams,\n WbPagesStorageOperationsCreateRevisionFromParams,\n WbPagesStorageOperationsDeleteParams,\n WbPagesStorageOperationsGetParams,\n WbPagesStorageOperationsListParams,\n WbPagesStorageOperationsListResponse,\n WbPagesStorageOperationsMoveParams,\n WbPagesStorageOperationsPublishParams,\n WbPagesStorageOperationsUnpublishParams,\n WbPagesStorageOperationsUpdateParams\n} from \"~/context/pages/pages.types\";\nimport { entryFromStorageTransform } from \"@webiny/api-headless-cms\";\nimport type { PluginsContainer } from \"@webiny/plugins\";\n\nexport class PagesStorage implements WbPagesStorageOperations {\n private readonly cms: HeadlessCms;\n private readonly model: CmsModel;\n private readonly plugins: PluginsContainer;\n\n static async create(params: { model: CmsModel; cms: HeadlessCms; plugins: PluginsContainer }) {\n return new PagesStorage(params.model, params.cms, params.plugins);\n }\n\n private constructor(model: CmsModel, cms: HeadlessCms, plugins: PluginsContainer) {\n this.plugins = plugins;\n this.model = model;\n this.cms = cms;\n }\n\n public get = async (params: WbPagesStorageOperationsGetParams): Promise<WbPage | null> => {\n const rawEntry = await this.cms.getEntry(this.model, params);\n\n const entry = await entryFromStorageTransform(\n { plugins: this.plugins },\n this.model,\n rawEntry\n );\n\n return entry ? this.getWbPageFieldValues(entry) : null;\n };\n\n public getById = async (id: string): Promise<WbPage | null> => {\n const rawEntry = await this.cms.getEntryById(this.model, id);\n\n const entry = await entryFromStorageTransform(\n { plugins: this.plugins },\n this.model,\n rawEntry\n );\n\n return entry ? this.getWbPageFieldValues(entry) : null;\n };\n\n public getRevisions = async (pageId: string): Promise<WbPage[]> => {\n const revisions = await this.cms.getEntryRevisions(this.model, pageId);\n return revisions.map(entry => this.getWbPageFieldValues(entry));\n };\n\n public list = async (\n params: WbPagesStorageOperationsListParams\n ): Promise<WbPagesStorageOperationsListResponse> => {\n const [entries, meta] = await this.cms.listEntries(this.model, {\n after: params.after,\n limit: params.limit,\n sort: params.sort,\n where: params.where,\n search: params.search\n });\n\n return [entries.map(entry => this.getWbPageFieldValues(entry)), meta];\n };\n\n public create = async ({ data }: WbPagesStorageOperationsCreateParams): Promise<WbPage> => {\n const entry = await this.cms.createEntry(this.model, data);\n return this.getWbPageFieldValues(entry);\n };\n\n public update = async ({ id, data }: WbPagesStorageOperationsUpdateParams): Promise<WbPage> => {\n const entry = await this.cms.getEntryById(this.model, id);\n\n const values = omit(data, [\"id\", \"tenant\", \"locale\", \"webinyVersion\"]);\n\n const updatedEntry = await this.cms.updateEntry(this.model, entry.id, values);\n\n return this.getWbPageFieldValues(updatedEntry);\n };\n\n public publish = async ({ id }: WbPagesStorageOperationsPublishParams): Promise<WbPage> => {\n const entry = await this.cms.publishEntry(this.model, id);\n return this.getWbPageFieldValues(entry);\n };\n\n public unpublish = async ({ id }: WbPagesStorageOperationsUnpublishParams): Promise<WbPage> => {\n const entry = await this.cms.unpublishEntry(this.model, id);\n return this.getWbPageFieldValues(entry);\n };\n\n public move = async ({ id, folderId }: WbPagesStorageOperationsMoveParams): Promise<void> => {\n await this.cms.moveEntry(this.model, id, folderId);\n };\n\n public createRevisionFrom = async ({\n id\n }: WbPagesStorageOperationsCreateRevisionFromParams): Promise<WbPage> => {\n const entry = await this.cms.createEntryRevisionFrom(this.model, id, {});\n return this.getWbPageFieldValues(entry);\n };\n\n public delete = async ({ id }: WbPagesStorageOperationsDeleteParams): Promise<void> => {\n await this.cms.deleteEntry(this.model, id);\n };\n\n private getWbPageFieldValues(entry: CmsEntry) {\n return {\n id: entry.id,\n entryId: entry.entryId,\n wbyAco_location: entry.location,\n status: entry.status,\n version: entry.version,\n createdOn: entry.createdOn,\n createdBy: entry.createdBy,\n savedOn: entry.savedOn,\n savedBy: entry.savedBy,\n modifiedOn: entry.modifiedOn,\n modifiedBy: entry.modifiedBy,\n locked: entry.locked,\n tenant: entry.tenant,\n locale: entry.locale,\n webinyVersion: entry.webinyVersion,\n ...entry.values\n } as WbPage;\n }\n}\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_omit","_interopRequireDefault","require","_apiHeadlessCms","PagesStorage","create","params","constructor","plugins","model","cms","getTenantId","getLocaleCode","get","rawEntry","getEntry","getModel","entry","entryFromStorageTransform","getWbPageFieldValues","getById","id","getEntryById","getRevisions","pageId","revisions","getEntryRevisions","map","list","entries","meta","listEntries","after","limit","sort","where","search","data","createEntry","update","values","omit","updatedEntry","updateEntry","publish","publishEntry","unpublish","unpublishEntry","move","folderId","moveEntry","createRevisionFrom","createEntryRevisionFrom","delete","deleteEntry","tenant","locale","entryId","wbyAco_location","location","status","version","createdOn","createdBy","savedOn","savedBy","modifiedOn","modifiedBy","locked","webinyVersion","exports"],"sources":["PagesStorage.ts"],"sourcesContent":["import omit from \"lodash/omit\";\nimport type { CmsEntry, CmsModel, HeadlessCms } from \"@webiny/api-headless-cms/types\";\nimport type {\n WbPage,\n WbPagesStorageOperations,\n WbPagesStorageOperationsCreateParams,\n WbPagesStorageOperationsCreateRevisionFromParams,\n WbPagesStorageOperationsDeleteParams,\n WbPagesStorageOperationsGetParams,\n WbPagesStorageOperationsListParams,\n WbPagesStorageOperationsListResponse,\n WbPagesStorageOperationsMoveParams,\n WbPagesStorageOperationsPublishParams,\n WbPagesStorageOperationsUnpublishParams,\n WbPagesStorageOperationsUpdateParams\n} from \"~/context/pages/pages.types\";\nimport { entryFromStorageTransform } from \"@webiny/api-headless-cms\";\nimport type { PluginsContainer } from \"@webiny/plugins\";\n\ntype PagesStorageParams = {\n model: CmsModel;\n cms: HeadlessCms;\n plugins: PluginsContainer;\n getTenantId: () => string;\n getLocaleCode: () => string;\n};\n\nexport class PagesStorage implements WbPagesStorageOperations {\n private readonly cms: HeadlessCms;\n private readonly model: CmsModel;\n private readonly plugins: PluginsContainer;\n private getTenantId: () => string;\n private getLocaleCode: () => string;\n\n static async create(params: PagesStorageParams) {\n return new PagesStorage(params);\n }\n\n private constructor(params: PagesStorageParams) {\n this.plugins = params.plugins;\n this.model = params.model;\n this.cms = params.cms;\n this.getTenantId = params.getTenantId;\n this.getLocaleCode = params.getLocaleCode;\n }\n\n public get = async (params: WbPagesStorageOperationsGetParams): Promise<WbPage | null> => {\n const rawEntry = await this.cms.getEntry(this.getModel(), params);\n\n const entry = await entryFromStorageTransform(\n { plugins: this.plugins },\n this.getModel(),\n rawEntry\n );\n\n return entry ? this.getWbPageFieldValues(entry) : null;\n };\n\n public getById = async (id: string): Promise<WbPage | null> => {\n const rawEntry = await this.cms.getEntryById(this.getModel(), id);\n\n const entry = await entryFromStorageTransform(\n { plugins: this.plugins },\n this.getModel(),\n rawEntry\n );\n\n return entry ? this.getWbPageFieldValues(entry) : null;\n };\n\n public getRevisions = async (pageId: string): Promise<WbPage[]> => {\n const revisions = await this.cms.getEntryRevisions(this.getModel(), pageId);\n return revisions.map(entry => this.getWbPageFieldValues(entry));\n };\n\n public list = async (\n params: WbPagesStorageOperationsListParams\n ): Promise<WbPagesStorageOperationsListResponse> => {\n const [entries, meta] = await this.cms.listEntries(this.getModel(), {\n after: params.after,\n limit: params.limit,\n sort: params.sort,\n where: params.where,\n search: params.search\n });\n\n return [entries.map(entry => this.getWbPageFieldValues(entry)), meta];\n };\n\n public create = async ({ data }: WbPagesStorageOperationsCreateParams): Promise<WbPage> => {\n const entry = await this.cms.createEntry(this.getModel(), data);\n return this.getWbPageFieldValues(entry);\n };\n\n public update = async ({ id, data }: WbPagesStorageOperationsUpdateParams): Promise<WbPage> => {\n const entry = await this.cms.getEntryById(this.getModel(), id);\n\n const values = omit(data, [\"id\", \"tenant\", \"locale\", \"webinyVersion\"]);\n\n const updatedEntry = await this.cms.updateEntry(this.getModel(), entry.id, values);\n\n return this.getWbPageFieldValues(updatedEntry);\n };\n\n public publish = async ({ id }: WbPagesStorageOperationsPublishParams): Promise<WbPage> => {\n const entry = await this.cms.publishEntry(this.getModel(), id);\n return this.getWbPageFieldValues(entry);\n };\n\n public unpublish = async ({ id }: WbPagesStorageOperationsUnpublishParams): Promise<WbPage> => {\n const entry = await this.cms.unpublishEntry(this.getModel(), id);\n return this.getWbPageFieldValues(entry);\n };\n\n public move = async ({ id, folderId }: WbPagesStorageOperationsMoveParams): Promise<void> => {\n await this.cms.moveEntry(this.getModel(), id, folderId);\n };\n\n public createRevisionFrom = async ({\n id\n }: WbPagesStorageOperationsCreateRevisionFromParams): Promise<WbPage> => {\n const entry = await this.cms.createEntryRevisionFrom(this.getModel(), id, {});\n return this.getWbPageFieldValues(entry);\n };\n\n public delete = async ({ id }: WbPagesStorageOperationsDeleteParams): Promise<void> => {\n await this.cms.deleteEntry(this.getModel(), id);\n };\n\n private getModel() {\n return { ...this.model, tenant: this.getTenantId(), locale: this.getLocaleCode() };\n }\n\n private getWbPageFieldValues(entry: CmsEntry) {\n return {\n id: entry.id,\n entryId: entry.entryId,\n wbyAco_location: entry.location,\n status: entry.status,\n version: entry.version,\n createdOn: entry.createdOn,\n createdBy: entry.createdBy,\n savedOn: entry.savedOn,\n savedBy: entry.savedBy,\n modifiedOn: entry.modifiedOn,\n modifiedBy: entry.modifiedBy,\n locked: entry.locked,\n tenant: entry.tenant,\n locale: entry.locale,\n webinyVersion: entry.webinyVersion,\n ...entry.values\n } as WbPage;\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -38,7 +38,9 @@ class PagesContext extends _BaseContext.BaseContext {
38
38
  return await _PagesStorage.PagesStorage.create({
39
39
  model,
40
40
  cms: this.context.cms,
41
- plugins: this.context.plugins
41
+ plugins: this.context.plugins,
42
+ getTenantId: this.getTenantId.bind(this),
43
+ getLocaleCode: this.getLocaleCode.bind(this)
42
44
  });
43
45
  });
44
46
  }
@@ -1 +1 @@
1
- {"version":3,"names":["_BaseContext","require","_apiHeadlessCms","_PagesStorage","_pages","PAGE_MODEL_ID","exports","PagesContext","BaseContext","constructor","context","init","storageOperations","setupStorageOperations","createPagesCrud","getTenantId","bind","getLocaleCode","getIdentity","getPermissions","security","withoutAuthorization","modelDefinition","createModelDefinition","plugins","register","CmsModelPlugin","model","getModel","PagesStorage","create","cms","pagesContext","createPrivateModel","name","modelId","titleFieldId","authorization","permissions","fields","createModelField","label","type","fieldId"],"sources":["pages.context.ts"],"sourcesContent":["import type { WebsiteBuilderContext } from \"~/context/types\";\nimport type { WbPageCrud } from \"~/context/pages/pages.types\";\nimport { BaseContext } from \"~/context/BaseContext\";\nimport { CmsModelPlugin, createModelField, createPrivateModel } from \"@webiny/api-headless-cms\";\nimport { PagesStorage } from \"~/context/pages/PagesStorage\";\nimport { createPagesCrud } from \"~/context/pages/pages.crud\";\n\nexport const PAGE_MODEL_ID = \"wbPage\";\n\nexport class PagesContext extends BaseContext {\n private constructor(context: WebsiteBuilderContext) {\n super(context);\n }\n\n private async init() {\n const storageOperations = await this.setupStorageOperations();\n\n return createPagesCrud({\n storageOperations,\n getTenantId: this.getTenantId.bind(this),\n getLocaleCode: this.getLocaleCode.bind(this),\n getIdentity: this.getIdentity.bind(this),\n getPermissions: this.getPermissions.bind(this)\n });\n }\n\n private async setupStorageOperations() {\n return this.context.security.withoutAuthorization(async () => {\n // This registers code plugins (model group, models)\n const modelDefinition = this.createModelDefinition();\n\n // Finally, register all plugins\n this.context.plugins.register([new CmsModelPlugin(modelDefinition)]);\n\n // Now load the page model registered in the previous step\n const model = await this.getModel(PAGE_MODEL_ID);\n\n // Overwrite the original `pages` storage ops\n return await PagesStorage.create({\n model,\n cms: this.context.cms,\n plugins: this.context.plugins\n });\n });\n }\n\n static async create(context: WebsiteBuilderContext): Promise<WbPageCrud> {\n const pagesContext = new PagesContext(context);\n return pagesContext.init();\n }\n\n private createModelDefinition() {\n return createPrivateModel({\n name: \"Website Builder - Page\",\n modelId: PAGE_MODEL_ID,\n titleFieldId: \"properties.title\",\n authorization: {\n // Disables base permission checks, but leaves FLP checks enabled.\n permissions: false\n },\n fields: [\n createModelField({\n label: \"Properties\",\n type: \"searchable-json\"\n }),\n createModelField({\n label: \"Metadata\",\n type: \"searchable-json\"\n }),\n createModelField({\n label: \"Bindings\",\n type: \"json\"\n }),\n createModelField({\n label: \"Elements\",\n type: \"json\"\n }),\n createModelField({\n label: \"Extensions\",\n fieldId: \"extensions\",\n type: \"searchable-json\"\n })\n ]\n });\n }\n}\n"],"mappings":";;;;;;AAEA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AACA,IAAAE,aAAA,GAAAF,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AAEO,MAAMI,aAAa,GAAAC,OAAA,CAAAD,aAAA,GAAG,QAAQ;AAE9B,MAAME,YAAY,SAASC,wBAAW,CAAC;EAClCC,WAAWA,CAACC,OAA8B,EAAE;IAChD,KAAK,CAACA,OAAO,CAAC;EAClB;EAEA,MAAcC,IAAIA,CAAA,EAAG;IACjB,MAAMC,iBAAiB,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAAC,CAAC;IAE7D,OAAO,IAAAC,sBAAe,EAAC;MACnBF,iBAAiB;MACjBG,WAAW,EAAE,IAAI,CAACA,WAAW,CAACC,IAAI,CAAC,IAAI,CAAC;MACxCC,aAAa,EAAE,IAAI,CAACA,aAAa,CAACD,IAAI,CAAC,IAAI,CAAC;MAC5CE,WAAW,EAAE,IAAI,CAACA,WAAW,CAACF,IAAI,CAAC,IAAI,CAAC;MACxCG,cAAc,EAAE,IAAI,CAACA,cAAc,CAACH,IAAI,CAAC,IAAI;IACjD,CAAC,CAAC;EACN;EAEA,MAAcH,sBAAsBA,CAAA,EAAG;IACnC,OAAO,IAAI,CAACH,OAAO,CAACU,QAAQ,CAACC,oBAAoB,CAAC,YAAY;MAC1D;MACA,MAAMC,eAAe,GAAG,IAAI,CAACC,qBAAqB,CAAC,CAAC;;MAEpD;MACA,IAAI,CAACb,OAAO,CAACc,OAAO,CAACC,QAAQ,CAAC,CAAC,IAAIC,8BAAc,CAACJ,eAAe,CAAC,CAAC,CAAC;;MAEpE;MACA,MAAMK,KAAK,GAAG,MAAM,IAAI,CAACC,QAAQ,CAACvB,aAAa,CAAC;;MAEhD;MACA,OAAO,MAAMwB,0BAAY,CAACC,MAAM,CAAC;QAC7BH,KAAK;QACLI,GAAG,EAAE,IAAI,CAACrB,OAAO,CAACqB,GAAG;QACrBP,OAAO,EAAE,IAAI,CAACd,OAAO,CAACc;MAC1B,CAAC,CAAC;IACN,CAAC,CAAC;EACN;EAEA,aAAaM,MAAMA,CAACpB,OAA8B,EAAuB;IACrE,MAAMsB,YAAY,GAAG,IAAIzB,YAAY,CAACG,OAAO,CAAC;IAC9C,OAAOsB,YAAY,CAACrB,IAAI,CAAC,CAAC;EAC9B;EAEQY,qBAAqBA,CAAA,EAAG;IAC5B,OAAO,IAAAU,kCAAkB,EAAC;MACtBC,IAAI,EAAE,wBAAwB;MAC9BC,OAAO,EAAE9B,aAAa;MACtB+B,YAAY,EAAE,kBAAkB;MAChCC,aAAa,EAAE;QACX;QACAC,WAAW,EAAE;MACjB,CAAC;MACDC,MAAM,EAAE,CACJ,IAAAC,gCAAgB,EAAC;QACbC,KAAK,EAAE,YAAY;QACnBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAF,gCAAgB,EAAC;QACbC,KAAK,EAAE,UAAU;QACjBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAF,gCAAgB,EAAC;QACbC,KAAK,EAAE,UAAU;QACjBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAF,gCAAgB,EAAC;QACbC,KAAK,EAAE,UAAU;QACjBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAF,gCAAgB,EAAC;QACbC,KAAK,EAAE,YAAY;QACnBE,OAAO,EAAE,YAAY;QACrBD,IAAI,EAAE;MACV,CAAC,CAAC;IAEV,CAAC,CAAC;EACN;AACJ;AAACpC,OAAA,CAAAC,YAAA,GAAAA,YAAA","ignoreList":[]}
1
+ {"version":3,"names":["_BaseContext","require","_apiHeadlessCms","_PagesStorage","_pages","PAGE_MODEL_ID","exports","PagesContext","BaseContext","constructor","context","init","storageOperations","setupStorageOperations","createPagesCrud","getTenantId","bind","getLocaleCode","getIdentity","getPermissions","security","withoutAuthorization","modelDefinition","createModelDefinition","plugins","register","CmsModelPlugin","model","getModel","PagesStorage","create","cms","pagesContext","createPrivateModel","name","modelId","titleFieldId","authorization","permissions","fields","createModelField","label","type","fieldId"],"sources":["pages.context.ts"],"sourcesContent":["import type { WebsiteBuilderContext } from \"~/context/types\";\nimport type { WbPageCrud } from \"~/context/pages/pages.types\";\nimport { BaseContext } from \"~/context/BaseContext\";\nimport { CmsModelPlugin, createModelField, createPrivateModel } from \"@webiny/api-headless-cms\";\nimport { PagesStorage } from \"~/context/pages/PagesStorage\";\nimport { createPagesCrud } from \"~/context/pages/pages.crud\";\n\nexport const PAGE_MODEL_ID = \"wbPage\";\n\nexport class PagesContext extends BaseContext {\n private constructor(context: WebsiteBuilderContext) {\n super(context);\n }\n\n private async init() {\n const storageOperations = await this.setupStorageOperations();\n\n return createPagesCrud({\n storageOperations,\n getTenantId: this.getTenantId.bind(this),\n getLocaleCode: this.getLocaleCode.bind(this),\n getIdentity: this.getIdentity.bind(this),\n getPermissions: this.getPermissions.bind(this)\n });\n }\n\n private async setupStorageOperations() {\n return this.context.security.withoutAuthorization(async () => {\n // This registers code plugins (model group, models)\n const modelDefinition = this.createModelDefinition();\n\n // Finally, register all plugins\n this.context.plugins.register([new CmsModelPlugin(modelDefinition)]);\n\n // Now load the page model registered in the previous step\n const model = await this.getModel(PAGE_MODEL_ID);\n\n // Overwrite the original `pages` storage ops\n return await PagesStorage.create({\n model,\n cms: this.context.cms,\n plugins: this.context.plugins,\n getTenantId: this.getTenantId.bind(this),\n getLocaleCode: this.getLocaleCode.bind(this)\n });\n });\n }\n\n static async create(context: WebsiteBuilderContext): Promise<WbPageCrud> {\n const pagesContext = new PagesContext(context);\n return pagesContext.init();\n }\n\n private createModelDefinition() {\n return createPrivateModel({\n name: \"Website Builder - Page\",\n modelId: PAGE_MODEL_ID,\n titleFieldId: \"properties.title\",\n authorization: {\n // Disables base permission checks, but leaves FLP checks enabled.\n permissions: false\n },\n fields: [\n createModelField({\n label: \"Properties\",\n type: \"searchable-json\"\n }),\n createModelField({\n label: \"Metadata\",\n type: \"searchable-json\"\n }),\n createModelField({\n label: \"Bindings\",\n type: \"json\"\n }),\n createModelField({\n label: \"Elements\",\n type: \"json\"\n }),\n createModelField({\n label: \"Extensions\",\n fieldId: \"extensions\",\n type: \"searchable-json\"\n })\n ]\n });\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -174,7 +174,7 @@ const createPagesCrud = config => {
174
174
  getByPath: async path => {
175
175
  return getPageByPathUseCase.execute(path);
176
176
  },
177
- getPageRevisions: async entryId => {
177
+ getRevisions: async entryId => {
178
178
  return getPageRevisionsUseCase.execute(entryId);
179
179
  },
180
180
  create: async data => {
@@ -1 +1 @@
1
- {"version":3,"names":["_pubsub","require","_pages","_MovePage","_GetPageById","_GetPageRevisions","createPagesCrud","config","onPageBeforeCreate","createTopic","onPageAfterCreate","createPageUseCase","getCreatePageUseCase","createOperation","storageOperations","create","topics","onPageBeforeUpdate","onPageAfterUpdate","updatePageUseCase","getUpdatePagerUseCase","updateOperation","update","getOperation","getById","onPageBeforePublish","onPageAfterPublish","publishPageUseCase","getPublishPageUseCase","publishOperation","publish","onPageBeforeUnpublish","onPageAfterUnpublish","unpublishPageUseCase","getUnpublishPageUseCase","unpublishOperation","unpublish","onPageBeforeDuplicate","onPageAfterDuplicate","duplicatePageUseCase","getDuplicatePageUseCase","onPageBeforeMove","onPageAfterMove","movePageUseCase","getMovePageUseCase","moveOperation","move","onPageBeforeCreateRevisionFrom","onPageAfterCreateRevisionFrom","createPageRevisionFromUseCase","getCreatePageRevisionFromUseCase","createRevisionFromOperation","createRevisionFrom","onPageBeforeDelete","onPageAfterDelete","deletePageUseCase","getDeletePageUseCase","deleteOperation","delete","getPageByPathUseCase","getGetPageByPathUseCase","get","getPageByIdUseCase","getGetPageByIdUseCase","getPageRevisionsUseCase","getGetPageRevisionsUseCase","getRevisions","listPagesUseCase","getListPagesUseCase","listOperation","list","params","execute","id","getByPath","path","getPageRevisions","entryId","data","duplicate","exports"],"sources":["pages.crud.ts"],"sourcesContent":["import { createTopic } from \"@webiny/pubsub\";\nimport {\n getCreatePageRevisionFromUseCase,\n getCreatePageUseCase,\n getDeletePageUseCase,\n getDuplicatePageUseCase,\n getGetPageByPathUseCase,\n getListPagesUseCase,\n getPublishPageUseCase,\n getUnpublishPageUseCase,\n getUpdatePagerUseCase\n} from \"~/features/pages\";\nimport type {\n OnPageAfterCreateRevisionFromTopicParams,\n OnPageAfterCreateTopicParams,\n OnPageAfterDeleteTopicParams,\n OnPageAfterDuplicateTopicParams,\n OnPageAfterMoveTopicParams,\n OnPageAfterPublishTopicParams,\n OnPageAfterUnpublishTopicParams,\n OnPageAfterUpdateTopicParams,\n OnPageBeforeCreateRevisionFromTopicParams,\n OnPageBeforeCreateTopicParams,\n OnPageBeforeDeleteTopicParams,\n OnPageBeforeDuplicateTopicParams,\n OnPageBeforeMoveTopicParams,\n OnPageBeforePublishTopicParams,\n OnPageBeforeUnpublishTopicParams,\n OnPageBeforeUpdateTopicParams,\n UpdateWbPageData,\n WbPageCrud,\n WbPagesStorageOperations\n} from \"~/context/pages/pages.types\";\nimport type { WebsiteBuilderConfig } from \"~/context/types\";\nimport { getMovePageUseCase } from \"~/features/pages/MovePage\";\nimport { getGetPageByIdUseCase } from \"~/features/pages/GetPageById\";\nimport { getGetPageRevisionsUseCase } from \"~/features/pages/GetPageRevisions\";\n\nexport const createPagesCrud = (\n config: WebsiteBuilderConfig<WbPagesStorageOperations>\n): WbPageCrud => {\n // create\n const onPageBeforeCreate = createTopic<OnPageBeforeCreateTopicParams>(\"wb.onPageBeforeCreate\");\n const onPageAfterCreate = createTopic<OnPageAfterCreateTopicParams>(\"wb.onPageAfterCreate\");\n\n const { createPageUseCase } = getCreatePageUseCase({\n createOperation: config.storageOperations.create,\n topics: {\n onPageBeforeCreate,\n onPageAfterCreate\n }\n });\n\n // update\n const onPageBeforeUpdate = createTopic<OnPageBeforeUpdateTopicParams>(\"wb.onPageBeforeUpdate\");\n const onPageAfterUpdate = createTopic<OnPageAfterUpdateTopicParams>(\"wb.onPageAfterUpdate\");\n\n const { updatePageUseCase } = getUpdatePagerUseCase({\n updateOperation: config.storageOperations.update,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeUpdate,\n onPageAfterUpdate\n }\n });\n\n // publish\n const onPageBeforePublish =\n createTopic<OnPageBeforePublishTopicParams>(\"wb.onPageBeforePublish\");\n const onPageAfterPublish = createTopic<OnPageAfterPublishTopicParams>(\"wb.onPageAfterPublish\");\n\n const { publishPageUseCase } = getPublishPageUseCase({\n publishOperation: config.storageOperations.publish,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforePublish,\n onPageAfterPublish\n }\n });\n\n // unpublish\n const onPageBeforeUnpublish = createTopic<OnPageBeforeUnpublishTopicParams>(\n \"wb.onPageBeforeUnpublish\"\n );\n const onPageAfterUnpublish =\n createTopic<OnPageAfterUnpublishTopicParams>(\"wb.onPageAfterUnpublish\");\n\n const { unpublishPageUseCase } = getUnpublishPageUseCase({\n unpublishOperation: config.storageOperations.unpublish,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeUnpublish,\n onPageAfterUnpublish\n }\n });\n\n // duplicate\n const onPageBeforeDuplicate = createTopic<OnPageBeforeDuplicateTopicParams>(\n \"wb.onPageBeforeDuplicate\"\n );\n const onPageAfterDuplicate =\n createTopic<OnPageAfterDuplicateTopicParams>(\"wb.onPageAfterDuplicate\");\n\n const { duplicatePageUseCase } = getDuplicatePageUseCase({\n createOperation: config.storageOperations.create,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeDuplicate,\n onPageAfterDuplicate\n }\n });\n\n // move\n const onPageBeforeMove = createTopic<OnPageBeforeMoveTopicParams>(\"wb.onPageBeforeMove\");\n const onPageAfterMove = createTopic<OnPageAfterMoveTopicParams>(\"wb.onPageAfterMove\");\n\n const { movePageUseCase } = getMovePageUseCase({\n moveOperation: config.storageOperations.move,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeMove,\n onPageAfterMove\n }\n });\n\n // create page revision from\n const onPageBeforeCreateRevisionFrom = createTopic<OnPageBeforeCreateRevisionFromTopicParams>(\n \"wb.onPageBeforeCreateRevisionFrom\"\n );\n const onPageAfterCreateRevisionFrom = createTopic<OnPageAfterCreateRevisionFromTopicParams>(\n \"wb.onPageAfterCreateRevisionFrom\"\n );\n\n const { createPageRevisionFromUseCase } = getCreatePageRevisionFromUseCase({\n createRevisionFromOperation: config.storageOperations.createRevisionFrom,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeCreateRevisionFrom,\n onPageAfterCreateRevisionFrom\n }\n });\n\n // delete\n const onPageBeforeDelete = createTopic<OnPageBeforeDeleteTopicParams>(\"wb.onPageBeforeDelete\");\n const onPageAfterDelete = createTopic<OnPageAfterDeleteTopicParams>(\"wb.onPageAfterDelete\");\n\n const { deletePageUseCase } = getDeletePageUseCase({\n deleteOperation: config.storageOperations.delete,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeDelete,\n onPageAfterDelete\n }\n });\n\n // get by path\n const { getPageByPathUseCase } = getGetPageByPathUseCase({\n getOperation: config.storageOperations.get\n });\n\n // get by id\n const { getPageByIdUseCase } = getGetPageByIdUseCase({\n getOperation: config.storageOperations.getById\n });\n\n // get page revisions\n const { getPageRevisionsUseCase } = getGetPageRevisionsUseCase({\n getRevisions: config.storageOperations.getRevisions\n });\n\n // list\n const { listPagesUseCase } = getListPagesUseCase({\n listOperation: config.storageOperations.list\n });\n\n return {\n onPageBeforeCreate,\n onPageAfterCreate,\n onPageBeforeUpdate,\n onPageAfterUpdate,\n onPageBeforePublish,\n onPageAfterPublish,\n onPageBeforeUnpublish,\n onPageAfterUnpublish,\n onPageBeforeDuplicate,\n onPageAfterDuplicate,\n onPageBeforeMove,\n onPageAfterMove,\n onPageBeforeCreateRevisionFrom,\n onPageAfterCreateRevisionFrom,\n onPageBeforeDelete,\n onPageAfterDelete,\n\n list: async params => {\n return listPagesUseCase.execute(params);\n },\n getById: async id => {\n return getPageByIdUseCase.execute(id);\n },\n getByPath: async path => {\n return getPageByPathUseCase.execute(path);\n },\n getPageRevisions: async (entryId: string) => {\n return getPageRevisionsUseCase.execute(entryId);\n },\n create: async data => {\n return createPageUseCase.execute(data);\n },\n update: async (id: string, data: UpdateWbPageData) => {\n return updatePageUseCase.execute(id, data);\n },\n publish: async params => {\n return publishPageUseCase.execute(params);\n },\n unpublish: async params => {\n return unpublishPageUseCase.execute(params);\n },\n duplicate: async params => {\n return duplicatePageUseCase.execute(params);\n },\n move: async params => {\n return movePageUseCase.execute(params);\n },\n createRevisionFrom(params) {\n return createPageRevisionFromUseCase.execute(params);\n },\n delete: async params => {\n return deletePageUseCase.execute(params);\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_pubsub","require","_pages","_MovePage","_GetPageById","_GetPageRevisions","createPagesCrud","config","onPageBeforeCreate","createTopic","onPageAfterCreate","createPageUseCase","getCreatePageUseCase","createOperation","storageOperations","create","topics","onPageBeforeUpdate","onPageAfterUpdate","updatePageUseCase","getUpdatePagerUseCase","updateOperation","update","getOperation","getById","onPageBeforePublish","onPageAfterPublish","publishPageUseCase","getPublishPageUseCase","publishOperation","publish","onPageBeforeUnpublish","onPageAfterUnpublish","unpublishPageUseCase","getUnpublishPageUseCase","unpublishOperation","unpublish","onPageBeforeDuplicate","onPageAfterDuplicate","duplicatePageUseCase","getDuplicatePageUseCase","onPageBeforeMove","onPageAfterMove","movePageUseCase","getMovePageUseCase","moveOperation","move","onPageBeforeCreateRevisionFrom","onPageAfterCreateRevisionFrom","createPageRevisionFromUseCase","getCreatePageRevisionFromUseCase","createRevisionFromOperation","createRevisionFrom","onPageBeforeDelete","onPageAfterDelete","deletePageUseCase","getDeletePageUseCase","deleteOperation","delete","getPageByPathUseCase","getGetPageByPathUseCase","get","getPageByIdUseCase","getGetPageByIdUseCase","getPageRevisionsUseCase","getGetPageRevisionsUseCase","getRevisions","listPagesUseCase","getListPagesUseCase","listOperation","list","params","execute","id","getByPath","path","entryId","data","duplicate","exports"],"sources":["pages.crud.ts"],"sourcesContent":["import { createTopic } from \"@webiny/pubsub\";\nimport {\n getCreatePageRevisionFromUseCase,\n getCreatePageUseCase,\n getDeletePageUseCase,\n getDuplicatePageUseCase,\n getGetPageByPathUseCase,\n getListPagesUseCase,\n getPublishPageUseCase,\n getUnpublishPageUseCase,\n getUpdatePagerUseCase\n} from \"~/features/pages\";\nimport type {\n OnPageAfterCreateRevisionFromTopicParams,\n OnPageAfterCreateTopicParams,\n OnPageAfterDeleteTopicParams,\n OnPageAfterDuplicateTopicParams,\n OnPageAfterMoveTopicParams,\n OnPageAfterPublishTopicParams,\n OnPageAfterUnpublishTopicParams,\n OnPageAfterUpdateTopicParams,\n OnPageBeforeCreateRevisionFromTopicParams,\n OnPageBeforeCreateTopicParams,\n OnPageBeforeDeleteTopicParams,\n OnPageBeforeDuplicateTopicParams,\n OnPageBeforeMoveTopicParams,\n OnPageBeforePublishTopicParams,\n OnPageBeforeUnpublishTopicParams,\n OnPageBeforeUpdateTopicParams,\n UpdateWbPageData,\n WbPageCrud,\n WbPagesStorageOperations\n} from \"~/context/pages/pages.types\";\nimport type { WebsiteBuilderConfig } from \"~/context/types\";\nimport { getMovePageUseCase } from \"~/features/pages/MovePage\";\nimport { getGetPageByIdUseCase } from \"~/features/pages/GetPageById\";\nimport { getGetPageRevisionsUseCase } from \"~/features/pages/GetPageRevisions\";\n\nexport const createPagesCrud = (\n config: WebsiteBuilderConfig<WbPagesStorageOperations>\n): WbPageCrud => {\n // create\n const onPageBeforeCreate = createTopic<OnPageBeforeCreateTopicParams>(\"wb.onPageBeforeCreate\");\n const onPageAfterCreate = createTopic<OnPageAfterCreateTopicParams>(\"wb.onPageAfterCreate\");\n\n const { createPageUseCase } = getCreatePageUseCase({\n createOperation: config.storageOperations.create,\n topics: {\n onPageBeforeCreate,\n onPageAfterCreate\n }\n });\n\n // update\n const onPageBeforeUpdate = createTopic<OnPageBeforeUpdateTopicParams>(\"wb.onPageBeforeUpdate\");\n const onPageAfterUpdate = createTopic<OnPageAfterUpdateTopicParams>(\"wb.onPageAfterUpdate\");\n\n const { updatePageUseCase } = getUpdatePagerUseCase({\n updateOperation: config.storageOperations.update,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeUpdate,\n onPageAfterUpdate\n }\n });\n\n // publish\n const onPageBeforePublish =\n createTopic<OnPageBeforePublishTopicParams>(\"wb.onPageBeforePublish\");\n const onPageAfterPublish = createTopic<OnPageAfterPublishTopicParams>(\"wb.onPageAfterPublish\");\n\n const { publishPageUseCase } = getPublishPageUseCase({\n publishOperation: config.storageOperations.publish,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforePublish,\n onPageAfterPublish\n }\n });\n\n // unpublish\n const onPageBeforeUnpublish = createTopic<OnPageBeforeUnpublishTopicParams>(\n \"wb.onPageBeforeUnpublish\"\n );\n const onPageAfterUnpublish =\n createTopic<OnPageAfterUnpublishTopicParams>(\"wb.onPageAfterUnpublish\");\n\n const { unpublishPageUseCase } = getUnpublishPageUseCase({\n unpublishOperation: config.storageOperations.unpublish,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeUnpublish,\n onPageAfterUnpublish\n }\n });\n\n // duplicate\n const onPageBeforeDuplicate = createTopic<OnPageBeforeDuplicateTopicParams>(\n \"wb.onPageBeforeDuplicate\"\n );\n const onPageAfterDuplicate =\n createTopic<OnPageAfterDuplicateTopicParams>(\"wb.onPageAfterDuplicate\");\n\n const { duplicatePageUseCase } = getDuplicatePageUseCase({\n createOperation: config.storageOperations.create,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeDuplicate,\n onPageAfterDuplicate\n }\n });\n\n // move\n const onPageBeforeMove = createTopic<OnPageBeforeMoveTopicParams>(\"wb.onPageBeforeMove\");\n const onPageAfterMove = createTopic<OnPageAfterMoveTopicParams>(\"wb.onPageAfterMove\");\n\n const { movePageUseCase } = getMovePageUseCase({\n moveOperation: config.storageOperations.move,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeMove,\n onPageAfterMove\n }\n });\n\n // create page revision from\n const onPageBeforeCreateRevisionFrom = createTopic<OnPageBeforeCreateRevisionFromTopicParams>(\n \"wb.onPageBeforeCreateRevisionFrom\"\n );\n const onPageAfterCreateRevisionFrom = createTopic<OnPageAfterCreateRevisionFromTopicParams>(\n \"wb.onPageAfterCreateRevisionFrom\"\n );\n\n const { createPageRevisionFromUseCase } = getCreatePageRevisionFromUseCase({\n createRevisionFromOperation: config.storageOperations.createRevisionFrom,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeCreateRevisionFrom,\n onPageAfterCreateRevisionFrom\n }\n });\n\n // delete\n const onPageBeforeDelete = createTopic<OnPageBeforeDeleteTopicParams>(\"wb.onPageBeforeDelete\");\n const onPageAfterDelete = createTopic<OnPageAfterDeleteTopicParams>(\"wb.onPageAfterDelete\");\n\n const { deletePageUseCase } = getDeletePageUseCase({\n deleteOperation: config.storageOperations.delete,\n getOperation: config.storageOperations.getById,\n topics: {\n onPageBeforeDelete,\n onPageAfterDelete\n }\n });\n\n // get by path\n const { getPageByPathUseCase } = getGetPageByPathUseCase({\n getOperation: config.storageOperations.get\n });\n\n // get by id\n const { getPageByIdUseCase } = getGetPageByIdUseCase({\n getOperation: config.storageOperations.getById\n });\n\n // get page revisions\n const { getPageRevisionsUseCase } = getGetPageRevisionsUseCase({\n getRevisions: config.storageOperations.getRevisions\n });\n\n // list\n const { listPagesUseCase } = getListPagesUseCase({\n listOperation: config.storageOperations.list\n });\n\n return {\n onPageBeforeCreate,\n onPageAfterCreate,\n onPageBeforeUpdate,\n onPageAfterUpdate,\n onPageBeforePublish,\n onPageAfterPublish,\n onPageBeforeUnpublish,\n onPageAfterUnpublish,\n onPageBeforeDuplicate,\n onPageAfterDuplicate,\n onPageBeforeMove,\n onPageAfterMove,\n onPageBeforeCreateRevisionFrom,\n onPageAfterCreateRevisionFrom,\n onPageBeforeDelete,\n onPageAfterDelete,\n\n list: async params => {\n return listPagesUseCase.execute(params);\n },\n getById: async id => {\n return getPageByIdUseCase.execute(id);\n },\n getByPath: async path => {\n return getPageByPathUseCase.execute(path);\n },\n getRevisions: async (entryId: string) => {\n return getPageRevisionsUseCase.execute(entryId);\n },\n create: async data => {\n return createPageUseCase.execute(data);\n },\n update: async (id: string, data: UpdateWbPageData) => {\n return updatePageUseCase.execute(id, data);\n },\n publish: async params => {\n return publishPageUseCase.execute(params);\n },\n unpublish: async params => {\n return unpublishPageUseCase.execute(params);\n },\n duplicate: async params => {\n return duplicatePageUseCase.execute(params);\n },\n move: async params => {\n return movePageUseCase.execute(params);\n },\n createRevisionFrom(params) {\n return createPageRevisionFromUseCase.execute(params);\n },\n delete: async params => {\n return deletePageUseCase.execute(params);\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -191,7 +191,7 @@ export interface WbPageCrud {
191
191
  /**
192
192
  * Get information about page revisions.
193
193
  */
194
- getPageRevisions(entryId: string): Promise<WbPage[]>;
194
+ getRevisions(entryId: string): Promise<WbPage[]>;
195
195
  /**
196
196
  * Get a list of pages filtered by given parameters.
197
197
  */
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["pages.types.ts"],"sourcesContent":["import type { WbIdentity, WbLocation } from \"~/context/types\";\nimport type {\n CmsEntryGetParams,\n CmsEntryListSort,\n CmsEntryListWhere\n} from \"@webiny/api-headless-cms/types\";\nimport type { Topic } from \"@webiny/pubsub/types\";\nimport type { ListWbPagesParams, WbListMeta } from \"~/features/pages/ListPages/IListPages\";\n\nexport interface WbPage {\n id: string;\n entryId: string;\n wbyAco_location: WbLocation;\n status: string;\n version: number;\n locked: boolean;\n createdOn: string;\n createdBy: WbIdentity;\n savedOn: string;\n savedBy: WbIdentity;\n modifiedOn: string;\n modifiedBy: WbIdentity;\n tenant: string;\n locale: string;\n webinyVersion: string;\n\n properties: Record<string, any>;\n metadata: Record<string, any>;\n bindings: Record<string, any>;\n elements: Record<string, any>;\n extensions?: Record<string, any>;\n}\n\nexport interface GetWbPageParams {\n id: string;\n}\n\nexport type CreateWbPageData = Pick<\n WbPage,\n \"properties\" | \"metadata\" | \"bindings\" | \"elements\" | \"wbyAco_location\" | \"extensions\"\n>;\n\nexport interface UpdateWbPageData {\n location?: WbLocation;\n properties?: Record<string, any>;\n metadata?: Record<string, any>;\n bindings?: Record<string, any>;\n elements?: Record<string, any>;\n}\n\nexport interface DeleteWbPageParams {\n id: string;\n}\n\nexport interface DuplicateWbPageParams {\n id: string;\n}\n\nexport interface PublishWbPageParams {\n id: string;\n}\n\nexport interface UnpublishWbPageParams {\n id: string;\n}\n\nexport interface MoveWbPageParams {\n id: string;\n folderId: string;\n}\n\nexport interface CreateWbPageRevisionFromParams {\n id: string;\n}\n\nexport interface WbPagesStorageOperationsGetParams extends CmsEntryGetParams {}\n\nexport interface WbPagesStorageOperationsCreateParams {\n data: CreateWbPageData;\n}\n\nexport interface WbPagesStorageOperationsUpdateParams {\n id: string;\n data: UpdateWbPageData;\n}\n\nexport type WbPagesStorageOperationsPublishParams = PublishWbPageParams;\n\nexport type WbPagesStorageOperationsUnpublishParams = UnpublishWbPageParams;\n\nexport type WbPagesStorageOperationsMoveParams = MoveWbPageParams;\n\nexport type WbPagesStorageOperationsCreateRevisionFromParams = CreateWbPageRevisionFromParams;\n\nexport interface WbPagesStorageOperationsDeleteParams {\n id: string;\n}\n\nexport interface WbPagesStorageOperationsListParams {\n where: CmsEntryListWhere;\n sort: CmsEntryListSort;\n limit: number;\n after: string | null;\n search?: string;\n}\n\nexport type WbPagesStorageOperationsListResponse = [WbPage[], WbListMeta];\n\nexport interface OnPageBeforeCreateTopicParams {\n input: CreateWbPageData;\n}\n\nexport interface OnPageAfterCreateTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageBeforeUpdateTopicParams {\n original: WbPage;\n input: Record<string, any>;\n}\n\nexport interface OnPageAfterUpdateTopicParams {\n original: WbPage;\n page: WbPage;\n input: Record<string, any>;\n}\n\nexport interface OnPageBeforePublishTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageAfterPublishTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageBeforeUnpublishTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageAfterUnpublishTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageBeforeDuplicateTopicParams {\n original: WbPage;\n}\n\nexport interface OnPageAfterDuplicateTopicParams {\n original: WbPage;\n page: WbPage;\n}\n\nexport interface OnPageBeforeCreateRevisionFromTopicParams {\n original: WbPage;\n}\n\nexport interface OnPageAfterCreateRevisionFromTopicParams {\n original: WbPage;\n page: WbPage;\n}\n\nexport interface OnPageBeforeMoveTopicParams {\n page: WbPage;\n folderId: string;\n}\n\nexport interface OnPageAfterMoveTopicParams {\n page: WbPage;\n folderId: string;\n}\n\nexport interface OnPageBeforeDeleteTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageAfterDeleteTopicParams {\n page: WbPage;\n}\n\nexport interface WbPagesStorageOperations {\n /**\n * Get a published page using a filter.\n */\n get: (params: WbPagesStorageOperationsGetParams) => Promise<WbPage | null>;\n /**\n * Get a single page by ID (can be draft or published).\n */\n getById: (id: string) => Promise<WbPage | null>;\n /**\n * Get all revisions for the given page.\n */\n getRevisions: (pageId: string) => Promise<WbPage[]>;\n /**\n * Get a list of pages filtered by given parameters.\n */\n list: (\n params: WbPagesStorageOperationsListParams\n ) => Promise<WbPagesStorageOperationsListResponse>;\n /**\n * Insert the page data into the database.\n */\n create: (params: WbPagesStorageOperationsCreateParams) => Promise<WbPage>;\n /**\n * Update the page data in the database.\n */\n update: (params: WbPagesStorageOperationsUpdateParams) => Promise<WbPage>;\n /**\n * Publish the page and store the information in the database.\n */\n publish: (params: WbPagesStorageOperationsPublishParams) => Promise<WbPage>;\n /**\n * Unpublish the page and store the information in the database.\n */\n unpublish: (params: WbPagesStorageOperationsUnpublishParams) => Promise<WbPage>;\n /**\n * Move the page into a folder and store the information in the database.\n */\n move: (params: MoveWbPageParams) => Promise<void>;\n /**\n * Create a page revision and store the information in the database.\n */\n createRevisionFrom: (params: CreateWbPageRevisionFromParams) => Promise<WbPage>;\n /**\n * Delete the page from the database.\n */\n delete: (params: WbPagesStorageOperationsDeleteParams) => Promise<void>;\n}\n\nexport interface WbPageCrud {\n /**\n * Get a single page with given ID from the storage.\n */\n getById(id: string): Promise<WbPage | null>;\n /**\n * Get a single published page by given path.\n */\n getByPath(path: string): Promise<WbPage | null>;\n\n /**\n * Get information about page revisions.\n */\n getPageRevisions(entryId: string): Promise<WbPage[]>;\n /**\n * Get a list of pages filtered by given parameters.\n */\n list(params: ListWbPagesParams): Promise<[WbPage[], WbListMeta]>;\n /**\n * Create a new page in the storage.\n */\n create(data: CreateWbPageData): Promise<WbPage>;\n /**\n * Update an existing page in the storage.\n */\n update(id: string, data: UpdateWbPageData): Promise<WbPage>;\n /**\n * Duplicate a page and store it as a new page in the storage.\n */\n duplicate(params: DuplicateWbPageParams): Promise<WbPage>;\n /**\n * Publish a page.\n */\n publish(params: PublishWbPageParams): Promise<WbPage>;\n /**\n * Unpublish a page.\n */\n unpublish(params: UnpublishWbPageParams): Promise<WbPage>;\n /**\n * Move a page into a folder\n */\n move(params: MoveWbPageParams): Promise<void>;\n /**\n * Create a page revision from an id.\n */\n createRevisionFrom(params: CreateWbPageRevisionFromParams): Promise<WbPage>;\n /**\n * Delete a page from the storage.\n */\n delete(params: DeleteWbPageParams): Promise<void>;\n\n onPageBeforeCreate: Topic<OnPageBeforeCreateTopicParams>;\n onPageAfterCreate: Topic<OnPageAfterCreateTopicParams>;\n onPageBeforeUpdate: Topic<OnPageBeforeUpdateTopicParams>;\n onPageAfterUpdate: Topic<OnPageAfterUpdateTopicParams>;\n onPageBeforePublish: Topic<OnPageBeforePublishTopicParams>;\n onPageAfterPublish: Topic<OnPageAfterPublishTopicParams>;\n onPageBeforeUnpublish: Topic<OnPageBeforeUnpublishTopicParams>;\n onPageAfterUnpublish: Topic<OnPageAfterUnpublishTopicParams>;\n onPageBeforeDuplicate: Topic<OnPageBeforeDuplicateTopicParams>;\n onPageAfterDuplicate: Topic<OnPageAfterDuplicateTopicParams>;\n onPageBeforeMove: Topic<OnPageBeforeMoveTopicParams>;\n onPageAfterMove: Topic<OnPageAfterMoveTopicParams>;\n onPageBeforeCreateRevisionFrom: Topic<OnPageBeforeCreateRevisionFromTopicParams>;\n onPageAfterCreateRevisionFrom: Topic<OnPageAfterCreateRevisionFromTopicParams>;\n onPageBeforeDelete: Topic<OnPageBeforeDeleteTopicParams>;\n onPageAfterDelete: Topic<OnPageAfterDeleteTopicParams>;\n}\n"],"mappings":"","ignoreList":[]}
1
+ {"version":3,"names":[],"sources":["pages.types.ts"],"sourcesContent":["import type { WbIdentity, WbLocation } from \"~/context/types\";\nimport type {\n CmsEntryGetParams,\n CmsEntryListSort,\n CmsEntryListWhere\n} from \"@webiny/api-headless-cms/types\";\nimport type { Topic } from \"@webiny/pubsub/types\";\nimport type { ListWbPagesParams, WbListMeta } from \"~/features/pages/ListPages/IListPages\";\n\nexport interface WbPage {\n id: string;\n entryId: string;\n wbyAco_location: WbLocation;\n status: string;\n version: number;\n locked: boolean;\n createdOn: string;\n createdBy: WbIdentity;\n savedOn: string;\n savedBy: WbIdentity;\n modifiedOn: string;\n modifiedBy: WbIdentity;\n tenant: string;\n locale: string;\n webinyVersion: string;\n\n properties: Record<string, any>;\n metadata: Record<string, any>;\n bindings: Record<string, any>;\n elements: Record<string, any>;\n extensions?: Record<string, any>;\n}\n\nexport interface GetWbPageParams {\n id: string;\n}\n\nexport type CreateWbPageData = Pick<\n WbPage,\n \"properties\" | \"metadata\" | \"bindings\" | \"elements\" | \"wbyAco_location\" | \"extensions\"\n>;\n\nexport interface UpdateWbPageData {\n location?: WbLocation;\n properties?: Record<string, any>;\n metadata?: Record<string, any>;\n bindings?: Record<string, any>;\n elements?: Record<string, any>;\n}\n\nexport interface DeleteWbPageParams {\n id: string;\n}\n\nexport interface DuplicateWbPageParams {\n id: string;\n}\n\nexport interface PublishWbPageParams {\n id: string;\n}\n\nexport interface UnpublishWbPageParams {\n id: string;\n}\n\nexport interface MoveWbPageParams {\n id: string;\n folderId: string;\n}\n\nexport interface CreateWbPageRevisionFromParams {\n id: string;\n}\n\nexport interface WbPagesStorageOperationsGetParams extends CmsEntryGetParams {}\n\nexport interface WbPagesStorageOperationsCreateParams {\n data: CreateWbPageData;\n}\n\nexport interface WbPagesStorageOperationsUpdateParams {\n id: string;\n data: UpdateWbPageData;\n}\n\nexport type WbPagesStorageOperationsPublishParams = PublishWbPageParams;\n\nexport type WbPagesStorageOperationsUnpublishParams = UnpublishWbPageParams;\n\nexport type WbPagesStorageOperationsMoveParams = MoveWbPageParams;\n\nexport type WbPagesStorageOperationsCreateRevisionFromParams = CreateWbPageRevisionFromParams;\n\nexport interface WbPagesStorageOperationsDeleteParams {\n id: string;\n}\n\nexport interface WbPagesStorageOperationsListParams {\n where: CmsEntryListWhere;\n sort: CmsEntryListSort;\n limit: number;\n after: string | null;\n search?: string;\n}\n\nexport type WbPagesStorageOperationsListResponse = [WbPage[], WbListMeta];\n\nexport interface OnPageBeforeCreateTopicParams {\n input: CreateWbPageData;\n}\n\nexport interface OnPageAfterCreateTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageBeforeUpdateTopicParams {\n original: WbPage;\n input: Record<string, any>;\n}\n\nexport interface OnPageAfterUpdateTopicParams {\n original: WbPage;\n page: WbPage;\n input: Record<string, any>;\n}\n\nexport interface OnPageBeforePublishTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageAfterPublishTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageBeforeUnpublishTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageAfterUnpublishTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageBeforeDuplicateTopicParams {\n original: WbPage;\n}\n\nexport interface OnPageAfterDuplicateTopicParams {\n original: WbPage;\n page: WbPage;\n}\n\nexport interface OnPageBeforeCreateRevisionFromTopicParams {\n original: WbPage;\n}\n\nexport interface OnPageAfterCreateRevisionFromTopicParams {\n original: WbPage;\n page: WbPage;\n}\n\nexport interface OnPageBeforeMoveTopicParams {\n page: WbPage;\n folderId: string;\n}\n\nexport interface OnPageAfterMoveTopicParams {\n page: WbPage;\n folderId: string;\n}\n\nexport interface OnPageBeforeDeleteTopicParams {\n page: WbPage;\n}\n\nexport interface OnPageAfterDeleteTopicParams {\n page: WbPage;\n}\n\nexport interface WbPagesStorageOperations {\n /**\n * Get a published page using a filter.\n */\n get: (params: WbPagesStorageOperationsGetParams) => Promise<WbPage | null>;\n /**\n * Get a single page by ID (can be draft or published).\n */\n getById: (id: string) => Promise<WbPage | null>;\n /**\n * Get all revisions for the given page.\n */\n getRevisions: (pageId: string) => Promise<WbPage[]>;\n /**\n * Get a list of pages filtered by given parameters.\n */\n list: (\n params: WbPagesStorageOperationsListParams\n ) => Promise<WbPagesStorageOperationsListResponse>;\n /**\n * Insert the page data into the database.\n */\n create: (params: WbPagesStorageOperationsCreateParams) => Promise<WbPage>;\n /**\n * Update the page data in the database.\n */\n update: (params: WbPagesStorageOperationsUpdateParams) => Promise<WbPage>;\n /**\n * Publish the page and store the information in the database.\n */\n publish: (params: WbPagesStorageOperationsPublishParams) => Promise<WbPage>;\n /**\n * Unpublish the page and store the information in the database.\n */\n unpublish: (params: WbPagesStorageOperationsUnpublishParams) => Promise<WbPage>;\n /**\n * Move the page into a folder and store the information in the database.\n */\n move: (params: MoveWbPageParams) => Promise<void>;\n /**\n * Create a page revision and store the information in the database.\n */\n createRevisionFrom: (params: CreateWbPageRevisionFromParams) => Promise<WbPage>;\n /**\n * Delete the page from the database.\n */\n delete: (params: WbPagesStorageOperationsDeleteParams) => Promise<void>;\n}\n\nexport interface WbPageCrud {\n /**\n * Get a single page with given ID from the storage.\n */\n getById(id: string): Promise<WbPage | null>;\n /**\n * Get a single published page by given path.\n */\n getByPath(path: string): Promise<WbPage | null>;\n\n /**\n * Get information about page revisions.\n */\n getRevisions(entryId: string): Promise<WbPage[]>;\n /**\n * Get a list of pages filtered by given parameters.\n */\n list(params: ListWbPagesParams): Promise<[WbPage[], WbListMeta]>;\n /**\n * Create a new page in the storage.\n */\n create(data: CreateWbPageData): Promise<WbPage>;\n /**\n * Update an existing page in the storage.\n */\n update(id: string, data: UpdateWbPageData): Promise<WbPage>;\n /**\n * Duplicate a page and store it as a new page in the storage.\n */\n duplicate(params: DuplicateWbPageParams): Promise<WbPage>;\n /**\n * Publish a page.\n */\n publish(params: PublishWbPageParams): Promise<WbPage>;\n /**\n * Unpublish a page.\n */\n unpublish(params: UnpublishWbPageParams): Promise<WbPage>;\n /**\n * Move a page into a folder\n */\n move(params: MoveWbPageParams): Promise<void>;\n /**\n * Create a page revision from an id.\n */\n createRevisionFrom(params: CreateWbPageRevisionFromParams): Promise<WbPage>;\n /**\n * Delete a page from the storage.\n */\n delete(params: DeleteWbPageParams): Promise<void>;\n\n onPageBeforeCreate: Topic<OnPageBeforeCreateTopicParams>;\n onPageAfterCreate: Topic<OnPageAfterCreateTopicParams>;\n onPageBeforeUpdate: Topic<OnPageBeforeUpdateTopicParams>;\n onPageAfterUpdate: Topic<OnPageAfterUpdateTopicParams>;\n onPageBeforePublish: Topic<OnPageBeforePublishTopicParams>;\n onPageAfterPublish: Topic<OnPageAfterPublishTopicParams>;\n onPageBeforeUnpublish: Topic<OnPageBeforeUnpublishTopicParams>;\n onPageAfterUnpublish: Topic<OnPageAfterUnpublishTopicParams>;\n onPageBeforeDuplicate: Topic<OnPageBeforeDuplicateTopicParams>;\n onPageAfterDuplicate: Topic<OnPageAfterDuplicateTopicParams>;\n onPageBeforeMove: Topic<OnPageBeforeMoveTopicParams>;\n onPageAfterMove: Topic<OnPageAfterMoveTopicParams>;\n onPageBeforeCreateRevisionFrom: Topic<OnPageBeforeCreateRevisionFromTopicParams>;\n onPageAfterCreateRevisionFrom: Topic<OnPageAfterCreateRevisionFromTopicParams>;\n onPageBeforeDelete: Topic<OnPageBeforeDeleteTopicParams>;\n onPageAfterDelete: Topic<OnPageAfterDeleteTopicParams>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -43,8 +43,8 @@ class RedirectsContext extends _BaseContext.BaseContext {
43
43
  });
44
44
  }
45
45
  static async create(context) {
46
- const pagesContext = new RedirectsContext(context);
47
- return pagesContext.init();
46
+ const redirectsContext = new RedirectsContext(context);
47
+ return redirectsContext.init();
48
48
  }
49
49
  createModelDefinition() {
50
50
  return (0, _apiHeadlessCms.createPrivateModel)({
@@ -1 +1 @@
1
- {"version":3,"names":["_apiHeadlessCms","require","_BaseContext","_RedirectsStorage","_redirects","REDIRECT_MODEL_ID","exports","RedirectsContext","BaseContext","constructor","context","init","storageOperations","setupStorageOperations","createRedirectsCrud","getTenantId","bind","getLocaleCode","getIdentity","getPermissions","security","withoutAuthorization","modelDefinition","createModelDefinition","plugins","register","CmsModelPlugin","model","getModel","RedirectsStorage","create","cms","pagesContext","createPrivateModel","name","modelId","titleFieldId","authorization","permissions","fields","createModelField","fieldId","label","type"],"sources":["redirects.context.ts"],"sourcesContent":["import { CmsModelPlugin, createModelField, createPrivateModel } from \"@webiny/api-headless-cms\";\nimport type { WebsiteBuilderContext } from \"~/context/types\";\nimport { BaseContext } from \"~/context/BaseContext\";\nimport { RedirectsStorage } from \"./RedirectsStorage\";\nimport type { WbRedirectCrud } from \"~/context/redirects/redirects.types\";\nimport { createRedirectsCrud } from \"~/context/redirects/redirects.crud\";\n\nexport const REDIRECT_MODEL_ID = \"wbRedirect\";\n\nexport class RedirectsContext extends BaseContext {\n private constructor(context: WebsiteBuilderContext) {\n super(context);\n }\n\n private async init() {\n const storageOperations = await this.setupStorageOperations();\n\n return createRedirectsCrud({\n storageOperations,\n getTenantId: this.getTenantId.bind(this),\n getLocaleCode: this.getLocaleCode.bind(this),\n getIdentity: this.getIdentity.bind(this),\n getPermissions: this.getPermissions.bind(this)\n });\n }\n\n private async setupStorageOperations() {\n return this.context.security.withoutAuthorization(async () => {\n // This registers code plugins (model group, models)\n const modelDefinition = this.createModelDefinition();\n\n // Finally, register all plugins\n this.context.plugins.register([new CmsModelPlugin(modelDefinition)]);\n\n // Now load the page model registered in the previous step\n const model = await this.getModel(REDIRECT_MODEL_ID);\n\n // Overwrite the original `pages` storage ops\n return await RedirectsStorage.create({\n model,\n cms: this.context.cms,\n plugins: this.context.plugins\n });\n });\n }\n\n static async create(context: WebsiteBuilderContext): Promise<WbRedirectCrud> {\n const pagesContext = new RedirectsContext(context);\n return pagesContext.init();\n }\n\n private createModelDefinition() {\n return createPrivateModel({\n name: \"Website Builder - Redirect\",\n modelId: REDIRECT_MODEL_ID,\n titleFieldId: \"from\",\n authorization: {\n // Disables base permission checks, but leaves FLP checks enabled.\n permissions: false\n },\n fields: [\n createModelField({\n fieldId: \"redirectFrom\",\n label: \"Redirect From\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"redirectTo\",\n label: \"Redirect To\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"redirectType\",\n label: \"Redirect Type\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"isEnabled\",\n label: \"Is enabled?\",\n type: \"boolean\"\n })\n ]\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,UAAA,GAAAH,OAAA;AAEO,MAAMI,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,YAAY;AAEtC,MAAME,gBAAgB,SAASC,wBAAW,CAAC;EACtCC,WAAWA,CAACC,OAA8B,EAAE;IAChD,KAAK,CAACA,OAAO,CAAC;EAClB;EAEA,MAAcC,IAAIA,CAAA,EAAG;IACjB,MAAMC,iBAAiB,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAAC,CAAC;IAE7D,OAAO,IAAAC,8BAAmB,EAAC;MACvBF,iBAAiB;MACjBG,WAAW,EAAE,IAAI,CAACA,WAAW,CAACC,IAAI,CAAC,IAAI,CAAC;MACxCC,aAAa,EAAE,IAAI,CAACA,aAAa,CAACD,IAAI,CAAC,IAAI,CAAC;MAC5CE,WAAW,EAAE,IAAI,CAACA,WAAW,CAACF,IAAI,CAAC,IAAI,CAAC;MACxCG,cAAc,EAAE,IAAI,CAACA,cAAc,CAACH,IAAI,CAAC,IAAI;IACjD,CAAC,CAAC;EACN;EAEA,MAAcH,sBAAsBA,CAAA,EAAG;IACnC,OAAO,IAAI,CAACH,OAAO,CAACU,QAAQ,CAACC,oBAAoB,CAAC,YAAY;MAC1D;MACA,MAAMC,eAAe,GAAG,IAAI,CAACC,qBAAqB,CAAC,CAAC;;MAEpD;MACA,IAAI,CAACb,OAAO,CAACc,OAAO,CAACC,QAAQ,CAAC,CAAC,IAAIC,8BAAc,CAACJ,eAAe,CAAC,CAAC,CAAC;;MAEpE;MACA,MAAMK,KAAK,GAAG,MAAM,IAAI,CAACC,QAAQ,CAACvB,iBAAiB,CAAC;;MAEpD;MACA,OAAO,MAAMwB,kCAAgB,CAACC,MAAM,CAAC;QACjCH,KAAK;QACLI,GAAG,EAAE,IAAI,CAACrB,OAAO,CAACqB,GAAG;QACrBP,OAAO,EAAE,IAAI,CAACd,OAAO,CAACc;MAC1B,CAAC,CAAC;IACN,CAAC,CAAC;EACN;EAEA,aAAaM,MAAMA,CAACpB,OAA8B,EAA2B;IACzE,MAAMsB,YAAY,GAAG,IAAIzB,gBAAgB,CAACG,OAAO,CAAC;IAClD,OAAOsB,YAAY,CAACrB,IAAI,CAAC,CAAC;EAC9B;EAEQY,qBAAqBA,CAAA,EAAG;IAC5B,OAAO,IAAAU,kCAAkB,EAAC;MACtBC,IAAI,EAAE,4BAA4B;MAClCC,OAAO,EAAE9B,iBAAiB;MAC1B+B,YAAY,EAAE,MAAM;MACpBC,aAAa,EAAE;QACX;QACAC,WAAW,EAAE;MACjB,CAAC;MACDC,MAAM,EAAE,CACJ,IAAAC,gCAAgB,EAAC;QACbC,OAAO,EAAE,cAAc;QACvBC,KAAK,EAAE,eAAe;QACtBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,YAAY;QACrBC,KAAK,EAAE,aAAa;QACpBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,cAAc;QACvBC,KAAK,EAAE,eAAe;QACtBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,WAAW;QACpBC,KAAK,EAAE,aAAa;QACpBC,IAAI,EAAE;MACV,CAAC,CAAC;IAEV,CAAC,CAAC;EACN;AACJ;AAACrC,OAAA,CAAAC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
1
+ {"version":3,"names":["_apiHeadlessCms","require","_BaseContext","_RedirectsStorage","_redirects","REDIRECT_MODEL_ID","exports","RedirectsContext","BaseContext","constructor","context","init","storageOperations","setupStorageOperations","createRedirectsCrud","getTenantId","bind","getLocaleCode","getIdentity","getPermissions","security","withoutAuthorization","modelDefinition","createModelDefinition","plugins","register","CmsModelPlugin","model","getModel","RedirectsStorage","create","cms","redirectsContext","createPrivateModel","name","modelId","titleFieldId","authorization","permissions","fields","createModelField","fieldId","label","type"],"sources":["redirects.context.ts"],"sourcesContent":["import { CmsModelPlugin, createModelField, createPrivateModel } from \"@webiny/api-headless-cms\";\nimport type { WebsiteBuilderContext } from \"~/context/types\";\nimport { BaseContext } from \"~/context/BaseContext\";\nimport { RedirectsStorage } from \"./RedirectsStorage\";\nimport type { WbRedirectCrud } from \"~/context/redirects/redirects.types\";\nimport { createRedirectsCrud } from \"~/context/redirects/redirects.crud\";\n\nexport const REDIRECT_MODEL_ID = \"wbRedirect\";\n\nexport class RedirectsContext extends BaseContext {\n private constructor(context: WebsiteBuilderContext) {\n super(context);\n }\n\n private async init() {\n const storageOperations = await this.setupStorageOperations();\n\n return createRedirectsCrud({\n storageOperations,\n getTenantId: this.getTenantId.bind(this),\n getLocaleCode: this.getLocaleCode.bind(this),\n getIdentity: this.getIdentity.bind(this),\n getPermissions: this.getPermissions.bind(this)\n });\n }\n\n private async setupStorageOperations() {\n return this.context.security.withoutAuthorization(async () => {\n // This registers code plugins (model group, models)\n const modelDefinition = this.createModelDefinition();\n\n // Finally, register all plugins\n this.context.plugins.register([new CmsModelPlugin(modelDefinition)]);\n\n // Now load the page model registered in the previous step\n const model = await this.getModel(REDIRECT_MODEL_ID);\n\n // Overwrite the original `pages` storage ops\n return await RedirectsStorage.create({\n model,\n cms: this.context.cms,\n plugins: this.context.plugins\n });\n });\n }\n\n static async create(context: WebsiteBuilderContext): Promise<WbRedirectCrud> {\n const redirectsContext = new RedirectsContext(context);\n return redirectsContext.init();\n }\n\n private createModelDefinition() {\n return createPrivateModel({\n name: \"Website Builder - Redirect\",\n modelId: REDIRECT_MODEL_ID,\n titleFieldId: \"from\",\n authorization: {\n // Disables base permission checks, but leaves FLP checks enabled.\n permissions: false\n },\n fields: [\n createModelField({\n fieldId: \"redirectFrom\",\n label: \"Redirect From\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"redirectTo\",\n label: \"Redirect To\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"redirectType\",\n label: \"Redirect Type\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"isEnabled\",\n label: \"Is enabled?\",\n type: \"boolean\"\n })\n ]\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,UAAA,GAAAH,OAAA;AAEO,MAAMI,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,YAAY;AAEtC,MAAME,gBAAgB,SAASC,wBAAW,CAAC;EACtCC,WAAWA,CAACC,OAA8B,EAAE;IAChD,KAAK,CAACA,OAAO,CAAC;EAClB;EAEA,MAAcC,IAAIA,CAAA,EAAG;IACjB,MAAMC,iBAAiB,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAAC,CAAC;IAE7D,OAAO,IAAAC,8BAAmB,EAAC;MACvBF,iBAAiB;MACjBG,WAAW,EAAE,IAAI,CAACA,WAAW,CAACC,IAAI,CAAC,IAAI,CAAC;MACxCC,aAAa,EAAE,IAAI,CAACA,aAAa,CAACD,IAAI,CAAC,IAAI,CAAC;MAC5CE,WAAW,EAAE,IAAI,CAACA,WAAW,CAACF,IAAI,CAAC,IAAI,CAAC;MACxCG,cAAc,EAAE,IAAI,CAACA,cAAc,CAACH,IAAI,CAAC,IAAI;IACjD,CAAC,CAAC;EACN;EAEA,MAAcH,sBAAsBA,CAAA,EAAG;IACnC,OAAO,IAAI,CAACH,OAAO,CAACU,QAAQ,CAACC,oBAAoB,CAAC,YAAY;MAC1D;MACA,MAAMC,eAAe,GAAG,IAAI,CAACC,qBAAqB,CAAC,CAAC;;MAEpD;MACA,IAAI,CAACb,OAAO,CAACc,OAAO,CAACC,QAAQ,CAAC,CAAC,IAAIC,8BAAc,CAACJ,eAAe,CAAC,CAAC,CAAC;;MAEpE;MACA,MAAMK,KAAK,GAAG,MAAM,IAAI,CAACC,QAAQ,CAACvB,iBAAiB,CAAC;;MAEpD;MACA,OAAO,MAAMwB,kCAAgB,CAACC,MAAM,CAAC;QACjCH,KAAK;QACLI,GAAG,EAAE,IAAI,CAACrB,OAAO,CAACqB,GAAG;QACrBP,OAAO,EAAE,IAAI,CAACd,OAAO,CAACc;MAC1B,CAAC,CAAC;IACN,CAAC,CAAC;EACN;EAEA,aAAaM,MAAMA,CAACpB,OAA8B,EAA2B;IACzE,MAAMsB,gBAAgB,GAAG,IAAIzB,gBAAgB,CAACG,OAAO,CAAC;IACtD,OAAOsB,gBAAgB,CAACrB,IAAI,CAAC,CAAC;EAClC;EAEQY,qBAAqBA,CAAA,EAAG;IAC5B,OAAO,IAAAU,kCAAkB,EAAC;MACtBC,IAAI,EAAE,4BAA4B;MAClCC,OAAO,EAAE9B,iBAAiB;MAC1B+B,YAAY,EAAE,MAAM;MACpBC,aAAa,EAAE;QACX;QACAC,WAAW,EAAE;MACjB,CAAC;MACDC,MAAM,EAAE,CACJ,IAAAC,gCAAgB,EAAC;QACbC,OAAO,EAAE,cAAc;QACvBC,KAAK,EAAE,eAAe;QACtBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,YAAY;QACrBC,KAAK,EAAE,aAAa;QACpBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,cAAc;QACvBC,KAAK,EAAE,eAAe;QACtBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,WAAW;QACpBC,KAAK,EAAE,aAAa;QACpBC,IAAI,EAAE;MACV,CAAC,CAAC;IAEV,CAAC,CAAC;EACN;AACJ;AAACrC,OAAA,CAAAC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -6,6 +6,7 @@ Object.defineProperty(exports, "__esModule", {
6
6
  exports.createRedirectsCrud = void 0;
7
7
  var _pubsub = require("@webiny/pubsub");
8
8
  var _redirects = require("../../features/redirects");
9
+ var _GetActiveRedirects = require("../../features/redirects/GetActiveRedirects");
9
10
  const createRedirectsCrud = config => {
10
11
  // create
11
12
  const onRedirectBeforeCreate = (0, _pubsub.createTopic)("wb.onRedirectBeforeCreate");
@@ -19,6 +20,9 @@ const createRedirectsCrud = config => {
19
20
  onRedirectAfterCreate
20
21
  }
21
22
  });
23
+ const getActiveRedirectsUseCase = (0, _GetActiveRedirects.getGetActiveRedirectsUseCase)({
24
+ listOperation: config.storageOperations.list
25
+ });
22
26
 
23
27
  // update
24
28
  const onRedirectBeforeUpdate = (0, _pubsub.createTopic)("wb.onRedirectBeforeUpdate");
@@ -87,6 +91,9 @@ const createRedirectsCrud = config => {
87
91
  list: async params => {
88
92
  return listRedirectsUseCase.execute(params);
89
93
  },
94
+ getActiveRedirects: async () => {
95
+ return getActiveRedirectsUseCase.execute();
96
+ },
90
97
  getById: async id => {
91
98
  return getRedirectByIdUseCase.execute(id);
92
99
  },
@@ -1 +1 @@
1
- {"version":3,"names":["_pubsub","require","_redirects","createRedirectsCrud","config","onRedirectBeforeCreate","createTopic","onRedirectAfterCreate","createRedirectUseCase","getCreateRedirectUseCase","createOperation","storageOperations","create","topics","onRedirectBeforeUpdate","onRedirectAfterUpdate","updateRedirectUseCase","getUpdateRedirectUseCase","updateOperation","update","getOperation","getById","onRedirectBeforeMove","onRedirectAfterMove","moveRedirectUseCase","getMoveRedirectUseCase","moveOperation","move","onRedirectBeforeDelete","onRedirectAfterDelete","deleteRedirectUseCase","getDeleteRedirectUseCase","deleteOperation","delete","getRedirectByIdUseCase","getGetRedirectByIdUseCase","listRedirectsUseCase","getListRedirectsUseCase","listOperation","list","params","execute","id","data","exports"],"sources":["redirects.crud.ts"],"sourcesContent":["import { createTopic } from \"@webiny/pubsub\";\nimport {\n getCreateRedirectUseCase,\n getDeleteRedirectUseCase,\n getListRedirectsUseCase,\n getUpdateRedirectUseCase,\n getMoveRedirectUseCase,\n getGetRedirectByIdUseCase\n} from \"~/features/redirects\";\nimport type {\n OnRedirectAfterCreateTopicParams,\n OnRedirectAfterDeleteTopicParams,\n OnRedirectAfterMoveTopicParams,\n OnRedirectAfterUpdateTopicParams,\n OnRedirectBeforeCreateTopicParams,\n OnRedirectBeforeDeleteTopicParams,\n OnRedirectBeforeMoveTopicParams,\n OnRedirectBeforeUpdateTopicParams,\n UpdateWbRedirectData,\n WbRedirectCrud,\n WbRedirectsStorageOperations\n} from \"~/context/redirects/redirects.types\";\nimport type { WebsiteBuilderConfig } from \"~/context/types\";\n\nexport const createRedirectsCrud = (\n config: WebsiteBuilderConfig<WbRedirectsStorageOperations>\n): WbRedirectCrud => {\n // create\n const onRedirectBeforeCreate = createTopic<OnRedirectBeforeCreateTopicParams>(\n \"wb.onRedirectBeforeCreate\"\n );\n const onRedirectAfterCreate = createTopic<OnRedirectAfterCreateTopicParams>(\n \"wb.onRedirectAfterCreate\"\n );\n\n const { createRedirectUseCase } = getCreateRedirectUseCase({\n createOperation: config.storageOperations.create,\n topics: {\n onRedirectBeforeCreate,\n onRedirectAfterCreate\n }\n });\n\n // update\n const onRedirectBeforeUpdate = createTopic<OnRedirectBeforeUpdateTopicParams>(\n \"wb.onRedirectBeforeUpdate\"\n );\n const onRedirectAfterUpdate = createTopic<OnRedirectAfterUpdateTopicParams>(\n \"wb.onRedirectAfterUpdate\"\n );\n\n const { updateRedirectUseCase } = getUpdateRedirectUseCase({\n updateOperation: config.storageOperations.update,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeUpdate,\n onRedirectAfterUpdate\n }\n });\n\n // move\n const onRedirectBeforeMove =\n createTopic<OnRedirectBeforeMoveTopicParams>(\"wb.onRedirectBeforeMove\");\n const onRedirectAfterMove =\n createTopic<OnRedirectAfterMoveTopicParams>(\"wb.onRedirectAfterMove\");\n\n const { moveRedirectUseCase } = getMoveRedirectUseCase({\n moveOperation: config.storageOperations.move,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeMove,\n onRedirectAfterMove\n }\n });\n\n // delete\n const onRedirectBeforeDelete = createTopic<OnRedirectBeforeDeleteTopicParams>(\n \"wb.onRedirectBeforeDelete\"\n );\n const onRedirectAfterDelete = createTopic<OnRedirectAfterDeleteTopicParams>(\n \"wb.onRedirectAfterDelete\"\n );\n\n const { deleteRedirectUseCase } = getDeleteRedirectUseCase({\n deleteOperation: config.storageOperations.delete,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeDelete,\n onRedirectAfterDelete\n }\n });\n\n // get by id\n const { getRedirectByIdUseCase } = getGetRedirectByIdUseCase({\n getOperation: config.storageOperations.getById\n });\n\n // list\n const { listRedirectsUseCase } = getListRedirectsUseCase({\n listOperation: config.storageOperations.list\n });\n\n return {\n onRedirectBeforeCreate,\n onRedirectAfterCreate,\n onRedirectBeforeUpdate,\n onRedirectAfterUpdate,\n onRedirectBeforeMove,\n onRedirectAfterMove,\n onRedirectBeforeDelete,\n onRedirectAfterDelete,\n\n list: async params => {\n return listRedirectsUseCase.execute(params);\n },\n getById: async id => {\n return getRedirectByIdUseCase.execute(id);\n },\n create: async data => {\n return createRedirectUseCase.execute(data);\n },\n update: async (id: string, data: UpdateWbRedirectData) => {\n return updateRedirectUseCase.execute(id, data);\n },\n move: async params => {\n return moveRedirectUseCase.execute(params);\n },\n delete: async params => {\n return deleteRedirectUseCase.execute(params);\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["_pubsub","require","_redirects","_GetActiveRedirects","createRedirectsCrud","config","onRedirectBeforeCreate","createTopic","onRedirectAfterCreate","createRedirectUseCase","getCreateRedirectUseCase","createOperation","storageOperations","create","topics","getActiveRedirectsUseCase","getGetActiveRedirectsUseCase","listOperation","list","onRedirectBeforeUpdate","onRedirectAfterUpdate","updateRedirectUseCase","getUpdateRedirectUseCase","updateOperation","update","getOperation","getById","onRedirectBeforeMove","onRedirectAfterMove","moveRedirectUseCase","getMoveRedirectUseCase","moveOperation","move","onRedirectBeforeDelete","onRedirectAfterDelete","deleteRedirectUseCase","getDeleteRedirectUseCase","deleteOperation","delete","getRedirectByIdUseCase","getGetRedirectByIdUseCase","listRedirectsUseCase","getListRedirectsUseCase","params","execute","getActiveRedirects","id","data","exports"],"sources":["redirects.crud.ts"],"sourcesContent":["import { createTopic } from \"@webiny/pubsub\";\nimport {\n getCreateRedirectUseCase,\n getDeleteRedirectUseCase,\n getListRedirectsUseCase,\n getUpdateRedirectUseCase,\n getMoveRedirectUseCase,\n getGetRedirectByIdUseCase\n} from \"~/features/redirects\";\nimport type {\n OnRedirectAfterCreateTopicParams,\n OnRedirectAfterDeleteTopicParams,\n OnRedirectAfterMoveTopicParams,\n OnRedirectAfterUpdateTopicParams,\n OnRedirectBeforeCreateTopicParams,\n OnRedirectBeforeDeleteTopicParams,\n OnRedirectBeforeMoveTopicParams,\n OnRedirectBeforeUpdateTopicParams,\n UpdateWbRedirectData,\n WbRedirectCrud,\n WbRedirectsStorageOperations\n} from \"~/context/redirects/redirects.types\";\nimport type { WebsiteBuilderConfig } from \"~/context/types\";\nimport { getGetActiveRedirectsUseCase } from \"~/features/redirects/GetActiveRedirects\";\n\nexport const createRedirectsCrud = (\n config: WebsiteBuilderConfig<WbRedirectsStorageOperations>\n): WbRedirectCrud => {\n // create\n const onRedirectBeforeCreate = createTopic<OnRedirectBeforeCreateTopicParams>(\n \"wb.onRedirectBeforeCreate\"\n );\n const onRedirectAfterCreate = createTopic<OnRedirectAfterCreateTopicParams>(\n \"wb.onRedirectAfterCreate\"\n );\n\n const { createRedirectUseCase } = getCreateRedirectUseCase({\n createOperation: config.storageOperations.create,\n topics: {\n onRedirectBeforeCreate,\n onRedirectAfterCreate\n }\n });\n\n const getActiveRedirectsUseCase = getGetActiveRedirectsUseCase({\n listOperation: config.storageOperations.list\n });\n\n // update\n const onRedirectBeforeUpdate = createTopic<OnRedirectBeforeUpdateTopicParams>(\n \"wb.onRedirectBeforeUpdate\"\n );\n const onRedirectAfterUpdate = createTopic<OnRedirectAfterUpdateTopicParams>(\n \"wb.onRedirectAfterUpdate\"\n );\n\n const { updateRedirectUseCase } = getUpdateRedirectUseCase({\n updateOperation: config.storageOperations.update,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeUpdate,\n onRedirectAfterUpdate\n }\n });\n\n // move\n const onRedirectBeforeMove =\n createTopic<OnRedirectBeforeMoveTopicParams>(\"wb.onRedirectBeforeMove\");\n const onRedirectAfterMove =\n createTopic<OnRedirectAfterMoveTopicParams>(\"wb.onRedirectAfterMove\");\n\n const { moveRedirectUseCase } = getMoveRedirectUseCase({\n moveOperation: config.storageOperations.move,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeMove,\n onRedirectAfterMove\n }\n });\n\n // delete\n const onRedirectBeforeDelete = createTopic<OnRedirectBeforeDeleteTopicParams>(\n \"wb.onRedirectBeforeDelete\"\n );\n const onRedirectAfterDelete = createTopic<OnRedirectAfterDeleteTopicParams>(\n \"wb.onRedirectAfterDelete\"\n );\n\n const { deleteRedirectUseCase } = getDeleteRedirectUseCase({\n deleteOperation: config.storageOperations.delete,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeDelete,\n onRedirectAfterDelete\n }\n });\n\n // get by id\n const { getRedirectByIdUseCase } = getGetRedirectByIdUseCase({\n getOperation: config.storageOperations.getById\n });\n\n // list\n const { listRedirectsUseCase } = getListRedirectsUseCase({\n listOperation: config.storageOperations.list\n });\n\n return {\n onRedirectBeforeCreate,\n onRedirectAfterCreate,\n onRedirectBeforeUpdate,\n onRedirectAfterUpdate,\n onRedirectBeforeMove,\n onRedirectAfterMove,\n onRedirectBeforeDelete,\n onRedirectAfterDelete,\n\n list: async params => {\n return listRedirectsUseCase.execute(params);\n },\n getActiveRedirects: async () => {\n return getActiveRedirectsUseCase.execute();\n },\n getById: async id => {\n return getRedirectByIdUseCase.execute(id);\n },\n create: async data => {\n return createRedirectUseCase.execute(data);\n },\n update: async (id: string, data: UpdateWbRedirectData) => {\n return updateRedirectUseCase.execute(id, data);\n },\n move: async params => {\n return moveRedirectUseCase.execute(params);\n },\n delete: async params => {\n return deleteRedirectUseCase.execute(params);\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -112,6 +112,10 @@ export interface WbRedirectCrud {
112
112
  * Get a single redirect with given ID from the storage.
113
113
  */
114
114
  getById(id: string): Promise<WbRedirect | null>;
115
+ /**
116
+ * Get all active redirects.
117
+ */
118
+ getActiveRedirects(): Promise<WbRedirect[]>;
115
119
  /**
116
120
  * Get a list of redirects filtered by given parameters.
117
121
  */