@webbio/strapi-plugin-page-builder 0.3.7-platform → 0.3.8-legacy

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 (65) hide show
  1. package/README.md +35 -11
  2. package/admin/src/api/collection-type.ts +1 -7
  3. package/admin/src/api/page-type.ts +4 -5
  4. package/admin/src/components/EditView/CollectionTypeSearch/index.tsx +12 -15
  5. package/admin/src/components/EditView/CollectionTypeSettings/CreatePageButton/index.tsx +28 -10
  6. package/admin/src/components/EditView/CollectionTypeSettings/index.tsx +35 -80
  7. package/admin/src/components/EditView/Details/index.tsx +2 -13
  8. package/admin/src/components/EditView/PageSettings/index.tsx +5 -61
  9. package/admin/src/components/EditView/index.tsx +2 -8
  10. package/admin/src/components/PageTypeFilter/index.tsx +17 -0
  11. package/admin/src/components/PageTypeFilter/page-type-filter.tsx +130 -0
  12. package/admin/src/index.tsx +2 -2
  13. package/admin/src/utils/sanitizeModules.ts +92 -9
  14. package/dist/package.json +12 -10
  15. package/dist/server/bootstrap/permissions.js +10 -68
  16. package/dist/server/bootstrap.js +25 -41
  17. package/dist/server/controllers/collection-types.js +0 -5
  18. package/dist/server/controllers/index.js +1 -3
  19. package/dist/server/graphql/index.js +2 -2
  20. package/dist/server/graphql/page-by-slug.js +50 -44
  21. package/dist/server/graphql/pages-by-uid.js +9 -11
  22. package/dist/server/register.js +2 -2
  23. package/dist/server/routes/index.js +0 -26
  24. package/dist/server/schema/page-end.json +0 -5
  25. package/dist/server/services/builder.js +5 -15
  26. package/dist/server/services/collection-types.js +0 -7
  27. package/dist/server/services/index.js +1 -3
  28. package/dist/server/services/template.js +1 -2
  29. package/dist/server/utils/strapi.js +1 -4
  30. package/dist/shared/utils/constants.js +1 -3
  31. package/dist/tsconfig.server.tsbuildinfo +1 -1
  32. package/package.json +12 -10
  33. package/server/bootstrap/collection-type-lifecycles.ts +1 -1
  34. package/server/bootstrap/permissions.ts +10 -75
  35. package/server/bootstrap.ts +25 -44
  36. package/server/controllers/collection-types.ts +0 -5
  37. package/server/controllers/index.ts +1 -3
  38. package/server/graphql/index.ts +2 -2
  39. package/server/graphql/page-by-slug.ts +113 -0
  40. package/server/graphql/pages-by-uid.ts +9 -11
  41. package/server/register.ts +2 -2
  42. package/server/routes/index.ts +0 -26
  43. package/server/schema/page-end.json +0 -5
  44. package/server/services/builder.ts +6 -18
  45. package/server/services/collection-types.ts +1 -8
  46. package/server/services/index.ts +1 -3
  47. package/server/services/template.ts +1 -2
  48. package/server/utils/strapi.ts +1 -5
  49. package/shared/utils/constants.ts +0 -2
  50. package/admin/src/api/has-platform-relation.ts +0 -37
  51. package/admin/src/api/platform-page-types.ts +0 -40
  52. package/admin/src/api/platform.ts +0 -34
  53. package/admin/src/components/EditView/Platform/platform-select.tsx +0 -31
  54. package/admin/src/components/PageFilters/PageTypeFilter/index.tsx +0 -39
  55. package/admin/src/components/PageFilters/PlatformFilter/index.tsx +0 -28
  56. package/admin/src/components/PageFilters/filters.tsx +0 -180
  57. package/admin/src/components/PageFilters/index.tsx +0 -30
  58. package/dist/server/controllers/platform.js +0 -20
  59. package/dist/server/graphql/page-by-path.js +0 -89
  60. package/dist/server/schema/platform-start.json +0 -31
  61. package/dist/server/services/platform.js +0 -36
  62. package/server/controllers/platform.ts +0 -21
  63. package/server/graphql/page-by-path.ts +0 -105
  64. package/server/schema/platform-start.json +0 -31
  65. package/server/services/platform.ts +0 -36
@@ -1,105 +0,0 @@
1
- import { Strapi } from '@strapi/strapi';
2
-
3
- import { filterUnderscoreArguments } from '../utils/filter-underscore-arguments';
4
- import { PAGE_UID } from '../../shared/utils/constants';
5
-
6
- const getPageByPath = (strapi: Strapi) => {
7
- const typeDefs = () => {
8
- return `
9
- extend type Page {
10
- collectionType: GenericMorph
11
- }
12
-
13
- type Query {
14
- getPageByPath(path: String, _domain: String, _locale: String, _publicationState: PublicationState): PageEntity
15
- }
16
-
17
- `;
18
- };
19
-
20
- const resolvers = (strapi: Strapi) => {
21
- const { transformArgs } = strapi.plugin('graphql').service('builders').utils;
22
-
23
- return {
24
- Query: {
25
- getPageByPath: {
26
- resolve: async (_parent: any, args: Record<string, any>, ctx: any) => {
27
- try {
28
- const filteredArgs = {
29
- ...filterUnderscoreArguments(args),
30
- platform: { domain: args._domain }
31
- };
32
-
33
- const { toEntityResponse } = strapi.plugin('graphql').service('format').returnTypes;
34
-
35
- const getPage = async () => {
36
- const transformedArgs = transformArgs(filteredArgs, {
37
- contentType: strapi.contentTypes[PAGE_UID],
38
- usePagination: false
39
- });
40
-
41
- const results = await strapi.entityService?.findMany(PAGE_UID, {
42
- filters: filteredArgs,
43
- locale: args._locale,
44
- publicationState: args._publicationState,
45
- populate: '*'
46
- });
47
-
48
- const entityResponse = toEntityResponse(results?.[0] || {}, {
49
- args: transformedArgs,
50
- resourceUID: PAGE_UID
51
- });
52
-
53
- if (!entityResponse?.value || Object.keys(entityResponse.value).length === 0) {
54
- throw new Error(ctx.koaContext.response.message);
55
- }
56
-
57
- const collectionTypeDataFilter = entityResponse?.value?.collectionTypeData?.filter(Boolean);
58
-
59
- const collectionType: Record<string, any> | null =
60
- collectionTypeDataFilter.length === 1 ? collectionTypeDataFilter?.[0] : null;
61
-
62
- const addedAttributes = {
63
- collectionType: collectionType
64
- };
65
-
66
- const result = {
67
- ...entityResponse.value,
68
- ...addedAttributes
69
- };
70
-
71
- return result;
72
- };
73
-
74
- const results: Record<string, any> = await getPage();
75
-
76
- if (Object.values(results)?.filter(Boolean).length > 0) {
77
- return results;
78
- } else {
79
- throw new Error(ctx.koaContext.response.message);
80
- }
81
- } catch (error) {
82
- console.log('Error in getPageByPath:', error);
83
-
84
- throw new Error(ctx.koaContext.response.message);
85
- }
86
- }
87
- }
88
- }
89
- };
90
- };
91
-
92
- const resolversConfig = {
93
- 'Query.getPageByPath': {
94
- auth: false
95
- }
96
- };
97
-
98
- return {
99
- typeDefs: typeDefs(),
100
- resolvers: resolvers(strapi),
101
- resolversConfig
102
- };
103
- };
104
-
105
- export default getPageByPath;
@@ -1,31 +0,0 @@
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
- }
@@ -1,36 +0,0 @@
1
- import { Common } from '@strapi/strapi';
2
- import { PLATFORM_UID } from '../../shared/utils/constants';
3
-
4
- export default {
5
- async findAll() {
6
- return await strapi.entityService.findMany(PLATFORM_UID, { populate: '*' });
7
- },
8
- async findOneByUid(uid: Common.UID.ContentType) {
9
- return await strapi.entityService.findMany(PLATFORM_UID, {
10
- populate: '*',
11
- filters: {
12
- pagetype: {
13
- uid
14
- }
15
- }
16
- });
17
- },
18
- async findPageTypesByPlatform(platform: string) {
19
- const results = await strapi.entityService.findMany(PLATFORM_UID, {
20
- populate: {
21
- pagetype: true
22
- },
23
- filters: {
24
- title: {
25
- $eq: platform
26
- }
27
- }
28
- });
29
-
30
- if ((results as any[]).length > 0) {
31
- return results;
32
- } else {
33
- return null;
34
- }
35
- }
36
- };