@webiny/api-aco 0.0.0-unstable.c7dec08bb0 → 0.0.0-unstable.d0f34a8194

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 (650) hide show
  1. package/AcoFeature.d.ts +5 -0
  2. package/AcoFeature.js +134 -0
  3. package/AcoFeature.js.map +1 -0
  4. package/AcoFolderSchemaFactory.d.ts +32 -0
  5. package/AcoFolderSchemaFactory.js +82 -0
  6. package/AcoFolderSchemaFactory.js.map +1 -0
  7. package/README.md +6 -28
  8. package/constants.d.ts +2 -0
  9. package/constants.js +5 -0
  10. package/constants.js.map +1 -0
  11. package/createAcoGraphQL.d.ts +8 -3
  12. package/createAcoGraphQL.js +59 -110
  13. package/createAcoGraphQL.js.map +1 -1
  14. package/domain/folder/abstractions.d.ts +16 -0
  15. package/domain/folder/abstractions.js +5 -0
  16. package/domain/folder/abstractions.js.map +1 -0
  17. package/domain/folder/errors.d.ts +29 -0
  18. package/domain/folder/errors.js +51 -0
  19. package/domain/folder/errors.js.map +1 -0
  20. package/domain/folder/folder.model.d.ts +9 -0
  21. package/domain/folder/folder.model.js +59 -0
  22. package/domain/folder/folder.model.js.map +1 -0
  23. package/exports/api/aco/flp.d.ts +7 -0
  24. package/exports/api/aco/flp.js +7 -0
  25. package/exports/api/aco/folder.d.ts +11 -0
  26. package/exports/api/aco/folder.js +10 -0
  27. package/features/ai/CreateFolderTool.d.ts +49 -0
  28. package/features/ai/CreateFolderTool.js +58 -0
  29. package/features/ai/CreateFolderTool.js.map +1 -0
  30. package/features/ai/CreateTeamTool.d.ts +48 -0
  31. package/features/ai/CreateTeamTool.js +56 -0
  32. package/features/ai/CreateTeamTool.js.map +1 -0
  33. package/features/ai/DeleteFolderTool.d.ts +48 -0
  34. package/features/ai/DeleteFolderTool.js +55 -0
  35. package/features/ai/DeleteFolderTool.js.map +1 -0
  36. package/features/ai/GrantFolderAccessTool.d.ts +77 -0
  37. package/features/ai/GrantFolderAccessTool.js +80 -0
  38. package/features/ai/GrantFolderAccessTool.js.map +1 -0
  39. package/features/ai/ListFoldersTool.d.ts +47 -0
  40. package/features/ai/ListFoldersTool.js +57 -0
  41. package/features/ai/ListFoldersTool.js.map +1 -0
  42. package/features/ai/ListRolesTool.d.ts +39 -0
  43. package/features/ai/ListRolesTool.js +48 -0
  44. package/features/ai/ListRolesTool.js.map +1 -0
  45. package/features/ai/ListTeamsTool.d.ts +39 -0
  46. package/features/ai/ListTeamsTool.js +48 -0
  47. package/features/ai/ListTeamsTool.js.map +1 -0
  48. package/features/ai/RevokeFolderAccessTool.d.ts +63 -0
  49. package/features/ai/RevokeFolderAccessTool.js +69 -0
  50. package/features/ai/RevokeFolderAccessTool.js.map +1 -0
  51. package/features/ai/assertTargetIsUsable.d.ts +10 -0
  52. package/features/ai/assertTargetIsUsable.js +14 -0
  53. package/features/ai/assertTargetIsUsable.js.map +1 -0
  54. package/features/ai/feature.d.ts +12 -0
  55. package/features/ai/feature.js +25 -0
  56. package/features/ai/feature.js.map +1 -0
  57. package/features/ai/index.d.ts +9 -0
  58. package/features/ai/index.js +9 -0
  59. package/features/ai/loadFolderPermissions.d.ts +16 -0
  60. package/features/ai/loadFolderPermissions.js +14 -0
  61. package/features/ai/loadFolderPermissions.js.map +1 -0
  62. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.d.ts +13 -0
  63. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js +39 -0
  64. package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js.map +1 -0
  65. package/features/cms/decorators/CreateEntryWithFlpDecorator.d.ts +12 -0
  66. package/features/cms/decorators/CreateEntryWithFlpDecorator.js +33 -0
  67. package/features/cms/decorators/CreateEntryWithFlpDecorator.js.map +1 -0
  68. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.d.ts +13 -0
  69. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js +39 -0
  70. package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js.map +1 -0
  71. package/features/cms/decorators/DeleteEntryWithFlpDecorator.d.ts +13 -0
  72. package/features/cms/decorators/DeleteEntryWithFlpDecorator.js +41 -0
  73. package/features/cms/decorators/DeleteEntryWithFlpDecorator.js.map +1 -0
  74. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.d.ts +12 -0
  75. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js +36 -0
  76. package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js.map +1 -0
  77. package/features/cms/decorators/GetEntryWithFlpDecorator.d.ts +12 -0
  78. package/features/cms/decorators/GetEntryWithFlpDecorator.js +36 -0
  79. package/features/cms/decorators/GetEntryWithFlpDecorator.js.map +1 -0
  80. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.d.ts +13 -0
  81. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js +41 -0
  82. package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js.map +1 -0
  83. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.d.ts +13 -0
  84. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js +41 -0
  85. package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js.map +1 -0
  86. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.d.ts +11 -0
  87. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js +36 -0
  88. package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js.map +1 -0
  89. package/features/cms/decorators/ListEntriesWithFlpDecorator.d.ts +11 -0
  90. package/features/cms/decorators/ListEntriesWithFlpDecorator.js +36 -0
  91. package/features/cms/decorators/ListEntriesWithFlpDecorator.js.map +1 -0
  92. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.d.ts +11 -0
  93. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js +36 -0
  94. package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js.map +1 -0
  95. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.d.ts +11 -0
  96. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js +36 -0
  97. package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js.map +1 -0
  98. package/features/cms/decorators/MoveEntryWithFlpDecorator.d.ts +15 -0
  99. package/features/cms/decorators/MoveEntryWithFlpDecorator.js +49 -0
  100. package/features/cms/decorators/MoveEntryWithFlpDecorator.js.map +1 -0
  101. package/features/cms/decorators/UpdateEntryWithFlpDecorator.d.ts +14 -0
  102. package/features/cms/decorators/UpdateEntryWithFlpDecorator.js +39 -0
  103. package/features/cms/decorators/UpdateEntryWithFlpDecorator.js.map +1 -0
  104. package/features/cms/feature.d.ts +4 -0
  105. package/features/cms/feature.js +37 -0
  106. package/features/cms/feature.js.map +1 -0
  107. package/features/cms/index.d.ts +1 -0
  108. package/features/cms/index.js +1 -0
  109. package/features/flp/CreateFlp/CreateFlpUseCase.d.ts +8 -0
  110. package/features/flp/CreateFlp/CreateFlpUseCase.js +34 -0
  111. package/features/flp/CreateFlp/CreateFlpUseCase.js.map +1 -0
  112. package/features/flp/CreateFlp/abstractions.d.ts +9 -0
  113. package/features/flp/CreateFlp/abstractions.js +5 -0
  114. package/features/flp/CreateFlp/abstractions.js.map +1 -0
  115. package/features/flp/CreateFlp/feature.d.ts +5 -0
  116. package/features/flp/CreateFlp/feature.js +13 -0
  117. package/features/flp/CreateFlp/feature.js.map +1 -0
  118. package/features/flp/CreateFlp/index.d.ts +2 -0
  119. package/features/flp/CreateFlp/index.js +2 -0
  120. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.d.ts +17 -0
  121. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js +44 -0
  122. package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js.map +1 -0
  123. package/features/flp/CreateFlpOnFolderCreated/feature.d.ts +4 -0
  124. package/features/flp/CreateFlpOnFolderCreated/feature.js +11 -0
  125. package/features/flp/CreateFlpOnFolderCreated/feature.js.map +1 -0
  126. package/features/flp/CreateFlpOnFolderCreated/index.d.ts +1 -0
  127. package/features/flp/CreateFlpOnFolderCreated/index.js +1 -0
  128. package/features/flp/DeleteFlp/DeleteFlpUseCase.d.ts +8 -0
  129. package/features/flp/DeleteFlp/DeleteFlpUseCase.js +22 -0
  130. package/features/flp/DeleteFlp/DeleteFlpUseCase.js.map +1 -0
  131. package/features/flp/DeleteFlp/abstractions.d.ts +9 -0
  132. package/features/flp/DeleteFlp/abstractions.js +5 -0
  133. package/features/flp/DeleteFlp/abstractions.js.map +1 -0
  134. package/features/flp/DeleteFlp/feature.d.ts +5 -0
  135. package/features/flp/DeleteFlp/feature.js +13 -0
  136. package/features/flp/DeleteFlp/feature.js.map +1 -0
  137. package/features/flp/DeleteFlp/index.d.ts +2 -0
  138. package/features/flp/DeleteFlp/index.js +2 -0
  139. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.d.ts +15 -0
  140. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js +40 -0
  141. package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js.map +1 -0
  142. package/features/flp/DeleteFlpOnFolderDeleted/feature.d.ts +4 -0
  143. package/features/flp/DeleteFlpOnFolderDeleted/feature.js +11 -0
  144. package/features/flp/DeleteFlpOnFolderDeleted/feature.js.map +1 -0
  145. package/features/flp/DeleteFlpOnFolderDeleted/index.d.ts +1 -0
  146. package/features/flp/DeleteFlpOnFolderDeleted/index.js +1 -0
  147. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.d.ts +36 -0
  148. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js +113 -0
  149. package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js.map +1 -0
  150. package/features/flp/FolderLevelPermissions/NoopFolderLevelPermissions.d.ts +25 -0
  151. package/features/flp/FolderLevelPermissions/NoopFolderLevelPermissions.js +48 -0
  152. package/features/flp/FolderLevelPermissions/NoopFolderLevelPermissions.js.map +1 -0
  153. package/features/flp/FolderLevelPermissions/abstractions.d.ts +26 -0
  154. package/features/flp/FolderLevelPermissions/abstractions.js +5 -0
  155. package/features/flp/FolderLevelPermissions/abstractions.js.map +1 -0
  156. package/features/flp/FolderLevelPermissions/feature.d.ts +5 -0
  157. package/features/flp/FolderLevelPermissions/feature.js +11 -0
  158. package/features/flp/FolderLevelPermissions/feature.js.map +1 -0
  159. package/features/flp/FolderLevelPermissions/index.d.ts +3 -0
  160. package/features/flp/FolderLevelPermissions/index.js +3 -0
  161. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.d.ts +7 -0
  162. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js +19 -0
  163. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js.map +1 -0
  164. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.d.ts +9 -0
  165. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js +0 -0
  166. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.d.ts +2 -0
  167. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js +1 -0
  168. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.d.ts +7 -0
  169. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js +17 -0
  170. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js.map +1 -0
  171. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.d.ts +8 -0
  172. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js +0 -0
  173. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.d.ts +2 -0
  174. package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js +1 -0
  175. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.d.ts +4 -0
  176. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js +8 -0
  177. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js.map +1 -0
  178. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.d.ts +3 -0
  179. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js +0 -0
  180. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.d.ts +2 -0
  181. package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js +1 -0
  182. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.d.ts +5 -0
  183. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js +8 -0
  184. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js.map +1 -0
  185. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.d.ts +4 -0
  186. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js +0 -0
  187. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.d.ts +2 -0
  188. package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js +1 -0
  189. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.d.ts +5 -0
  190. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js +47 -0
  191. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js.map +1 -0
  192. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.d.ts +8 -0
  193. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js +14 -0
  194. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js.map +1 -0
  195. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.d.ts +17 -0
  196. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js +31 -0
  197. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js.map +1 -0
  198. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.d.ts +4 -0
  199. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js +0 -0
  200. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.d.ts +3 -0
  201. package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js +2 -0
  202. package/features/flp/FolderLevelPermissions/useCases/index.d.ts +5 -0
  203. package/features/flp/FolderLevelPermissions/useCases/index.js +5 -0
  204. package/features/flp/GetFlp/GetFlpUseCase.d.ts +7 -0
  205. package/features/flp/GetFlp/GetFlpUseCase.js +11 -0
  206. package/features/flp/GetFlp/GetFlpUseCase.js.map +1 -0
  207. package/features/flp/GetFlp/abstractions.d.ts +9 -0
  208. package/features/flp/GetFlp/abstractions.js +5 -0
  209. package/features/flp/GetFlp/abstractions.js.map +1 -0
  210. package/features/flp/GetFlp/decorators/GetFlpWithCodeFlps.d.ts +13 -0
  211. package/features/flp/GetFlp/decorators/GetFlpWithCodeFlps.js +26 -0
  212. package/features/flp/GetFlp/decorators/GetFlpWithCodeFlps.js.map +1 -0
  213. package/features/flp/GetFlp/feature.d.ts +4 -0
  214. package/features/flp/GetFlp/feature.js +13 -0
  215. package/features/flp/GetFlp/feature.js.map +1 -0
  216. package/features/flp/GetFlp/index.d.ts +1 -0
  217. package/features/flp/GetFlp/index.js +1 -0
  218. package/features/flp/ListFlps/ListFlpsUseCase.d.ts +7 -0
  219. package/features/flp/ListFlps/ListFlpsUseCase.js +11 -0
  220. package/features/flp/ListFlps/ListFlpsUseCase.js.map +1 -0
  221. package/features/flp/ListFlps/abstractions.d.ts +17 -0
  222. package/features/flp/ListFlps/abstractions.js +5 -0
  223. package/features/flp/ListFlps/abstractions.js.map +1 -0
  224. package/features/flp/ListFlps/decorators/ListFlpsWithCodeFlps.d.ts +13 -0
  225. package/features/flp/ListFlps/decorators/ListFlpsWithCodeFlps.js +27 -0
  226. package/features/flp/ListFlps/decorators/ListFlpsWithCodeFlps.js.map +1 -0
  227. package/features/flp/ListFlps/feature.d.ts +4 -0
  228. package/features/flp/ListFlps/feature.js +13 -0
  229. package/features/flp/ListFlps/feature.js.map +1 -0
  230. package/features/flp/ListFlps/index.d.ts +1 -0
  231. package/features/flp/ListFlps/index.js +1 -0
  232. package/features/flp/UpdateFlp/UpdateFlpUseCase.d.ts +26 -0
  233. package/features/flp/UpdateFlp/UpdateFlpUseCase.js +147 -0
  234. package/features/flp/UpdateFlp/UpdateFlpUseCase.js.map +1 -0
  235. package/features/flp/UpdateFlp/abstractions.d.ts +19 -0
  236. package/features/flp/UpdateFlp/abstractions.js +5 -0
  237. package/features/flp/UpdateFlp/abstractions.js.map +1 -0
  238. package/features/flp/UpdateFlp/feature.d.ts +5 -0
  239. package/features/flp/UpdateFlp/feature.js +17 -0
  240. package/features/flp/UpdateFlp/feature.js.map +1 -0
  241. package/features/flp/UpdateFlp/index.d.ts +2 -0
  242. package/features/flp/UpdateFlp/index.js +2 -0
  243. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.d.ts +17 -0
  244. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js +44 -0
  245. package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js.map +1 -0
  246. package/features/flp/UpdateFlpOnFolderUpdated/feature.d.ts +4 -0
  247. package/features/flp/UpdateFlpOnFolderUpdated/feature.js +11 -0
  248. package/features/flp/UpdateFlpOnFolderUpdated/feature.js.map +1 -0
  249. package/features/flp/UpdateFlpOnFolderUpdated/index.d.ts +1 -0
  250. package/features/flp/UpdateFlpOnFolderUpdated/index.js +1 -0
  251. package/features/flp/shared/CodeFlpMerger.d.ts +26 -0
  252. package/features/flp/shared/CodeFlpMerger.js +20 -0
  253. package/features/flp/shared/CodeFlpMerger.js.map +1 -0
  254. package/features/flp/shared/CodeFlpPath.d.ts +15 -0
  255. package/features/flp/shared/CodeFlpPath.js +29 -0
  256. package/features/flp/shared/CodeFlpPath.js.map +1 -0
  257. package/features/flp/shared/CodeFlpTarget.d.ts +10 -0
  258. package/features/flp/shared/CodeFlpTarget.js +26 -0
  259. package/features/flp/shared/CodeFlpTarget.js.map +1 -0
  260. package/features/flp/shared/CodeFlpsProvider.d.ts +14 -0
  261. package/features/flp/shared/CodeFlpsProvider.js +33 -0
  262. package/features/flp/shared/CodeFlpsProvider.js.map +1 -0
  263. package/features/flp/shared/abstractions.d.ts +77 -0
  264. package/features/flp/shared/abstractions.js +19 -0
  265. package/features/flp/shared/abstractions.js.map +1 -0
  266. package/features/flp/shared/feature.d.ts +5 -0
  267. package/features/flp/shared/feature.js +17 -0
  268. package/features/flp/shared/feature.js.map +1 -0
  269. package/features/flp/shared/index.d.ts +4 -0
  270. package/features/flp/shared/index.js +4 -0
  271. package/features/folder/CreateFolder/CreateFolderRepository.d.ts +21 -0
  272. package/features/folder/CreateFolder/CreateFolderRepository.js +88 -0
  273. package/features/folder/CreateFolder/CreateFolderRepository.js.map +1 -0
  274. package/features/folder/CreateFolder/CreateFolderUseCase.d.ts +12 -0
  275. package/features/folder/CreateFolder/CreateFolderUseCase.js +36 -0
  276. package/features/folder/CreateFolder/CreateFolderUseCase.js.map +1 -0
  277. package/features/folder/CreateFolder/abstractions.d.ts +59 -0
  278. package/features/folder/CreateFolder/abstractions.js +8 -0
  279. package/features/folder/CreateFolder/abstractions.js.map +1 -0
  280. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.d.ts +19 -0
  281. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js +56 -0
  282. package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js.map +1 -0
  283. package/features/folder/CreateFolder/events.d.ts +10 -0
  284. package/features/folder/CreateFolder/events.js +21 -0
  285. package/features/folder/CreateFolder/events.js.map +1 -0
  286. package/features/folder/CreateFolder/feature.d.ts +5 -0
  287. package/features/folder/CreateFolder/feature.js +15 -0
  288. package/features/folder/CreateFolder/feature.js.map +1 -0
  289. package/features/folder/CreateFolder/index.d.ts +2 -0
  290. package/features/folder/CreateFolder/index.js +2 -0
  291. package/features/folder/DeleteFolder/DeleteFolderRepository.d.ts +15 -0
  292. package/features/folder/DeleteFolder/DeleteFolderRepository.js +33 -0
  293. package/features/folder/DeleteFolder/DeleteFolderRepository.js.map +1 -0
  294. package/features/folder/DeleteFolder/DeleteFolderUseCase.d.ts +13 -0
  295. package/features/folder/DeleteFolder/DeleteFolderUseCase.js +47 -0
  296. package/features/folder/DeleteFolder/DeleteFolderUseCase.js.map +1 -0
  297. package/features/folder/DeleteFolder/abstractions.d.ts +59 -0
  298. package/features/folder/DeleteFolder/abstractions.js +8 -0
  299. package/features/folder/DeleteFolder/abstractions.js.map +1 -0
  300. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.d.ts +11 -0
  301. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js +29 -0
  302. package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js.map +1 -0
  303. package/features/folder/DeleteFolder/events.d.ts +10 -0
  304. package/features/folder/DeleteFolder/events.js +21 -0
  305. package/features/folder/DeleteFolder/events.js.map +1 -0
  306. package/features/folder/DeleteFolder/feature.d.ts +5 -0
  307. package/features/folder/DeleteFolder/feature.js +15 -0
  308. package/features/folder/DeleteFolder/feature.js.map +1 -0
  309. package/features/folder/DeleteFolder/index.d.ts +2 -0
  310. package/features/folder/DeleteFolder/index.js +2 -0
  311. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.d.ts +15 -0
  312. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js +59 -0
  313. package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js.map +1 -0
  314. package/features/folder/EnsureFolderIsEmpty/abstractions.d.ts +21 -0
  315. package/features/folder/EnsureFolderIsEmpty/abstractions.js +5 -0
  316. package/features/folder/EnsureFolderIsEmpty/abstractions.js.map +1 -0
  317. package/features/folder/EnsureFolderIsEmpty/feature.d.ts +4 -0
  318. package/features/folder/EnsureFolderIsEmpty/feature.js +11 -0
  319. package/features/folder/EnsureFolderIsEmpty/feature.js.map +1 -0
  320. package/features/folder/EnsureFolderIsEmpty/index.d.ts +1 -0
  321. package/features/folder/EnsureFolderIsEmpty/index.js +1 -0
  322. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.d.ts +12 -0
  323. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js +25 -0
  324. package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js.map +1 -0
  325. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.d.ts +10 -0
  326. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js +11 -0
  327. package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js.map +1 -0
  328. package/features/folder/EnsureFolderIsEmptyOnDelete/index.d.ts +1 -0
  329. package/features/folder/EnsureFolderIsEmptyOnDelete/index.js +1 -0
  330. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.d.ts +16 -0
  331. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js +52 -0
  332. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js.map +1 -0
  333. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.d.ts +4 -0
  334. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js +11 -0
  335. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js.map +1 -0
  336. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.d.ts +1 -0
  337. package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js +1 -0
  338. package/features/folder/FolderModelProvider.d.ts +26 -0
  339. package/features/folder/FolderModelProvider.js +22 -0
  340. package/features/folder/FolderModelProvider.js.map +1 -0
  341. package/features/folder/GetAncestors/GetAncestorsRepository.d.ts +15 -0
  342. package/features/folder/GetAncestors/GetAncestorsRepository.js +59 -0
  343. package/features/folder/GetAncestors/GetAncestorsRepository.js.map +1 -0
  344. package/features/folder/GetAncestors/GetAncestorsUseCase.d.ts +10 -0
  345. package/features/folder/GetAncestors/GetAncestorsUseCase.js +20 -0
  346. package/features/folder/GetAncestors/GetAncestorsUseCase.js.map +1 -0
  347. package/features/folder/GetAncestors/abstractions.d.ts +40 -0
  348. package/features/folder/GetAncestors/abstractions.js +6 -0
  349. package/features/folder/GetAncestors/abstractions.js.map +1 -0
  350. package/features/folder/GetAncestors/feature.d.ts +5 -0
  351. package/features/folder/GetAncestors/feature.js +13 -0
  352. package/features/folder/GetAncestors/feature.js.map +1 -0
  353. package/features/folder/GetAncestors/index.d.ts +2 -0
  354. package/features/folder/GetAncestors/index.js +2 -0
  355. package/features/folder/GetFolder/GetFolderRepository.d.ts +15 -0
  356. package/features/folder/GetFolder/GetFolderRepository.js +34 -0
  357. package/features/folder/GetFolder/GetFolderRepository.js.map +1 -0
  358. package/features/folder/GetFolder/GetFolderUseCase.d.ts +10 -0
  359. package/features/folder/GetFolder/GetFolderUseCase.js +20 -0
  360. package/features/folder/GetFolder/GetFolderUseCase.js.map +1 -0
  361. package/features/folder/GetFolder/abstractions.d.ts +57 -0
  362. package/features/folder/GetFolder/abstractions.js +8 -0
  363. package/features/folder/GetFolder/abstractions.js.map +1 -0
  364. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.d.ts +29 -0
  365. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js +34 -0
  366. package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js.map +1 -0
  367. package/features/folder/GetFolder/feature.d.ts +5 -0
  368. package/features/folder/GetFolder/feature.js +15 -0
  369. package/features/folder/GetFolder/feature.js.map +1 -0
  370. package/features/folder/GetFolder/index.d.ts +2 -0
  371. package/features/folder/GetFolder/index.js +2 -0
  372. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.d.ts +18 -0
  373. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js +86 -0
  374. package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js.map +1 -0
  375. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.d.ts +10 -0
  376. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js +20 -0
  377. package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js.map +1 -0
  378. package/features/folder/GetFolderHierarchy/abstractions.d.ts +38 -0
  379. package/features/folder/GetFolderHierarchy/abstractions.js +6 -0
  380. package/features/folder/GetFolderHierarchy/abstractions.js.map +1 -0
  381. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.d.ts +16 -0
  382. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js +63 -0
  383. package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js.map +1 -0
  384. package/features/folder/GetFolderHierarchy/feature.d.ts +5 -0
  385. package/features/folder/GetFolderHierarchy/feature.js +15 -0
  386. package/features/folder/GetFolderHierarchy/feature.js.map +1 -0
  387. package/features/folder/GetFolderHierarchy/index.d.ts +2 -0
  388. package/features/folder/GetFolderHierarchy/index.js +2 -0
  389. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.d.ts +13 -0
  390. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js +75 -0
  391. package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js.map +1 -0
  392. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.d.ts +11 -0
  393. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js +5 -0
  394. package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js.map +1 -0
  395. package/features/folder/ListFolderLevelPermissionsTargets/feature.d.ts +4 -0
  396. package/features/folder/ListFolderLevelPermissionsTargets/feature.js +11 -0
  397. package/features/folder/ListFolderLevelPermissionsTargets/feature.js.map +1 -0
  398. package/features/folder/ListFolderLevelPermissionsTargets/index.d.ts +1 -0
  399. package/features/folder/ListFolderLevelPermissionsTargets/index.js +1 -0
  400. package/features/folder/ListFolders/ListFoldersRepository.d.ts +17 -0
  401. package/features/folder/ListFolders/ListFoldersRepository.js +53 -0
  402. package/features/folder/ListFolders/ListFoldersRepository.js.map +1 -0
  403. package/features/folder/ListFolders/ListFoldersUseCase.d.ts +9 -0
  404. package/features/folder/ListFolders/ListFoldersUseCase.js +20 -0
  405. package/features/folder/ListFolders/ListFoldersUseCase.js.map +1 -0
  406. package/features/folder/ListFolders/abstractions.d.ts +44 -0
  407. package/features/folder/ListFolders/abstractions.js +6 -0
  408. package/features/folder/ListFolders/abstractions.js.map +1 -0
  409. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.d.ts +17 -0
  410. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js +65 -0
  411. package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js.map +1 -0
  412. package/features/folder/ListFolders/feature.d.ts +5 -0
  413. package/features/folder/ListFolders/feature.js +15 -0
  414. package/features/folder/ListFolders/feature.js.map +1 -0
  415. package/features/folder/ListFolders/index.d.ts +2 -0
  416. package/features/folder/ListFolders/index.js +2 -0
  417. package/features/folder/NotifyFolderChange/NotifyFolderChangeUseCase.d.ts +11 -0
  418. package/features/folder/NotifyFolderChange/NotifyFolderChangeUseCase.js +38 -0
  419. package/features/folder/NotifyFolderChange/NotifyFolderChangeUseCase.js.map +1 -0
  420. package/features/folder/NotifyFolderChange/NotifyOnFolderDeletedHandler.d.ts +12 -0
  421. package/features/folder/NotifyFolderChange/NotifyOnFolderDeletedHandler.js +24 -0
  422. package/features/folder/NotifyFolderChange/NotifyOnFolderDeletedHandler.js.map +1 -0
  423. package/features/folder/NotifyFolderChange/abstractions.d.ts +28 -0
  424. package/features/folder/NotifyFolderChange/abstractions.js +8 -0
  425. package/features/folder/NotifyFolderChange/abstractions.js.map +1 -0
  426. package/features/folder/NotifyFolderChange/feature.d.ts +9 -0
  427. package/features/folder/NotifyFolderChange/feature.js +13 -0
  428. package/features/folder/NotifyFolderChange/feature.js.map +1 -0
  429. package/features/folder/NotifyFolderChange/index.d.ts +2 -0
  430. package/features/folder/NotifyFolderChange/index.js +2 -0
  431. package/features/folder/UpdateFolder/UpdateFolderRepository.d.ts +21 -0
  432. package/features/folder/UpdateFolder/UpdateFolderRepository.js +87 -0
  433. package/features/folder/UpdateFolder/UpdateFolderRepository.js.map +1 -0
  434. package/features/folder/UpdateFolder/UpdateFolderUseCase.d.ts +14 -0
  435. package/features/folder/UpdateFolder/UpdateFolderUseCase.js +48 -0
  436. package/features/folder/UpdateFolder/UpdateFolderUseCase.js.map +1 -0
  437. package/features/folder/UpdateFolder/abstractions.d.ts +64 -0
  438. package/features/folder/UpdateFolder/abstractions.js +8 -0
  439. package/features/folder/UpdateFolder/abstractions.js.map +1 -0
  440. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.d.ts +26 -0
  441. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js +106 -0
  442. package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js.map +1 -0
  443. package/features/folder/UpdateFolder/events.d.ts +10 -0
  444. package/features/folder/UpdateFolder/events.js +21 -0
  445. package/features/folder/UpdateFolder/events.js.map +1 -0
  446. package/features/folder/UpdateFolder/feature.d.ts +5 -0
  447. package/features/folder/UpdateFolder/feature.js +15 -0
  448. package/features/folder/UpdateFolder/feature.js.map +1 -0
  449. package/features/folder/UpdateFolder/index.d.ts +2 -0
  450. package/features/folder/UpdateFolder/index.js +2 -0
  451. package/features/folder/shared/EntryToFolderMapper.d.ts +5 -0
  452. package/features/folder/shared/EntryToFolderMapper.js +23 -0
  453. package/features/folder/shared/EntryToFolderMapper.js.map +1 -0
  454. package/features/folder/shared/abstractions.d.ts +20 -0
  455. package/features/folder/shared/abstractions.js +8 -0
  456. package/features/folder/shared/abstractions.js.map +1 -0
  457. package/filter/filter.crud.d.ts +3 -0
  458. package/filter/filter.crud.js +30 -0
  459. package/filter/filter.crud.js.map +1 -0
  460. package/filter/filter.gql.d.ts +2 -0
  461. package/filter/filter.gql.js +164 -0
  462. package/filter/filter.gql.js.map +1 -0
  463. package/filter/filter.model.d.ts +9 -0
  464. package/filter/filter.model.js +51 -0
  465. package/filter/filter.model.js.map +1 -0
  466. package/filter/filter.so.d.ts +9 -0
  467. package/filter/filter.so.js +96 -0
  468. package/filter/filter.so.js.map +1 -0
  469. package/filter/filter.types.d.ts +67 -0
  470. package/filter/filter.types.js +8 -0
  471. package/filter/filter.types.js.map +1 -0
  472. package/flp/flp.crud.d.ts +7 -0
  473. package/flp/flp.crud.js +74 -0
  474. package/flp/flp.crud.js.map +1 -0
  475. package/flp/flp.types.d.ts +98 -0
  476. package/flp/flp.types.js +0 -0
  477. package/flp/index.d.ts +2 -0
  478. package/flp/index.js +2 -0
  479. package/flp/tasks/createFlp.task.d.ts +25 -0
  480. package/flp/tasks/createFlp.task.js +53 -0
  481. package/flp/tasks/createFlp.task.js.map +1 -0
  482. package/flp/tasks/deleteFlp.task.d.ts +23 -0
  483. package/flp/tasks/deleteFlp.task.js +45 -0
  484. package/flp/tasks/deleteFlp.task.js.map +1 -0
  485. package/flp/tasks/index.d.ts +4 -0
  486. package/flp/tasks/index.js +7 -0
  487. package/flp/tasks/index.js.map +1 -0
  488. package/flp/tasks/syncFlp.task.d.ts +27 -0
  489. package/flp/tasks/syncFlp.task.js +121 -0
  490. package/flp/tasks/syncFlp.task.js.map +1 -0
  491. package/flp/tasks/updateFlp.task.d.ts +25 -0
  492. package/flp/tasks/updateFlp.task.js +64 -0
  493. package/flp/tasks/updateFlp.task.js.map +1 -0
  494. package/folder/createFolderModelModifier.d.ts +36 -0
  495. package/folder/createFolderModelModifier.js +61 -0
  496. package/folder/createFolderModelModifier.js.map +1 -0
  497. package/folder/createFolderTypeDefs.d.ts +8 -0
  498. package/folder/createFolderTypeDefs.js +178 -0
  499. package/folder/createFolderTypeDefs.js.map +1 -0
  500. package/folder/folder.gql.d.ts +4 -3
  501. package/folder/folder.gql.js +123 -116
  502. package/folder/folder.gql.js.map +1 -1
  503. package/folder/folder.types.d.ts +51 -64
  504. package/folder/folder.types.js +0 -5
  505. package/index.d.ts +3 -5
  506. package/index.js +3 -56
  507. package/package.json +35 -40
  508. package/types.d.ts +26 -64
  509. package/types.js +8 -38
  510. package/types.js.map +1 -1
  511. package/utils/FoldersCacheFactory.d.ts +10 -0
  512. package/utils/FoldersCacheFactory.js +25 -0
  513. package/utils/FoldersCacheFactory.js.map +1 -0
  514. package/utils/ListCache.d.ts +23 -0
  515. package/utils/ListCache.js +24 -0
  516. package/utils/ListCache.js.map +1 -0
  517. package/utils/Path.d.ts +3 -0
  518. package/utils/Path.js +10 -0
  519. package/utils/Path.js.map +1 -0
  520. package/utils/compress.d.ts +4 -0
  521. package/utils/compress.js +13 -0
  522. package/utils/compress.js.map +1 -0
  523. package/utils/createListSort.d.ts +3 -2
  524. package/utils/createListSort.js +6 -12
  525. package/utils/createListSort.js.map +1 -1
  526. package/utils/createOperationsWrapper.d.ts +6 -3
  527. package/utils/createOperationsWrapper.js +14 -28
  528. package/utils/createOperationsWrapper.js.map +1 -1
  529. package/utils/decorators/CmsEntriesCrudDecorators.d.ts +11 -0
  530. package/utils/decorators/CmsEntriesCrudDecorators.js +179 -0
  531. package/utils/decorators/CmsEntriesCrudDecorators.js.map +1 -0
  532. package/utils/decorators/FilterEntriesByFolderFactory.d.ts +7 -0
  533. package/utils/decorators/FilterEntriesByFolderFactory.js +22 -0
  534. package/utils/decorators/FilterEntriesByFolderFactory.js.map +1 -0
  535. package/utils/decorators/ListEntriesFactory.d.ts +17 -0
  536. package/utils/decorators/ListEntriesFactory.js +73 -0
  537. package/utils/decorators/ListEntriesFactory.js.map +1 -0
  538. package/utils/decorators/hasRootFolderId.d.ts +7 -0
  539. package/utils/decorators/hasRootFolderId.js +13 -0
  540. package/utils/decorators/hasRootFolderId.js.map +1 -0
  541. package/utils/decorators/isPageModel.d.ts +5 -0
  542. package/utils/decorators/isPageModel.js +8 -0
  543. package/utils/decorators/isPageModel.js.map +1 -0
  544. package/utils/ensureAuthentication.d.ts +2 -0
  545. package/utils/ensureAuthentication.js +11 -0
  546. package/utils/ensureAuthentication.js.map +1 -0
  547. package/utils/pickEntryFieldValues.d.ts +3 -0
  548. package/utils/pickEntryFieldValues.js +29 -0
  549. package/utils/pickEntryFieldValues.js.map +1 -0
  550. package/utils/resolve.d.ts +1 -2
  551. package/utils/resolve.js +10 -23
  552. package/utils/resolve.js.map +1 -1
  553. package/apps/AcoApp.d.ts +0 -16
  554. package/apps/AcoApp.js +0 -108
  555. package/apps/AcoApp.js.map +0 -1
  556. package/apps/AcoApps.d.ts +0 -10
  557. package/apps/AcoApps.js +0 -76
  558. package/apps/AcoApps.js.map +0 -1
  559. package/apps/app.gql.d.ts +0 -3
  560. package/apps/app.gql.js +0 -58
  561. package/apps/app.gql.js.map +0 -1
  562. package/apps/index.d.ts +0 -2
  563. package/apps/index.js +0 -27
  564. package/apps/index.js.map +0 -1
  565. package/createAcoContext.d.ts +0 -3
  566. package/createAcoContext.js +0 -100
  567. package/createAcoContext.js.map +0 -1
  568. package/createAcoHooks.d.ts +0 -2
  569. package/createAcoHooks.js +0 -11
  570. package/createAcoHooks.js.map +0 -1
  571. package/createAcoModels.d.ts +0 -2
  572. package/createAcoModels.js +0 -42
  573. package/createAcoModels.js.map +0 -1
  574. package/createAcoStorageOperations.d.ts +0 -10
  575. package/createAcoStorageOperations.js +0 -19
  576. package/createAcoStorageOperations.js.map +0 -1
  577. package/fields/index.d.ts +0 -2
  578. package/fields/index.js +0 -12
  579. package/fields/index.js.map +0 -1
  580. package/fields/location.d.ts +0 -2
  581. package/fields/location.js +0 -44
  582. package/fields/location.js.map +0 -1
  583. package/folder/folder.crud.d.ts +0 -3
  584. package/folder/folder.crud.js +0 -110
  585. package/folder/folder.crud.js.map +0 -1
  586. package/folder/folder.model.d.ts +0 -4
  587. package/folder/folder.model.js +0 -75
  588. package/folder/folder.model.js.map +0 -1
  589. package/folder/folder.so.d.ts +0 -3
  590. package/folder/folder.so.js +0 -151
  591. package/folder/folder.so.js.map +0 -1
  592. package/folder/folder.types.js.map +0 -1
  593. package/folder/onFolderBeforeDelete.hook.d.ts +0 -2
  594. package/folder/onFolderBeforeDelete.hook.js +0 -66
  595. package/folder/onFolderBeforeDelete.hook.js.map +0 -1
  596. package/index.js.map +0 -1
  597. package/plugins/AcoAppModifierPlugin.d.ts +0 -43
  598. package/plugins/AcoAppModifierPlugin.js +0 -59
  599. package/plugins/AcoAppModifierPlugin.js.map +0 -1
  600. package/plugins/AcoAppRegisterPlugin.d.ts +0 -8
  601. package/plugins/AcoAppRegisterPlugin.js +0 -22
  602. package/plugins/AcoAppRegisterPlugin.js.map +0 -1
  603. package/plugins/index.d.ts +0 -2
  604. package/plugins/index.js +0 -27
  605. package/plugins/index.js.map +0 -1
  606. package/record/graphql/createAppResolvers.d.ts +0 -14
  607. package/record/graphql/createAppResolvers.js +0 -108
  608. package/record/graphql/createAppResolvers.js.map +0 -1
  609. package/record/graphql/createAppSchema.d.ts +0 -9
  610. package/record/graphql/createAppSchema.js +0 -142
  611. package/record/graphql/createAppSchema.js.map +0 -1
  612. package/record/record.crud.d.ts +0 -3
  613. package/record/record.crud.js +0 -126
  614. package/record/record.crud.js.map +0 -1
  615. package/record/record.gql.d.ts +0 -8
  616. package/record/record.gql.js +0 -41
  617. package/record/record.gql.js.map +0 -1
  618. package/record/record.model.d.ts +0 -10
  619. package/record/record.model.js +0 -86
  620. package/record/record.model.js.map +0 -1
  621. package/record/record.so.d.ts +0 -3
  622. package/record/record.so.js +0 -150
  623. package/record/record.so.js.map +0 -1
  624. package/record/record.types.d.ts +0 -143
  625. package/record/record.types.js +0 -5
  626. package/record/record.types.js.map +0 -1
  627. package/utils/acoRecordId.d.ts +0 -6
  628. package/utils/acoRecordId.js +0 -33
  629. package/utils/acoRecordId.js.map +0 -1
  630. package/utils/checkPermissions.d.ts +0 -2
  631. package/utils/checkPermissions.js +0 -14
  632. package/utils/checkPermissions.js.map +0 -1
  633. package/utils/createModelField.d.ts +0 -5
  634. package/utils/createModelField.js +0 -37
  635. package/utils/createModelField.js.map +0 -1
  636. package/utils/fieldResolver.d.ts +0 -16
  637. package/utils/fieldResolver.js +0 -44
  638. package/utils/fieldResolver.js.map +0 -1
  639. package/utils/getFieldValues.d.ts +0 -5
  640. package/utils/getFieldValues.js +0 -16
  641. package/utils/getFieldValues.js.map +0 -1
  642. package/utils/getFolderAndItsAncestors.d.ts +0 -7
  643. package/utils/getFolderAndItsAncestors.js +0 -48
  644. package/utils/getFolderAndItsAncestors.js.map +0 -1
  645. package/utils/isInstallationPending.d.ts +0 -4
  646. package/utils/isInstallationPending.js +0 -21
  647. package/utils/isInstallationPending.js.map +0 -1
  648. package/utils/modelFactory.d.ts +0 -15
  649. package/utils/modelFactory.js +0 -25
  650. package/utils/modelFactory.js.map +0 -1
@@ -0,0 +1,5 @@
1
+ import type { Container } from "@webiny/di";
2
+ export declare const AcoFeature: {
3
+ name: string;
4
+ register(container: Container): void;
5
+ };
package/AcoFeature.js ADDED
@@ -0,0 +1,134 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { staticSchemaKey } from "@webiny/api-graphql/graphql/staticSchemaKey.js";
3
+ import { GraphQLSchemaFactory } from "@webiny/api-graphql/graphql/abstractions.js";
4
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/abstractions.js";
5
+ import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
6
+ import { addAcoBaseSchema } from "./createAcoGraphQL.js";
7
+ import { addFilterSchema } from "./filter/filter.gql.js";
8
+ import { AcoFolderSchemaFactory } from "./AcoFolderSchemaFactory.js";
9
+ import { FolderModelProvider } from "./features/folder/FolderModelProvider.js";
10
+ import { CmsFlpFeature } from "./features/cms/index.js";
11
+ import { FeatureFlags } from "@webiny/api-core/features/featureFlags/abstractions.js";
12
+ import { CreateFlpTask } from "./flp/tasks/createFlp.task.js";
13
+ import { UpdateFlpTask } from "./flp/tasks/updateFlp.task.js";
14
+ import { DeleteFlpTask } from "./flp/tasks/deleteFlp.task.js";
15
+ import { SyncFlpTask } from "./flp/tasks/syncFlp.task.js";
16
+ import { FolderModel } from "./domain/folder/folder.model.js";
17
+ import { FilterPrivateModel } from "./filter/filter.model.js";
18
+ import { createFilterOperations } from "./filter/filter.so.js";
19
+ import { createFilterCrudMethods } from "./filter/filter.crud.js";
20
+ import { createFlpCrudMethods } from "./flp/index.js";
21
+ import { FolderLevelPermissions, FolderLevelPermissionsFeature } from "./features/flp/FolderLevelPermissions/index.js";
22
+ import { UpdateFolderFeature } from "./features/folder/UpdateFolder/index.js";
23
+ import { DeleteFolderFeature } from "./features/folder/DeleteFolder/index.js";
24
+ import { CreateFolderFeature } from "./features/folder/CreateFolder/index.js";
25
+ import { GetFolderFeature } from "./features/folder/GetFolder/index.js";
26
+ import { ListFoldersFeature } from "./features/folder/ListFolders/index.js";
27
+ import { GetFolderHierarchyFeature } from "./features/folder/GetFolderHierarchy/index.js";
28
+ import { GetAncestorsFeature } from "./features/folder/GetAncestors/index.js";
29
+ import { UpdateFlpOnFolderUpdatedFeature } from "./features/flp/UpdateFlpOnFolderUpdated/index.js";
30
+ import { DeleteFlpOnFolderDeletedFeature } from "./features/flp/DeleteFlpOnFolderDeleted/index.js";
31
+ import { EnsureHcmsFolderIsEmptyOnDeleteFeature } from "./features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js";
32
+ import { CreateFlpFeature } from "./features/flp/CreateFlp/index.js";
33
+ import { DeleteFlpFeature } from "./features/flp/DeleteFlp/index.js";
34
+ import { UpdateFlpFeature } from "./features/flp/UpdateFlp/index.js";
35
+ import { EnsureFolderIsEmptyOnDeleteFeature } from "./features/folder/EnsureFolderIsEmptyOnDelete/index.js";
36
+ import { AcoFilterCrud, AcoFlpCrud, FilterStorageOperations, FlpStorageOperations } from "./features/folder/shared/abstractions.js";
37
+ import { ListFlpsFeature } from "./features/flp/ListFlps/feature.js";
38
+ import { GetFlpFeature } from "./features/flp/GetFlp/feature.js";
39
+ import { CodeFlpsFeature } from "./features/flp/shared/feature.js";
40
+ import { ListFolderLevelPermissionsTargetsFeature } from "./features/folder/ListFolderLevelPermissionsTargets/feature.js";
41
+ import { CreateFlpOnFolderCreatedFeature } from "./features/flp/CreateFlpOnFolderCreated/index.js";
42
+ import { EnsureFolderIsEmptyFeature } from "./features/folder/EnsureFolderIsEmpty/feature.js";
43
+ import { AcoAiToolsFeature } from "./features/ai/index.js";
44
+ import { NotifyFolderChangeFeature } from "./features/folder/NotifyFolderChange/index.js";
45
+ class AcoSchemaFactoryImpl {
46
+ async execute(builder) {
47
+ addAcoBaseSchema(builder);
48
+ addFilterSchema(builder);
49
+ return builder;
50
+ }
51
+ constructor(){
52
+ this.getSchemaKey = staticSchemaKey("api-aco/AcoSchemaFactoryImpl");
53
+ }
54
+ }
55
+ const AcoSchemaFactory = GraphQLSchemaFactory.createImplementation({
56
+ implementation: AcoSchemaFactoryImpl,
57
+ dependencies: []
58
+ });
59
+ const AcoFeature = createFeature({
60
+ name: "Aco",
61
+ register (container) {
62
+ container.register(FolderModel);
63
+ AcoAiToolsFeature.register(container);
64
+ container.register(FilterPrivateModel);
65
+ container.register(CreateFlpTask);
66
+ container.register(UpdateFlpTask);
67
+ container.register(DeleteFlpTask);
68
+ container.register(SyncFlpTask);
69
+ FolderLevelPermissionsFeature.register(container);
70
+ CreateFolderFeature.register(container);
71
+ UpdateFolderFeature.register(container);
72
+ DeleteFolderFeature.register(container);
73
+ GetFolderFeature.register(container);
74
+ ListFoldersFeature.register(container);
75
+ ListFolderLevelPermissionsTargetsFeature.register(container);
76
+ GetFolderHierarchyFeature.register(container);
77
+ GetAncestorsFeature.register(container);
78
+ EnsureFolderIsEmptyFeature.register(container);
79
+ CreateFlpFeature.register(container);
80
+ UpdateFlpFeature.register(container);
81
+ DeleteFlpFeature.register(container);
82
+ ListFlpsFeature.register(container);
83
+ GetFlpFeature.register(container);
84
+ CodeFlpsFeature.register(container);
85
+ CreateFlpOnFolderCreatedFeature.register(container);
86
+ UpdateFlpOnFolderUpdatedFeature.register(container);
87
+ DeleteFlpOnFolderDeletedFeature.register(container);
88
+ NotifyFolderChangeFeature.register(container);
89
+ EnsureFolderIsEmptyOnDeleteFeature.register(container);
90
+ EnsureHcmsFolderIsEmptyOnDeleteFeature.register(container);
91
+ const getTenant = ()=>container.resolve(TenantContext).getTenant();
92
+ let storageOperations;
93
+ const getStorageOperations = ()=>{
94
+ if (!storageOperations) {
95
+ const identityContext = container.resolve(IdentityContext);
96
+ storageOperations = {
97
+ filter: createFilterOperations({
98
+ identityContext,
99
+ container
100
+ }),
101
+ flp: container.resolve(FlpStorageOperations)
102
+ };
103
+ }
104
+ return storageOperations;
105
+ };
106
+ let flpCrudMethods;
107
+ const getFlpCrudMethods = ()=>{
108
+ if (!flpCrudMethods) flpCrudMethods = createFlpCrudMethods({
109
+ getTenant,
110
+ storageOperations: getStorageOperations()
111
+ });
112
+ return flpCrudMethods;
113
+ };
114
+ container.registerFactory(AcoFlpCrud, ()=>getFlpCrudMethods());
115
+ container.registerFactory(FilterStorageOperations, ()=>getStorageOperations().filter);
116
+ let filterCrudMethods;
117
+ container.registerFactory(AcoFilterCrud, ()=>{
118
+ if (!filterCrudMethods) filterCrudMethods = createFilterCrudMethods({
119
+ container,
120
+ getTenant,
121
+ storageOperations: getStorageOperations(),
122
+ folderLevelPermissions: container.resolve(FolderLevelPermissions)
123
+ });
124
+ return filterCrudMethods;
125
+ });
126
+ container.register(FolderModelProvider);
127
+ if (container.resolve(FeatureFlags).get().isEnabled("advancedAccessControlLayer.folderLevelPermissions")) CmsFlpFeature.register(container);
128
+ container.register(AcoSchemaFactory);
129
+ container.register(AcoFolderSchemaFactory);
130
+ }
131
+ });
132
+ export { AcoFeature };
133
+
134
+ //# sourceMappingURL=AcoFeature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcoFeature.js","sources":["../src/AcoFeature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { staticSchemaKey } from \"@webiny/api-graphql/graphql/staticSchemaKey.js\";\nimport { GraphQLSchemaFactory } from \"@webiny/api-graphql/graphql/abstractions.js\";\nimport type { IGraphQLSchemaBuilder } from \"@webiny/api-graphql/features/GraphQLSchemaBuilder/abstractions.js\";\nimport type { Container } from \"@webiny/di\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/abstractions.js\";\nimport { TenantContext } from \"@webiny/api-core/features/tenancy/TenantContext/index.js\";\nimport { addAcoBaseSchema } from \"./createAcoGraphQL.js\";\nimport { addFilterSchema } from \"~/filter/filter.gql.js\";\nimport { AcoFolderSchemaFactory } from \"./AcoFolderSchemaFactory.js\";\nimport { FolderModelProvider } from \"~/features/folder/FolderModelProvider.js\";\nimport { CmsFlpFeature } from \"~/features/cms/index.js\";\nimport { FeatureFlags } from \"@webiny/api-core/features/featureFlags/abstractions.js\";\nimport { CreateFlpTask } from \"~/flp/tasks/createFlp.task.js\";\nimport { UpdateFlpTask } from \"~/flp/tasks/updateFlp.task.js\";\nimport { DeleteFlpTask } from \"~/flp/tasks/deleteFlp.task.js\";\nimport { SyncFlpTask } from \"~/flp/tasks/syncFlp.task.js\";\nimport type { AcoStorageOperations } from \"~/types.js\";\nimport type { Tenant } from \"@webiny/api-core/types/tenancy.js\";\nimport { FolderModel } from \"~/domain/folder/folder.model.js\";\nimport { FilterPrivateModel } from \"~/filter/filter.model.js\";\n// Facade wiring (moved here from createAcoContext so the ACO facade can be a lazy DI factory).\nimport { createFilterOperations } from \"~/filter/filter.so.js\";\nimport { createFilterCrudMethods } from \"~/filter/filter.crud.js\";\nimport { createFlpCrudMethods } from \"~/flp/index.js\";\nimport {\n FolderLevelPermissions,\n FolderLevelPermissionsFeature\n} from \"~/features/flp/FolderLevelPermissions/index.js\";\nimport { UpdateFolderFeature } from \"~/features/folder/UpdateFolder/index.js\";\nimport { DeleteFolderFeature } from \"~/features/folder/DeleteFolder/index.js\";\nimport { CreateFolderFeature } from \"~/features/folder/CreateFolder/index.js\";\nimport { GetFolderFeature } from \"~/features/folder/GetFolder/index.js\";\nimport { ListFoldersFeature } from \"~/features/folder/ListFolders/index.js\";\nimport { GetFolderHierarchyFeature } from \"~/features/folder/GetFolderHierarchy/index.js\";\nimport { GetAncestorsFeature } from \"~/features/folder/GetAncestors/index.js\";\nimport { UpdateFlpOnFolderUpdatedFeature } from \"~/features/flp/UpdateFlpOnFolderUpdated/index.js\";\nimport { DeleteFlpOnFolderDeletedFeature } from \"~/features/flp/DeleteFlpOnFolderDeleted/index.js\";\nimport { EnsureHcmsFolderIsEmptyOnDeleteFeature } from \"~/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js\";\nimport { CreateFlpFeature } from \"~/features/flp/CreateFlp/index.js\";\nimport { DeleteFlpFeature } from \"~/features/flp/DeleteFlp/index.js\";\nimport { UpdateFlpFeature } from \"~/features/flp/UpdateFlp/index.js\";\nimport { EnsureFolderIsEmptyOnDeleteFeature } from \"~/features/folder/EnsureFolderIsEmptyOnDelete/index.js\";\nimport {\n AcoFilterCrud,\n AcoFlpCrud,\n FilterStorageOperations,\n FlpStorageOperations\n} from \"~/features/folder/shared/abstractions.js\";\nimport { ListFlpsFeature } from \"~/features/flp/ListFlps/feature.js\";\nimport { GetFlpFeature } from \"~/features/flp/GetFlp/feature.js\";\nimport { CodeFlpsFeature } from \"~/features/flp/shared/feature.js\";\nimport { ListFolderLevelPermissionsTargetsFeature } from \"~/features/folder/ListFolderLevelPermissionsTargets/feature.js\";\nimport { CreateFlpOnFolderCreatedFeature } from \"~/features/flp/CreateFlpOnFolderCreated/index.js\";\nimport { EnsureFolderIsEmptyFeature } from \"~/features/folder/EnsureFolderIsEmpty/feature.js\";\nimport { AcoAiToolsFeature } from \"~/features/ai/index.js\";\nimport { NotifyFolderChangeFeature } from \"~/features/folder/NotifyFolderChange/index.js\";\n\nclass AcoSchemaFactoryImpl implements GraphQLSchemaFactory.Interface {\n public getSchemaKey = staticSchemaKey(\"api-aco/AcoSchemaFactoryImpl\");\n\n async execute(builder: IGraphQLSchemaBuilder): Promise<IGraphQLSchemaBuilder> {\n // Static ACO base + filter schema (DI-native contributors declaring their deps). The\n // dynamic, per-tenant folder schema is built by AcoFolderSchemaFactory.\n addAcoBaseSchema(builder);\n addFilterSchema(builder);\n return builder;\n }\n}\n\nconst AcoSchemaFactory = GraphQLSchemaFactory.createImplementation({\n implementation: AcoSchemaFactoryImpl,\n dependencies: []\n});\n\nexport const AcoFeature = createFeature({\n name: \"Aco\",\n register(container: Container) {\n container.register(FolderModel);\n AcoAiToolsFeature.register(container);\n container.register(FilterPrivateModel);\n\n // Background task definitions — pure wiring, no tenant/identity needed.\n container.register(CreateFlpTask);\n container.register(UpdateFlpTask);\n container.register(DeleteFlpTask);\n container.register(SyncFlpTask);\n\n // Folder + FLP use-case features — pure DI wiring (all lazy). Moved out of the per-request\n // initializer so they're registered for every event, not only GraphQL requests.\n FolderLevelPermissionsFeature.register(container);\n CreateFolderFeature.register(container);\n UpdateFolderFeature.register(container);\n DeleteFolderFeature.register(container);\n GetFolderFeature.register(container);\n ListFoldersFeature.register(container);\n ListFolderLevelPermissionsTargetsFeature.register(container);\n GetFolderHierarchyFeature.register(container);\n GetAncestorsFeature.register(container);\n EnsureFolderIsEmptyFeature.register(container);\n CreateFlpFeature.register(container);\n UpdateFlpFeature.register(container);\n DeleteFlpFeature.register(container);\n ListFlpsFeature.register(container);\n GetFlpFeature.register(container);\n // Must come after ListFlps/GetFlp — it decorates both.\n CodeFlpsFeature.register(container);\n CreateFlpOnFolderCreatedFeature.register(container);\n UpdateFlpOnFolderUpdatedFeature.register(container);\n DeleteFlpOnFolderDeletedFeature.register(container);\n NotifyFolderChangeFeature.register(container);\n EnsureFolderIsEmptyOnDeleteFeature.register(container);\n EnsureHcmsFolderIsEmptyOnDeleteFeature.register(container);\n\n // ===== Lazy ACO facade =====\n // Built on first resolve (post-auth), memoised per request container. Consumers resolve\n // AcoFlpCrud / AcoFilterCrud / FilterStorageOperations via DI.\n const getTenant = (): Tenant => container.resolve(TenantContext).getTenant();\n\n let storageOperations: AcoStorageOperations | undefined;\n const getStorageOperations = (): AcoStorageOperations => {\n if (!storageOperations) {\n const identityContext = container.resolve(IdentityContext);\n storageOperations = {\n filter: createFilterOperations({ identityContext, container }),\n flp: container.resolve(FlpStorageOperations)\n };\n }\n return storageOperations;\n };\n\n let flpCrudMethods: ReturnType<typeof createFlpCrudMethods> | undefined;\n const getFlpCrudMethods = () => {\n if (!flpCrudMethods) {\n flpCrudMethods = createFlpCrudMethods({\n getTenant,\n storageOperations: getStorageOperations()\n });\n }\n return flpCrudMethods;\n };\n container.registerFactory(AcoFlpCrud, () => getFlpCrudMethods());\n container.registerFactory(FilterStorageOperations, () => getStorageOperations().filter);\n\n let filterCrudMethods: ReturnType<typeof createFilterCrudMethods> | undefined;\n container.registerFactory(AcoFilterCrud, () => {\n if (!filterCrudMethods) {\n filterCrudMethods = createFilterCrudMethods({\n container,\n getTenant,\n storageOperations: getStorageOperations(),\n folderLevelPermissions: container.resolve(FolderLevelPermissions)\n });\n }\n return filterCrudMethods;\n });\n\n // The per-tenant folder model is resolved on demand — see FolderModelProvider.\n container.register(FolderModelProvider);\n\n // CMS-entry folder-level-permission decorators, feature-flag gated. These must be\n // registered before any CMS-entry abstraction they wrap is first resolved, which is why\n // they used to sit in a pre-resolver initializer. Register time is strictly earlier and the\n // gate is valid here: the WCP license is refreshed before any feature registers (see\n // registerApiRequestStack).\n if (\n container\n .resolve(FeatureFlags)\n .get()\n .isEnabled(\"advancedAccessControlLayer.folderLevelPermissions\")\n ) {\n CmsFlpFeature.register(container);\n }\n\n container.register(AcoSchemaFactory);\n container.register(AcoFolderSchemaFactory);\n }\n});\n"],"names":["AcoSchemaFactoryImpl","builder","addAcoBaseSchema","addFilterSchema","staticSchemaKey","AcoSchemaFactory","GraphQLSchemaFactory","AcoFeature","createFeature","container","FolderModel","AcoAiToolsFeature","FilterPrivateModel","CreateFlpTask","UpdateFlpTask","DeleteFlpTask","SyncFlpTask","FolderLevelPermissionsFeature","CreateFolderFeature","UpdateFolderFeature","DeleteFolderFeature","GetFolderFeature","ListFoldersFeature","ListFolderLevelPermissionsTargetsFeature","GetFolderHierarchyFeature","GetAncestorsFeature","EnsureFolderIsEmptyFeature","CreateFlpFeature","UpdateFlpFeature","DeleteFlpFeature","ListFlpsFeature","GetFlpFeature","CodeFlpsFeature","CreateFlpOnFolderCreatedFeature","UpdateFlpOnFolderUpdatedFeature","DeleteFlpOnFolderDeletedFeature","NotifyFolderChangeFeature","EnsureFolderIsEmptyOnDeleteFeature","EnsureHcmsFolderIsEmptyOnDeleteFeature","getTenant","TenantContext","storageOperations","getStorageOperations","identityContext","IdentityContext","createFilterOperations","FlpStorageOperations","flpCrudMethods","getFlpCrudMethods","createFlpCrudMethods","AcoFlpCrud","FilterStorageOperations","filterCrudMethods","AcoFilterCrud","createFilterCrudMethods","FolderLevelPermissions","FolderModelProvider","FeatureFlags","CmsFlpFeature","AcoFolderSchemaFactory"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0DA,MAAMA;IAGF,MAAM,QAAQC,OAA8B,EAAkC;QAG1EC,iBAAiBD;QACjBE,gBAAgBF;QAChB,OAAOA;IACX;;aARO,YAAY,GAAGG,gBAAgB;;AAS1C;AAEA,MAAMC,mBAAmBC,qBAAqB,oBAAoB,CAAC;IAC/D,gBAAgBN;IAChB,cAAc,EAAE;AACpB;AAEO,MAAMO,aAAaC,cAAc;IACpC,MAAM;IACN,UAASC,SAAoB;QACzBA,UAAU,QAAQ,CAACC;QACnBC,kBAAkB,QAAQ,CAACF;QAC3BA,UAAU,QAAQ,CAACG;QAGnBH,UAAU,QAAQ,CAACI;QACnBJ,UAAU,QAAQ,CAACK;QACnBL,UAAU,QAAQ,CAACM;QACnBN,UAAU,QAAQ,CAACO;QAInBC,8BAA8B,QAAQ,CAACR;QACvCS,oBAAoB,QAAQ,CAACT;QAC7BU,oBAAoB,QAAQ,CAACV;QAC7BW,oBAAoB,QAAQ,CAACX;QAC7BY,iBAAiB,QAAQ,CAACZ;QAC1Ba,mBAAmB,QAAQ,CAACb;QAC5Bc,yCAAyC,QAAQ,CAACd;QAClDe,0BAA0B,QAAQ,CAACf;QACnCgB,oBAAoB,QAAQ,CAAChB;QAC7BiB,2BAA2B,QAAQ,CAACjB;QACpCkB,iBAAiB,QAAQ,CAAClB;QAC1BmB,iBAAiB,QAAQ,CAACnB;QAC1BoB,iBAAiB,QAAQ,CAACpB;QAC1BqB,gBAAgB,QAAQ,CAACrB;QACzBsB,cAAc,QAAQ,CAACtB;QAEvBuB,gBAAgB,QAAQ,CAACvB;QACzBwB,gCAAgC,QAAQ,CAACxB;QACzCyB,gCAAgC,QAAQ,CAACzB;QACzC0B,gCAAgC,QAAQ,CAAC1B;QACzC2B,0BAA0B,QAAQ,CAAC3B;QACnC4B,mCAAmC,QAAQ,CAAC5B;QAC5C6B,uCAAuC,QAAQ,CAAC7B;QAKhD,MAAM8B,YAAY,IAAc9B,UAAU,OAAO,CAAC+B,eAAe,SAAS;QAE1E,IAAIC;QACJ,MAAMC,uBAAuB;YACzB,IAAI,CAACD,mBAAmB;gBACpB,MAAME,kBAAkBlC,UAAU,OAAO,CAACmC;gBAC1CH,oBAAoB;oBAChB,QAAQI,uBAAuB;wBAAEF;wBAAiBlC;oBAAU;oBAC5D,KAAKA,UAAU,OAAO,CAACqC;gBAC3B;YACJ;YACA,OAAOL;QACX;QAEA,IAAIM;QACJ,MAAMC,oBAAoB;YACtB,IAAI,CAACD,gBACDA,iBAAiBE,qBAAqB;gBAClCV;gBACA,mBAAmBG;YACvB;YAEJ,OAAOK;QACX;QACAtC,UAAU,eAAe,CAACyC,YAAY,IAAMF;QAC5CvC,UAAU,eAAe,CAAC0C,yBAAyB,IAAMT,uBAAuB,MAAM;QAEtF,IAAIU;QACJ3C,UAAU,eAAe,CAAC4C,eAAe;YACrC,IAAI,CAACD,mBACDA,oBAAoBE,wBAAwB;gBACxC7C;gBACA8B;gBACA,mBAAmBG;gBACnB,wBAAwBjC,UAAU,OAAO,CAAC8C;YAC9C;YAEJ,OAAOH;QACX;QAGA3C,UAAU,QAAQ,CAAC+C;QAOnB,IACI/C,UACK,OAAO,CAACgD,cACR,GAAG,GACH,SAAS,CAAC,sDAEfC,cAAc,QAAQ,CAACjD;QAG3BA,UAAU,QAAQ,CAACJ;QACnBI,UAAU,QAAQ,CAACkD;IACvB;AACJ"}
@@ -0,0 +1,32 @@
1
+ import { CoreGraphQLSchemaFactory } from "@webiny/api-graphql/graphql/abstractions.js";
2
+ import type { IGraphQLSchemaBuilder } from "@webiny/api-graphql/features/GraphQLSchemaBuilder/abstractions.js";
3
+ import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
4
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/abstractions.js";
5
+ import { ListModelsUseCase } from "@webiny/api-headless-cms/features/contentModel/ListModels/index.js";
6
+ import { CmsModelFieldToGraphQLRegistry } from "@webiny/api-headless-cms/exports/api/cms/graphql.js";
7
+ import { FolderModelProvider } from "./domain/folder/abstractions.js";
8
+ /**
9
+ * Builds the dynamic folder GraphQL schema — the `Folder` type's fields are rendered from the
10
+ * tenant's folder model, so the shape differs per tenant.
11
+ *
12
+ * Previously done by `AcoInitializer`, which had to run as a per-request hook before any resolver:
13
+ * it fetched the model, then registered one `CoreGraphQLSchemaFactory` per generated plugin. That
14
+ * indirection is unnecessary — `CoreGraphQLSchemaFactory.execute()` is already awaited by
15
+ * `GraphQLSchemaComposer`, so this factory can be registered once at compose time and do its async
16
+ * work inside `execute()`, at the moment the schema is actually built.
17
+ */
18
+ declare class AcoFolderSchemaFactoryImpl implements CoreGraphQLSchemaFactory.Interface {
19
+ private folderModelProvider;
20
+ private listModels;
21
+ private fieldRegistry;
22
+ private identityContext;
23
+ private tenantContext;
24
+ constructor(folderModelProvider: FolderModelProvider.Interface, listModels: ListModelsUseCase.Interface, fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface, identityContext: IdentityContext.Interface, tenantContext: TenantContext.Interface);
25
+ getSchemaKey(): Promise<string>;
26
+ execute(builder: IGraphQLSchemaBuilder): Promise<IGraphQLSchemaBuilder>;
27
+ private loadInputs;
28
+ }
29
+ export declare const AcoFolderSchemaFactory: typeof AcoFolderSchemaFactoryImpl & {
30
+ __abstraction: import("@webiny/di").Abstraction<import("@webiny/api-graphql/graphql/abstractions.core").ICoreGraphQLSchemaFactory>;
31
+ };
32
+ export {};
@@ -0,0 +1,82 @@
1
+ import { GraphQLSchemaPlugin } from "@webiny/api-graphql";
2
+ import { createModelSchemaKey } from "@webiny/api-headless-cms/utils/createModelSchemaKey.js";
3
+ import { CoreGraphQLSchemaFactory } from "@webiny/api-graphql/graphql/abstractions.js";
4
+ import { TenantContext } from "@webiny/api-core/features/tenancy/TenantContext/index.js";
5
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/abstractions.js";
6
+ import { ListModelsUseCase } from "@webiny/api-headless-cms/features/contentModel/ListModels/index.js";
7
+ import { CmsModelFieldToGraphQLRegistry } from "@webiny/api-headless-cms/exports/api/cms/graphql.js";
8
+ import { createGraphQLSchemaPluginFromFieldPlugins } from "@webiny/api-headless-cms/utils/getSchemaFromFieldPlugins.js";
9
+ import { FolderModelProvider } from "./domain/folder/abstractions.js";
10
+ import { createFoldersSchema } from "./folder/folder.gql.js";
11
+ class AcoFolderSchemaFactoryImpl {
12
+ constructor(folderModelProvider, listModels, fieldRegistry, identityContext, tenantContext){
13
+ this.folderModelProvider = folderModelProvider;
14
+ this.listModels = listModels;
15
+ this.fieldRegistry = fieldRegistry;
16
+ this.identityContext = identityContext;
17
+ this.tenantContext = tenantContext;
18
+ }
19
+ async getSchemaKey() {
20
+ const inputs = await this.loadInputs();
21
+ if (!inputs) return "Aco/Folder:no-tenant";
22
+ const modelKey = createModelSchemaKey([
23
+ inputs.model
24
+ ], inputs.models);
25
+ return `Aco/Folder:${modelKey}`;
26
+ }
27
+ async execute(builder) {
28
+ const inputs = await this.loadInputs();
29
+ if (!inputs) return builder;
30
+ const { model, models } = inputs;
31
+ const fieldPlugins = createGraphQLSchemaPluginFromFieldPlugins({
32
+ models,
33
+ type: "manage",
34
+ fieldRegistry: this.fieldRegistry,
35
+ createPlugin: ({ schema, type, fieldType })=>{
36
+ const plugin = new GraphQLSchemaPlugin(schema);
37
+ plugin.name = `aco.graphql.folder.schema.${type}.field.${fieldType}`;
38
+ return plugin;
39
+ }
40
+ });
41
+ const folderPlugin = createFoldersSchema({
42
+ model,
43
+ models,
44
+ fieldRegistry: this.fieldRegistry
45
+ });
46
+ for (const plugin of [
47
+ ...fieldPlugins,
48
+ folderPlugin
49
+ ]){
50
+ if (plugin.schema.typeDefs) builder.addTypeDefs(plugin.schema.typeDefs);
51
+ if (plugin.schema.resolvers) builder.addLegacyResolvers(plugin.schema.resolvers);
52
+ if (plugin.schema.resolverDecorators) for (const [path, decorators] of Object.entries(plugin.schema.resolverDecorators))for (const decorator of decorators)builder.addResolverDecorator(path, decorator);
53
+ }
54
+ return builder;
55
+ }
56
+ async loadInputs() {
57
+ if (!this.tenantContext.getTenant()) return null;
58
+ const model = await this.folderModelProvider.get();
59
+ const models = await this.identityContext.withoutAuthorization(async ()=>{
60
+ const result = await this.listModels.execute();
61
+ if (result.isFail()) throw result.error;
62
+ return result.value;
63
+ });
64
+ return {
65
+ model,
66
+ models
67
+ };
68
+ }
69
+ }
70
+ const AcoFolderSchemaFactory = CoreGraphQLSchemaFactory.createImplementation({
71
+ implementation: AcoFolderSchemaFactoryImpl,
72
+ dependencies: [
73
+ FolderModelProvider,
74
+ ListModelsUseCase,
75
+ CmsModelFieldToGraphQLRegistry,
76
+ IdentityContext,
77
+ TenantContext
78
+ ]
79
+ });
80
+ export { AcoFolderSchemaFactory };
81
+
82
+ //# sourceMappingURL=AcoFolderSchemaFactory.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"AcoFolderSchemaFactory.js","sources":["../src/AcoFolderSchemaFactory.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/api-graphql\";\nimport { createModelSchemaKey } from \"@webiny/api-headless-cms/utils/createModelSchemaKey.js\";\nimport { CoreGraphQLSchemaFactory } from \"@webiny/api-graphql/graphql/abstractions.js\";\nimport type { IGraphQLSchemaBuilder } from \"@webiny/api-graphql/features/GraphQLSchemaBuilder/abstractions.js\";\nimport type { IGraphQLSchemaPlugin } from \"@webiny/api-graphql/plugins/GraphQLSchemaPlugin.js\";\nimport { TenantContext } from \"@webiny/api-core/features/tenancy/TenantContext/index.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/abstractions.js\";\nimport { ListModelsUseCase } from \"@webiny/api-headless-cms/features/contentModel/ListModels/index.js\";\nimport { CmsModelFieldToGraphQLRegistry } from \"@webiny/api-headless-cms/exports/api/cms/graphql.js\";\nimport { createGraphQLSchemaPluginFromFieldPlugins } from \"@webiny/api-headless-cms/utils/getSchemaFromFieldPlugins.js\";\nimport { FolderModelProvider } from \"~/domain/folder/abstractions.js\";\nimport { createFoldersSchema } from \"~/folder/folder.gql.js\";\n\n/**\n * Builds the dynamic folder GraphQL schema — the `Folder` type's fields are rendered from the\n * tenant's folder model, so the shape differs per tenant.\n *\n * Previously done by `AcoInitializer`, which had to run as a per-request hook before any resolver:\n * it fetched the model, then registered one `CoreGraphQLSchemaFactory` per generated plugin. That\n * indirection is unnecessary — `CoreGraphQLSchemaFactory.execute()` is already awaited by\n * `GraphQLSchemaComposer`, so this factory can be registered once at compose time and do its async\n * work inside `execute()`, at the moment the schema is actually built.\n */\nclass AcoFolderSchemaFactoryImpl implements CoreGraphQLSchemaFactory.Interface {\n constructor(\n private folderModelProvider: FolderModelProvider.Interface,\n private listModels: ListModelsUseCase.Interface,\n private fieldRegistry: CmsModelFieldToGraphQLRegistry.Interface,\n private identityContext: IdentityContext.Interface,\n private tenantContext: TenantContext.Interface\n ) {}\n\n async getSchemaKey(): Promise<string> {\n const inputs = await this.loadInputs();\n if (!inputs) {\n return \"Aco/Folder:no-tenant\";\n }\n\n const modelKey = createModelSchemaKey([inputs.model], inputs.models);\n return `Aco/Folder:${modelKey}`;\n }\n\n async execute(builder: IGraphQLSchemaBuilder): Promise<IGraphQLSchemaBuilder> {\n const inputs = await this.loadInputs();\n if (!inputs) {\n return builder;\n }\n\n const { model, models } = inputs;\n\n const fieldPlugins = createGraphQLSchemaPluginFromFieldPlugins({\n models,\n type: \"manage\",\n fieldRegistry: this.fieldRegistry,\n createPlugin: ({ schema, type, fieldType }) => {\n const plugin = new GraphQLSchemaPlugin(schema);\n plugin.name = `aco.graphql.folder.schema.${type}.field.${fieldType}`;\n return plugin;\n }\n });\n\n const folderPlugin = createFoldersSchema({\n model,\n models,\n fieldRegistry: this.fieldRegistry\n });\n\n for (const plugin of [...fieldPlugins, folderPlugin] as IGraphQLSchemaPlugin[]) {\n if (plugin.schema.typeDefs) {\n builder.addTypeDefs(plugin.schema.typeDefs);\n }\n if (plugin.schema.resolvers) {\n builder.addLegacyResolvers(plugin.schema.resolvers as Record<string, any>);\n }\n if (plugin.schema.resolverDecorators) {\n for (const [path, decorators] of Object.entries(plugin.schema.resolverDecorators)) {\n for (const decorator of decorators as any[]) {\n builder.addResolverDecorator(path, decorator);\n }\n }\n }\n }\n\n return builder;\n }\n\n private async loadInputs() {\n // On a fresh project there is no tenant until installation completes, and there is no model\n // to render a schema from. (This is what `isHeadlessCmsReady` checked in the initializer.)\n if (!this.tenantContext.getTenant()) {\n return null;\n }\n\n const model = await this.folderModelProvider.get();\n\n // The model list feeds `ref` field rendering, so it must be the COMPLETE set — access\n // control filters models by permission, which would otherwise make the generated schema\n // vary by identity. Hence the unauthorized read, exactly as the initializer did.\n const models = await this.identityContext.withoutAuthorization(async () => {\n const result = await this.listModels.execute();\n if (result.isFail()) {\n throw result.error;\n }\n return result.value;\n });\n\n return { model, models };\n }\n}\n\nexport const AcoFolderSchemaFactory = CoreGraphQLSchemaFactory.createImplementation({\n implementation: AcoFolderSchemaFactoryImpl,\n dependencies: [\n FolderModelProvider,\n ListModelsUseCase,\n CmsModelFieldToGraphQLRegistry,\n IdentityContext,\n TenantContext\n ]\n});\n"],"names":["AcoFolderSchemaFactoryImpl","folderModelProvider","listModels","fieldRegistry","identityContext","tenantContext","inputs","modelKey","createModelSchemaKey","builder","model","models","fieldPlugins","createGraphQLSchemaPluginFromFieldPlugins","schema","type","fieldType","plugin","GraphQLSchemaPlugin","folderPlugin","createFoldersSchema","path","decorators","Object","decorator","result","AcoFolderSchemaFactory","CoreGraphQLSchemaFactory","FolderModelProvider","ListModelsUseCase","CmsModelFieldToGraphQLRegistry","IdentityContext","TenantContext"],"mappings":";;;;;;;;;;AAuBA,MAAMA;IACF,YACYC,mBAAkD,EAClDC,UAAuC,EACvCC,aAAuD,EACvDC,eAA0C,EAC1CC,aAAsC,CAChD;aALUJ,mBAAmB,GAAnBA;aACAC,UAAU,GAAVA;aACAC,aAAa,GAAbA;aACAC,eAAe,GAAfA;aACAC,aAAa,GAAbA;IACT;IAEH,MAAM,eAAgC;QAClC,MAAMC,SAAS,MAAM,IAAI,CAAC,UAAU;QACpC,IAAI,CAACA,QACD,OAAO;QAGX,MAAMC,WAAWC,qBAAqB;YAACF,OAAO,KAAK;SAAC,EAAEA,OAAO,MAAM;QACnE,OAAO,CAAC,WAAW,EAAEC,UAAU;IACnC;IAEA,MAAM,QAAQE,OAA8B,EAAkC;QAC1E,MAAMH,SAAS,MAAM,IAAI,CAAC,UAAU;QACpC,IAAI,CAACA,QACD,OAAOG;QAGX,MAAM,EAAEC,KAAK,EAAEC,MAAM,EAAE,GAAGL;QAE1B,MAAMM,eAAeC,0CAA0C;YAC3DF;YACA,MAAM;YACN,eAAe,IAAI,CAAC,aAAa;YACjC,cAAc,CAAC,EAAEG,MAAM,EAAEC,IAAI,EAAEC,SAAS,EAAE;gBACtC,MAAMC,SAAS,IAAIC,oBAAoBJ;gBACvCG,OAAO,IAAI,GAAG,CAAC,0BAA0B,EAAEF,KAAK,OAAO,EAAEC,WAAW;gBACpE,OAAOC;YACX;QACJ;QAEA,MAAME,eAAeC,oBAAoB;YACrCV;YACAC;YACA,eAAe,IAAI,CAAC,aAAa;QACrC;QAEA,KAAK,MAAMM,UAAU;eAAIL;YAAcO;SAAa,CAA4B;YAC5E,IAAIF,OAAO,MAAM,CAAC,QAAQ,EACtBR,QAAQ,WAAW,CAACQ,OAAO,MAAM,CAAC,QAAQ;YAE9C,IAAIA,OAAO,MAAM,CAAC,SAAS,EACvBR,QAAQ,kBAAkB,CAACQ,OAAO,MAAM,CAAC,SAAS;YAEtD,IAAIA,OAAO,MAAM,CAAC,kBAAkB,EAChC,KAAK,MAAM,CAACI,MAAMC,WAAW,IAAIC,OAAO,OAAO,CAACN,OAAO,MAAM,CAAC,kBAAkB,EAC5E,KAAK,MAAMO,aAAaF,WACpBb,QAAQ,oBAAoB,CAACY,MAAMG;QAInD;QAEA,OAAOf;IACX;IAEA,MAAc,aAAa;QAGvB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,IAC7B,OAAO;QAGX,MAAMC,QAAQ,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG;QAKhD,MAAMC,SAAS,MAAM,IAAI,CAAC,eAAe,CAAC,oBAAoB,CAAC;YAC3D,MAAMc,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO;YAC5C,IAAIA,OAAO,MAAM,IACb,MAAMA,OAAO,KAAK;YAEtB,OAAOA,OAAO,KAAK;QACvB;QAEA,OAAO;YAAEf;YAAOC;QAAO;IAC3B;AACJ;AAEO,MAAMe,yBAAyBC,yBAAyB,oBAAoB,CAAC;IAChF,gBAAgB3B;IAChB,cAAc;QACV4B;QACAC;QACAC;QACAC;QACAC;KACH;AACL"}
package/README.md CHANGED
@@ -1,33 +1,11 @@
1
1
  # @webiny/api-aco
2
2
 
3
- [![](https://img.shields.io/npm/dw/@webiny/api-aco.svg)](https://www.npmjs.com/package/@webiny/api-aco)
4
- [![](https://img.shields.io/npm/v/@webiny/api-aco.svg)](https://www.npmjs.com/package/@webiny/api-aco)
5
- [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
6
- [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-brightgreen.svg?style=flat-square)](http://makeapullrequest.com)
3
+ > [!NOTE]
4
+ > This package is part of the [Webiny](https://www.webiny.com) monorepo.
5
+ > It’s **included in every Webiny project by default** and is not meant to be used as a standalone package.
7
6
 
8
- ## Install
7
+ 📘 **Documentation:** [https://www.webiny.com/docs](https://www.webiny.com/docs)
9
8
 
10
- ```
11
- npm install --save @webiny/api-aco
12
- ```
9
+ ---
13
10
 
14
- Or if you prefer yarn:
15
-
16
- ```
17
- yarn add @webiny/api-aco
18
- ```
19
- ## Testing
20
-
21
- To run tests api-aco tests with targeted storage operations loaded use:
22
-
23
- ### DynamoDB
24
-
25
- ```
26
- yarn test packages/api-aco/* --keyword=cms:ddb --keyword=aco:base
27
- ```
28
-
29
- ### DynamoDB + ElasticSearch
30
-
31
- ```
32
- yarn test packages/api-aco/* --keyword=cms:ddb-es --keyword=aco:base
33
- ```
11
+ _This README file is automatically generated during the publish process._
package/constants.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from "@webiny/shared-aco";
2
+ export declare const FM_FILE_TYPE = "FmFile";
package/constants.js ADDED
@@ -0,0 +1,5 @@
1
+ export * from "@webiny/shared-aco";
2
+ const FM_FILE_TYPE = "FmFile";
3
+ export { FM_FILE_TYPE };
4
+
5
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sources":["../src/constants.ts"],"sourcesContent":["export * from \"@webiny/shared-aco\";\nexport const FM_FILE_TYPE = \"FmFile\";\n"],"names":["FM_FILE_TYPE"],"mappings":";AACO,MAAMA,eAAe"}
@@ -1,3 +1,8 @@
1
- import { GraphQLSchemaPlugin } from "@webiny/handler-graphql";
2
- import { AcoContext } from "./types";
3
- export declare const createAcoGraphQL: () => GraphQLSchemaPlugin<AcoContext>[];
1
+ import type { IGraphQLSchemaBuilder } from "@webiny/api-graphql/features/GraphQLSchemaBuilder/abstractions.js";
2
+ /**
3
+ * The static ACO base schema (root Query.aco / Mutation.aco wrappers + shared types). The dynamic
4
+ * folder schema (field plugins + folders schema) is built by AcoFolderSchemaFactory, which awaits
5
+ * the per-tenant folder model when the schema is built. The filter schema comes from
6
+ * addFilterSchema.
7
+ */
8
+ export declare const addAcoBaseSchema: (builder: IGraphQLSchemaBuilder) => void;
@@ -1,121 +1,70 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.createAcoGraphQL = void 0;
7
- var _handlerGraphql = require("@webiny/handler-graphql");
8
- var _folder = require("./folder/folder.gql");
9
- var _app = require("./apps/app.gql");
10
- const emptyResolver = () => ({});
11
- const baseSchema = new _handlerGraphql.GraphQLSchemaPlugin({
12
- typeDefs: /* GraphQL */`
13
- type AcoQuery {
14
- _empty: String
15
- }
16
-
17
- type AcoMutation {
18
- _empty: String
19
- }
20
-
21
- type SearchQuery {
22
- _empty: String
23
- }
24
-
25
- type SearchMutation {
26
- _empty: String
27
- }
28
-
29
- type AcoMeta {
30
- hasMoreItems: Boolean
31
- totalCount: Int
32
- cursor: String
33
- }
34
-
35
- type AcoUser {
36
- id: ID
37
- displayName: String
38
- type: String
39
- }
40
-
41
- type AcoError {
42
- code: String
43
- message: String
44
- data: JSON
45
- stack: String
46
- }
47
-
48
- type AcoBooleanResponse {
49
- data: Boolean
50
- error: AcoError
51
- }
1
+ const BASE_TYPE_DEFS = `
2
+ type AcoQuery {
3
+ _empty: String
4
+ }
52
5
 
53
- enum AcoSortDirection {
54
- ASC
55
- DESC
56
- }
6
+ type AcoMutation {
7
+ _empty: String
8
+ }
57
9
 
58
- input AcoSort {
59
- id: AcoSortDirection
60
- createdOn: AcoSortDirection
61
- savedOn: AcoSortDirection
62
- title: AcoSortDirection
63
- }
10
+ type AcoMeta {
11
+ hasMoreItems: Boolean
12
+ totalCount: Int
13
+ cursor: String
14
+ }
64
15
 
65
- input AcoSearchRecordTagListWhereInput {
66
- tags_in: [String!]
67
- tags_startsWith: String
68
- tags_not_startsWith: String
69
- createdBy: ID
70
- AND: [AcoSearchRecordTagListWhereInput!]
71
- OR: [AcoSearchRecordTagListWhereInput!]
72
- }
16
+ type AcoUser {
17
+ id: ID
18
+ displayName: String
19
+ type: String
20
+ }
73
21
 
74
- type AcoSearchRecordMoveResponse {
75
- data: Boolean
76
- error: AcoError
77
- }
22
+ type AcoError {
23
+ code: String
24
+ message: String
25
+ data: JSON
26
+ stack: String
27
+ }
78
28
 
79
- type TagItem {
80
- tag: String!
81
- count: Int!
82
- }
29
+ type AcoBooleanResponse {
30
+ data: Boolean
31
+ error: AcoError
32
+ }
83
33
 
84
- type AcoSearchRecordTagListResponse {
85
- data: [TagItem!]
86
- error: AcoError
87
- meta: AcoMeta
88
- }
34
+ enum AcoSortDirection {
35
+ ASC
36
+ DESC
37
+ }
89
38
 
90
- type AcoSearchLocationType {
91
- folderId: ID!
92
- }
93
- input AcoSearchLocationInput {
94
- folderId: ID!
95
- }
39
+ input AcoSort {
40
+ id: AcoSortDirection
41
+ createdOn: AcoSortDirection
42
+ modifiedOn: AcoSortDirection
43
+ savedOn: AcoSortDirection
44
+ title: AcoSortDirection
45
+ }
96
46
 
97
- extend type Query {
98
- aco: AcoQuery
99
- search: SearchQuery
100
- }
47
+ extend type Query {
48
+ aco: AcoQuery
49
+ }
101
50
 
102
- extend type Mutation {
103
- aco: AcoMutation
104
- search: SearchMutation
105
- }
106
- `,
107
- resolvers: {
108
- Query: {
109
- aco: emptyResolver,
110
- search: emptyResolver
111
- },
112
- Mutation: {
113
- aco: emptyResolver,
114
- search: emptyResolver
51
+ extend type Mutation {
52
+ aco: AcoMutation
115
53
  }
116
- }
117
- });
118
- const createAcoGraphQL = () => {
119
- return [baseSchema, _app.appGql, _folder.folderSchema];
54
+ `;
55
+ const addAcoBaseSchema = (builder)=>{
56
+ builder.addTypeDefs(BASE_TYPE_DEFS);
57
+ builder.addResolver({
58
+ path: "Query.aco",
59
+ dependencies: [],
60
+ resolver: ()=>()=>({})
61
+ });
62
+ builder.addResolver({
63
+ path: "Mutation.aco",
64
+ dependencies: [],
65
+ resolver: ()=>()=>({})
66
+ });
120
67
  };
121
- exports.createAcoGraphQL = createAcoGraphQL;
68
+ export { addAcoBaseSchema };
69
+
70
+ //# sourceMappingURL=createAcoGraphQL.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["emptyResolver","baseSchema","GraphQLSchemaPlugin","typeDefs","resolvers","Query","aco","search","Mutation","createAcoGraphQL","appGql","folderSchema"],"sources":["createAcoGraphQL.ts"],"sourcesContent":["import { GraphQLSchemaPlugin } from \"@webiny/handler-graphql\";\nimport { folderSchema } from \"~/folder/folder.gql\";\nimport { appGql } from \"~/apps/app.gql\";\nimport { AcoContext } from \"~/types\";\n\nconst emptyResolver = () => ({});\n\nconst baseSchema = new GraphQLSchemaPlugin({\n typeDefs: /* GraphQL */ `\n type AcoQuery {\n _empty: String\n }\n\n type AcoMutation {\n _empty: String\n }\n\n type SearchQuery {\n _empty: String\n }\n\n type SearchMutation {\n _empty: String\n }\n\n type AcoMeta {\n hasMoreItems: Boolean\n totalCount: Int\n cursor: String\n }\n\n type AcoUser {\n id: ID\n displayName: String\n type: String\n }\n\n type AcoError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n\n type AcoBooleanResponse {\n data: Boolean\n error: AcoError\n }\n\n enum AcoSortDirection {\n ASC\n DESC\n }\n\n input AcoSort {\n id: AcoSortDirection\n createdOn: AcoSortDirection\n savedOn: AcoSortDirection\n title: AcoSortDirection\n }\n\n input AcoSearchRecordTagListWhereInput {\n tags_in: [String!]\n tags_startsWith: String\n tags_not_startsWith: String\n createdBy: ID\n AND: [AcoSearchRecordTagListWhereInput!]\n OR: [AcoSearchRecordTagListWhereInput!]\n }\n\n type AcoSearchRecordMoveResponse {\n data: Boolean\n error: AcoError\n }\n\n type TagItem {\n tag: String!\n count: Int!\n }\n\n type AcoSearchRecordTagListResponse {\n data: [TagItem!]\n error: AcoError\n meta: AcoMeta\n }\n\n type AcoSearchLocationType {\n folderId: ID!\n }\n input AcoSearchLocationInput {\n folderId: ID!\n }\n\n extend type Query {\n aco: AcoQuery\n search: SearchQuery\n }\n\n extend type Mutation {\n aco: AcoMutation\n search: SearchMutation\n }\n `,\n resolvers: {\n Query: {\n aco: emptyResolver,\n search: emptyResolver\n },\n Mutation: {\n aco: emptyResolver,\n search: emptyResolver\n }\n }\n});\n\nexport const createAcoGraphQL = (): GraphQLSchemaPlugin<AcoContext>[] => {\n return [baseSchema, appGql, folderSchema];\n};\n"],"mappings":";;;;;;AAAA;AACA;AACA;AAGA,MAAMA,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC;AAEhC,MAAMC,UAAU,GAAG,IAAIC,mCAAmB,CAAC;EACvCC,QAAQ,EAAE,aAAe;AAC7B;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,KAAK;EACDC,SAAS,EAAE;IACPC,KAAK,EAAE;MACHC,GAAG,EAAEN,aAAa;MAClBO,MAAM,EAAEP;IACZ,CAAC;IACDQ,QAAQ,EAAE;MACNF,GAAG,EAAEN,aAAa;MAClBO,MAAM,EAAEP;IACZ;EACJ;AACJ,CAAC,CAAC;AAEK,MAAMS,gBAAgB,GAAG,MAAyC;EACrE,OAAO,CAACR,UAAU,EAAES,WAAM,EAAEC,oBAAY,CAAC;AAC7C,CAAC;AAAC"}
1
+ {"version":3,"file":"createAcoGraphQL.js","sources":["../src/createAcoGraphQL.ts"],"sourcesContent":["import type { IGraphQLSchemaBuilder } from \"@webiny/api-graphql/features/GraphQLSchemaBuilder/abstractions.js\";\n\nconst BASE_TYPE_DEFS = /* GraphQL */ `\n type AcoQuery {\n _empty: String\n }\n\n type AcoMutation {\n _empty: String\n }\n\n type AcoMeta {\n hasMoreItems: Boolean\n totalCount: Int\n cursor: String\n }\n\n type AcoUser {\n id: ID\n displayName: String\n type: String\n }\n\n type AcoError {\n code: String\n message: String\n data: JSON\n stack: String\n }\n\n type AcoBooleanResponse {\n data: Boolean\n error: AcoError\n }\n\n enum AcoSortDirection {\n ASC\n DESC\n }\n\n input AcoSort {\n id: AcoSortDirection\n createdOn: AcoSortDirection\n modifiedOn: AcoSortDirection\n savedOn: AcoSortDirection\n title: AcoSortDirection\n }\n\n extend type Query {\n aco: AcoQuery\n }\n\n extend type Mutation {\n aco: AcoMutation\n }\n`;\n\n/**\n * The static ACO base schema (root Query.aco / Mutation.aco wrappers + shared types). The dynamic\n * folder schema (field plugins + folders schema) is built by AcoFolderSchemaFactory, which awaits\n * the per-tenant folder model when the schema is built. The filter schema comes from\n * addFilterSchema.\n */\nexport const addAcoBaseSchema = (builder: IGraphQLSchemaBuilder): void => {\n builder.addTypeDefs(BASE_TYPE_DEFS);\n builder.addResolver({ path: \"Query.aco\", dependencies: [], resolver: () => () => ({}) });\n builder.addResolver({ path: \"Mutation.aco\", dependencies: [], resolver: () => () => ({}) });\n};\n"],"names":["BASE_TYPE_DEFS","addAcoBaseSchema","builder"],"mappings":"AAEA,MAAMA,iBAA+B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqDtC,CAAC;AAQM,MAAMC,mBAAmB,CAACC;IAC7BA,QAAQ,WAAW,CAACF;IACpBE,QAAQ,WAAW,CAAC;QAAE,MAAM;QAAa,cAAc,EAAE;QAAE,UAAU,IAAM,IAAO,EAAC;IAAG;IACtFA,QAAQ,WAAW,CAAC;QAAE,MAAM;QAAgB,cAAc,EAAE;QAAE,UAAU,IAAM,IAAO,EAAC;IAAG;AAC7F"}
@@ -0,0 +1,16 @@
1
+ import type { CmsModel } from "@webiny/api-headless-cms/types";
2
+ /**
3
+ * Provides the tenant's ACO folder CMS model.
4
+ *
5
+ * A provider rather than the model itself: fetching a model is asynchronous and tenant-dependent,
6
+ * while DI resolution is synchronous — so an already-resolved `CmsModel` could only be supplied by a
7
+ * per-request hook running before every consumer (what `AcoInitializer` used to do). Consumers
8
+ * `await get()` at the point of use.
9
+ */
10
+ export interface IFolderModelProvider {
11
+ get(): Promise<CmsModel>;
12
+ }
13
+ export declare const FolderModelProvider: import("@webiny/di").Abstraction<IFolderModelProvider>;
14
+ export declare namespace FolderModelProvider {
15
+ type Interface = IFolderModelProvider;
16
+ }
@@ -0,0 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const FolderModelProvider = createAbstraction("FolderModelProvider");
3
+ export { FolderModelProvider };
4
+
5
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"domain/folder/abstractions.js","sources":["../../../src/domain/folder/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { CmsModel } from \"@webiny/api-headless-cms/types\";\n\n/**\n * Provides the tenant's ACO folder CMS model.\n *\n * A provider rather than the model itself: fetching a model is asynchronous and tenant-dependent,\n * while DI resolution is synchronous — so an already-resolved `CmsModel` could only be supplied by a\n * per-request hook running before every consumer (what `AcoInitializer` used to do). Consumers\n * `await get()` at the point of use.\n */\nexport interface IFolderModelProvider {\n get(): Promise<CmsModel>;\n}\n\nexport const FolderModelProvider = createAbstraction<IFolderModelProvider>(\"FolderModelProvider\");\n\nexport namespace FolderModelProvider {\n export type Interface = IFolderModelProvider;\n}\n"],"names":["FolderModelProvider","createAbstraction"],"mappings":";AAeO,MAAMA,sBAAsBC,kBAAwC"}
@@ -0,0 +1,29 @@
1
+ import { BaseError } from "@webiny/feature/api";
2
+ export declare class FolderNotFoundError extends BaseError<{
3
+ folder: {
4
+ id: string;
5
+ };
6
+ }> {
7
+ readonly code: "Aco/Folder/NotFound";
8
+ constructor(id: string);
9
+ }
10
+ export declare class FolderNotAuthorizedError extends BaseError {
11
+ readonly code: "Aco/Folder/NotAuthorizedError";
12
+ constructor();
13
+ }
14
+ export declare class FolderPersistenceError extends BaseError {
15
+ readonly code: "Aco/Folder/PersistenceError";
16
+ constructor(error: Error);
17
+ }
18
+ export declare class FolderValidationError extends BaseError {
19
+ readonly code: "Aco/Folder/ValidationError";
20
+ constructor(message: string);
21
+ }
22
+ export declare class FolderCannotMoveToNewParent extends BaseError {
23
+ readonly code: "Aco/Folder/CannotMoveToNewParent";
24
+ constructor();
25
+ }
26
+ export declare class FolderNotEmptyError extends BaseError {
27
+ readonly code: "Aco/Folder/NotEmpty";
28
+ constructor();
29
+ }