@webbio/strapi-plugin-page-builder 0.0.31 → 0.1.0

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 (44) hide show
  1. package/README.md +35 -4
  2. package/admin/src/components/EditView/CollectionTypeSearch/index.tsx +6 -0
  3. package/admin/src/components/EditView/CollectionTypeSettings/CreatePageButton/index.tsx +5 -3
  4. package/admin/src/components/EditView/CollectionTypeSettings/index.tsx +14 -3
  5. package/admin/src/components/EditView/PageSettings/index.tsx +13 -6
  6. package/admin/src/components/EditView/Template/TemplateSelect/index.tsx +6 -1
  7. package/admin/src/components/EditView/Template/TemplateSelect/use-template-modules.ts +1 -1
  8. package/admin/src/components/EditView/page-type-select.tsx +3 -1
  9. package/admin/src/constants.ts +2 -0
  10. package/admin/src/index.tsx +1 -1
  11. package/dist/package.json +1 -1
  12. package/dist/server/bootstrap.js +86 -17
  13. package/dist/server/controllers/collection-types.js +0 -2
  14. package/dist/server/controllers/page-type.js +0 -1
  15. package/dist/server/controllers/page.js +0 -8
  16. package/dist/server/controllers/platform.js +20 -0
  17. package/dist/server/controllers/template.js +0 -2
  18. package/dist/server/graphql/index.js +2 -0
  19. package/dist/server/graphql/page-by-slug.js +4 -4
  20. package/dist/server/graphql/pages-by-uid.js +105 -0
  21. package/dist/server/register.js +2 -0
  22. package/dist/server/schema/platform-start.json +31 -0
  23. package/dist/server/services/builder.js +2 -2
  24. package/dist/server/services/page-type.js +7 -4
  25. package/dist/server/services/platform.js +36 -0
  26. package/dist/server/utils/paginationValidation.js +31 -0
  27. package/dist/tsconfig.server.tsbuildinfo +1 -1
  28. package/package.json +1 -1
  29. package/server/bootstrap.ts +94 -17
  30. package/server/controllers/collection-types.ts +4 -4
  31. package/server/controllers/page-type.ts +3 -2
  32. package/server/controllers/page.ts +0 -11
  33. package/server/controllers/template.ts +4 -4
  34. package/server/graphql/index.ts +2 -0
  35. package/server/graphql/page-by-slug.ts +1 -1
  36. package/server/graphql/page-type.ts +8 -4
  37. package/server/graphql/pages-by-uid.ts +127 -0
  38. package/server/register.ts +2 -0
  39. package/server/services/builder.ts +9 -11
  40. package/server/services/collection-types.ts +5 -6
  41. package/server/services/page-type.ts +7 -3
  42. package/server/utils/paginationValidation.ts +39 -0
  43. package/server/utils/strapi.ts +3 -1
  44. package/tsconfig.tsbuildinfo +1 -1
@@ -5,10 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const page_by_slug_1 = __importDefault(require("./graphql/page-by-slug"));
7
7
  const page_type_1 = __importDefault(require("./graphql/page-type"));
8
+ const pages_by_uid_1 = __importDefault(require("./graphql/pages-by-uid"));
8
9
  exports.default = async ({ strapi }) => {
9
10
  var _a, _b;
10
11
  const extensionService = strapi.plugin('graphql').service('extension');
11
12
  extensionService.use(page_type_1.default);
12
13
  extensionService.use((0, page_by_slug_1.default)(strapi));
14
+ extensionService.use((0, pages_by_uid_1.default)(strapi));
13
15
  await ((_b = (_a = strapi.services) === null || _a === void 0 ? void 0 : _a['plugin::page-builder.builder']) === null || _b === void 0 ? void 0 : _b.buildContentTypes());
14
16
  };
@@ -0,0 +1,31 @@
1
+ {
2
+ "draftAndPublish": false,
3
+ "displayName": "Platforms",
4
+ "singularName": "platform",
5
+ "pluralName": "platforms",
6
+ "description": "",
7
+ "plugin": "page-builder",
8
+ "pluginOptions": {},
9
+ "kind": "collectionType",
10
+ "collectionName": "platforms",
11
+ "attributes": {
12
+ "title": {
13
+ "type": "string",
14
+ "required": true,
15
+ "unique": true
16
+ },
17
+ "domain": {
18
+ "type": "string"
19
+ },
20
+ "template": {
21
+ "type": "relation",
22
+ "relation": "oneToMany",
23
+ "target": "api::template.template"
24
+ },
25
+ "pageTypes": {
26
+ "type": "relation",
27
+ "relation": "oneToMany",
28
+ "target": "api::page-type.page-type"
29
+ }
30
+ }
31
+ }
@@ -87,8 +87,8 @@ exports.default = {
87
87
  return { uid: constants_1.PAGE_TYPE_UID, contentType };
88
88
  },
89
89
  getTemplateContentType() {
90
- const pageType = template_start_json_1.default;
91
- const contentType = this.mergeCollectionTypeWithModules(pageType, constants_1.TEMPLATE_UID);
90
+ const template = template_start_json_1.default;
91
+ const contentType = this.mergeCollectionTypeWithModules(template, constants_1.TEMPLATE_UID);
92
92
  return { uid: constants_1.TEMPLATE_UID, contentType };
93
93
  },
94
94
  mergeCollectionTypeWithModules(collectionType, uid) {
@@ -1,8 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ const constants_1 = require("../../shared/utils/constants");
3
4
  exports.default = {
4
5
  async findOneByUid(uid) {
5
- const result = await strapi.entityService.findMany('api::page-type.page-type', {
6
+ var _a;
7
+ const results = await ((_a = strapi.entityService) === null || _a === void 0 ? void 0 : _a.findMany(constants_1.PAGE_TYPE_UID, {
6
8
  populate: {
7
9
  template: {
8
10
  populate: {
@@ -13,9 +15,10 @@ exports.default = {
13
15
  filters: {
14
16
  uid
15
17
  }
16
- });
17
- if (result.length > 0) {
18
- return result[0];
18
+ }));
19
+ const result = results.length > 0 ? results === null || results === void 0 ? void 0 : results[0] : undefined;
20
+ if (result) {
21
+ return result;
19
22
  }
20
23
  else {
21
24
  return null;
@@ -0,0 +1,36 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const constants_1 = require("../../shared/utils/constants");
4
+ exports.default = {
5
+ async findAll() {
6
+ return await strapi.entityService.findMany(constants_1.PLATFORM_UID, { populate: '*' });
7
+ },
8
+ async findOneByUid(uid) {
9
+ return await strapi.entityService.findMany(constants_1.PLATFORM_UID, {
10
+ populate: '*',
11
+ filters: {
12
+ pagetype: {
13
+ uid
14
+ }
15
+ }
16
+ });
17
+ },
18
+ async findPageTypesByPlatform(platform) {
19
+ const results = await strapi.entityService.findMany(constants_1.PLATFORM_UID, {
20
+ populate: {
21
+ pagetype: true
22
+ },
23
+ filters: {
24
+ title: {
25
+ $eq: platform
26
+ }
27
+ }
28
+ });
29
+ if (results.length > 0) {
30
+ return results;
31
+ }
32
+ else {
33
+ return null;
34
+ }
35
+ }
36
+ };
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Pagination = void 0;
4
+ class Pagination {
5
+ static checkPagination(page, pageSize) {
6
+ const startPage = page === 1 ? 0 : page - 1;
7
+ const start = startPage * pageSize;
8
+ const limit = (startPage + 1) * pageSize;
9
+ return { start, limit };
10
+ }
11
+ static async getPaginationInfo(transformedpageArgs, transformArgs, start, pageSize, entityResponse, uid) {
12
+ var _a;
13
+ const total = await ((_a = strapi === null || strapi === void 0 ? void 0 : strapi.entityService) === null || _a === void 0 ? void 0 : _a.count(uid, {
14
+ filters: {
15
+ ...transformArgs.filters,
16
+ hasPage: { $eq: true },
17
+ page: { ...transformedpageArgs.filters }
18
+ }
19
+ }));
20
+ const pageCount = Math.ceil(total / pageSize);
21
+ const page = Math.floor(start / pageSize) + 1;
22
+ entityResponse.metaInfo = {
23
+ total,
24
+ pageCount,
25
+ page,
26
+ pageSize
27
+ };
28
+ return entityResponse;
29
+ }
30
+ }
31
+ exports.Pagination = Pagination;