@webiny/app-headless-cms 6.1.0 → 6.2.0-beta.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 (172) hide show
  1. package/HeadlessCMS.js +5 -2
  2. package/HeadlessCMS.js.map +1 -1
  3. package/admin/components/ContentEntryForm/Header/Header.js +3 -6
  4. package/admin/components/ContentEntryForm/Header/Header.js.map +1 -1
  5. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.js +1 -1
  6. package/admin/components/ContentEntryForm/Header/RevisionSelector/RevisionSelector.js.map +1 -1
  7. package/admin/contexts/Cms/index.js +32 -2
  8. package/admin/contexts/Cms/index.js.map +1 -1
  9. package/admin/hooks/usePermission.js +132 -125
  10. package/admin/hooks/usePermission.js.map +1 -1
  11. package/admin/plugins/apiInformation/index.js +3 -3
  12. package/admin/plugins/apiInformation/index.js.map +1 -1
  13. package/admin/plugins/apiInformation/placeholder.manage.graphql.d.ts +1 -0
  14. package/admin/plugins/apiInformation/placeholder.manage.graphql.js +22 -0
  15. package/admin/plugins/apiInformation/placeholder.manage.graphql.js.map +1 -0
  16. package/admin/plugins/apiInformation/placeholder.preview.graphql.d.ts +1 -0
  17. package/admin/plugins/apiInformation/placeholder.preview.graphql.js +19 -0
  18. package/admin/plugins/apiInformation/placeholder.preview.graphql.js.map +1 -0
  19. package/admin/plugins/apiInformation/placeholder.read.graphql.d.ts +1 -0
  20. package/admin/plugins/apiInformation/placeholder.read.graphql.js +20 -0
  21. package/admin/plugins/apiInformation/placeholder.read.graphql.js.map +1 -0
  22. package/admin/views/contentEntries/ContentEntriesContext.js +5 -15
  23. package/admin/views/contentEntries/ContentEntriesContext.js.map +1 -1
  24. package/admin/views/contentEntries/ContentEntriesModule.js +20 -14
  25. package/admin/views/contentEntries/ContentEntriesModule.js.map +1 -1
  26. package/admin/views/contentModels/ContentModelsDataList.js +103 -88
  27. package/admin/views/contentModels/ContentModelsDataList.js.map +1 -1
  28. package/domain/permissionsSchema.d.ts +31 -0
  29. package/domain/permissionsSchema.js +34 -0
  30. package/domain/permissionsSchema.js.map +1 -0
  31. package/exports/admin/cms.d.ts +3 -0
  32. package/exports/admin/cms.js +4 -0
  33. package/exports/admin/cms.js.map +1 -1
  34. package/features/ListCache.d.ts +29 -0
  35. package/features/ListCache.js +43 -0
  36. package/features/ListCache.js.map +1 -0
  37. package/features/contentEntry/events/EntryAfterCreateEvent.d.ts +10 -0
  38. package/features/contentEntry/events/EntryAfterCreateEvent.js +10 -0
  39. package/features/contentEntry/events/EntryAfterCreateEvent.js.map +1 -0
  40. package/features/contentEntry/events/EntryAfterDeleteEvent.d.ts +11 -0
  41. package/features/contentEntry/events/EntryAfterDeleteEvent.js +10 -0
  42. package/features/contentEntry/events/EntryAfterDeleteEvent.js.map +1 -0
  43. package/features/contentEntry/events/EntryAfterUpdateEvent.d.ts +10 -0
  44. package/features/contentEntry/events/EntryAfterUpdateEvent.js +10 -0
  45. package/features/contentEntry/events/EntryAfterUpdateEvent.js.map +1 -0
  46. package/features/contentEntry/events/abstractions.d.ts +19 -0
  47. package/features/contentEntry/events/abstractions.js +6 -0
  48. package/features/contentEntry/events/abstractions.js.map +1 -0
  49. package/features/contentEntry/events/index.d.ts +7 -0
  50. package/features/contentEntry/events/index.js +6 -0
  51. package/features/contentEntry/events/index.js.map +1 -0
  52. package/features/graphQLClient/CmsGraphQLClient.d.ts +13 -0
  53. package/features/graphQLClient/CmsGraphQLClient.js +21 -0
  54. package/features/graphQLClient/CmsGraphQLClient.js.map +1 -0
  55. package/features/graphQLClient/abstractions.d.ts +17 -0
  56. package/features/graphQLClient/abstractions.js +4 -0
  57. package/features/graphQLClient/abstractions.js.map +1 -0
  58. package/features/graphQLClient/feature.d.ts +3 -0
  59. package/features/graphQLClient/feature.js +16 -0
  60. package/features/graphQLClient/feature.js.map +1 -0
  61. package/features/graphQLClient/index.d.ts +1 -0
  62. package/features/graphQLClient/index.js +3 -0
  63. package/features/graphQLClient/index.js.map +1 -0
  64. package/features/modelGroup/abstractions.d.ts +6 -0
  65. package/features/modelGroup/abstractions.js +4 -0
  66. package/features/modelGroup/abstractions.js.map +1 -0
  67. package/features/modelGroup/createModelGroup/CreateModelGroupGateway.d.ts +23 -0
  68. package/features/modelGroup/createModelGroup/CreateModelGroupGateway.js +59 -0
  69. package/features/modelGroup/createModelGroup/CreateModelGroupGateway.js.map +1 -0
  70. package/features/modelGroup/createModelGroup/CreateModelGroupRepository.d.ts +13 -0
  71. package/features/modelGroup/createModelGroup/CreateModelGroupRepository.js +19 -0
  72. package/features/modelGroup/createModelGroup/CreateModelGroupRepository.js.map +1 -0
  73. package/features/modelGroup/createModelGroup/CreateModelGroupUseCase.d.ts +10 -0
  74. package/features/modelGroup/createModelGroup/CreateModelGroupUseCase.js +15 -0
  75. package/features/modelGroup/createModelGroup/CreateModelGroupUseCase.js.map +1 -0
  76. package/features/modelGroup/createModelGroup/abstractions.d.ts +29 -0
  77. package/features/modelGroup/createModelGroup/abstractions.js +15 -0
  78. package/features/modelGroup/createModelGroup/abstractions.js.map +1 -0
  79. package/features/modelGroup/createModelGroup/feature.d.ts +3 -0
  80. package/features/modelGroup/createModelGroup/feature.js +20 -0
  81. package/features/modelGroup/createModelGroup/feature.js.map +1 -0
  82. package/features/modelGroup/deleteModelGroup/DeleteModelGroupGateway.d.ts +21 -0
  83. package/features/modelGroup/deleteModelGroup/DeleteModelGroupGateway.js +41 -0
  84. package/features/modelGroup/deleteModelGroup/DeleteModelGroupGateway.js.map +1 -0
  85. package/features/modelGroup/deleteModelGroup/DeleteModelGroupRepository.d.ts +12 -0
  86. package/features/modelGroup/deleteModelGroup/DeleteModelGroupRepository.js +18 -0
  87. package/features/modelGroup/deleteModelGroup/DeleteModelGroupRepository.js.map +1 -0
  88. package/features/modelGroup/deleteModelGroup/DeleteModelGroupUseCase.d.ts +10 -0
  89. package/features/modelGroup/deleteModelGroup/DeleteModelGroupUseCase.js +15 -0
  90. package/features/modelGroup/deleteModelGroup/DeleteModelGroupUseCase.js.map +1 -0
  91. package/features/modelGroup/deleteModelGroup/abstractions.d.ts +21 -0
  92. package/features/modelGroup/deleteModelGroup/abstractions.js +15 -0
  93. package/features/modelGroup/deleteModelGroup/abstractions.js.map +1 -0
  94. package/features/modelGroup/deleteModelGroup/feature.d.ts +3 -0
  95. package/features/modelGroup/deleteModelGroup/feature.js +20 -0
  96. package/features/modelGroup/deleteModelGroup/feature.js.map +1 -0
  97. package/features/modelGroup/feature.d.ts +1 -0
  98. package/features/modelGroup/feature.js +21 -0
  99. package/features/modelGroup/feature.js.map +1 -0
  100. package/features/modelGroup/getModelGroup/GetModelGroupGateway.d.ts +22 -0
  101. package/features/modelGroup/getModelGroup/GetModelGroupGateway.js +55 -0
  102. package/features/modelGroup/getModelGroup/GetModelGroupGateway.js.map +1 -0
  103. package/features/modelGroup/getModelGroup/GetModelGroupRepository.d.ts +12 -0
  104. package/features/modelGroup/getModelGroup/GetModelGroupRepository.js +19 -0
  105. package/features/modelGroup/getModelGroup/GetModelGroupRepository.js.map +1 -0
  106. package/features/modelGroup/getModelGroup/GetModelGroupUseCase.d.ts +10 -0
  107. package/features/modelGroup/getModelGroup/GetModelGroupUseCase.js +15 -0
  108. package/features/modelGroup/getModelGroup/GetModelGroupUseCase.js.map +1 -0
  109. package/features/modelGroup/getModelGroup/abstractions.d.ts +22 -0
  110. package/features/modelGroup/getModelGroup/abstractions.js +15 -0
  111. package/features/modelGroup/getModelGroup/abstractions.js.map +1 -0
  112. package/features/modelGroup/getModelGroup/feature.d.ts +3 -0
  113. package/features/modelGroup/getModelGroup/feature.js +20 -0
  114. package/features/modelGroup/getModelGroup/feature.js.map +1 -0
  115. package/features/modelGroup/listModelGroups/ListModelGroupsGateway.d.ts +19 -0
  116. package/features/modelGroup/listModelGroups/ListModelGroupsGateway.js +56 -0
  117. package/features/modelGroup/listModelGroups/ListModelGroupsGateway.js.map +1 -0
  118. package/features/modelGroup/listModelGroups/ListModelGroupsRepository.d.ts +12 -0
  119. package/features/modelGroup/listModelGroups/ListModelGroupsRepository.js +23 -0
  120. package/features/modelGroup/listModelGroups/ListModelGroupsRepository.js.map +1 -0
  121. package/features/modelGroup/listModelGroups/ListModelGroupsUseCase.d.ts +10 -0
  122. package/features/modelGroup/listModelGroups/ListModelGroupsUseCase.js +15 -0
  123. package/features/modelGroup/listModelGroups/ListModelGroupsUseCase.js.map +1 -0
  124. package/features/modelGroup/listModelGroups/abstractions.d.ts +39 -0
  125. package/features/modelGroup/listModelGroups/abstractions.js +15 -0
  126. package/features/modelGroup/listModelGroups/abstractions.js.map +1 -0
  127. package/features/modelGroup/listModelGroups/feature.d.ts +3 -0
  128. package/features/modelGroup/listModelGroups/feature.js +20 -0
  129. package/features/modelGroup/listModelGroups/feature.js.map +1 -0
  130. package/features/modelGroup/updateModelGroup/UpdateModelGroupGateway.d.ts +24 -0
  131. package/features/modelGroup/updateModelGroup/UpdateModelGroupGateway.js +56 -0
  132. package/features/modelGroup/updateModelGroup/UpdateModelGroupGateway.js.map +1 -0
  133. package/features/modelGroup/updateModelGroup/UpdateModelGroupRepository.d.ts +13 -0
  134. package/features/modelGroup/updateModelGroup/UpdateModelGroupRepository.js +31 -0
  135. package/features/modelGroup/updateModelGroup/UpdateModelGroupRepository.js.map +1 -0
  136. package/features/modelGroup/updateModelGroup/UpdateModelGroupUseCase.d.ts +10 -0
  137. package/features/modelGroup/updateModelGroup/UpdateModelGroupUseCase.js +15 -0
  138. package/features/modelGroup/updateModelGroup/UpdateModelGroupUseCase.js.map +1 -0
  139. package/features/modelGroup/updateModelGroup/abstractions.d.ts +30 -0
  140. package/features/modelGroup/updateModelGroup/abstractions.js +15 -0
  141. package/features/modelGroup/updateModelGroup/abstractions.js.map +1 -0
  142. package/features/modelGroup/updateModelGroup/feature.d.ts +3 -0
  143. package/features/modelGroup/updateModelGroup/feature.js +20 -0
  144. package/features/modelGroup/updateModelGroup/feature.js.map +1 -0
  145. package/features/permissions/abstractions.d.ts +17 -0
  146. package/features/permissions/abstractions.js +5 -0
  147. package/features/permissions/abstractions.js.map +1 -0
  148. package/features/permissions/feature.d.ts +14 -0
  149. package/features/permissions/feature.js +6 -0
  150. package/features/permissions/feature.js.map +1 -0
  151. package/package.json +29 -30
  152. package/presentation/modelGroup/hooks/index.d.ts +5 -0
  153. package/presentation/modelGroup/hooks/index.js +7 -0
  154. package/presentation/modelGroup/hooks/index.js.map +1 -0
  155. package/presentation/modelGroup/hooks/useCreateModelGroup.d.ts +4 -0
  156. package/presentation/modelGroup/hooks/useCreateModelGroup.js +12 -0
  157. package/presentation/modelGroup/hooks/useCreateModelGroup.js.map +1 -0
  158. package/presentation/modelGroup/hooks/useDeleteModelGroup.d.ts +3 -0
  159. package/presentation/modelGroup/hooks/useDeleteModelGroup.js +12 -0
  160. package/presentation/modelGroup/hooks/useDeleteModelGroup.js.map +1 -0
  161. package/presentation/modelGroup/hooks/useGetModelGroup.d.ts +3 -0
  162. package/presentation/modelGroup/hooks/useGetModelGroup.js +12 -0
  163. package/presentation/modelGroup/hooks/useGetModelGroup.js.map +1 -0
  164. package/presentation/modelGroup/hooks/useListModelGroups.d.ts +3 -0
  165. package/presentation/modelGroup/hooks/useListModelGroups.js +16 -0
  166. package/presentation/modelGroup/hooks/useListModelGroups.js.map +1 -0
  167. package/presentation/modelGroup/hooks/useUpdateModelGroup.d.ts +4 -0
  168. package/presentation/modelGroup/hooks/useUpdateModelGroup.js +12 -0
  169. package/presentation/modelGroup/hooks/useUpdateModelGroup.js.map +1 -0
  170. package/admin/plugins/apiInformation/placeholder.manage.graphql +0 -18
  171. package/admin/plugins/apiInformation/placeholder.preview.graphql +0 -15
  172. package/admin/plugins/apiInformation/placeholder.read.graphql +0 -16
@@ -0,0 +1,15 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+
3
+ // Use Case
4
+
5
+ export const CreateModelGroupUseCase = createAbstraction("CreateModelGroupUseCase");
6
+
7
+ // Repository
8
+
9
+ export const CreateModelGroupRepository = createAbstraction("CreateModelGroupRepository");
10
+
11
+ // Gateway
12
+
13
+ export const CreateModelGroupGateway = createAbstraction("CreateModelGroupGateway");
14
+
15
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","CreateModelGroupUseCase","CreateModelGroupRepository","CreateModelGroupGateway"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { ModelGroupDto } from \"../listModelGroups/abstractions.js\";\n\n// Use Case\n\nexport interface CreateModelGroupParams {\n name: string;\n slug: string;\n description?: string;\n icon: string;\n}\n\nexport interface ICreateModelGroupUseCase {\n execute: (params: CreateModelGroupParams) => Promise<ModelGroupDto>;\n}\n\nexport const CreateModelGroupUseCase =\n createAbstraction<ICreateModelGroupUseCase>(\"CreateModelGroupUseCase\");\n\nexport namespace CreateModelGroupUseCase {\n export type Interface = ICreateModelGroupUseCase;\n export type Params = CreateModelGroupParams;\n}\n\n// Repository\n\nexport interface ICreateModelGroupRepository {\n execute: (params: CreateModelGroupParams) => Promise<ModelGroupDto>;\n}\n\nexport const CreateModelGroupRepository = createAbstraction<ICreateModelGroupRepository>(\n \"CreateModelGroupRepository\"\n);\n\nexport namespace CreateModelGroupRepository {\n export type Interface = ICreateModelGroupRepository;\n}\n\n// Gateway\n\nexport interface ICreateModelGroupGateway {\n execute: (data: CreateModelGroupParams) => Promise<ModelGroupDto>;\n}\n\nexport const CreateModelGroupGateway =\n createAbstraction<ICreateModelGroupGateway>(\"CreateModelGroupGateway\");\n\nexport namespace CreateModelGroupGateway {\n export type Interface = ICreateModelGroupGateway;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,uBAAuB;;AAGzD;;AAaA,OAAO,MAAMC,uBAAuB,GAChCD,iBAAiB,CAA2B,yBAAyB,CAAC;;AAO1E;;AAMA,OAAO,MAAME,0BAA0B,GAAGF,iBAAiB,CACvD,4BACJ,CAAC;;AAMD;;AAMA,OAAO,MAAMG,uBAAuB,GAChCH,iBAAiB,CAA2B,yBAAyB,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export declare const CreateModelGroupFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ useCase: import("./abstractions.js").ICreateModelGroupUseCase;
3
+ }, []>;
@@ -0,0 +1,20 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { CreateModelGroupUseCase as UseCase } from "./abstractions.js";
3
+ import { CreateModelGroupUseCase } from "./CreateModelGroupUseCase.js";
4
+ import { CreateModelGroupRepository } from "./CreateModelGroupRepository.js";
5
+ import { CreateModelGroupGateway } from "./CreateModelGroupGateway.js";
6
+ export const CreateModelGroupFeature = createFeature({
7
+ name: "CreateModelGroup",
8
+ register(container) {
9
+ container.register(CreateModelGroupUseCase);
10
+ container.register(CreateModelGroupRepository).inSingletonScope();
11
+ container.register(CreateModelGroupGateway);
12
+ },
13
+ resolve(container) {
14
+ return {
15
+ useCase: container.resolve(UseCase)
16
+ };
17
+ }
18
+ });
19
+
20
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","CreateModelGroupUseCase","UseCase","CreateModelGroupRepository","CreateModelGroupGateway","CreateModelGroupFeature","name","register","container","inSingletonScope","resolve","useCase"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { CreateModelGroupUseCase as UseCase } from \"./abstractions.js\";\nimport { CreateModelGroupUseCase } from \"./CreateModelGroupUseCase.js\";\nimport { CreateModelGroupRepository } from \"./CreateModelGroupRepository.js\";\nimport { CreateModelGroupGateway } from \"./CreateModelGroupGateway.js\";\n\nexport const CreateModelGroupFeature = createFeature({\n name: \"CreateModelGroup\",\n register(container) {\n container.register(CreateModelGroupUseCase);\n container.register(CreateModelGroupRepository).inSingletonScope();\n container.register(CreateModelGroupGateway);\n },\n resolve(container) {\n return {\n useCase: container.resolve(UseCase)\n };\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,uBAAuB,IAAIC,OAAO;AAC3C,SAASD,uBAAuB;AAChC,SAASE,0BAA0B;AACnC,SAASC,uBAAuB;AAEhC,OAAO,MAAMC,uBAAuB,GAAGL,aAAa,CAAC;EACjDM,IAAI,EAAE,kBAAkB;EACxBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACN,uBAAuB,CAAC;IAC3CO,SAAS,CAACD,QAAQ,CAACJ,0BAA0B,CAAC,CAACM,gBAAgB,CAAC,CAAC;IACjED,SAAS,CAACD,QAAQ,CAACH,uBAAuB,CAAC;EAC/C,CAAC;EACDM,OAAOA,CAACF,SAAS,EAAE;IACf,OAAO;MACHG,OAAO,EAAEH,SAAS,CAACE,OAAO,CAACR,OAAO;IACtC,CAAC;EACL;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ import { CmsGraphQLClient } from "../../../features/graphQLClient/abstractions.js";
2
+ import type { CmsErrorResponse } from "../../../types.js";
3
+ import { DeleteModelGroupGateway as GatewayAbstraction } from "./abstractions.js";
4
+ export interface DeleteModelGroupResponse {
5
+ deleteContentModelGroup: {
6
+ data: boolean | null;
7
+ error: CmsErrorResponse | null;
8
+ };
9
+ }
10
+ export interface DeleteModelGroupVariables {
11
+ id: string;
12
+ }
13
+ declare class DeleteModelGroupGatewayImpl implements GatewayAbstraction.Interface {
14
+ private client;
15
+ constructor(client: CmsGraphQLClient.Interface);
16
+ execute(id: string): Promise<void>;
17
+ }
18
+ export declare const DeleteModelGroupGateway: typeof DeleteModelGroupGatewayImpl & {
19
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IDeleteModelGroupGateway>;
20
+ };
21
+ export {};
@@ -0,0 +1,41 @@
1
+ import gql from "graphql-tag";
2
+ import { CmsGraphQLClient } from "../../graphQLClient/abstractions.js";
3
+ import { DeleteModelGroupGateway as GatewayAbstraction } from "./abstractions.js";
4
+ const DELETE_CONTENT_MODEL_GROUP = gql`
5
+ mutation CmsDeleteContentModelGroup($id: ID!) {
6
+ deleteContentModelGroup(id: $id) {
7
+ data
8
+ error {
9
+ message
10
+ code
11
+ data
12
+ }
13
+ }
14
+ }
15
+ `;
16
+ class DeleteModelGroupGatewayImpl {
17
+ constructor(client) {
18
+ this.client = client;
19
+ }
20
+ async execute(id) {
21
+ const response = await this.client.execute({
22
+ query: DELETE_CONTENT_MODEL_GROUP,
23
+ variables: {
24
+ id
25
+ }
26
+ });
27
+ const {
28
+ data,
29
+ error
30
+ } = response.deleteContentModelGroup;
31
+ if (!data) {
32
+ throw new Error(error?.message || "Could not delete model group");
33
+ }
34
+ }
35
+ }
36
+ export const DeleteModelGroupGateway = GatewayAbstraction.createImplementation({
37
+ implementation: DeleteModelGroupGatewayImpl,
38
+ dependencies: [CmsGraphQLClient]
39
+ });
40
+
41
+ //# sourceMappingURL=DeleteModelGroupGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["gql","CmsGraphQLClient","DeleteModelGroupGateway","GatewayAbstraction","DELETE_CONTENT_MODEL_GROUP","DeleteModelGroupGatewayImpl","constructor","client","execute","id","response","query","variables","data","error","deleteContentModelGroup","Error","message","createImplementation","implementation","dependencies"],"sources":["DeleteModelGroupGateway.ts"],"sourcesContent":["import gql from \"graphql-tag\";\nimport { CmsGraphQLClient } from \"~/features/graphQLClient/abstractions.js\";\nimport type { CmsErrorResponse } from \"~/types.js\";\nimport { DeleteModelGroupGateway as GatewayAbstraction } from \"./abstractions.js\";\n\nexport interface DeleteModelGroupResponse {\n deleteContentModelGroup: {\n data: boolean | null;\n error: CmsErrorResponse | null;\n };\n}\n\nexport interface DeleteModelGroupVariables {\n id: string;\n}\n\nconst DELETE_CONTENT_MODEL_GROUP = gql`\n mutation CmsDeleteContentModelGroup($id: ID!) {\n deleteContentModelGroup(id: $id) {\n data\n error {\n message\n code\n data\n }\n }\n }\n`;\n\nclass DeleteModelGroupGatewayImpl implements GatewayAbstraction.Interface {\n constructor(private client: CmsGraphQLClient.Interface) {}\n\n async execute(id: string) {\n const response = await this.client.execute<\n DeleteModelGroupResponse,\n DeleteModelGroupVariables\n >({\n query: DELETE_CONTENT_MODEL_GROUP,\n variables: { id }\n });\n\n const { data, error } = response.deleteContentModelGroup;\n\n if (!data) {\n throw new Error(error?.message || \"Could not delete model group\");\n }\n }\n}\n\nexport const DeleteModelGroupGateway = GatewayAbstraction.createImplementation({\n implementation: DeleteModelGroupGatewayImpl,\n dependencies: [CmsGraphQLClient]\n});\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,aAAa;AAC7B,SAASC,gBAAgB;AAEzB,SAASC,uBAAuB,IAAIC,kBAAkB;AAatD,MAAMC,0BAA0B,GAAGJ,GAAG;AACtC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,MAAMK,2BAA2B,CAAyC;EACtEC,WAAWA,CAASC,MAAkC,EAAE;IAAA,KAApCA,MAAkC,GAAlCA,MAAkC;EAAG;EAEzD,MAAMC,OAAOA,CAACC,EAAU,EAAE;IACtB,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACH,MAAM,CAACC,OAAO,CAGxC;MACEG,KAAK,EAAEP,0BAA0B;MACjCQ,SAAS,EAAE;QAAEH;MAAG;IACpB,CAAC,CAAC;IAEF,MAAM;MAAEI,IAAI;MAAEC;IAAM,CAAC,GAAGJ,QAAQ,CAACK,uBAAuB;IAExD,IAAI,CAACF,IAAI,EAAE;MACP,MAAM,IAAIG,KAAK,CAACF,KAAK,EAAEG,OAAO,IAAI,8BAA8B,CAAC;IACrE;EACJ;AACJ;AAEA,OAAO,MAAMf,uBAAuB,GAAGC,kBAAkB,CAACe,oBAAoB,CAAC;EAC3EC,cAAc,EAAEd,2BAA2B;EAC3Ce,YAAY,EAAE,CAACnB,gBAAgB;AACnC,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import { DeleteModelGroupRepository as RepositoryAbstraction, DeleteModelGroupGateway } from "./abstractions.js";
2
+ import { ModelGroupsCache } from "../../../features/modelGroup/abstractions.js";
3
+ declare class DeleteModelGroupRepositoryImpl implements RepositoryAbstraction.Interface {
4
+ private cache;
5
+ private gateway;
6
+ constructor(cache: ModelGroupsCache.Interface, gateway: DeleteModelGroupGateway.Interface);
7
+ execute(id: string): Promise<void>;
8
+ }
9
+ export declare const DeleteModelGroupRepository: typeof DeleteModelGroupRepositoryImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IDeleteModelGroupRepository>;
11
+ };
12
+ export {};
@@ -0,0 +1,18 @@
1
+ import { DeleteModelGroupRepository as RepositoryAbstraction, DeleteModelGroupGateway } from "./abstractions.js";
2
+ import { ModelGroupsCache } from "../abstractions.js";
3
+ class DeleteModelGroupRepositoryImpl {
4
+ constructor(cache, gateway) {
5
+ this.cache = cache;
6
+ this.gateway = gateway;
7
+ }
8
+ async execute(id) {
9
+ await this.gateway.execute(id);
10
+ this.cache.removeItems(group => group.id === id);
11
+ }
12
+ }
13
+ export const DeleteModelGroupRepository = RepositoryAbstraction.createImplementation({
14
+ implementation: DeleteModelGroupRepositoryImpl,
15
+ dependencies: [ModelGroupsCache, DeleteModelGroupGateway]
16
+ });
17
+
18
+ //# sourceMappingURL=DeleteModelGroupRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DeleteModelGroupRepository","RepositoryAbstraction","DeleteModelGroupGateway","ModelGroupsCache","DeleteModelGroupRepositoryImpl","constructor","cache","gateway","execute","id","removeItems","group","createImplementation","implementation","dependencies"],"sources":["DeleteModelGroupRepository.ts"],"sourcesContent":["import {\n DeleteModelGroupRepository as RepositoryAbstraction,\n DeleteModelGroupGateway\n} from \"./abstractions.js\";\nimport { ModelGroupsCache } from \"~/features/modelGroup/abstractions.js\";\n\nclass DeleteModelGroupRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private cache: ModelGroupsCache.Interface,\n private gateway: DeleteModelGroupGateway.Interface\n ) {}\n\n async execute(id: string) {\n await this.gateway.execute(id);\n this.cache.removeItems(group => group.id === id);\n }\n}\n\nexport const DeleteModelGroupRepository = RepositoryAbstraction.createImplementation({\n implementation: DeleteModelGroupRepositoryImpl,\n dependencies: [ModelGroupsCache, DeleteModelGroupGateway]\n});\n"],"mappings":"AAAA,SACIA,0BAA0B,IAAIC,qBAAqB,EACnDC,uBAAuB;AAE3B,SAASC,gBAAgB;AAEzB,MAAMC,8BAA8B,CAA4C;EAC5EC,WAAWA,CACCC,KAAiC,EACjCC,OAA0C,EACpD;IAAA,KAFUD,KAAiC,GAAjCA,KAAiC;IAAA,KACjCC,OAA0C,GAA1CA,OAA0C;EACnD;EAEH,MAAMC,OAAOA,CAACC,EAAU,EAAE;IACtB,MAAM,IAAI,CAACF,OAAO,CAACC,OAAO,CAACC,EAAE,CAAC;IAC9B,IAAI,CAACH,KAAK,CAACI,WAAW,CAACC,KAAK,IAAIA,KAAK,CAACF,EAAE,KAAKA,EAAE,CAAC;EACpD;AACJ;AAEA,OAAO,MAAMT,0BAA0B,GAAGC,qBAAqB,CAACW,oBAAoB,CAAC;EACjFC,cAAc,EAAET,8BAA8B;EAC9CU,YAAY,EAAE,CAACX,gBAAgB,EAAED,uBAAuB;AAC5D,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import { DeleteModelGroupUseCase as UseCaseAbstraction, DeleteModelGroupRepository } from "./abstractions.js";
2
+ declare class DeleteModelGroupUseCaseImpl implements UseCaseAbstraction.Interface {
3
+ private repository;
4
+ constructor(repository: DeleteModelGroupRepository.Interface);
5
+ execute(id: string): Promise<void>;
6
+ }
7
+ export declare const DeleteModelGroupUseCase: typeof DeleteModelGroupUseCaseImpl & {
8
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IDeleteModelGroupUseCase>;
9
+ };
10
+ export {};
@@ -0,0 +1,15 @@
1
+ import { DeleteModelGroupUseCase as UseCaseAbstraction, DeleteModelGroupRepository } from "./abstractions.js";
2
+ class DeleteModelGroupUseCaseImpl {
3
+ constructor(repository) {
4
+ this.repository = repository;
5
+ }
6
+ async execute(id) {
7
+ await this.repository.execute(id);
8
+ }
9
+ }
10
+ export const DeleteModelGroupUseCase = UseCaseAbstraction.createImplementation({
11
+ implementation: DeleteModelGroupUseCaseImpl,
12
+ dependencies: [DeleteModelGroupRepository]
13
+ });
14
+
15
+ //# sourceMappingURL=DeleteModelGroupUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DeleteModelGroupUseCase","UseCaseAbstraction","DeleteModelGroupRepository","DeleteModelGroupUseCaseImpl","constructor","repository","execute","id","createImplementation","implementation","dependencies"],"sources":["DeleteModelGroupUseCase.ts"],"sourcesContent":["import {\n DeleteModelGroupUseCase as UseCaseAbstraction,\n DeleteModelGroupRepository\n} from \"./abstractions.js\";\n\nclass DeleteModelGroupUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: DeleteModelGroupRepository.Interface) {}\n\n async execute(id: string) {\n await this.repository.execute(id);\n }\n}\n\nexport const DeleteModelGroupUseCase = UseCaseAbstraction.createImplementation({\n implementation: DeleteModelGroupUseCaseImpl,\n dependencies: [DeleteModelGroupRepository]\n});\n"],"mappings":"AAAA,SACIA,uBAAuB,IAAIC,kBAAkB,EAC7CC,0BAA0B;AAG9B,MAAMC,2BAA2B,CAAyC;EACtEC,WAAWA,CAASC,UAAgD,EAAE;IAAA,KAAlDA,UAAgD,GAAhDA,UAAgD;EAAG;EAEvE,MAAMC,OAAOA,CAACC,EAAU,EAAE;IACtB,MAAM,IAAI,CAACF,UAAU,CAACC,OAAO,CAACC,EAAE,CAAC;EACrC;AACJ;AAEA,OAAO,MAAMP,uBAAuB,GAAGC,kBAAkB,CAACO,oBAAoB,CAAC;EAC3EC,cAAc,EAAEN,2BAA2B;EAC3CO,YAAY,EAAE,CAACR,0BAA0B;AAC7C,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,21 @@
1
+ export interface IDeleteModelGroupUseCase {
2
+ execute: (id: string) => Promise<void>;
3
+ }
4
+ export declare const DeleteModelGroupUseCase: import("@webiny/di").Abstraction<IDeleteModelGroupUseCase>;
5
+ export declare namespace DeleteModelGroupUseCase {
6
+ type Interface = IDeleteModelGroupUseCase;
7
+ }
8
+ export interface IDeleteModelGroupRepository {
9
+ execute: (id: string) => Promise<void>;
10
+ }
11
+ export declare const DeleteModelGroupRepository: import("@webiny/di").Abstraction<IDeleteModelGroupRepository>;
12
+ export declare namespace DeleteModelGroupRepository {
13
+ type Interface = IDeleteModelGroupRepository;
14
+ }
15
+ export interface IDeleteModelGroupGateway {
16
+ execute: (id: string) => Promise<void>;
17
+ }
18
+ export declare const DeleteModelGroupGateway: import("@webiny/di").Abstraction<IDeleteModelGroupGateway>;
19
+ export declare namespace DeleteModelGroupGateway {
20
+ type Interface = IDeleteModelGroupGateway;
21
+ }
@@ -0,0 +1,15 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+
3
+ // Use Case
4
+
5
+ export const DeleteModelGroupUseCase = createAbstraction("DeleteModelGroupUseCase");
6
+
7
+ // Repository
8
+
9
+ export const DeleteModelGroupRepository = createAbstraction("DeleteModelGroupRepository");
10
+
11
+ // Gateway
12
+
13
+ export const DeleteModelGroupGateway = createAbstraction("DeleteModelGroupGateway");
14
+
15
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","DeleteModelGroupUseCase","DeleteModelGroupRepository","DeleteModelGroupGateway"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\n\n// Use Case\n\nexport interface IDeleteModelGroupUseCase {\n execute: (id: string) => Promise<void>;\n}\n\nexport const DeleteModelGroupUseCase =\n createAbstraction<IDeleteModelGroupUseCase>(\"DeleteModelGroupUseCase\");\n\nexport namespace DeleteModelGroupUseCase {\n export type Interface = IDeleteModelGroupUseCase;\n}\n\n// Repository\n\nexport interface IDeleteModelGroupRepository {\n execute: (id: string) => Promise<void>;\n}\n\nexport const DeleteModelGroupRepository = createAbstraction<IDeleteModelGroupRepository>(\n \"DeleteModelGroupRepository\"\n);\n\nexport namespace DeleteModelGroupRepository {\n export type Interface = IDeleteModelGroupRepository;\n}\n\n// Gateway\n\nexport interface IDeleteModelGroupGateway {\n execute: (id: string) => Promise<void>;\n}\n\nexport const DeleteModelGroupGateway =\n createAbstraction<IDeleteModelGroupGateway>(\"DeleteModelGroupGateway\");\n\nexport namespace DeleteModelGroupGateway {\n export type Interface = IDeleteModelGroupGateway;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,uBAAuB;;AAEzD;;AAMA,OAAO,MAAMC,uBAAuB,GAChCD,iBAAiB,CAA2B,yBAAyB,CAAC;;AAM1E;;AAMA,OAAO,MAAME,0BAA0B,GAAGF,iBAAiB,CACvD,4BACJ,CAAC;;AAMD;;AAMA,OAAO,MAAMG,uBAAuB,GAChCH,iBAAiB,CAA2B,yBAAyB,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export declare const DeleteModelGroupFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ useCase: import("./abstractions.js").IDeleteModelGroupUseCase;
3
+ }, []>;
@@ -0,0 +1,20 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { DeleteModelGroupUseCase as UseCase } from "./abstractions.js";
3
+ import { DeleteModelGroupUseCase } from "./DeleteModelGroupUseCase.js";
4
+ import { DeleteModelGroupRepository } from "./DeleteModelGroupRepository.js";
5
+ import { DeleteModelGroupGateway } from "./DeleteModelGroupGateway.js";
6
+ export const DeleteModelGroupFeature = createFeature({
7
+ name: "DeleteModelGroup",
8
+ register(container) {
9
+ container.register(DeleteModelGroupUseCase);
10
+ container.register(DeleteModelGroupRepository).inSingletonScope();
11
+ container.register(DeleteModelGroupGateway);
12
+ },
13
+ resolve(container) {
14
+ return {
15
+ useCase: container.resolve(UseCase)
16
+ };
17
+ }
18
+ });
19
+
20
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","DeleteModelGroupUseCase","UseCase","DeleteModelGroupRepository","DeleteModelGroupGateway","DeleteModelGroupFeature","name","register","container","inSingletonScope","resolve","useCase"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { DeleteModelGroupUseCase as UseCase } from \"./abstractions.js\";\nimport { DeleteModelGroupUseCase } from \"./DeleteModelGroupUseCase.js\";\nimport { DeleteModelGroupRepository } from \"./DeleteModelGroupRepository.js\";\nimport { DeleteModelGroupGateway } from \"./DeleteModelGroupGateway.js\";\n\nexport const DeleteModelGroupFeature = createFeature({\n name: \"DeleteModelGroup\",\n register(container) {\n container.register(DeleteModelGroupUseCase);\n container.register(DeleteModelGroupRepository).inSingletonScope();\n container.register(DeleteModelGroupGateway);\n },\n resolve(container) {\n return {\n useCase: container.resolve(UseCase)\n };\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,uBAAuB,IAAIC,OAAO;AAC3C,SAASD,uBAAuB;AAChC,SAASE,0BAA0B;AACnC,SAASC,uBAAuB;AAEhC,OAAO,MAAMC,uBAAuB,GAAGL,aAAa,CAAC;EACjDM,IAAI,EAAE,kBAAkB;EACxBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACN,uBAAuB,CAAC;IAC3CO,SAAS,CAACD,QAAQ,CAACJ,0BAA0B,CAAC,CAACM,gBAAgB,CAAC,CAAC;IACjED,SAAS,CAACD,QAAQ,CAACH,uBAAuB,CAAC;EAC/C,CAAC;EACDM,OAAOA,CAACF,SAAS,EAAE;IACf,OAAO;MACHG,OAAO,EAAEH,SAAS,CAACE,OAAO,CAACR,OAAO;IACtC,CAAC;EACL;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const ModelGroupFeature: import("@webiny/feature/admin").FeatureDefinition<any, []>;
@@ -0,0 +1,21 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { ModelGroupsCache } from "./abstractions.js";
3
+ import { ListModelGroupsFeature } from "./listModelGroups/feature.js";
4
+ import { GetModelGroupFeature } from "./getModelGroup/feature.js";
5
+ import { CreateModelGroupFeature } from "./createModelGroup/feature.js";
6
+ import { UpdateModelGroupFeature } from "./updateModelGroup/feature.js";
7
+ import { DeleteModelGroupFeature } from "./deleteModelGroup/feature.js";
8
+ import { ListCache } from "../ListCache.js";
9
+ export const ModelGroupFeature = createFeature({
10
+ name: "CmsModelGroup",
11
+ register(container) {
12
+ container.registerInstance(ModelGroupsCache, new ListCache());
13
+ ListModelGroupsFeature.register(container);
14
+ GetModelGroupFeature.register(container);
15
+ CreateModelGroupFeature.register(container);
16
+ UpdateModelGroupFeature.register(container);
17
+ DeleteModelGroupFeature.register(container);
18
+ }
19
+ });
20
+
21
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","ModelGroupsCache","ListModelGroupsFeature","GetModelGroupFeature","CreateModelGroupFeature","UpdateModelGroupFeature","DeleteModelGroupFeature","ListCache","ModelGroupFeature","name","register","container","registerInstance"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { ModelGroupsCache } from \"./abstractions.js\";\nimport { ListModelGroupsFeature } from \"./listModelGroups/feature.js\";\nimport { GetModelGroupFeature } from \"./getModelGroup/feature.js\";\nimport { CreateModelGroupFeature } from \"./createModelGroup/feature.js\";\nimport { UpdateModelGroupFeature } from \"./updateModelGroup/feature.js\";\nimport { DeleteModelGroupFeature } from \"./deleteModelGroup/feature.js\";\nimport type { ModelGroupDto } from \"~/features/modelGroup/listModelGroups/abstractions.js\";\nimport { ListCache } from \"~/features/ListCache.js\";\n\nexport const ModelGroupFeature = createFeature({\n name: \"CmsModelGroup\",\n register(container) {\n container.registerInstance(ModelGroupsCache, new ListCache<ModelGroupDto>());\n\n ListModelGroupsFeature.register(container);\n GetModelGroupFeature.register(container);\n CreateModelGroupFeature.register(container);\n UpdateModelGroupFeature.register(container);\n DeleteModelGroupFeature.register(container);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,gBAAgB;AACzB,SAASC,sBAAsB;AAC/B,SAASC,oBAAoB;AAC7B,SAASC,uBAAuB;AAChC,SAASC,uBAAuB;AAChC,SAASC,uBAAuB;AAEhC,SAASC,SAAS;AAElB,OAAO,MAAMC,iBAAiB,GAAGR,aAAa,CAAC;EAC3CS,IAAI,EAAE,eAAe;EACrBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACC,gBAAgB,CAACX,gBAAgB,EAAE,IAAIM,SAAS,CAAgB,CAAC,CAAC;IAE5EL,sBAAsB,CAACQ,QAAQ,CAACC,SAAS,CAAC;IAC1CR,oBAAoB,CAACO,QAAQ,CAACC,SAAS,CAAC;IACxCP,uBAAuB,CAACM,QAAQ,CAACC,SAAS,CAAC;IAC3CN,uBAAuB,CAACK,QAAQ,CAACC,SAAS,CAAC;IAC3CL,uBAAuB,CAACI,QAAQ,CAACC,SAAS,CAAC;EAC/C;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ import { CmsGraphQLClient } from "../../../features/graphQLClient/abstractions.js";
2
+ import type { CmsErrorResponse } from "../../../types.js";
3
+ import type { ModelGroupDto } from "../listModelGroups/abstractions.js";
4
+ import { GetModelGroupGateway as GatewayAbstraction } from "./abstractions.js";
5
+ export interface GetModelGroupResponse {
6
+ contentModelGroup: {
7
+ data: ModelGroupDto | null;
8
+ error: CmsErrorResponse | null;
9
+ };
10
+ }
11
+ export interface GetModelGroupVariables {
12
+ id: string;
13
+ }
14
+ declare class GetModelGroupGatewayImpl implements GatewayAbstraction.Interface {
15
+ private client;
16
+ constructor(client: CmsGraphQLClient.Interface);
17
+ execute(id: string): Promise<ModelGroupDto>;
18
+ }
19
+ export declare const GetModelGroupGateway: typeof GetModelGroupGatewayImpl & {
20
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetModelGroupGateway>;
21
+ };
22
+ export {};
@@ -0,0 +1,55 @@
1
+ import gql from "graphql-tag";
2
+ import { CmsGraphQLClient } from "../../graphQLClient/abstractions.js";
3
+ import { GetModelGroupGateway as GatewayAbstraction } from "./abstractions.js";
4
+ const GET_CONTENT_MODEL_GROUP = gql`
5
+ query CmsGetContentModelGroup($id: ID!) {
6
+ contentModelGroup: getContentModelGroup(id: $id) {
7
+ data {
8
+ id
9
+ name
10
+ slug
11
+ description
12
+ icon
13
+ createdOn
14
+ plugin
15
+ createdBy {
16
+ id
17
+ displayName
18
+ type
19
+ }
20
+ }
21
+ error {
22
+ message
23
+ code
24
+ data
25
+ }
26
+ }
27
+ }
28
+ `;
29
+ class GetModelGroupGatewayImpl {
30
+ constructor(client) {
31
+ this.client = client;
32
+ }
33
+ async execute(id) {
34
+ const response = await this.client.execute({
35
+ query: GET_CONTENT_MODEL_GROUP,
36
+ variables: {
37
+ id
38
+ }
39
+ });
40
+ const {
41
+ data,
42
+ error
43
+ } = response.contentModelGroup;
44
+ if (!data) {
45
+ throw new Error(error?.message || `Could not fetch model group with id: ${id}`);
46
+ }
47
+ return data;
48
+ }
49
+ }
50
+ export const GetModelGroupGateway = GatewayAbstraction.createImplementation({
51
+ implementation: GetModelGroupGatewayImpl,
52
+ dependencies: [CmsGraphQLClient]
53
+ });
54
+
55
+ //# sourceMappingURL=GetModelGroupGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["gql","CmsGraphQLClient","GetModelGroupGateway","GatewayAbstraction","GET_CONTENT_MODEL_GROUP","GetModelGroupGatewayImpl","constructor","client","execute","id","response","query","variables","data","error","contentModelGroup","Error","message","createImplementation","implementation","dependencies"],"sources":["GetModelGroupGateway.ts"],"sourcesContent":["import gql from \"graphql-tag\";\nimport { CmsGraphQLClient } from \"~/features/graphQLClient/abstractions.js\";\nimport type { CmsErrorResponse } from \"~/types.js\";\nimport type { ModelGroupDto } from \"../listModelGroups/abstractions.js\";\nimport { GetModelGroupGateway as GatewayAbstraction } from \"./abstractions.js\";\n\nexport interface GetModelGroupResponse {\n contentModelGroup: {\n data: ModelGroupDto | null;\n error: CmsErrorResponse | null;\n };\n}\n\nexport interface GetModelGroupVariables {\n id: string;\n}\n\nconst GET_CONTENT_MODEL_GROUP = gql`\n query CmsGetContentModelGroup($id: ID!) {\n contentModelGroup: getContentModelGroup(id: $id) {\n data {\n id\n name\n slug\n description\n icon\n createdOn\n plugin\n createdBy {\n id\n displayName\n type\n }\n }\n error {\n message\n code\n data\n }\n }\n }\n`;\n\nclass GetModelGroupGatewayImpl implements GatewayAbstraction.Interface {\n constructor(private client: CmsGraphQLClient.Interface) {}\n\n async execute(id: string) {\n const response = await this.client.execute<GetModelGroupResponse, GetModelGroupVariables>({\n query: GET_CONTENT_MODEL_GROUP,\n variables: { id }\n });\n\n const { data, error } = response.contentModelGroup;\n\n if (!data) {\n throw new Error(error?.message || `Could not fetch model group with id: ${id}`);\n }\n\n return data;\n }\n}\n\nexport const GetModelGroupGateway = GatewayAbstraction.createImplementation({\n implementation: GetModelGroupGatewayImpl,\n dependencies: [CmsGraphQLClient]\n});\n"],"mappings":"AAAA,OAAOA,GAAG,MAAM,aAAa;AAC7B,SAASC,gBAAgB;AAGzB,SAASC,oBAAoB,IAAIC,kBAAkB;AAanD,MAAMC,uBAAuB,GAAGJ,GAAG;AACnC;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAED,MAAMK,wBAAwB,CAAyC;EACnEC,WAAWA,CAASC,MAAkC,EAAE;IAAA,KAApCA,MAAkC,GAAlCA,MAAkC;EAAG;EAEzD,MAAMC,OAAOA,CAACC,EAAU,EAAE;IACtB,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACH,MAAM,CAACC,OAAO,CAAgD;MACtFG,KAAK,EAAEP,uBAAuB;MAC9BQ,SAAS,EAAE;QAAEH;MAAG;IACpB,CAAC,CAAC;IAEF,MAAM;MAAEI,IAAI;MAAEC;IAAM,CAAC,GAAGJ,QAAQ,CAACK,iBAAiB;IAElD,IAAI,CAACF,IAAI,EAAE;MACP,MAAM,IAAIG,KAAK,CAACF,KAAK,EAAEG,OAAO,IAAI,wCAAwCR,EAAE,EAAE,CAAC;IACnF;IAEA,OAAOI,IAAI;EACf;AACJ;AAEA,OAAO,MAAMX,oBAAoB,GAAGC,kBAAkB,CAACe,oBAAoB,CAAC;EACxEC,cAAc,EAAEd,wBAAwB;EACxCe,YAAY,EAAE,CAACnB,gBAAgB;AACnC,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import { GetModelGroupRepository as RepositoryAbstraction, GetModelGroupGateway } from "./abstractions.js";
2
+ import { ModelGroupsCache } from "../../../features/modelGroup/abstractions.js";
3
+ declare class GetModelGroupRepositoryImpl implements RepositoryAbstraction.Interface {
4
+ private cache;
5
+ private gateway;
6
+ constructor(cache: ModelGroupsCache.Interface, gateway: GetModelGroupGateway.Interface);
7
+ execute(id: string): Promise<import("../listModelGroups/abstractions.js").ModelGroupDto>;
8
+ }
9
+ export declare const GetModelGroupRepository: typeof GetModelGroupRepositoryImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetModelGroupRepository>;
11
+ };
12
+ export {};
@@ -0,0 +1,19 @@
1
+ import { GetModelGroupRepository as RepositoryAbstraction, GetModelGroupGateway } from "./abstractions.js";
2
+ import { ModelGroupsCache } from "../abstractions.js";
3
+ class GetModelGroupRepositoryImpl {
4
+ constructor(cache, gateway) {
5
+ this.cache = cache;
6
+ this.gateway = gateway;
7
+ }
8
+ async execute(id) {
9
+ const result = await this.gateway.execute(id);
10
+ this.cache.addItems([result]);
11
+ return result;
12
+ }
13
+ }
14
+ export const GetModelGroupRepository = RepositoryAbstraction.createImplementation({
15
+ implementation: GetModelGroupRepositoryImpl,
16
+ dependencies: [ModelGroupsCache, GetModelGroupGateway]
17
+ });
18
+
19
+ //# sourceMappingURL=GetModelGroupRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetModelGroupRepository","RepositoryAbstraction","GetModelGroupGateway","ModelGroupsCache","GetModelGroupRepositoryImpl","constructor","cache","gateway","execute","id","result","addItems","createImplementation","implementation","dependencies"],"sources":["GetModelGroupRepository.ts"],"sourcesContent":["import {\n GetModelGroupRepository as RepositoryAbstraction,\n GetModelGroupGateway\n} from \"./abstractions.js\";\nimport { ModelGroupsCache } from \"~/features/modelGroup/abstractions.js\";\n\nclass GetModelGroupRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private cache: ModelGroupsCache.Interface,\n private gateway: GetModelGroupGateway.Interface\n ) {}\n\n async execute(id: string) {\n const result = await this.gateway.execute(id);\n this.cache.addItems([result]);\n return result;\n }\n}\n\nexport const GetModelGroupRepository = RepositoryAbstraction.createImplementation({\n implementation: GetModelGroupRepositoryImpl,\n dependencies: [ModelGroupsCache, GetModelGroupGateway]\n});\n"],"mappings":"AAAA,SACIA,uBAAuB,IAAIC,qBAAqB,EAChDC,oBAAoB;AAExB,SAASC,gBAAgB;AAEzB,MAAMC,2BAA2B,CAA4C;EACzEC,WAAWA,CACCC,KAAiC,EACjCC,OAAuC,EACjD;IAAA,KAFUD,KAAiC,GAAjCA,KAAiC;IAAA,KACjCC,OAAuC,GAAvCA,OAAuC;EAChD;EAEH,MAAMC,OAAOA,CAACC,EAAU,EAAE;IACtB,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACH,OAAO,CAACC,OAAO,CAACC,EAAE,CAAC;IAC7C,IAAI,CAACH,KAAK,CAACK,QAAQ,CAAC,CAACD,MAAM,CAAC,CAAC;IAC7B,OAAOA,MAAM;EACjB;AACJ;AAEA,OAAO,MAAMV,uBAAuB,GAAGC,qBAAqB,CAACW,oBAAoB,CAAC;EAC9EC,cAAc,EAAET,2BAA2B;EAC3CU,YAAY,EAAE,CAACX,gBAAgB,EAAED,oBAAoB;AACzD,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import { GetModelGroupUseCase as UseCaseAbstraction, GetModelGroupRepository } from "./abstractions.js";
2
+ declare class GetModelGroupUseCaseImpl implements UseCaseAbstraction.Interface {
3
+ private repository;
4
+ constructor(repository: GetModelGroupRepository.Interface);
5
+ execute(id: string): Promise<import("../listModelGroups/abstractions.js").ModelGroupDto>;
6
+ }
7
+ export declare const GetModelGroupUseCase: typeof GetModelGroupUseCaseImpl & {
8
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetModelGroupUseCase>;
9
+ };
10
+ export {};
@@ -0,0 +1,15 @@
1
+ import { GetModelGroupUseCase as UseCaseAbstraction, GetModelGroupRepository } from "./abstractions.js";
2
+ class GetModelGroupUseCaseImpl {
3
+ constructor(repository) {
4
+ this.repository = repository;
5
+ }
6
+ async execute(id) {
7
+ return this.repository.execute(id);
8
+ }
9
+ }
10
+ export const GetModelGroupUseCase = UseCaseAbstraction.createImplementation({
11
+ implementation: GetModelGroupUseCaseImpl,
12
+ dependencies: [GetModelGroupRepository]
13
+ });
14
+
15
+ //# sourceMappingURL=GetModelGroupUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetModelGroupUseCase","UseCaseAbstraction","GetModelGroupRepository","GetModelGroupUseCaseImpl","constructor","repository","execute","id","createImplementation","implementation","dependencies"],"sources":["GetModelGroupUseCase.ts"],"sourcesContent":["import {\n GetModelGroupUseCase as UseCaseAbstraction,\n GetModelGroupRepository\n} from \"./abstractions.js\";\n\nclass GetModelGroupUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: GetModelGroupRepository.Interface) {}\n\n async execute(id: string) {\n return this.repository.execute(id);\n }\n}\n\nexport const GetModelGroupUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetModelGroupUseCaseImpl,\n dependencies: [GetModelGroupRepository]\n});\n"],"mappings":"AAAA,SACIA,oBAAoB,IAAIC,kBAAkB,EAC1CC,uBAAuB;AAG3B,MAAMC,wBAAwB,CAAyC;EACnEC,WAAWA,CAASC,UAA6C,EAAE;IAAA,KAA/CA,UAA6C,GAA7CA,UAA6C;EAAG;EAEpE,MAAMC,OAAOA,CAACC,EAAU,EAAE;IACtB,OAAO,IAAI,CAACF,UAAU,CAACC,OAAO,CAACC,EAAE,CAAC;EACtC;AACJ;AAEA,OAAO,MAAMP,oBAAoB,GAAGC,kBAAkB,CAACO,oBAAoB,CAAC;EACxEC,cAAc,EAAEN,wBAAwB;EACxCO,YAAY,EAAE,CAACR,uBAAuB;AAC1C,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,22 @@
1
+ import type { ModelGroupDto } from "../listModelGroups/abstractions.js";
2
+ export interface IGetModelGroupUseCase {
3
+ execute: (id: string) => Promise<ModelGroupDto>;
4
+ }
5
+ export declare const GetModelGroupUseCase: import("@webiny/di").Abstraction<IGetModelGroupUseCase>;
6
+ export declare namespace GetModelGroupUseCase {
7
+ type Interface = IGetModelGroupUseCase;
8
+ }
9
+ export interface IGetModelGroupRepository {
10
+ execute: (id: string) => Promise<ModelGroupDto>;
11
+ }
12
+ export declare const GetModelGroupRepository: import("@webiny/di").Abstraction<IGetModelGroupRepository>;
13
+ export declare namespace GetModelGroupRepository {
14
+ type Interface = IGetModelGroupRepository;
15
+ }
16
+ export interface IGetModelGroupGateway {
17
+ execute: (id: string) => Promise<ModelGroupDto>;
18
+ }
19
+ export declare const GetModelGroupGateway: import("@webiny/di").Abstraction<IGetModelGroupGateway>;
20
+ export declare namespace GetModelGroupGateway {
21
+ type Interface = IGetModelGroupGateway;
22
+ }
@@ -0,0 +1,15 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+
3
+ // Use Case
4
+
5
+ export const GetModelGroupUseCase = createAbstraction("GetModelGroupUseCase");
6
+
7
+ // Repository
8
+
9
+ export const GetModelGroupRepository = createAbstraction("GetModelGroupRepository");
10
+
11
+ // Gateway
12
+
13
+ export const GetModelGroupGateway = createAbstraction("GetModelGroupGateway");
14
+
15
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","GetModelGroupUseCase","GetModelGroupRepository","GetModelGroupGateway"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { ModelGroupDto } from \"../listModelGroups/abstractions.js\";\n\n// Use Case\n\nexport interface IGetModelGroupUseCase {\n execute: (id: string) => Promise<ModelGroupDto>;\n}\n\nexport const GetModelGroupUseCase =\n createAbstraction<IGetModelGroupUseCase>(\"GetModelGroupUseCase\");\n\nexport namespace GetModelGroupUseCase {\n export type Interface = IGetModelGroupUseCase;\n}\n\n// Repository\n\nexport interface IGetModelGroupRepository {\n execute: (id: string) => Promise<ModelGroupDto>;\n}\n\nexport const GetModelGroupRepository =\n createAbstraction<IGetModelGroupRepository>(\"GetModelGroupRepository\");\n\nexport namespace GetModelGroupRepository {\n export type Interface = IGetModelGroupRepository;\n}\n\n// Gateway\n\nexport interface IGetModelGroupGateway {\n execute: (id: string) => Promise<ModelGroupDto>;\n}\n\nexport const GetModelGroupGateway =\n createAbstraction<IGetModelGroupGateway>(\"GetModelGroupGateway\");\n\nexport namespace GetModelGroupGateway {\n export type Interface = IGetModelGroupGateway;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,uBAAuB;;AAGzD;;AAMA,OAAO,MAAMC,oBAAoB,GAC7BD,iBAAiB,CAAwB,sBAAsB,CAAC;;AAMpE;;AAMA,OAAO,MAAME,uBAAuB,GAChCF,iBAAiB,CAA2B,yBAAyB,CAAC;;AAM1E;;AAMA,OAAO,MAAMG,oBAAoB,GAC7BH,iBAAiB,CAAwB,sBAAsB,CAAC","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ export declare const GetModelGroupFeature: import("@webiny/feature/admin").FeatureDefinition<{
2
+ useCase: import("./abstractions.js").IGetModelGroupUseCase;
3
+ }, []>;
@@ -0,0 +1,20 @@
1
+ import { createFeature } from "@webiny/feature/admin";
2
+ import { GetModelGroupUseCase as UseCase } from "./abstractions.js";
3
+ import { GetModelGroupUseCase } from "./GetModelGroupUseCase.js";
4
+ import { GetModelGroupRepository } from "./GetModelGroupRepository.js";
5
+ import { GetModelGroupGateway } from "./GetModelGroupGateway.js";
6
+ export const GetModelGroupFeature = createFeature({
7
+ name: "GetModelGroup",
8
+ register(container) {
9
+ container.register(GetModelGroupUseCase);
10
+ container.register(GetModelGroupRepository).inSingletonScope();
11
+ container.register(GetModelGroupGateway);
12
+ },
13
+ resolve(container) {
14
+ return {
15
+ useCase: container.resolve(UseCase)
16
+ };
17
+ }
18
+ });
19
+
20
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","GetModelGroupUseCase","UseCase","GetModelGroupRepository","GetModelGroupGateway","GetModelGroupFeature","name","register","container","inSingletonScope","resolve","useCase"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/admin\";\nimport { GetModelGroupUseCase as UseCase } from \"./abstractions.js\";\nimport { GetModelGroupUseCase } from \"./GetModelGroupUseCase.js\";\nimport { GetModelGroupRepository } from \"./GetModelGroupRepository.js\";\nimport { GetModelGroupGateway } from \"./GetModelGroupGateway.js\";\n\nexport const GetModelGroupFeature = createFeature({\n name: \"GetModelGroup\",\n register(container) {\n container.register(GetModelGroupUseCase);\n container.register(GetModelGroupRepository).inSingletonScope();\n container.register(GetModelGroupGateway);\n },\n resolve(container) {\n return {\n useCase: container.resolve(UseCase)\n };\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,uBAAuB;AACrD,SAASC,oBAAoB,IAAIC,OAAO;AACxC,SAASD,oBAAoB;AAC7B,SAASE,uBAAuB;AAChC,SAASC,oBAAoB;AAE7B,OAAO,MAAMC,oBAAoB,GAAGL,aAAa,CAAC;EAC9CM,IAAI,EAAE,eAAe;EACrBC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACN,oBAAoB,CAAC;IACxCO,SAAS,CAACD,QAAQ,CAACJ,uBAAuB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC9DD,SAAS,CAACD,QAAQ,CAACH,oBAAoB,CAAC;EAC5C,CAAC;EACDM,OAAOA,CAACF,SAAS,EAAE;IACf,OAAO;MACHG,OAAO,EAAEH,SAAS,CAACE,OAAO,CAACR,OAAO;IACtC,CAAC;EACL;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,19 @@
1
+ import { CmsGraphQLClient } from "../../../features/graphQLClient/abstractions.js";
2
+ import type { CmsErrorResponse } from "../../../types.js";
3
+ import type { ModelGroupDto } from "./abstractions.js";
4
+ import { ListModelGroupsGateway as GatewayAbstraction } from "./abstractions.js";
5
+ export interface ListModelGroupsResponse {
6
+ listContentModelGroups: {
7
+ data: ModelGroupDto[] | null;
8
+ error: CmsErrorResponse | null;
9
+ };
10
+ }
11
+ declare class ListModelGroupsGatewayImpl implements GatewayAbstraction.Interface {
12
+ private client;
13
+ constructor(client: CmsGraphQLClient.Interface);
14
+ execute(): Promise<ModelGroupDto[]>;
15
+ }
16
+ export declare const ListModelGroupsGateway: typeof ListModelGroupsGatewayImpl & {
17
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IListModelGroupsGateway>;
18
+ };
19
+ export {};