@webiny/api-aco 0.0.0-unstable.99666aeb00 → 0.0.0-unstable.9bd236cf5e

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 (500) hide show
  1. package/apps/AcoApp.d.ts +7 -2
  2. package/apps/AcoApp.js +56 -21
  3. package/apps/AcoApp.js.map +1 -1
  4. package/apps/AcoApps.d.ts +1 -1
  5. package/apps/AcoApps.js +7 -8
  6. package/apps/AcoApps.js.map +1 -1
  7. package/apps/app.gql.d.ts +1 -1
  8. package/apps/app.gql.js +6 -5
  9. package/apps/app.gql.js.map +1 -1
  10. package/apps/index.js +3 -1
  11. package/apps/index.js.map +1 -1
  12. package/constants.d.ts +3 -0
  13. package/constants.js +26 -0
  14. package/constants.js.map +1 -0
  15. package/createAcoContext.d.ts +8 -2
  16. package/createAcoContext.js +57 -27
  17. package/createAcoContext.js.map +1 -1
  18. package/createAcoGraphQL.d.ts +3 -2
  19. package/createAcoGraphQL.js +44 -2
  20. package/createAcoGraphQL.js.map +1 -1
  21. package/createAcoHooks.d.ts +1 -1
  22. package/createAcoHooks.js +11 -3
  23. package/createAcoHooks.js.map +1 -1
  24. package/createAcoModels.d.ts +2 -2
  25. package/createAcoModels.js +14 -21
  26. package/createAcoModels.js.map +1 -1
  27. package/createAcoStorageOperations.d.ts +6 -5
  28. package/createAcoStorageOperations.js +14 -9
  29. package/createAcoStorageOperations.js.map +1 -1
  30. package/createAcoTasks.d.ts +1 -0
  31. package/createAcoTasks.js +13 -0
  32. package/createAcoTasks.js.map +1 -0
  33. package/filter/filter.crud.d.ts +3 -0
  34. package/filter/filter.crud.js +94 -0
  35. package/filter/filter.crud.js.map +1 -0
  36. package/filter/filter.gql.d.ts +3 -0
  37. package/filter/filter.gql.js +152 -0
  38. package/filter/filter.gql.js.map +1 -0
  39. package/filter/filter.model.d.ts +2 -0
  40. package/filter/filter.model.js +124 -0
  41. package/filter/filter.model.js.map +1 -0
  42. package/filter/filter.so.d.ts +3 -0
  43. package/filter/filter.so.js +98 -0
  44. package/filter/filter.so.js.map +1 -0
  45. package/filter/filter.types.d.ts +95 -0
  46. package/filter/filter.types.js +13 -0
  47. package/filter/filter.types.js.map +1 -0
  48. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.d.ts +7 -0
  49. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.js +17 -0
  50. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.js.map +1 -0
  51. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.d.ts +4 -0
  52. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.js +7 -0
  53. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.js.map +1 -0
  54. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.d.ts +2 -0
  55. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.js +29 -0
  56. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.js.map +1 -0
  57. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.d.ts +7 -0
  58. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.js +17 -0
  59. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.js.map +1 -0
  60. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.d.ts +4 -0
  61. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.js +7 -0
  62. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.js.map +1 -0
  63. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.d.ts +2 -0
  64. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.js +29 -0
  65. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.js.map +1 -0
  66. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.d.ts +3 -0
  67. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.js +7 -0
  68. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.js.map +1 -0
  69. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.d.ts +7 -0
  70. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.js +17 -0
  71. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.js.map +1 -0
  72. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.d.ts +2 -0
  73. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.js +29 -0
  74. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.js.map +1 -0
  75. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.d.ts +4 -0
  76. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.js +7 -0
  77. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.js.map +1 -0
  78. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.d.ts +7 -0
  79. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.js +39 -0
  80. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.js.map +1 -0
  81. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.d.ts +2 -0
  82. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.js +29 -0
  83. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.js.map +1 -0
  84. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.d.ts +4 -0
  85. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.js +7 -0
  86. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.js.map +1 -0
  87. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.d.ts +7 -0
  88. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.js +17 -0
  89. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.js.map +1 -0
  90. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.d.ts +2 -0
  91. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.js +29 -0
  92. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.js.map +1 -0
  93. package/flp/FolderLevelPermissions/gateways/index.d.ts +5 -0
  94. package/flp/FolderLevelPermissions/gateways/index.js +62 -0
  95. package/flp/FolderLevelPermissions/gateways/index.js.map +1 -0
  96. package/flp/FolderLevelPermissions/index.d.ts +33 -0
  97. package/flp/FolderLevelPermissions/index.js +116 -0
  98. package/flp/FolderLevelPermissions/index.js.map +1 -0
  99. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.d.ts +7 -0
  100. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js +48 -0
  101. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js.map +1 -0
  102. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.d.ts +9 -0
  103. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js +7 -0
  104. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js.map +1 -0
  105. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.d.ts +2 -0
  106. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js +29 -0
  107. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js.map +1 -0
  108. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.d.ts +7 -0
  109. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js +41 -0
  110. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js.map +1 -0
  111. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.d.ts +8 -0
  112. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js +7 -0
  113. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js.map +1 -0
  114. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.d.ts +2 -0
  115. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js +29 -0
  116. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js.map +1 -0
  117. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.d.ts +4 -0
  118. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js +14 -0
  119. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js.map +1 -0
  120. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.d.ts +3 -0
  121. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js +7 -0
  122. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js.map +1 -0
  123. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.d.ts +2 -0
  124. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js +29 -0
  125. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js.map +1 -0
  126. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.d.ts +9 -0
  127. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.js +34 -0
  128. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.js.map +1 -0
  129. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.d.ts +3 -0
  130. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.js +7 -0
  131. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.js.map +1 -0
  132. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.d.ts +2 -0
  133. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.js +29 -0
  134. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.js.map +1 -0
  135. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.d.ts +7 -0
  136. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.js +17 -0
  137. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.js.map +1 -0
  138. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.d.ts +3 -0
  139. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.js +7 -0
  140. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.js.map +1 -0
  141. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.d.ts +2 -0
  142. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.js +29 -0
  143. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.js.map +1 -0
  144. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.d.ts +5 -0
  145. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js +14 -0
  146. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js.map +1 -0
  147. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.d.ts +4 -0
  148. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js +7 -0
  149. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js.map +1 -0
  150. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.d.ts +2 -0
  151. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js +29 -0
  152. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js.map +1 -0
  153. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.d.ts +6 -0
  154. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js +77 -0
  155. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js.map +1 -0
  156. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.d.ts +9 -0
  157. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js +21 -0
  158. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js.map +1 -0
  159. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.d.ts +10 -0
  160. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js +42 -0
  161. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js.map +1 -0
  162. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.d.ts +4 -0
  163. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js +7 -0
  164. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js.map +1 -0
  165. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.d.ts +3 -0
  166. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js +40 -0
  167. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js.map +1 -0
  168. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.d.ts +7 -0
  169. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.js +17 -0
  170. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.js.map +1 -0
  171. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.d.ts +4 -0
  172. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.js +7 -0
  173. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.js.map +1 -0
  174. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.d.ts +2 -0
  175. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.js +29 -0
  176. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.js.map +1 -0
  177. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.d.ts +4 -0
  178. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.js +7 -0
  179. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.js.map +1 -0
  180. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.d.ts +7 -0
  181. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.js +17 -0
  182. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.js.map +1 -0
  183. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.d.ts +2 -0
  184. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.js +18 -0
  185. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.js.map +1 -0
  186. package/flp/FolderLevelPermissions/useCases/index.d.ts +9 -0
  187. package/flp/FolderLevelPermissions/useCases/index.js +106 -0
  188. package/flp/FolderLevelPermissions/useCases/index.js.map +1 -0
  189. package/flp/flp.crud.d.ts +9 -0
  190. package/flp/flp.crud.js +172 -0
  191. package/flp/flp.crud.js.map +1 -0
  192. package/flp/flp.so.d.ts +26 -0
  193. package/flp/flp.so.js +304 -0
  194. package/flp/flp.so.js.map +1 -0
  195. package/flp/flp.types.d.ts +147 -0
  196. package/flp/flp.types.js +18 -0
  197. package/flp/flp.types.js.map +1 -0
  198. package/flp/hooks/index.d.ts +2 -0
  199. package/flp/hooks/index.js +17 -0
  200. package/flp/hooks/index.js.map +1 -0
  201. package/flp/hooks/onFolderAfterCreateFlp.hook.d.ts +2 -0
  202. package/flp/hooks/onFolderAfterCreateFlp.hook.js +37 -0
  203. package/flp/hooks/onFolderAfterCreateFlp.hook.js.map +1 -0
  204. package/flp/hooks/onFolderAfterDeleteFlp.hook.d.ts +2 -0
  205. package/flp/hooks/onFolderAfterDeleteFlp.hook.js +37 -0
  206. package/flp/hooks/onFolderAfterDeleteFlp.hook.js.map +1 -0
  207. package/flp/hooks/onFolderAfterUpdateFlp.hook.d.ts +2 -0
  208. package/flp/hooks/onFolderAfterUpdateFlp.hook.js +39 -0
  209. package/flp/hooks/onFolderAfterUpdateFlp.hook.js.map +1 -0
  210. package/flp/index.d.ts +5 -0
  211. package/flp/index.js +62 -0
  212. package/flp/index.js.map +1 -0
  213. package/flp/tasks/createFlp.task.d.ts +2 -0
  214. package/flp/tasks/createFlp.task.js +49 -0
  215. package/flp/tasks/createFlp.task.js.map +1 -0
  216. package/flp/tasks/deleteFlp.task.d.ts +2 -0
  217. package/flp/tasks/deleteFlp.task.js +49 -0
  218. package/flp/tasks/deleteFlp.task.js.map +1 -0
  219. package/flp/tasks/index.d.ts +5 -0
  220. package/flp/tasks/index.js +20 -0
  221. package/flp/tasks/index.js.map +1 -0
  222. package/flp/tasks/syncFlp.task.d.ts +2 -0
  223. package/flp/tasks/syncFlp.task.js +126 -0
  224. package/flp/tasks/syncFlp.task.js.map +1 -0
  225. package/flp/tasks/updateFlp.task.d.ts +2 -0
  226. package/flp/tasks/updateFlp.task.js +55 -0
  227. package/flp/tasks/updateFlp.task.js.map +1 -0
  228. package/flp/useCases/CreateFlp.d.ts +7 -0
  229. package/flp/useCases/CreateFlp.js +51 -0
  230. package/flp/useCases/CreateFlp.js.map +1 -0
  231. package/flp/useCases/DeleteFlp.d.ts +6 -0
  232. package/flp/useCases/DeleteFlp.js +30 -0
  233. package/flp/useCases/DeleteFlp.js.map +1 -0
  234. package/flp/useCases/UpdateFlp.d.ts +26 -0
  235. package/flp/useCases/UpdateFlp.js +198 -0
  236. package/flp/useCases/UpdateFlp.js.map +1 -0
  237. package/flp/useCases/index.d.ts +3 -0
  238. package/flp/useCases/index.js +40 -0
  239. package/flp/useCases/index.js.map +1 -0
  240. package/folder/createFolderModelModifier.d.ts +36 -0
  241. package/folder/createFolderModelModifier.js +70 -0
  242. package/folder/createFolderModelModifier.js.map +1 -0
  243. package/folder/createFolderTypeDefs.d.ts +7 -0
  244. package/folder/createFolderTypeDefs.js +207 -0
  245. package/folder/createFolderTypeDefs.js.map +1 -0
  246. package/folder/ensureFolderIsEmpty.d.ts +8 -0
  247. package/folder/ensureFolderIsEmpty.js +63 -0
  248. package/folder/ensureFolderIsEmpty.js.map +1 -0
  249. package/folder/folder.crud.d.ts +8 -3
  250. package/folder/folder.crud.js +112 -65
  251. package/folder/folder.crud.js.map +1 -1
  252. package/folder/folder.gql.d.ts +3 -2
  253. package/folder/folder.gql.js +121 -104
  254. package/folder/folder.gql.js.map +1 -1
  255. package/folder/folder.model.d.ts +1 -3
  256. package/folder/folder.model.js +80 -11
  257. package/folder/folder.model.js.map +1 -1
  258. package/folder/folder.so.d.ts +2 -2
  259. package/folder/folder.so.js +68 -22
  260. package/folder/folder.so.js.map +1 -1
  261. package/folder/folder.types.d.ts +67 -8
  262. package/folder/folder.types.js +3 -1
  263. package/folder/folder.types.js.map +1 -1
  264. package/folder/onFolderBeforeDeleteAco.hook.d.ts +2 -0
  265. package/folder/onFolderBeforeDeleteAco.hook.js +54 -0
  266. package/folder/onFolderBeforeDeleteAco.hook.js.map +1 -0
  267. package/folder/onFolderBeforeDeleteFm.hook.d.ts +2 -0
  268. package/folder/onFolderBeforeDeleteFm.hook.js +51 -0
  269. package/folder/onFolderBeforeDeleteFm.hook.js.map +1 -0
  270. package/folder/onFolderBeforeDeleteHcms.hook.d.ts +2 -0
  271. package/folder/onFolderBeforeDeleteHcms.hook.js +58 -0
  272. package/folder/onFolderBeforeDeleteHcms.hook.js.map +1 -0
  273. package/folder/useCases/CreateFolder/CreateFolder.d.ts +7 -0
  274. package/folder/useCases/CreateFolder/CreateFolder.js +19 -0
  275. package/folder/useCases/CreateFolder/CreateFolder.js.map +1 -0
  276. package/folder/useCases/CreateFolder/CreateFolderWithEvents.d.ts +9 -0
  277. package/folder/useCases/CreateFolder/CreateFolderWithEvents.js +25 -0
  278. package/folder/useCases/CreateFolder/CreateFolderWithEvents.js.map +1 -0
  279. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.d.ts +25 -0
  280. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.js +39 -0
  281. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.js.map +1 -0
  282. package/folder/useCases/CreateFolder/ICreateFolder.d.ts +4 -0
  283. package/folder/useCases/CreateFolder/ICreateFolder.js +7 -0
  284. package/folder/useCases/CreateFolder/ICreateFolder.js.map +1 -0
  285. package/folder/useCases/CreateFolder/index.d.ts +17 -0
  286. package/folder/useCases/CreateFolder/index.js +20 -0
  287. package/folder/useCases/CreateFolder/index.js.map +1 -0
  288. package/folder/useCases/DeleteFolder/DeleteFolder.d.ts +7 -0
  289. package/folder/useCases/DeleteFolder/DeleteFolder.js +18 -0
  290. package/folder/useCases/DeleteFolder/DeleteFolder.js.map +1 -0
  291. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.d.ts +10 -0
  292. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.js +29 -0
  293. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.js.map +1 -0
  294. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.d.ts +9 -0
  295. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.js +24 -0
  296. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.js.map +1 -0
  297. package/folder/useCases/DeleteFolder/IDeleteFolder.d.ts +4 -0
  298. package/folder/useCases/DeleteFolder/IDeleteFolder.js +7 -0
  299. package/folder/useCases/DeleteFolder/IDeleteFolder.js.map +1 -0
  300. package/folder/useCases/DeleteFolder/index.d.ts +18 -0
  301. package/folder/useCases/DeleteFolder/index.js +20 -0
  302. package/folder/useCases/DeleteFolder/index.js.map +1 -0
  303. package/folder/useCases/GetAncestors/GetAncestors.d.ts +9 -0
  304. package/folder/useCases/GetAncestors/GetAncestors.js +77 -0
  305. package/folder/useCases/GetAncestors/GetAncestors.js.map +1 -0
  306. package/folder/useCases/GetAncestors/IGetAncestors.d.ts +7 -0
  307. package/folder/useCases/GetAncestors/IGetAncestors.js +7 -0
  308. package/folder/useCases/GetAncestors/IGetAncestors.js.map +1 -0
  309. package/folder/useCases/GetAncestors/index.d.ts +9 -0
  310. package/folder/useCases/GetAncestors/index.js +16 -0
  311. package/folder/useCases/GetAncestors/index.js.map +1 -0
  312. package/folder/useCases/GetFolder/GetFolder.d.ts +7 -0
  313. package/folder/useCases/GetFolder/GetFolder.js +17 -0
  314. package/folder/useCases/GetFolder/GetFolder.js.map +1 -0
  315. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.d.ts +25 -0
  316. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.js +33 -0
  317. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.js.map +1 -0
  318. package/folder/useCases/GetFolder/IGetFolder.d.ts +4 -0
  319. package/folder/useCases/GetFolder/IGetFolder.js +7 -0
  320. package/folder/useCases/GetFolder/IGetFolder.js.map +1 -0
  321. package/folder/useCases/GetFolder/index.d.ts +13 -0
  322. package/folder/useCases/GetFolder/index.js +19 -0
  323. package/folder/useCases/GetFolder/index.js.map +1 -0
  324. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.d.ts +11 -0
  325. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.js +63 -0
  326. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.js.map +1 -0
  327. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.d.ts +17 -0
  328. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.js +59 -0
  329. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.js.map +1 -0
  330. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.d.ts +4 -0
  331. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.js +7 -0
  332. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.js.map +1 -0
  333. package/folder/useCases/GetFolderHierarchy/index.d.ts +12 -0
  334. package/folder/useCases/GetFolderHierarchy/index.js +18 -0
  335. package/folder/useCases/GetFolderHierarchy/index.js.map +1 -0
  336. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.d.ts +4 -0
  337. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.js +7 -0
  338. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.js.map +1 -0
  339. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.d.ts +4 -0
  340. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.js +7 -0
  341. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.js.map +1 -0
  342. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.d.ts +4 -0
  343. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.js +7 -0
  344. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.js.map +1 -0
  345. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.d.ts +7 -0
  346. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.js +23 -0
  347. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.js.map +1 -0
  348. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.d.ts +13 -0
  349. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.js +60 -0
  350. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.js.map +1 -0
  351. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.d.ts +7 -0
  352. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.js +22 -0
  353. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.js.map +1 -0
  354. package/folder/useCases/ListFolderLevelPermissionsTargets/index.d.ts +9 -0
  355. package/folder/useCases/ListFolderLevelPermissionsTargets/index.js +20 -0
  356. package/folder/useCases/ListFolderLevelPermissionsTargets/index.js.map +1 -0
  357. package/folder/useCases/ListFolders/IListFolders.d.ts +5 -0
  358. package/folder/useCases/ListFolders/IListFolders.js +7 -0
  359. package/folder/useCases/ListFolders/IListFolders.js.map +1 -0
  360. package/folder/useCases/ListFolders/ListFolders.d.ts +8 -0
  361. package/folder/useCases/ListFolders/ListFolders.js +17 -0
  362. package/folder/useCases/ListFolders/ListFolders.js.map +1 -0
  363. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.d.ts +14 -0
  364. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.js +67 -0
  365. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.js.map +1 -0
  366. package/folder/useCases/ListFolders/index.d.ts +13 -0
  367. package/folder/useCases/ListFolders/index.js +19 -0
  368. package/folder/useCases/ListFolders/index.js.map +1 -0
  369. package/folder/useCases/UpdateFolder/IUpdateFolder.d.ts +4 -0
  370. package/folder/useCases/UpdateFolder/IUpdateFolder.js +7 -0
  371. package/folder/useCases/UpdateFolder/IUpdateFolder.js.map +1 -0
  372. package/folder/useCases/UpdateFolder/UpdateFolder.d.ts +7 -0
  373. package/folder/useCases/UpdateFolder/UpdateFolder.js +20 -0
  374. package/folder/useCases/UpdateFolder/UpdateFolder.js.map +1 -0
  375. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.d.ts +10 -0
  376. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.js +38 -0
  377. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.js.map +1 -0
  378. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.d.ts +26 -0
  379. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.js +78 -0
  380. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.js.map +1 -0
  381. package/folder/useCases/UpdateFolder/index.d.ts +18 -0
  382. package/folder/useCases/UpdateFolder/index.js +20 -0
  383. package/folder/useCases/UpdateFolder/index.js.map +1 -0
  384. package/folder/useCases/index.d.ts +8 -0
  385. package/folder/useCases/index.js +95 -0
  386. package/folder/useCases/index.js.map +1 -0
  387. package/index.d.ts +8 -1
  388. package/index.js +27 -5
  389. package/index.js.map +1 -1
  390. package/package.json +33 -33
  391. package/plugins/AcoAppModifierPlugin.d.ts +3 -3
  392. package/plugins/AcoAppModifierPlugin.js +4 -5
  393. package/plugins/AcoAppModifierPlugin.js.map +1 -1
  394. package/plugins/AcoAppRegisterPlugin.d.ts +1 -1
  395. package/plugins/AcoAppRegisterPlugin.js +4 -5
  396. package/plugins/AcoAppRegisterPlugin.js.map +1 -1
  397. package/plugins/index.js +3 -1
  398. package/plugins/index.js.map +1 -1
  399. package/record/graphql/createAppResolvers.d.ts +2 -2
  400. package/record/graphql/createAppResolvers.js +26 -19
  401. package/record/graphql/createAppResolvers.js.map +1 -1
  402. package/record/graphql/createAppSchema.d.ts +2 -2
  403. package/record/graphql/createAppSchema.js +13 -9
  404. package/record/graphql/createAppSchema.js.map +1 -1
  405. package/record/record.crud.d.ts +2 -2
  406. package/record/record.crud.js +13 -11
  407. package/record/record.crud.js.map +1 -1
  408. package/record/record.gql.d.ts +1 -1
  409. package/record/record.gql.js +3 -1
  410. package/record/record.gql.js.map +1 -1
  411. package/record/record.model.d.ts +3 -5
  412. package/record/record.model.js +18 -13
  413. package/record/record.model.js.map +1 -1
  414. package/record/record.so.d.ts +2 -2
  415. package/record/record.so.js +114 -93
  416. package/record/record.so.js.map +1 -1
  417. package/record/record.types.d.ts +17 -16
  418. package/record/record.types.js +3 -1
  419. package/record/record.types.js.map +1 -1
  420. package/types.d.ts +41 -15
  421. package/types.js +36 -4
  422. package/types.js.map +1 -1
  423. package/utils/FoldersCacheFactory.d.ts +10 -0
  424. package/utils/FoldersCacheFactory.js +31 -0
  425. package/utils/FoldersCacheFactory.js.map +1 -0
  426. package/utils/ListCache.d.ts +23 -0
  427. package/utils/ListCache.js +31 -0
  428. package/utils/ListCache.js.map +1 -0
  429. package/utils/ListFoldersRepository.d.ts +10 -0
  430. package/utils/ListFoldersRepository.js +35 -0
  431. package/utils/ListFoldersRepository.js.map +1 -0
  432. package/utils/Path.d.ts +3 -0
  433. package/utils/Path.js +18 -0
  434. package/utils/Path.js.map +1 -0
  435. package/utils/acoRecordId.js +3 -1
  436. package/utils/acoRecordId.js.map +1 -1
  437. package/utils/compress.d.ts +4 -0
  438. package/utils/compress.js +19 -0
  439. package/utils/compress.js.map +1 -0
  440. package/utils/createListSort.d.ts +3 -2
  441. package/utils/createListSort.js +6 -2
  442. package/utils/createListSort.js.map +1 -1
  443. package/utils/createModelField.d.ts +1 -1
  444. package/utils/createModelField.js +3 -1
  445. package/utils/createModelField.js.map +1 -1
  446. package/utils/createOperationsWrapper.d.ts +2 -2
  447. package/utils/createOperationsWrapper.js +8 -10
  448. package/utils/createOperationsWrapper.js.map +1 -1
  449. package/utils/decorators/CmsEntriesCrudDecorators.d.ts +11 -0
  450. package/utils/decorators/CmsEntriesCrudDecorators.js +210 -0
  451. package/utils/decorators/CmsEntriesCrudDecorators.js.map +1 -0
  452. package/utils/decorators/FilterEntriesByFolderFactory.d.ts +7 -0
  453. package/utils/decorators/FilterEntriesByFolderFactory.js +30 -0
  454. package/utils/decorators/FilterEntriesByFolderFactory.js.map +1 -0
  455. package/utils/decorators/ListEntriesFactory.d.ts +16 -0
  456. package/utils/decorators/ListEntriesFactory.js +107 -0
  457. package/utils/decorators/ListEntriesFactory.js.map +1 -0
  458. package/utils/decorators/decorateIfModelAuthorizationEnabled.d.ts +23 -0
  459. package/utils/decorators/decorateIfModelAuthorizationEnabled.js +54 -0
  460. package/utils/decorators/decorateIfModelAuthorizationEnabled.js.map +1 -0
  461. package/utils/decorators/hasRootFolderId.d.ts +7 -0
  462. package/utils/decorators/hasRootFolderId.js +27 -0
  463. package/utils/decorators/hasRootFolderId.js.map +1 -0
  464. package/utils/decorators/isPageModel.d.ts +5 -0
  465. package/utils/decorators/isPageModel.js +20 -0
  466. package/utils/decorators/isPageModel.js.map +1 -0
  467. package/utils/ensureAuthentication.d.ts +2 -0
  468. package/utils/{checkPermissions.js → ensureAuthentication.js} +5 -3
  469. package/utils/ensureAuthentication.js.map +1 -0
  470. package/utils/modelFactory.d.ts +2 -4
  471. package/utils/modelFactory.js +7 -10
  472. package/utils/modelFactory.js.map +1 -1
  473. package/utils/pickEntryFieldValues.d.ts +3 -0
  474. package/utils/pickEntryFieldValues.js +30 -0
  475. package/utils/pickEntryFieldValues.js.map +1 -0
  476. package/utils/resolve.js +3 -1
  477. package/utils/resolve.js.map +1 -1
  478. package/fields/index.d.ts +0 -2
  479. package/fields/index.js +0 -12
  480. package/fields/index.js.map +0 -1
  481. package/fields/location.d.ts +0 -2
  482. package/fields/location.js +0 -44
  483. package/fields/location.js.map +0 -1
  484. package/folder/onFolderBeforeDelete.hook.d.ts +0 -2
  485. package/folder/onFolderBeforeDelete.hook.js +0 -66
  486. package/folder/onFolderBeforeDelete.hook.js.map +0 -1
  487. package/utils/checkPermissions.d.ts +0 -2
  488. package/utils/checkPermissions.js.map +0 -1
  489. package/utils/fieldResolver.d.ts +0 -16
  490. package/utils/fieldResolver.js +0 -44
  491. package/utils/fieldResolver.js.map +0 -1
  492. package/utils/getFieldValues.d.ts +0 -5
  493. package/utils/getFieldValues.js +0 -16
  494. package/utils/getFieldValues.js.map +0 -1
  495. package/utils/getFolderAndItsAncestors.d.ts +0 -7
  496. package/utils/getFolderAndItsAncestors.js +0 -48
  497. package/utils/getFolderAndItsAncestors.js.map +0 -1
  498. package/utils/isInstallationPending.d.ts +0 -4
  499. package/utils/isInstallationPending.js +0 -21
  500. package/utils/isInstallationPending.js.map +0 -1
@@ -0,0 +1,26 @@
1
+ import type { DynamoDBDocument } from "@webiny/aws-sdk/client-dynamodb";
2
+ import type { AcoFolderLevelPermissionsStorageOperations as IAcoFolderLevelPermissionsStorageOperations, FolderLevelPermission, StorageOperationsCreateFlpParams, StorageOperationsDeleteFlpParams, StorageOperationsGetFlpParams, StorageOperationsListFlpsParams, StorageOperationsUpdateFlpParams, StorageOperationsBatchUpdateFlpParams } from "./flp.types";
3
+ interface StorageOperationsConfig {
4
+ documentClient: DynamoDBDocument;
5
+ }
6
+ export interface CreateTableParams {
7
+ name?: string;
8
+ documentClient: DynamoDBDocument;
9
+ }
10
+ declare class FolderLevelPermissionsStorageOperations implements IAcoFolderLevelPermissionsStorageOperations {
11
+ private readonly entity;
12
+ private readonly table;
13
+ constructor({ documentClient }: StorageOperationsConfig);
14
+ list({ where: { tenant, locale, type, path_startsWith, parentId } }: StorageOperationsListFlpsParams): Promise<FolderLevelPermission[]>;
15
+ get({ tenant, locale, id }: StorageOperationsGetFlpParams): Promise<FolderLevelPermission | null>;
16
+ create({ data }: StorageOperationsCreateFlpParams): Promise<FolderLevelPermission>;
17
+ update({ data: inputData, original }: StorageOperationsUpdateFlpParams): Promise<FolderLevelPermission>;
18
+ delete({ flp }: StorageOperationsDeleteFlpParams): Promise<void>;
19
+ batchUpdate({ items }: StorageOperationsBatchUpdateFlpParams): Promise<FolderLevelPermission[]>;
20
+ private createEntity;
21
+ private createTable;
22
+ private createKeys;
23
+ private createGsiKeys;
24
+ }
25
+ export declare const createFlpOperations: (params: StorageOperationsConfig) => FolderLevelPermissionsStorageOperations;
26
+ export {};
package/flp/flp.so.js ADDED
@@ -0,0 +1,304 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createFlpOperations = void 0;
7
+ var _toolbox = require("@webiny/db-dynamodb/toolbox");
8
+ var _dbDynamodb = require("@webiny/db-dynamodb");
9
+ var _EntityWriteBatch = require("@webiny/db-dynamodb/utils/entity/EntityWriteBatch");
10
+ var _error = require("@webiny/error");
11
+ var _utils = require("@webiny/utils");
12
+ class FolderLevelPermissionsStorageOperations {
13
+ constructor({
14
+ documentClient
15
+ }) {
16
+ this.table = this.createTable({
17
+ documentClient
18
+ });
19
+ this.entity = this.createEntity({
20
+ table: this.table,
21
+ name: "ACO.flp"
22
+ });
23
+ }
24
+ async list({
25
+ where: {
26
+ tenant,
27
+ locale,
28
+ type,
29
+ path_startsWith,
30
+ parentId
31
+ }
32
+ }) {
33
+ try {
34
+ if (parentId) {
35
+ const entries = await (0, _dbDynamodb.queryAllClean)({
36
+ entity: this.entity,
37
+ partitionKey: `T#${tenant}#L#${locale}#FLP`,
38
+ options: {
39
+ index: "GSI2",
40
+ eq: parentId
41
+ }
42
+ });
43
+ return entries.map(entry => entry.data);
44
+ }
45
+ if (path_startsWith) {
46
+ const entries = await (0, _dbDynamodb.queryAllClean)({
47
+ entity: this.entity,
48
+ partitionKey: `T#${tenant}#L#${locale}#AT#${type}#FLP`,
49
+ options: {
50
+ index: "GSI1",
51
+ beginsWith: path_startsWith
52
+ }
53
+ });
54
+ return entries.map(entry => entry.data);
55
+ }
56
+ throw new _error.WebinyError("Missing required parameters.", "LIST_FLP_MISSING_PARAMETERS", {
57
+ tenant,
58
+ locale,
59
+ type,
60
+ path_startsWith,
61
+ parentId
62
+ });
63
+ } catch (err) {
64
+ throw _error.WebinyError.from(err, {
65
+ message: "Could not list folder level permissions.",
66
+ code: "LIST_FLP_ERROR"
67
+ });
68
+ }
69
+ }
70
+ async get({
71
+ tenant,
72
+ locale,
73
+ id
74
+ }) {
75
+ try {
76
+ const entry = await (0, _dbDynamodb.getClean)({
77
+ entity: this.entity,
78
+ keys: this.createKeys({
79
+ tenant,
80
+ locale,
81
+ id
82
+ })
83
+ });
84
+ if (!entry) {
85
+ return null;
86
+ }
87
+ return entry.data;
88
+ } catch (err) {
89
+ throw _error.WebinyError.from(err, {
90
+ message: "Could not load folder level permission.",
91
+ code: "GET_FLP_ERROR",
92
+ data: {
93
+ tenant,
94
+ locale,
95
+ id
96
+ }
97
+ });
98
+ }
99
+ }
100
+ async create({
101
+ data
102
+ }) {
103
+ const keys = {
104
+ ...this.createKeys(data),
105
+ ...this.createGsiKeys(data)
106
+ };
107
+ try {
108
+ await (0, _dbDynamodb.put)({
109
+ entity: this.entity,
110
+ item: {
111
+ ...keys,
112
+ data
113
+ }
114
+ });
115
+ return data;
116
+ } catch (err) {
117
+ throw _error.WebinyError.from(err, {
118
+ message: "Could not create folder level permission.",
119
+ code: "CREATE_FLP_ERROR",
120
+ data: {
121
+ keys,
122
+ data
123
+ }
124
+ });
125
+ }
126
+ }
127
+ async update({
128
+ data: inputData,
129
+ original
130
+ }) {
131
+ try {
132
+ const data = {
133
+ ...original,
134
+ ...inputData
135
+ };
136
+ const keys = {
137
+ ...this.createKeys(data),
138
+ ...this.createGsiKeys(data)
139
+ };
140
+ await (0, _dbDynamodb.put)({
141
+ entity: this.entity,
142
+ item: {
143
+ ...keys,
144
+ data
145
+ }
146
+ });
147
+ return data;
148
+ } catch (err) {
149
+ throw _error.WebinyError.from(err, {
150
+ message: "Could not update folder level permission.",
151
+ code: "UPDATE_FLP_ERROR",
152
+ data: {
153
+ inputData,
154
+ original
155
+ }
156
+ });
157
+ }
158
+ }
159
+ async delete({
160
+ flp
161
+ }) {
162
+ const keys = this.createKeys(flp);
163
+ try {
164
+ await (0, _dbDynamodb.deleteItem)({
165
+ entity: this.entity,
166
+ keys
167
+ });
168
+ } catch (err) {
169
+ throw _error.WebinyError.from(err, {
170
+ message: "Could not delete folder level permission.",
171
+ code: "DELETE_FLP_ERROR",
172
+ data: {
173
+ keys,
174
+ flp
175
+ }
176
+ });
177
+ }
178
+ }
179
+ async batchUpdate({
180
+ items
181
+ }) {
182
+ try {
183
+ const batch = (0, _EntityWriteBatch.createEntityWriteBatch)({
184
+ entity: this.entity
185
+ });
186
+ const updatedItems = [];
187
+ for (const {
188
+ original,
189
+ data: inputData
190
+ } of items) {
191
+ const data = {
192
+ ...original,
193
+ ...inputData
194
+ };
195
+ const keys = {
196
+ ...this.createKeys(data),
197
+ ...this.createGsiKeys(data)
198
+ };
199
+ batch.put({
200
+ ...keys,
201
+ data
202
+ });
203
+ updatedItems.push(data);
204
+ }
205
+ await (0, _utils.executeWithRetry)(async () => {
206
+ return await batch.execute();
207
+ });
208
+ return updatedItems;
209
+ } catch (err) {
210
+ throw _error.WebinyError.from(err, {
211
+ message: "Could not batch update folder level permissions.",
212
+ code: "BATCH_UPDATE_FLP_ERROR",
213
+ data: {
214
+ items
215
+ }
216
+ });
217
+ }
218
+ }
219
+ createEntity = params => {
220
+ return new _toolbox.Entity({
221
+ name: params.name,
222
+ table: params.table,
223
+ attributes: {
224
+ PK: {
225
+ partitionKey: true
226
+ },
227
+ SK: {
228
+ sortKey: true
229
+ },
230
+ GSI1_PK: {
231
+ type: "string",
232
+ required: true
233
+ },
234
+ GSI1_SK: {
235
+ type: "string",
236
+ required: true
237
+ },
238
+ GSI2_PK: {
239
+ type: "string",
240
+ required: true
241
+ },
242
+ GSI2_SK: {
243
+ type: "string",
244
+ required: true
245
+ },
246
+ TYPE: {
247
+ type: "string"
248
+ },
249
+ data: {
250
+ type: "map"
251
+ }
252
+ }
253
+ });
254
+ };
255
+ createTable = ({
256
+ name,
257
+ documentClient
258
+ }) => {
259
+ return new _toolbox.Table({
260
+ name: name || String(process.env.DB_TABLE),
261
+ partitionKey: "PK",
262
+ sortKey: "SK",
263
+ DocumentClient: documentClient,
264
+ indexes: {
265
+ GSI1: {
266
+ partitionKey: "GSI1_PK",
267
+ sortKey: "GSI1_SK"
268
+ },
269
+ GSI2: {
270
+ partitionKey: "GSI2_PK",
271
+ sortKey: "GSI2_SK"
272
+ }
273
+ },
274
+ autoExecute: true,
275
+ autoParse: true
276
+ });
277
+ };
278
+ createKeys = ({
279
+ id,
280
+ tenant,
281
+ locale
282
+ }) => ({
283
+ PK: `T#${tenant}#L#${locale}#FLP#${id}`,
284
+ SK: `A`
285
+ });
286
+ createGsiKeys = ({
287
+ tenant,
288
+ locale,
289
+ type,
290
+ path,
291
+ parentId
292
+ }) => ({
293
+ GSI1_PK: `T#${tenant}#L#${locale}#AT#${type}#FLP`,
294
+ GSI1_SK: path,
295
+ GSI2_PK: `T#${tenant}#L#${locale}#FLP`,
296
+ GSI2_SK: parentId
297
+ });
298
+ }
299
+ const createFlpOperations = params => {
300
+ return new FolderLevelPermissionsStorageOperations(params);
301
+ };
302
+ exports.createFlpOperations = createFlpOperations;
303
+
304
+ //# sourceMappingURL=flp.so.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_toolbox","require","_dbDynamodb","_EntityWriteBatch","_error","_utils","FolderLevelPermissionsStorageOperations","constructor","documentClient","table","createTable","entity","createEntity","name","list","where","tenant","locale","type","path_startsWith","parentId","entries","queryAllClean","partitionKey","options","index","eq","map","entry","data","beginsWith","WebinyError","err","from","message","code","get","id","getClean","keys","createKeys","create","createGsiKeys","put","item","update","inputData","original","delete","flp","deleteItem","batchUpdate","items","batch","createEntityWriteBatch","updatedItems","push","executeWithRetry","execute","params","Entity","attributes","PK","SK","sortKey","GSI1_PK","required","GSI1_SK","GSI2_PK","GSI2_SK","TYPE","Table","String","process","env","DB_TABLE","DocumentClient","indexes","GSI1","GSI2","autoExecute","autoParse","path","createFlpOperations","exports"],"sources":["flp.so.ts"],"sourcesContent":["import { Entity, Table } from \"@webiny/db-dynamodb/toolbox\";\nimport type { DynamoDBDocument } from \"@webiny/aws-sdk/client-dynamodb\";\nimport { deleteItem, getClean, put, queryAllClean } from \"@webiny/db-dynamodb\";\nimport { createEntityWriteBatch } from \"@webiny/db-dynamodb/utils/entity/EntityWriteBatch\";\n\nimport { WebinyError } from \"@webiny/error\";\nimport type {\n AcoFolderLevelPermissionsStorageOperations as IAcoFolderLevelPermissionsStorageOperations,\n FolderLevelPermission,\n StorageOperationsCreateFlpParams,\n StorageOperationsDeleteFlpParams,\n StorageOperationsGetFlpParams,\n StorageOperationsListFlpsParams,\n StorageOperationsUpdateFlpParams,\n StorageOperationsBatchUpdateFlpParams\n} from \"~/flp/flp.types\";\nimport { executeWithRetry } from \"@webiny/utils\";\n\ninterface StorageOperationsConfig {\n documentClient: DynamoDBDocument;\n}\n\nexport interface CreateTableParams {\n name?: string;\n documentClient: DynamoDBDocument;\n}\n\ninterface CreateEntityParams {\n table: Table<string, string, string>;\n name: string;\n}\n\ninterface CreateKeysParams {\n tenant: string;\n locale: string;\n id: string;\n}\n\ninterface CreateGsiKeysParams {\n tenant: string;\n locale: string;\n id: string;\n type: string;\n path: string;\n parentId: string;\n}\n\nclass FolderLevelPermissionsStorageOperations\n implements IAcoFolderLevelPermissionsStorageOperations\n{\n private readonly entity: Entity<any>;\n private readonly table: Table<string, string, string>;\n\n constructor({ documentClient }: StorageOperationsConfig) {\n this.table = this.createTable({ documentClient });\n\n this.entity = this.createEntity({\n table: this.table,\n name: \"ACO.flp\"\n });\n }\n\n async list({\n where: { tenant, locale, type, path_startsWith, parentId }\n }: StorageOperationsListFlpsParams): Promise<FolderLevelPermission[]> {\n try {\n if (parentId) {\n const entries = await queryAllClean<{ data: FolderLevelPermission }>({\n entity: this.entity,\n partitionKey: `T#${tenant}#L#${locale}#FLP`,\n options: {\n index: \"GSI2\",\n eq: parentId\n }\n });\n return entries.map(entry => entry.data);\n }\n\n if (path_startsWith) {\n const entries = await queryAllClean<{ data: FolderLevelPermission }>({\n entity: this.entity,\n partitionKey: `T#${tenant}#L#${locale}#AT#${type}#FLP`,\n options: {\n index: \"GSI1\",\n beginsWith: path_startsWith\n }\n });\n return entries.map(entry => entry.data);\n }\n\n throw new WebinyError(\"Missing required parameters.\", \"LIST_FLP_MISSING_PARAMETERS\", {\n tenant,\n locale,\n type,\n path_startsWith,\n parentId\n });\n } catch (err) {\n throw WebinyError.from(err, {\n message: \"Could not list folder level permissions.\",\n code: \"LIST_FLP_ERROR\"\n });\n }\n }\n\n async get({\n tenant,\n locale,\n id\n }: StorageOperationsGetFlpParams): Promise<FolderLevelPermission | null> {\n try {\n const entry = await getClean<{ data: FolderLevelPermission }>({\n entity: this.entity,\n keys: this.createKeys({ tenant, locale, id })\n });\n\n if (!entry) {\n return null;\n }\n\n return entry.data;\n } catch (err) {\n throw WebinyError.from(err, {\n message: \"Could not load folder level permission.\",\n code: \"GET_FLP_ERROR\",\n data: { tenant, locale, id }\n });\n }\n }\n\n async create({ data }: StorageOperationsCreateFlpParams): Promise<FolderLevelPermission> {\n const keys = {\n ...this.createKeys(data),\n ...this.createGsiKeys(data)\n };\n\n try {\n await put({\n entity: this.entity,\n item: {\n ...keys,\n data\n }\n });\n\n return data;\n } catch (err) {\n throw WebinyError.from(err, {\n message: \"Could not create folder level permission.\",\n code: \"CREATE_FLP_ERROR\",\n data: { keys, data }\n });\n }\n }\n\n async update({\n data: inputData,\n original\n }: StorageOperationsUpdateFlpParams): Promise<FolderLevelPermission> {\n try {\n const data = {\n ...original,\n ...inputData\n };\n\n const keys = {\n ...this.createKeys(data),\n ...this.createGsiKeys(data)\n };\n\n await put({\n entity: this.entity,\n item: {\n ...keys,\n data\n }\n });\n\n return data;\n } catch (err) {\n throw WebinyError.from(err, {\n message: \"Could not update folder level permission.\",\n code: \"UPDATE_FLP_ERROR\",\n data: { inputData, original }\n });\n }\n }\n\n async delete({ flp }: StorageOperationsDeleteFlpParams): Promise<void> {\n const keys = this.createKeys(flp);\n\n try {\n await deleteItem({\n entity: this.entity,\n keys\n });\n } catch (err) {\n throw WebinyError.from(err, {\n message: \"Could not delete folder level permission.\",\n code: \"DELETE_FLP_ERROR\",\n data: { keys, flp }\n });\n }\n }\n\n async batchUpdate({\n items\n }: StorageOperationsBatchUpdateFlpParams): Promise<FolderLevelPermission[]> {\n try {\n const batch = createEntityWriteBatch({\n entity: this.entity\n });\n\n const updatedItems: FolderLevelPermission[] = [];\n\n for (const { original, data: inputData } of items) {\n const data = {\n ...original,\n ...inputData\n };\n\n const keys = {\n ...this.createKeys(data),\n ...this.createGsiKeys(data)\n };\n\n batch.put({\n ...keys,\n data\n });\n\n updatedItems.push(data);\n }\n\n await executeWithRetry(async () => {\n return await batch.execute();\n });\n\n return updatedItems;\n } catch (err) {\n throw WebinyError.from(err, {\n message: \"Could not batch update folder level permissions.\",\n code: \"BATCH_UPDATE_FLP_ERROR\",\n data: { items }\n });\n }\n }\n\n private createEntity = (params: CreateEntityParams): Entity<any> => {\n return new Entity({\n name: params.name,\n table: params.table,\n attributes: {\n PK: {\n partitionKey: true\n },\n SK: {\n sortKey: true\n },\n GSI1_PK: {\n type: \"string\",\n required: true\n },\n GSI1_SK: {\n type: \"string\",\n required: true\n },\n GSI2_PK: {\n type: \"string\",\n required: true\n },\n GSI2_SK: {\n type: \"string\",\n required: true\n },\n TYPE: {\n type: \"string\"\n },\n data: {\n type: \"map\"\n }\n }\n });\n };\n\n private createTable = ({ name, documentClient }: CreateTableParams) => {\n return new Table({\n name: name || String(process.env.DB_TABLE),\n partitionKey: \"PK\",\n sortKey: \"SK\",\n DocumentClient: documentClient,\n indexes: {\n GSI1: {\n partitionKey: \"GSI1_PK\",\n sortKey: \"GSI1_SK\"\n },\n GSI2: {\n partitionKey: \"GSI2_PK\",\n sortKey: \"GSI2_SK\"\n }\n },\n autoExecute: true,\n autoParse: true\n });\n };\n\n private createKeys = ({ id, tenant, locale }: CreateKeysParams) => ({\n PK: `T#${tenant}#L#${locale}#FLP#${id}`,\n SK: `A`\n });\n\n private createGsiKeys = ({ tenant, locale, type, path, parentId }: CreateGsiKeysParams) => ({\n GSI1_PK: `T#${tenant}#L#${locale}#AT#${type}#FLP`,\n GSI1_SK: path,\n GSI2_PK: `T#${tenant}#L#${locale}#FLP`,\n GSI2_SK: parentId\n });\n}\n\nexport const createFlpOperations = (params: StorageOperationsConfig) => {\n return new FolderLevelPermissionsStorageOperations(params);\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,147 @@
1
+ import type { Topic } from "@webiny/pubsub/types";
2
+ import type { ITaskRunParams } from "@webiny/tasks/types";
3
+ import { type AcoContext, type Folder } from "../types";
4
+ import type { FolderLevelPermission, FolderPermission } from "@webiny/shared-aco/flp/flp.types";
5
+ export * from "@webiny/shared-aco/flp/flp.types";
6
+ /********
7
+ * CRUD operations
8
+ *******/
9
+ export interface ListFlpsParams {
10
+ where: {
11
+ path_startsWith?: string;
12
+ parentId?: string;
13
+ type: string;
14
+ };
15
+ }
16
+ export type CreateFlpParams = Pick<FolderLevelPermission, "id" | "type" | "permissions" | "path" | "parentId" | "slug">;
17
+ export interface UpdateFlpParams {
18
+ parentId?: string;
19
+ slug?: string;
20
+ path?: string;
21
+ permissions?: FolderPermission[];
22
+ type?: string;
23
+ }
24
+ export interface OnFlpBeforeCreateTopicParams {
25
+ input: CreateFlpParams;
26
+ }
27
+ export interface OnFlpAfterCreateTopicParams {
28
+ flp: FolderLevelPermission;
29
+ }
30
+ export interface OnFlpBeforeUpdateTopicParams {
31
+ original: FolderLevelPermission;
32
+ input: Record<string, any>;
33
+ }
34
+ export interface OnFlpAfterUpdateTopicParams {
35
+ original: FolderLevelPermission;
36
+ flp: FolderLevelPermission;
37
+ input: Record<string, any>;
38
+ }
39
+ export interface OnFlpBeforeDeleteTopicParams {
40
+ flp: FolderLevelPermission;
41
+ }
42
+ export interface OnFlpAfterDeleteTopicParams {
43
+ flp: FolderLevelPermission;
44
+ }
45
+ export interface OnFlpBatchBeforeUpdateTopicParams {
46
+ items: Array<{
47
+ original: FolderLevelPermission;
48
+ input: UpdateFlpParams;
49
+ }>;
50
+ }
51
+ export interface OnFlpBatchAfterUpdateTopicParams {
52
+ items: Array<{
53
+ original: FolderLevelPermission;
54
+ flp: FolderLevelPermission;
55
+ input: UpdateFlpParams;
56
+ }>;
57
+ }
58
+ export interface AcoFolderLevelPermissionsCrud {
59
+ list(params: ListFlpsParams): Promise<FolderLevelPermission[]>;
60
+ get(id: string): Promise<FolderLevelPermission | null>;
61
+ create(params: CreateFlpParams): Promise<FolderLevelPermission>;
62
+ update(id: string, data: UpdateFlpParams): Promise<FolderLevelPermission>;
63
+ delete(id: string): Promise<boolean>;
64
+ batchUpdate(items: Array<{
65
+ id: string;
66
+ data: UpdateFlpParams;
67
+ }>): Promise<FolderLevelPermission[]>;
68
+ onFlpBeforeCreate: Topic<OnFlpBeforeCreateTopicParams>;
69
+ onFlpAfterCreate: Topic<OnFlpAfterCreateTopicParams>;
70
+ onFlpBeforeUpdate: Topic<OnFlpBeforeUpdateTopicParams>;
71
+ onFlpAfterUpdate: Topic<OnFlpAfterUpdateTopicParams>;
72
+ onFlpBeforeDelete: Topic<OnFlpBeforeDeleteTopicParams>;
73
+ onFlpAfterDelete: Topic<OnFlpAfterDeleteTopicParams>;
74
+ onFlpBatchBeforeUpdate: Topic<OnFlpBatchBeforeUpdateTopicParams>;
75
+ onFlpBatchAfterUpdate: Topic<OnFlpBatchAfterUpdateTopicParams>;
76
+ }
77
+ /********
78
+ * Storage operations
79
+ *******/
80
+ export interface StorageOperationsListFlpsParams {
81
+ where: ListFlpsParams["where"] & {
82
+ tenant: string;
83
+ locale: string;
84
+ };
85
+ }
86
+ export interface StorageOperationsGetFlpParams {
87
+ id: string;
88
+ tenant: string;
89
+ locale: string;
90
+ }
91
+ export type StorageOperationsCreateFlpParams = {
92
+ data: FolderLevelPermission & {
93
+ tenant: string;
94
+ locale: string;
95
+ };
96
+ };
97
+ export type StorageOperationsUpdateFlpParams = {
98
+ original: FolderLevelPermission;
99
+ data: UpdateFlpParams & {
100
+ tenant: string;
101
+ locale: string;
102
+ };
103
+ };
104
+ export type StorageOperationsDeleteFlpParams = {
105
+ flp: FolderLevelPermission & {
106
+ tenant: string;
107
+ locale: string;
108
+ };
109
+ };
110
+ export interface StorageOperationsBatchUpdateFlpParams {
111
+ items: Array<{
112
+ original: FolderLevelPermission;
113
+ data: UpdateFlpParams & {
114
+ tenant: string;
115
+ locale: string;
116
+ };
117
+ }>;
118
+ }
119
+ export interface AcoFolderLevelPermissionsStorageOperations {
120
+ list(params: StorageOperationsListFlpsParams): Promise<FolderLevelPermission[]>;
121
+ get(params: StorageOperationsGetFlpParams): Promise<FolderLevelPermission | null>;
122
+ create(params: StorageOperationsCreateFlpParams): Promise<FolderLevelPermission>;
123
+ update(params: StorageOperationsUpdateFlpParams): Promise<FolderLevelPermission>;
124
+ delete(params: StorageOperationsDeleteFlpParams): Promise<void>;
125
+ batchUpdate(params: StorageOperationsBatchUpdateFlpParams): Promise<FolderLevelPermission[]>;
126
+ }
127
+ /********
128
+ * Background Tasks
129
+ *******/
130
+ export interface ICreateFlpTaskInput {
131
+ folder: Folder;
132
+ }
133
+ export type ICreateFlpTaskParams = ITaskRunParams<AcoContext, ICreateFlpTaskInput>;
134
+ export interface IUpdateFlpTaskInput {
135
+ folder: Folder;
136
+ queued?: string[];
137
+ }
138
+ export type IUpdateFlpTaskParams = ITaskRunParams<AcoContext, IUpdateFlpTaskInput>;
139
+ export interface IDeleteFlpTaskInput {
140
+ folder: Folder;
141
+ }
142
+ export type IDeleteFlpTaskParams = ITaskRunParams<AcoContext, IDeleteFlpTaskInput>;
143
+ export interface ISyncFlpTaskInput {
144
+ type?: string;
145
+ folderId?: string;
146
+ }
147
+ export type ISyncFlpTaskParams = ITaskRunParams<AcoContext, ISyncFlpTaskInput>;
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _flp = require("@webiny/shared-aco/flp/flp.types");
7
+ Object.keys(_flp).forEach(function (key) {
8
+ if (key === "default" || key === "__esModule") return;
9
+ if (key in exports && exports[key] === _flp[key]) return;
10
+ Object.defineProperty(exports, key, {
11
+ enumerable: true,
12
+ get: function () {
13
+ return _flp[key];
14
+ }
15
+ });
16
+ });
17
+
18
+ //# sourceMappingURL=flp.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_flp","require","Object","keys","forEach","key","exports","defineProperty","enumerable","get"],"sources":["flp.types.ts"],"sourcesContent":["import type { Topic } from \"@webiny/pubsub/types\";\nimport type { ITaskRunParams } from \"@webiny/tasks/types\";\nimport { type AcoContext, type Folder } from \"~/types\";\nimport type { FolderLevelPermission, FolderPermission } from \"@webiny/shared-aco/flp/flp.types\";\n\nexport * from \"@webiny/shared-aco/flp/flp.types\";\n\n/********\n * CRUD operations\n *******/\n\nexport interface ListFlpsParams {\n where: {\n path_startsWith?: string;\n parentId?: string;\n type: string;\n };\n}\n\nexport type CreateFlpParams = Pick<\n FolderLevelPermission,\n \"id\" | \"type\" | \"permissions\" | \"path\" | \"parentId\" | \"slug\"\n>;\n\nexport interface UpdateFlpParams {\n parentId?: string;\n slug?: string;\n path?: string;\n permissions?: FolderPermission[];\n type?: string;\n}\n\nexport interface OnFlpBeforeCreateTopicParams {\n input: CreateFlpParams;\n}\n\nexport interface OnFlpAfterCreateTopicParams {\n flp: FolderLevelPermission;\n}\n\nexport interface OnFlpBeforeUpdateTopicParams {\n original: FolderLevelPermission;\n input: Record<string, any>;\n}\n\nexport interface OnFlpAfterUpdateTopicParams {\n original: FolderLevelPermission;\n flp: FolderLevelPermission;\n input: Record<string, any>;\n}\n\nexport interface OnFlpBeforeDeleteTopicParams {\n flp: FolderLevelPermission;\n}\n\nexport interface OnFlpAfterDeleteTopicParams {\n flp: FolderLevelPermission;\n}\n\nexport interface OnFlpBatchBeforeUpdateTopicParams {\n items: Array<{\n original: FolderLevelPermission;\n input: UpdateFlpParams;\n }>;\n}\n\nexport interface OnFlpBatchAfterUpdateTopicParams {\n items: Array<{\n original: FolderLevelPermission;\n flp: FolderLevelPermission;\n input: UpdateFlpParams;\n }>;\n}\n\nexport interface AcoFolderLevelPermissionsCrud {\n list(params: ListFlpsParams): Promise<FolderLevelPermission[]>;\n get(id: string): Promise<FolderLevelPermission | null>;\n create(params: CreateFlpParams): Promise<FolderLevelPermission>;\n update(id: string, data: UpdateFlpParams): Promise<FolderLevelPermission>;\n delete(id: string): Promise<boolean>;\n batchUpdate(\n items: Array<{ id: string; data: UpdateFlpParams }>\n ): Promise<FolderLevelPermission[]>;\n onFlpBeforeCreate: Topic<OnFlpBeforeCreateTopicParams>;\n onFlpAfterCreate: Topic<OnFlpAfterCreateTopicParams>;\n onFlpBeforeUpdate: Topic<OnFlpBeforeUpdateTopicParams>;\n onFlpAfterUpdate: Topic<OnFlpAfterUpdateTopicParams>;\n onFlpBeforeDelete: Topic<OnFlpBeforeDeleteTopicParams>;\n onFlpAfterDelete: Topic<OnFlpAfterDeleteTopicParams>;\n onFlpBatchBeforeUpdate: Topic<OnFlpBatchBeforeUpdateTopicParams>;\n onFlpBatchAfterUpdate: Topic<OnFlpBatchAfterUpdateTopicParams>;\n}\n\n/********\n * Storage operations\n *******/\n\nexport interface StorageOperationsListFlpsParams {\n where: ListFlpsParams[\"where\"] & {\n tenant: string;\n locale: string;\n };\n}\n\nexport interface StorageOperationsGetFlpParams {\n id: string;\n tenant: string;\n locale: string;\n}\n\nexport type StorageOperationsCreateFlpParams = {\n data: FolderLevelPermission & {\n tenant: string;\n locale: string;\n };\n};\n\nexport type StorageOperationsUpdateFlpParams = {\n original: FolderLevelPermission;\n data: UpdateFlpParams & {\n tenant: string;\n locale: string;\n };\n};\n\nexport type StorageOperationsDeleteFlpParams = {\n flp: FolderLevelPermission & {\n tenant: string;\n locale: string;\n };\n};\n\nexport interface StorageOperationsBatchUpdateFlpParams {\n items: Array<{\n original: FolderLevelPermission;\n data: UpdateFlpParams & {\n tenant: string;\n locale: string;\n };\n }>;\n}\n\nexport interface AcoFolderLevelPermissionsStorageOperations {\n list(params: StorageOperationsListFlpsParams): Promise<FolderLevelPermission[]>;\n get(params: StorageOperationsGetFlpParams): Promise<FolderLevelPermission | null>;\n create(params: StorageOperationsCreateFlpParams): Promise<FolderLevelPermission>;\n update(params: StorageOperationsUpdateFlpParams): Promise<FolderLevelPermission>;\n delete(params: StorageOperationsDeleteFlpParams): Promise<void>;\n batchUpdate(params: StorageOperationsBatchUpdateFlpParams): Promise<FolderLevelPermission[]>;\n}\n\n/********\n * Background Tasks\n *******/\n\nexport interface ICreateFlpTaskInput {\n folder: Folder;\n}\n\nexport type ICreateFlpTaskParams = ITaskRunParams<AcoContext, ICreateFlpTaskInput>;\n\nexport interface IUpdateFlpTaskInput {\n folder: Folder;\n queued?: string[];\n}\n\nexport type IUpdateFlpTaskParams = ITaskRunParams<AcoContext, IUpdateFlpTaskInput>;\n\nexport interface IDeleteFlpTaskInput {\n folder: Folder;\n}\n\nexport type IDeleteFlpTaskParams = ITaskRunParams<AcoContext, IDeleteFlpTaskInput>;\n\nexport interface ISyncFlpTaskInput {\n type?: string;\n folderId?: string;\n}\n\nexport type ISyncFlpTaskParams = ITaskRunParams<AcoContext, ISyncFlpTaskInput>;\n"],"mappings":";;;;;AAKA,IAAAA,IAAA,GAAAC,OAAA;AAAAC,MAAA,CAAAC,IAAA,CAAAH,IAAA,EAAAI,OAAA,WAAAC,GAAA;EAAA,IAAAA,GAAA,kBAAAA,GAAA;EAAA,IAAAA,GAAA,IAAAC,OAAA,IAAAA,OAAA,CAAAD,GAAA,MAAAL,IAAA,CAAAK,GAAA;EAAAH,MAAA,CAAAK,cAAA,CAAAD,OAAA,EAAAD,GAAA;IAAAG,UAAA;IAAAC,GAAA,WAAAA,CAAA;MAAA,OAAAT,IAAA,CAAAK,GAAA;IAAA;EAAA;AAAA","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import type { AcoContext } from "../../types";
2
+ export declare const createFlpHooks: (context: AcoContext) => void;
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createFlpHooks = void 0;
7
+ var _onFolderAfterCreateFlp = require("./onFolderAfterCreateFlp.hook");
8
+ var _onFolderAfterDeleteFlp = require("./onFolderAfterDeleteFlp.hook");
9
+ var _onFolderAfterUpdateFlp = require("./onFolderAfterUpdateFlp.hook");
10
+ const createFlpHooks = context => {
11
+ (0, _onFolderAfterCreateFlp.onFolderAfterCreateFlpHook)(context);
12
+ (0, _onFolderAfterDeleteFlp.onFolderAfterDeleteFlpHook)(context);
13
+ (0, _onFolderAfterUpdateFlp.onFolderAfterUpdateFlpHook)(context);
14
+ };
15
+ exports.createFlpHooks = createFlpHooks;
16
+
17
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_onFolderAfterCreateFlp","require","_onFolderAfterDeleteFlp","_onFolderAfterUpdateFlp","createFlpHooks","context","onFolderAfterCreateFlpHook","onFolderAfterDeleteFlpHook","onFolderAfterUpdateFlpHook","exports"],"sources":["index.ts"],"sourcesContent":["import { onFolderAfterCreateFlpHook } from \"./onFolderAfterCreateFlp.hook\";\nimport { onFolderAfterDeleteFlpHook } from \"./onFolderAfterDeleteFlp.hook\";\nimport { onFolderAfterUpdateFlpHook } from \"./onFolderAfterUpdateFlp.hook\";\nimport type { AcoContext } from \"~/types\";\n\nexport const createFlpHooks = (context: AcoContext) => {\n onFolderAfterCreateFlpHook(context);\n onFolderAfterDeleteFlpHook(context);\n onFolderAfterUpdateFlpHook(context);\n};\n"],"mappings":";;;;;;AAAA,IAAAA,uBAAA,GAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAD,OAAA;AACA,IAAAE,uBAAA,GAAAF,OAAA;AAGO,MAAMG,cAAc,GAAIC,OAAmB,IAAK;EACnD,IAAAC,kDAA0B,EAACD,OAAO,CAAC;EACnC,IAAAE,kDAA0B,EAACF,OAAO,CAAC;EACnC,IAAAG,kDAA0B,EAACH,OAAO,CAAC;AACvC,CAAC;AAACI,OAAA,CAAAL,cAAA,GAAAA,cAAA","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import type { AcoContext } from "../../types";
2
+ export declare const onFolderAfterCreateFlpHook: (context: AcoContext) => void;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.onFolderAfterCreateFlpHook = void 0;
8
+ var _error = _interopRequireDefault(require("@webiny/error"));
9
+ var _tasks = require("../tasks");
10
+ var _useCases = require("../useCases");
11
+ const onFolderAfterCreateFlpHook = context => {
12
+ context.aco.folder.onFolderAfterCreate.subscribe(async ({
13
+ folder
14
+ }) => {
15
+ try {
16
+ if (!context.tasks) {
17
+ const useCase = new _useCases.CreateFlp(context);
18
+ await useCase.execute(folder);
19
+ return;
20
+ }
21
+ await context.tasks.trigger({
22
+ definition: _tasks.CREATE_FLP_TASK_ID,
23
+ input: {
24
+ folder
25
+ }
26
+ });
27
+ } catch (error) {
28
+ throw _error.default.from(error, {
29
+ message: "Error while executing onFolderAfterCreateFlpHook hook.",
30
+ code: "ACO_AFTER_FOLDER_CREATE_FLP_HOOK"
31
+ });
32
+ }
33
+ });
34
+ };
35
+ exports.onFolderAfterCreateFlpHook = onFolderAfterCreateFlpHook;
36
+
37
+ //# sourceMappingURL=onFolderAfterCreateFlp.hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","_tasks","_useCases","onFolderAfterCreateFlpHook","context","aco","folder","onFolderAfterCreate","subscribe","tasks","useCase","CreateFlp","execute","trigger","definition","CREATE_FLP_TASK_ID","input","error","WebinyError","from","message","code","exports"],"sources":["onFolderAfterCreateFlp.hook.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type { AcoContext } from \"~/types\";\nimport { type ICreateFlpTaskInput } from \"~/types\";\nimport { CREATE_FLP_TASK_ID } from \"../tasks\";\nimport { CreateFlp } from \"~/flp/useCases\";\n\nexport const onFolderAfterCreateFlpHook = (context: AcoContext) => {\n context.aco.folder.onFolderAfterCreate.subscribe(async ({ folder }) => {\n try {\n if (!context.tasks) {\n const useCase = new CreateFlp(context);\n await useCase.execute(folder);\n return;\n }\n\n await context.tasks.trigger<ICreateFlpTaskInput>({\n definition: CREATE_FLP_TASK_ID,\n input: {\n folder\n }\n });\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while executing onFolderAfterCreateFlpHook hook.\",\n code: \"ACO_AFTER_FOLDER_CREATE_FLP_HOOK\"\n });\n }\n });\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAEO,MAAMG,0BAA0B,GAAIC,OAAmB,IAAK;EAC/DA,OAAO,CAACC,GAAG,CAACC,MAAM,CAACC,mBAAmB,CAACC,SAAS,CAAC,OAAO;IAAEF;EAAO,CAAC,KAAK;IACnE,IAAI;MACA,IAAI,CAACF,OAAO,CAACK,KAAK,EAAE;QAChB,MAAMC,OAAO,GAAG,IAAIC,mBAAS,CAACP,OAAO,CAAC;QACtC,MAAMM,OAAO,CAACE,OAAO,CAACN,MAAM,CAAC;QAC7B;MACJ;MAEA,MAAMF,OAAO,CAACK,KAAK,CAACI,OAAO,CAAsB;QAC7CC,UAAU,EAAEC,yBAAkB;QAC9BC,KAAK,EAAE;UACHV;QACJ;MACJ,CAAC,CAAC;IACN,CAAC,CAAC,OAAOW,KAAK,EAAE;MACZ,MAAMC,cAAW,CAACC,IAAI,CAACF,KAAK,EAAE;QAC1BG,OAAO,EAAE,wDAAwD;QACjEC,IAAI,EAAE;MACV,CAAC,CAAC;IACN;EACJ,CAAC,CAAC;AACN,CAAC;AAACC,OAAA,CAAAnB,0BAAA,GAAAA,0BAAA","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import type { AcoContext } from "../../types";
2
+ export declare const onFolderAfterDeleteFlpHook: (context: AcoContext) => void;
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.onFolderAfterDeleteFlpHook = void 0;
8
+ var _error = _interopRequireDefault(require("@webiny/error"));
9
+ var _tasks = require("../tasks");
10
+ var _useCases = require("../useCases");
11
+ const onFolderAfterDeleteFlpHook = context => {
12
+ context.aco.folder.onFolderAfterDelete.subscribe(async ({
13
+ folder
14
+ }) => {
15
+ try {
16
+ if (!context.tasks) {
17
+ const useCase = new _useCases.DeleteFlp(context);
18
+ await useCase.execute(folder);
19
+ return;
20
+ }
21
+ await context.tasks.trigger({
22
+ definition: _tasks.DELETE_FLP_TASK_ID,
23
+ input: {
24
+ folder
25
+ }
26
+ });
27
+ } catch (error) {
28
+ throw _error.default.from(error, {
29
+ message: "Error while executing onFolderAfterDeleteFlpHook hook.",
30
+ code: "ACO_AFTER_FOLDER_DELETE_FLP_HOOK"
31
+ });
32
+ }
33
+ });
34
+ };
35
+ exports.onFolderAfterDeleteFlpHook = onFolderAfterDeleteFlpHook;
36
+
37
+ //# sourceMappingURL=onFolderAfterDeleteFlp.hook.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_error","_interopRequireDefault","require","_tasks","_useCases","onFolderAfterDeleteFlpHook","context","aco","folder","onFolderAfterDelete","subscribe","tasks","useCase","DeleteFlp","execute","trigger","definition","DELETE_FLP_TASK_ID","input","error","WebinyError","from","message","code","exports"],"sources":["onFolderAfterDeleteFlp.hook.ts"],"sourcesContent":["import WebinyError from \"@webiny/error\";\nimport type { AcoContext } from \"~/types\";\nimport { type IDeleteFlpTaskInput } from \"~/types\";\nimport { DELETE_FLP_TASK_ID } from \"../tasks\";\nimport { DeleteFlp } from \"~/flp/useCases\";\n\nexport const onFolderAfterDeleteFlpHook = (context: AcoContext) => {\n context.aco.folder.onFolderAfterDelete.subscribe(async ({ folder }) => {\n try {\n if (!context.tasks) {\n const useCase = new DeleteFlp(context);\n await useCase.execute(folder);\n return;\n }\n\n await context.tasks.trigger<IDeleteFlpTaskInput>({\n definition: DELETE_FLP_TASK_ID,\n input: {\n folder\n }\n });\n } catch (error) {\n throw WebinyError.from(error, {\n message: \"Error while executing onFolderAfterDeleteFlpHook hook.\",\n code: \"ACO_AFTER_FOLDER_DELETE_FLP_HOOK\"\n });\n }\n });\n};\n"],"mappings":";;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AAGA,IAAAC,MAAA,GAAAD,OAAA;AACA,IAAAE,SAAA,GAAAF,OAAA;AAEO,MAAMG,0BAA0B,GAAIC,OAAmB,IAAK;EAC/DA,OAAO,CAACC,GAAG,CAACC,MAAM,CAACC,mBAAmB,CAACC,SAAS,CAAC,OAAO;IAAEF;EAAO,CAAC,KAAK;IACnE,IAAI;MACA,IAAI,CAACF,OAAO,CAACK,KAAK,EAAE;QAChB,MAAMC,OAAO,GAAG,IAAIC,mBAAS,CAACP,OAAO,CAAC;QACtC,MAAMM,OAAO,CAACE,OAAO,CAACN,MAAM,CAAC;QAC7B;MACJ;MAEA,MAAMF,OAAO,CAACK,KAAK,CAACI,OAAO,CAAsB;QAC7CC,UAAU,EAAEC,yBAAkB;QAC9BC,KAAK,EAAE;UACHV;QACJ;MACJ,CAAC,CAAC;IACN,CAAC,CAAC,OAAOW,KAAK,EAAE;MACZ,MAAMC,cAAW,CAACC,IAAI,CAACF,KAAK,EAAE;QAC1BG,OAAO,EAAE,wDAAwD;QACjEC,IAAI,EAAE;MACV,CAAC,CAAC;IACN;EACJ,CAAC,CAAC;AACN,CAAC;AAACC,OAAA,CAAAnB,0BAAA,GAAAA,0BAAA","ignoreList":[]}