@webiny/api-aco 5.43.0-beta.0 → 5.43.0-beta.2

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 (384) hide show
  1. package/apps/AcoApp.js +4 -4
  2. package/apps/AcoApp.js.map +1 -1
  3. package/constants.d.ts +3 -0
  4. package/constants.js +11 -0
  5. package/constants.js.map +1 -0
  6. package/createAcoContext.d.ts +3 -1
  7. package/createAcoContext.js +13 -99
  8. package/createAcoContext.js.map +1 -1
  9. package/createAcoHooks.js +2 -0
  10. package/createAcoHooks.js.map +1 -1
  11. package/createAcoStorageOperations.d.ts +2 -0
  12. package/createAcoStorageOperations.js +5 -3
  13. package/createAcoStorageOperations.js.map +1 -1
  14. package/createAcoTasks.d.ts +1 -0
  15. package/createAcoTasks.js +13 -0
  16. package/createAcoTasks.js.map +1 -0
  17. package/filter/filter.crud.js +7 -7
  18. package/filter/filter.crud.js.map +1 -1
  19. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.d.ts +7 -0
  20. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.js +17 -0
  21. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.js.map +1 -0
  22. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.d.ts +4 -0
  23. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.js +7 -0
  24. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.js.map +1 -0
  25. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.d.ts +2 -0
  26. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.js +29 -0
  27. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.js.map +1 -0
  28. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.d.ts +7 -0
  29. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.js +17 -0
  30. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.js.map +1 -0
  31. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.d.ts +4 -0
  32. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.js +7 -0
  33. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.js.map +1 -0
  34. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.d.ts +2 -0
  35. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.js +29 -0
  36. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.js.map +1 -0
  37. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.d.ts +3 -0
  38. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.js +7 -0
  39. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.js.map +1 -0
  40. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.d.ts +7 -0
  41. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.js +17 -0
  42. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.js.map +1 -0
  43. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.d.ts +2 -0
  44. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.js +29 -0
  45. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.js.map +1 -0
  46. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.d.ts +4 -0
  47. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.js +7 -0
  48. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.js.map +1 -0
  49. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.d.ts +7 -0
  50. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.js +39 -0
  51. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.js.map +1 -0
  52. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.d.ts +2 -0
  53. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.js +29 -0
  54. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.js.map +1 -0
  55. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.d.ts +4 -0
  56. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.js +7 -0
  57. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.js.map +1 -0
  58. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.d.ts +7 -0
  59. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.js +17 -0
  60. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.js.map +1 -0
  61. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.d.ts +2 -0
  62. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.js +29 -0
  63. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.js.map +1 -0
  64. package/flp/FolderLevelPermissions/gateways/index.d.ts +5 -0
  65. package/flp/FolderLevelPermissions/gateways/index.js +62 -0
  66. package/flp/FolderLevelPermissions/gateways/index.js.map +1 -0
  67. package/flp/FolderLevelPermissions/index.d.ts +33 -0
  68. package/flp/FolderLevelPermissions/index.js +116 -0
  69. package/flp/FolderLevelPermissions/index.js.map +1 -0
  70. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.d.ts +7 -0
  71. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js +48 -0
  72. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js.map +1 -0
  73. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.d.ts +9 -0
  74. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js +7 -0
  75. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js.map +1 -0
  76. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.d.ts +2 -0
  77. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js +29 -0
  78. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js.map +1 -0
  79. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.d.ts +7 -0
  80. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js +41 -0
  81. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js.map +1 -0
  82. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.d.ts +8 -0
  83. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js +7 -0
  84. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js.map +1 -0
  85. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.d.ts +2 -0
  86. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js +29 -0
  87. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js.map +1 -0
  88. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.d.ts +4 -0
  89. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js +14 -0
  90. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js.map +1 -0
  91. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.d.ts +3 -0
  92. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js +7 -0
  93. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js.map +1 -0
  94. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.d.ts +2 -0
  95. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js +29 -0
  96. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js.map +1 -0
  97. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.d.ts +9 -0
  98. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.js +34 -0
  99. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.js.map +1 -0
  100. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.d.ts +3 -0
  101. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.js +7 -0
  102. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.js.map +1 -0
  103. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.d.ts +2 -0
  104. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.js +29 -0
  105. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.js.map +1 -0
  106. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.d.ts +7 -0
  107. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.js +17 -0
  108. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.js.map +1 -0
  109. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.d.ts +3 -0
  110. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.js +7 -0
  111. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.js.map +1 -0
  112. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.d.ts +2 -0
  113. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.js +29 -0
  114. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.js.map +1 -0
  115. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.d.ts +5 -0
  116. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js +14 -0
  117. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js.map +1 -0
  118. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.d.ts +4 -0
  119. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js +7 -0
  120. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js.map +1 -0
  121. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.d.ts +2 -0
  122. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js +29 -0
  123. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js.map +1 -0
  124. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.d.ts +10 -0
  125. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js +53 -0
  126. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js.map +1 -0
  127. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.d.ts +10 -0
  128. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js +40 -0
  129. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js.map +1 -0
  130. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.d.ts +4 -0
  131. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js +7 -0
  132. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js.map +1 -0
  133. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.d.ts +3 -0
  134. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js +40 -0
  135. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js.map +1 -0
  136. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.d.ts +7 -0
  137. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.js +17 -0
  138. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.js.map +1 -0
  139. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.d.ts +4 -0
  140. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.js +7 -0
  141. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.js.map +1 -0
  142. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.d.ts +2 -0
  143. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.js +29 -0
  144. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.js.map +1 -0
  145. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.d.ts +4 -0
  146. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.js +7 -0
  147. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.js.map +1 -0
  148. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.d.ts +7 -0
  149. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.js +17 -0
  150. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.js.map +1 -0
  151. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.d.ts +2 -0
  152. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.js +18 -0
  153. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.js.map +1 -0
  154. package/flp/FolderLevelPermissions/useCases/index.d.ts +9 -0
  155. package/flp/FolderLevelPermissions/useCases/index.js +106 -0
  156. package/flp/FolderLevelPermissions/useCases/index.js.map +1 -0
  157. package/flp/flp.crud.d.ts +9 -0
  158. package/flp/flp.crud.js +172 -0
  159. package/flp/flp.crud.js.map +1 -0
  160. package/flp/flp.so.d.ts +26 -0
  161. package/flp/flp.so.js +304 -0
  162. package/flp/flp.so.js.map +1 -0
  163. package/flp/flp.types.d.ts +159 -0
  164. package/flp/flp.types.js +7 -0
  165. package/flp/flp.types.js.map +1 -0
  166. package/flp/hooks/index.d.ts +2 -0
  167. package/flp/hooks/index.js +17 -0
  168. package/flp/hooks/index.js.map +1 -0
  169. package/flp/hooks/onFolderAfterCreateFlp.hook.d.ts +2 -0
  170. package/flp/hooks/onFolderAfterCreateFlp.hook.js +37 -0
  171. package/flp/hooks/onFolderAfterCreateFlp.hook.js.map +1 -0
  172. package/flp/hooks/onFolderAfterDeleteFlp.hook.d.ts +2 -0
  173. package/flp/hooks/onFolderAfterDeleteFlp.hook.js +37 -0
  174. package/flp/hooks/onFolderAfterDeleteFlp.hook.js.map +1 -0
  175. package/flp/hooks/onFolderAfterUpdateFlp.hook.d.ts +2 -0
  176. package/flp/hooks/onFolderAfterUpdateFlp.hook.js +39 -0
  177. package/flp/hooks/onFolderAfterUpdateFlp.hook.js.map +1 -0
  178. package/flp/index.d.ts +5 -0
  179. package/flp/index.js +62 -0
  180. package/flp/index.js.map +1 -0
  181. package/flp/tasks/createFlp.task.d.ts +2 -0
  182. package/flp/tasks/createFlp.task.js +49 -0
  183. package/flp/tasks/createFlp.task.js.map +1 -0
  184. package/flp/tasks/deleteFlp.task.d.ts +2 -0
  185. package/flp/tasks/deleteFlp.task.js +49 -0
  186. package/flp/tasks/deleteFlp.task.js.map +1 -0
  187. package/flp/tasks/index.d.ts +5 -0
  188. package/flp/tasks/index.js +20 -0
  189. package/flp/tasks/index.js.map +1 -0
  190. package/flp/tasks/syncFlp.task.d.ts +2 -0
  191. package/flp/tasks/syncFlp.task.js +126 -0
  192. package/flp/tasks/syncFlp.task.js.map +1 -0
  193. package/flp/tasks/updateFlp.task.d.ts +2 -0
  194. package/flp/tasks/updateFlp.task.js +55 -0
  195. package/flp/tasks/updateFlp.task.js.map +1 -0
  196. package/flp/useCases/CreateFlp.d.ts +7 -0
  197. package/flp/useCases/CreateFlp.js +52 -0
  198. package/flp/useCases/CreateFlp.js.map +1 -0
  199. package/flp/useCases/DeleteFlp.d.ts +6 -0
  200. package/flp/useCases/DeleteFlp.js +30 -0
  201. package/flp/useCases/DeleteFlp.js.map +1 -0
  202. package/flp/useCases/Path.d.ts +3 -0
  203. package/flp/useCases/Path.js +18 -0
  204. package/flp/useCases/Path.js.map +1 -0
  205. package/flp/useCases/Permissions.d.ts +4 -0
  206. package/flp/useCases/Permissions.js +38 -0
  207. package/flp/useCases/Permissions.js.map +1 -0
  208. package/flp/useCases/UpdateFlp.d.ts +25 -0
  209. package/flp/useCases/UpdateFlp.js +182 -0
  210. package/flp/useCases/UpdateFlp.js.map +1 -0
  211. package/flp/useCases/index.d.ts +3 -0
  212. package/flp/useCases/index.js +40 -0
  213. package/flp/useCases/index.js.map +1 -0
  214. package/folder/createFolderTypeDefs.js +13 -2
  215. package/folder/createFolderTypeDefs.js.map +1 -1
  216. package/folder/folder.crud.d.ts +3 -6
  217. package/folder/folder.crud.js +90 -231
  218. package/folder/folder.crud.js.map +1 -1
  219. package/folder/folder.gql.js +30 -8
  220. package/folder/folder.gql.js.map +1 -1
  221. package/folder/folder.model.js +3 -0
  222. package/folder/folder.model.js.map +1 -1
  223. package/folder/folder.so.js +4 -1
  224. package/folder/folder.so.js.map +1 -1
  225. package/folder/folder.types.d.ts +17 -3
  226. package/folder/folder.types.js.map +1 -1
  227. package/folder/useCases/CreateFolder/CreateFolder.d.ts +7 -0
  228. package/folder/useCases/CreateFolder/CreateFolder.js +19 -0
  229. package/folder/useCases/CreateFolder/CreateFolder.js.map +1 -0
  230. package/folder/useCases/CreateFolder/CreateFolderWithEvents.d.ts +9 -0
  231. package/folder/useCases/CreateFolder/CreateFolderWithEvents.js +25 -0
  232. package/folder/useCases/CreateFolder/CreateFolderWithEvents.js.map +1 -0
  233. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.d.ts +24 -0
  234. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.js +39 -0
  235. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.js.map +1 -0
  236. package/folder/useCases/CreateFolder/ICreateFolder.d.ts +4 -0
  237. package/folder/useCases/CreateFolder/ICreateFolder.js +7 -0
  238. package/folder/useCases/CreateFolder/ICreateFolder.js.map +1 -0
  239. package/folder/useCases/CreateFolder/index.d.ts +17 -0
  240. package/folder/useCases/CreateFolder/index.js +20 -0
  241. package/folder/useCases/CreateFolder/index.js.map +1 -0
  242. package/folder/useCases/DeleteFolder/DeleteFolder.d.ts +7 -0
  243. package/folder/useCases/DeleteFolder/DeleteFolder.js +18 -0
  244. package/folder/useCases/DeleteFolder/DeleteFolder.js.map +1 -0
  245. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.d.ts +10 -0
  246. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.js +29 -0
  247. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.js.map +1 -0
  248. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.d.ts +9 -0
  249. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.js +24 -0
  250. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.js.map +1 -0
  251. package/folder/useCases/DeleteFolder/IDeleteFolder.d.ts +4 -0
  252. package/folder/useCases/DeleteFolder/IDeleteFolder.js +7 -0
  253. package/folder/useCases/DeleteFolder/IDeleteFolder.js.map +1 -0
  254. package/folder/useCases/DeleteFolder/index.d.ts +18 -0
  255. package/folder/useCases/DeleteFolder/index.js +20 -0
  256. package/folder/useCases/DeleteFolder/index.js.map +1 -0
  257. package/folder/useCases/GetAncestors/GetAncestors.d.ts +5 -0
  258. package/folder/useCases/GetAncestors/GetAncestors.js +57 -0
  259. package/folder/useCases/GetAncestors/GetAncestors.js.map +1 -0
  260. package/folder/useCases/GetAncestors/IGetAncestors.d.ts +8 -0
  261. package/folder/useCases/GetAncestors/IGetAncestors.js +7 -0
  262. package/folder/useCases/GetAncestors/IGetAncestors.js.map +1 -0
  263. package/folder/useCases/GetAncestors/index.d.ts +4 -0
  264. package/folder/useCases/GetAncestors/index.js +16 -0
  265. package/folder/useCases/GetAncestors/index.js.map +1 -0
  266. package/folder/useCases/GetFolder/GetFolder.d.ts +7 -0
  267. package/folder/useCases/GetFolder/GetFolder.js +17 -0
  268. package/folder/useCases/GetFolder/GetFolder.js.map +1 -0
  269. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.d.ts +24 -0
  270. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.js +33 -0
  271. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.js.map +1 -0
  272. package/folder/useCases/GetFolder/IGetFolder.d.ts +4 -0
  273. package/folder/useCases/GetFolder/IGetFolder.js +7 -0
  274. package/folder/useCases/GetFolder/IGetFolder.js.map +1 -0
  275. package/folder/useCases/GetFolder/index.d.ts +13 -0
  276. package/folder/useCases/GetFolder/index.js +19 -0
  277. package/folder/useCases/GetFolder/index.js.map +1 -0
  278. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.d.ts +11 -0
  279. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.js +63 -0
  280. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.js.map +1 -0
  281. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.d.ts +17 -0
  282. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.js +59 -0
  283. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.js.map +1 -0
  284. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.d.ts +4 -0
  285. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.js +7 -0
  286. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.js.map +1 -0
  287. package/folder/useCases/GetFolderHierarchy/index.d.ts +12 -0
  288. package/folder/useCases/GetFolderHierarchy/index.js +18 -0
  289. package/folder/useCases/GetFolderHierarchy/index.js.map +1 -0
  290. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.d.ts +4 -0
  291. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.js +7 -0
  292. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.js.map +1 -0
  293. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.d.ts +4 -0
  294. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.js +7 -0
  295. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.js.map +1 -0
  296. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.d.ts +4 -0
  297. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.js +7 -0
  298. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.js.map +1 -0
  299. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.d.ts +7 -0
  300. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.js +23 -0
  301. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.js.map +1 -0
  302. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.d.ts +13 -0
  303. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.js +60 -0
  304. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.js.map +1 -0
  305. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.d.ts +7 -0
  306. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.js +22 -0
  307. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.js.map +1 -0
  308. package/folder/useCases/ListFolderLevelPermissionsTargets/index.d.ts +9 -0
  309. package/folder/useCases/ListFolderLevelPermissionsTargets/index.js +20 -0
  310. package/folder/useCases/ListFolderLevelPermissionsTargets/index.js.map +1 -0
  311. package/folder/useCases/ListFolders/IListFolders.d.ts +5 -0
  312. package/folder/useCases/ListFolders/IListFolders.js +7 -0
  313. package/folder/useCases/ListFolders/IListFolders.js.map +1 -0
  314. package/folder/useCases/ListFolders/ListFolders.d.ts +8 -0
  315. package/folder/useCases/ListFolders/ListFolders.js +17 -0
  316. package/folder/useCases/ListFolders/ListFolders.js.map +1 -0
  317. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.d.ts +14 -0
  318. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.js +67 -0
  319. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.js.map +1 -0
  320. package/folder/useCases/ListFolders/index.d.ts +13 -0
  321. package/folder/useCases/ListFolders/index.js +19 -0
  322. package/folder/useCases/ListFolders/index.js.map +1 -0
  323. package/folder/useCases/UpdateFolder/IUpdateFolder.d.ts +4 -0
  324. package/folder/useCases/UpdateFolder/IUpdateFolder.js +7 -0
  325. package/folder/useCases/UpdateFolder/IUpdateFolder.js.map +1 -0
  326. package/folder/useCases/UpdateFolder/UpdateFolder.d.ts +7 -0
  327. package/folder/useCases/UpdateFolder/UpdateFolder.js +20 -0
  328. package/folder/useCases/UpdateFolder/UpdateFolder.js.map +1 -0
  329. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.d.ts +10 -0
  330. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.js +38 -0
  331. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.js.map +1 -0
  332. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.d.ts +25 -0
  333. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.js +78 -0
  334. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.js.map +1 -0
  335. package/folder/useCases/UpdateFolder/index.d.ts +18 -0
  336. package/folder/useCases/UpdateFolder/index.js +20 -0
  337. package/folder/useCases/UpdateFolder/index.js.map +1 -0
  338. package/folder/useCases/index.d.ts +8 -0
  339. package/folder/useCases/index.js +95 -0
  340. package/folder/useCases/index.js.map +1 -0
  341. package/index.d.ts +3 -1
  342. package/index.js +3 -2
  343. package/index.js.map +1 -1
  344. package/package.json +28 -26
  345. package/record/record.crud.js +10 -10
  346. package/record/record.crud.js.map +1 -1
  347. package/record/record.so.js +2 -1
  348. package/record/record.so.js.map +1 -1
  349. package/types.d.ts +17 -8
  350. package/types.js +12 -0
  351. package/types.js.map +1 -1
  352. package/utils/decorators/CmsEntriesCrudDecorators.js +41 -65
  353. package/utils/decorators/CmsEntriesCrudDecorators.js.map +1 -1
  354. package/utils/decorators/FilterEntriesByFolderFactory.d.ts +7 -0
  355. package/utils/decorators/FilterEntriesByFolderFactory.js +30 -0
  356. package/utils/decorators/FilterEntriesByFolderFactory.js.map +1 -0
  357. package/utils/decorators/ListEntriesFactory.d.ts +15 -0
  358. package/utils/decorators/ListEntriesFactory.js +107 -0
  359. package/utils/decorators/ListEntriesFactory.js.map +1 -0
  360. package/utils/decorators/decorateIfModelAuthorizationEnabled.js +7 -0
  361. package/utils/decorators/decorateIfModelAuthorizationEnabled.js.map +1 -1
  362. package/utils/decorators/hasRootFolderId.d.ts +7 -0
  363. package/utils/decorators/hasRootFolderId.js +27 -0
  364. package/utils/decorators/hasRootFolderId.js.map +1 -0
  365. package/utils/pickEntryFieldValues.js +1 -1
  366. package/utils/pickEntryFieldValues.js.map +1 -1
  367. package/utils/FolderLevelPermissions.d.ts +0 -75
  368. package/utils/FolderLevelPermissions.js +0 -390
  369. package/utils/FolderLevelPermissions.js.map +0 -1
  370. package/utils/decorators/constants.d.ts +0 -1
  371. package/utils/decorators/constants.js +0 -9
  372. package/utils/decorators/constants.js.map +0 -1
  373. package/utils/decorators/createFolderType.d.ts +0 -2
  374. package/utils/decorators/createFolderType.js +0 -18
  375. package/utils/decorators/createFolderType.js.map +0 -1
  376. package/utils/decorators/filterEntriesByFolderFactory.d.ts +0 -6
  377. package/utils/decorators/filterEntriesByFolderFactory.js +0 -37
  378. package/utils/decorators/filterEntriesByFolderFactory.js.map +0 -1
  379. package/utils/decorators/where.d.ts +0 -15
  380. package/utils/decorators/where.js +0 -60
  381. package/utils/decorators/where.js.map +0 -1
  382. package/utils/getFolderAndItsAncestors.d.ts +0 -7
  383. package/utils/getFolderAndItsAncestors.js +0 -53
  384. package/utils/getFolderAndItsAncestors.js.map +0 -1
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=IDeleteFolder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["IDeleteFolder.ts"],"sourcesContent":["import type { DeleteFolderParams } from \"~/folder/folder.types\";\n\nexport interface IDeleteFolder {\n execute: (params: DeleteFolderParams) => Promise<boolean>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,18 @@
1
+ import { Topic } from "@webiny/pubsub/types";
2
+ import { type AcoFolderStorageOperations, type OnFolderAfterDeleteTopicParams, type OnFolderBeforeDeleteTopicParams } from "../../folder.types";
3
+ import { DeleteFolderWithFolderLevelPermissions } from "./DeleteFolderWithFolderLevelPermissions";
4
+ import { FolderLevelPermissions } from "../../../flp";
5
+ export interface DeleteFolderUseCasesTopics {
6
+ onFolderBeforeDelete: Topic<OnFolderBeforeDeleteTopicParams>;
7
+ onFolderAfterDelete: Topic<OnFolderAfterDeleteTopicParams>;
8
+ }
9
+ interface DeleteFolderUseCasesParams {
10
+ deleteOperation: AcoFolderStorageOperations["deleteFolder"];
11
+ getOperation: AcoFolderStorageOperations["getFolder"];
12
+ folderLevelPermissions: FolderLevelPermissions;
13
+ topics: DeleteFolderUseCasesTopics;
14
+ }
15
+ export declare const getDeleteFolderUseCases: (params: DeleteFolderUseCasesParams) => {
16
+ deleteFolderUseCase: DeleteFolderWithFolderLevelPermissions;
17
+ };
18
+ export {};
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getDeleteFolderUseCases = void 0;
7
+ var _DeleteFolder = require("./DeleteFolder");
8
+ var _DeleteFolderWithEvents = require("./DeleteFolderWithEvents");
9
+ var _DeleteFolderWithFolderLevelPermissions = require("./DeleteFolderWithFolderLevelPermissions");
10
+ const getDeleteFolderUseCases = params => {
11
+ const deleteFolder = new _DeleteFolder.DeleteFolder(params.deleteOperation);
12
+ const deleteFolderUseCaseWithEvents = new _DeleteFolderWithEvents.DeleteFolderWithEvents(params.topics, params.getOperation, deleteFolder);
13
+ const deleteFolderUseCase = new _DeleteFolderWithFolderLevelPermissions.DeleteFolderWithFolderLevelPermissions(params.folderLevelPermissions, deleteFolderUseCaseWithEvents);
14
+ return {
15
+ deleteFolderUseCase
16
+ };
17
+ };
18
+ exports.getDeleteFolderUseCases = getDeleteFolderUseCases;
19
+
20
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_DeleteFolder","require","_DeleteFolderWithEvents","_DeleteFolderWithFolderLevelPermissions","getDeleteFolderUseCases","params","deleteFolder","DeleteFolder","deleteOperation","deleteFolderUseCaseWithEvents","DeleteFolderWithEvents","topics","getOperation","deleteFolderUseCase","DeleteFolderWithFolderLevelPermissions","folderLevelPermissions","exports"],"sources":["index.ts"],"sourcesContent":["import { Topic } from \"@webiny/pubsub/types\";\nimport {\n type AcoFolderStorageOperations,\n type OnFolderAfterDeleteTopicParams,\n type OnFolderBeforeDeleteTopicParams\n} from \"~/folder/folder.types\";\nimport { DeleteFolder } from \"./DeleteFolder\";\nimport { DeleteFolderWithEvents } from \"./DeleteFolderWithEvents\";\nimport { DeleteFolderWithFolderLevelPermissions } from \"./DeleteFolderWithFolderLevelPermissions\";\nimport { FolderLevelPermissions } from \"~/flp\";\n\nexport interface DeleteFolderUseCasesTopics {\n onFolderBeforeDelete: Topic<OnFolderBeforeDeleteTopicParams>;\n onFolderAfterDelete: Topic<OnFolderAfterDeleteTopicParams>;\n}\n\ninterface DeleteFolderUseCasesParams {\n deleteOperation: AcoFolderStorageOperations[\"deleteFolder\"];\n getOperation: AcoFolderStorageOperations[\"getFolder\"];\n folderLevelPermissions: FolderLevelPermissions;\n topics: DeleteFolderUseCasesTopics;\n}\n\nexport const getDeleteFolderUseCases = (params: DeleteFolderUseCasesParams) => {\n const deleteFolder = new DeleteFolder(params.deleteOperation);\n const deleteFolderUseCaseWithEvents = new DeleteFolderWithEvents(\n params.topics,\n params.getOperation,\n deleteFolder\n );\n const deleteFolderUseCase = new DeleteFolderWithFolderLevelPermissions(\n params.folderLevelPermissions,\n deleteFolderUseCaseWithEvents\n );\n\n return {\n deleteFolderUseCase\n };\n};\n"],"mappings":";;;;;;AAMA,IAAAA,aAAA,GAAAC,OAAA;AACA,IAAAC,uBAAA,GAAAD,OAAA;AACA,IAAAE,uCAAA,GAAAF,OAAA;AAeO,MAAMG,uBAAuB,GAAIC,MAAkC,IAAK;EAC3E,MAAMC,YAAY,GAAG,IAAIC,0BAAY,CAACF,MAAM,CAACG,eAAe,CAAC;EAC7D,MAAMC,6BAA6B,GAAG,IAAIC,8CAAsB,CAC5DL,MAAM,CAACM,MAAM,EACbN,MAAM,CAACO,YAAY,EACnBN,YACJ,CAAC;EACD,MAAMO,mBAAmB,GAAG,IAAIC,8EAAsC,CAClET,MAAM,CAACU,sBAAsB,EAC7BN,6BACJ,CAAC;EAED,OAAO;IACHI;EACJ,CAAC;AACL,CAAC;AAACG,OAAA,CAAAZ,uBAAA,GAAAA,uBAAA","ignoreList":[]}
@@ -0,0 +1,5 @@
1
+ import type { GetAncestorsParams, IGetAncestors } from "./IGetAncestors";
2
+ import type { Folder } from "../../folder.types";
3
+ export declare class GetAncestors implements IGetAncestors {
4
+ execute(params: GetAncestorsParams): Promise<Folder[]>;
5
+ }
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.GetAncestors = void 0;
7
+ class GetAncestors {
8
+ async execute(params) {
9
+ const {
10
+ folder,
11
+ folders
12
+ } = params;
13
+
14
+ // Create a Map with folders, using folder.id as key
15
+ const folderMap = new Map();
16
+ folders.forEach(folder => folderMap.set(folder.id, folder));
17
+ const findParents = (next, current) => {
18
+ // No folder found: return the result
19
+ if (!current) {
20
+ return next;
21
+ }
22
+
23
+ // Push the current folder into the accumulator array
24
+ next.push(current);
25
+
26
+ // No parentId found: return the result
27
+ if (!current.parentId) {
28
+ return next;
29
+ }
30
+ const parent = folderMap.get(current.parentId);
31
+
32
+ // No parent found: return the result
33
+ if (!parent) {
34
+ return next;
35
+ }
36
+
37
+ // Go ahead and find parent for the current parent
38
+ return findParents(next, parent);
39
+ };
40
+
41
+ // No folder found: return an empty array
42
+ if (!folder) {
43
+ return [];
44
+ }
45
+
46
+ // The folder has no parent (it's at root level): return an array with the folder
47
+ if (!folder.parentId) {
48
+ return [folder];
49
+ }
50
+
51
+ // Recursively find parents for a given folder id
52
+ return findParents([], folder);
53
+ }
54
+ }
55
+ exports.GetAncestors = GetAncestors;
56
+
57
+ //# sourceMappingURL=GetAncestors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetAncestors","execute","params","folder","folders","folderMap","Map","forEach","set","id","findParents","next","current","push","parentId","parent","get","exports"],"sources":["GetAncestors.ts"],"sourcesContent":["import type { GetAncestorsParams, IGetAncestors } from \"./IGetAncestors\";\nimport type { Folder } from \"~/folder/folder.types\";\n\nexport class GetAncestors implements IGetAncestors {\n public async execute(params: GetAncestorsParams) {\n const { folder, folders } = params;\n\n // Create a Map with folders, using folder.id as key\n const folderMap = new Map<string, Folder>();\n folders.forEach(folder => folderMap.set(folder.id, folder));\n\n const findParents = (next: Folder[], current: Folder): Folder[] => {\n // No folder found: return the result\n if (!current) {\n return next;\n }\n\n // Push the current folder into the accumulator array\n next.push(current);\n\n // No parentId found: return the result\n if (!current.parentId) {\n return next;\n }\n\n const parent = folderMap.get(current.parentId);\n\n // No parent found: return the result\n if (!parent) {\n return next;\n }\n\n // Go ahead and find parent for the current parent\n return findParents(next, parent);\n };\n\n // No folder found: return an empty array\n if (!folder) {\n return [];\n }\n\n // The folder has no parent (it's at root level): return an array with the folder\n if (!folder.parentId) {\n return [folder];\n }\n\n // Recursively find parents for a given folder id\n return findParents([], folder);\n }\n}\n"],"mappings":";;;;;;AAGO,MAAMA,YAAY,CAA0B;EAC/C,MAAaC,OAAOA,CAACC,MAA0B,EAAE;IAC7C,MAAM;MAAEC,MAAM;MAAEC;IAAQ,CAAC,GAAGF,MAAM;;IAElC;IACA,MAAMG,SAAS,GAAG,IAAIC,GAAG,CAAiB,CAAC;IAC3CF,OAAO,CAACG,OAAO,CAACJ,MAAM,IAAIE,SAAS,CAACG,GAAG,CAACL,MAAM,CAACM,EAAE,EAAEN,MAAM,CAAC,CAAC;IAE3D,MAAMO,WAAW,GAAGA,CAACC,IAAc,EAAEC,OAAe,KAAe;MAC/D;MACA,IAAI,CAACA,OAAO,EAAE;QACV,OAAOD,IAAI;MACf;;MAEA;MACAA,IAAI,CAACE,IAAI,CAACD,OAAO,CAAC;;MAElB;MACA,IAAI,CAACA,OAAO,CAACE,QAAQ,EAAE;QACnB,OAAOH,IAAI;MACf;MAEA,MAAMI,MAAM,GAAGV,SAAS,CAACW,GAAG,CAACJ,OAAO,CAACE,QAAQ,CAAC;;MAE9C;MACA,IAAI,CAACC,MAAM,EAAE;QACT,OAAOJ,IAAI;MACf;;MAEA;MACA,OAAOD,WAAW,CAACC,IAAI,EAAEI,MAAM,CAAC;IACpC,CAAC;;IAED;IACA,IAAI,CAACZ,MAAM,EAAE;MACT,OAAO,EAAE;IACb;;IAEA;IACA,IAAI,CAACA,MAAM,CAACW,QAAQ,EAAE;MAClB,OAAO,CAACX,MAAM,CAAC;IACnB;;IAEA;IACA,OAAOO,WAAW,CAAC,EAAE,EAAEP,MAAM,CAAC;EAClC;AACJ;AAACc,OAAA,CAAAjB,YAAA,GAAAA,YAAA","ignoreList":[]}
@@ -0,0 +1,8 @@
1
+ import { Folder } from "../../folder.types";
2
+ export interface GetAncestorsParams {
3
+ folder: Folder;
4
+ folders: Folder[];
5
+ }
6
+ export interface IGetAncestors {
7
+ execute: (params: GetAncestorsParams) => Promise<Folder[]>;
8
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=IGetAncestors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["IGetAncestors.ts"],"sourcesContent":["import { Folder } from \"~/folder/folder.types\";\n\nexport interface GetAncestorsParams {\n folder: Folder;\n folders: Folder[];\n}\n\nexport interface IGetAncestors {\n execute: (params: GetAncestorsParams) => Promise<Folder[]>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import { GetAncestors } from "./GetAncestors";
2
+ export declare const getGetAncestors: () => {
3
+ getAncestorsUseCase: GetAncestors;
4
+ };
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getGetAncestors = void 0;
7
+ var _GetAncestors = require("./GetAncestors");
8
+ const getGetAncestors = () => {
9
+ const getAncestorsUseCase = new _GetAncestors.GetAncestors();
10
+ return {
11
+ getAncestorsUseCase
12
+ };
13
+ };
14
+ exports.getGetAncestors = getGetAncestors;
15
+
16
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_GetAncestors","require","getGetAncestors","getAncestorsUseCase","GetAncestors","exports"],"sources":["index.ts"],"sourcesContent":["import { GetAncestors } from \"./GetAncestors\";\n\nexport const getGetAncestors = () => {\n const getAncestorsUseCase = new GetAncestors();\n\n return {\n getAncestorsUseCase\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,aAAA,GAAAC,OAAA;AAEO,MAAMC,eAAe,GAAGA,CAAA,KAAM;EACjC,MAAMC,mBAAmB,GAAG,IAAIC,0BAAY,CAAC,CAAC;EAE9C,OAAO;IACHD;EACJ,CAAC;AACL,CAAC;AAACE,OAAA,CAAAH,eAAA,GAAAA,eAAA","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import type { IGetFolder } from "./IGetFolder";
2
+ import type { AcoFolderStorageOperations, Folder, GetFolderParams } from "../../folder.types";
3
+ export declare class GetFolder implements IGetFolder {
4
+ private readonly getOperation;
5
+ constructor(getOperation: AcoFolderStorageOperations["getFolder"]);
6
+ execute(params: GetFolderParams): Promise<Folder>;
7
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.GetFolder = void 0;
7
+ class GetFolder {
8
+ constructor(getOperation) {
9
+ this.getOperation = getOperation;
10
+ }
11
+ async execute(params) {
12
+ return await this.getOperation(params);
13
+ }
14
+ }
15
+ exports.GetFolder = GetFolder;
16
+
17
+ //# sourceMappingURL=GetFolder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetFolder","constructor","getOperation","execute","params","exports"],"sources":["GetFolder.ts"],"sourcesContent":["import type { IGetFolder } from \"./IGetFolder\";\nimport type { AcoFolderStorageOperations, Folder, GetFolderParams } from \"~/folder/folder.types\";\n\nexport class GetFolder implements IGetFolder {\n private readonly getOperation: AcoFolderStorageOperations[\"getFolder\"];\n\n constructor(getOperation: AcoFolderStorageOperations[\"getFolder\"]) {\n this.getOperation = getOperation;\n }\n\n async execute(params: GetFolderParams): Promise<Folder> {\n return await this.getOperation(params);\n }\n}\n"],"mappings":";;;;;;AAGO,MAAMA,SAAS,CAAuB;EAGzCC,WAAWA,CAACC,YAAqD,EAAE;IAC/D,IAAI,CAACA,YAAY,GAAGA,YAAY;EACpC;EAEA,MAAMC,OAAOA,CAACC,MAAuB,EAAmB;IACpD,OAAO,MAAM,IAAI,CAACF,YAAY,CAACE,MAAM,CAAC;EAC1C;AACJ;AAACC,OAAA,CAAAL,SAAA,GAAAA,SAAA","ignoreList":[]}
@@ -0,0 +1,24 @@
1
+ import type { IGetFolder } from "./IGetFolder";
2
+ import { FolderLevelPermissions } from "../../../flp";
3
+ import type { GetFolderParams } from "../../folder.types";
4
+ export declare class GetFolderWithFolderLevelPermissions implements IGetFolder {
5
+ private folderLevelPermissions;
6
+ private readonly decoretee;
7
+ constructor(folderLevelPermissions: FolderLevelPermissions, decoretee: IGetFolder);
8
+ execute(params: GetFolderParams): Promise<{
9
+ permissions: import("../../../types").FolderPermission[];
10
+ id: string;
11
+ entryId: string;
12
+ createdOn: string;
13
+ modifiedOn: string | null;
14
+ savedOn: string;
15
+ createdBy: import("../../../types").User;
16
+ modifiedBy: import("../../../types").User | null;
17
+ savedBy: import("../../../types").User;
18
+ title: string;
19
+ slug: string;
20
+ type: string;
21
+ parentId?: string | null | undefined;
22
+ extensions?: Record<string, any> | undefined;
23
+ }>;
24
+ }
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.GetFolderWithFolderLevelPermissions = void 0;
7
+ var _apiSecurity = require("@webiny/api-security");
8
+ class GetFolderWithFolderLevelPermissions {
9
+ constructor(folderLevelPermissions, decoretee) {
10
+ this.folderLevelPermissions = folderLevelPermissions;
11
+ this.decoretee = decoretee;
12
+ }
13
+ async execute(params) {
14
+ const folder = await this.decoretee.execute(params);
15
+ const permissions = await this.folderLevelPermissions.getFolderLevelPermissions(folder.id);
16
+
17
+ // Let's check if the current user has read access level.
18
+ const canAccessFolder = await this.folderLevelPermissions.canAccessFolder({
19
+ permissions,
20
+ rwd: "r"
21
+ });
22
+ if (!canAccessFolder) {
23
+ throw new _apiSecurity.NotAuthorizedError();
24
+ }
25
+ return {
26
+ ...folder,
27
+ permissions
28
+ };
29
+ }
30
+ }
31
+ exports.GetFolderWithFolderLevelPermissions = GetFolderWithFolderLevelPermissions;
32
+
33
+ //# sourceMappingURL=GetFolderWithFolderLevelPermissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_apiSecurity","require","GetFolderWithFolderLevelPermissions","constructor","folderLevelPermissions","decoretee","execute","params","folder","permissions","getFolderLevelPermissions","id","canAccessFolder","rwd","NotAuthorizedError","exports"],"sources":["GetFolderWithFolderLevelPermissions.ts"],"sourcesContent":["import { NotAuthorizedError } from \"@webiny/api-security\";\nimport type { IGetFolder } from \"./IGetFolder\";\nimport { FolderLevelPermissions } from \"~/flp\";\nimport type { GetFolderParams } from \"~/folder/folder.types\";\n\nexport class GetFolderWithFolderLevelPermissions implements IGetFolder {\n private folderLevelPermissions: FolderLevelPermissions;\n private readonly decoretee: IGetFolder;\n\n constructor(folderLevelPermissions: FolderLevelPermissions, decoretee: IGetFolder) {\n this.folderLevelPermissions = folderLevelPermissions;\n this.decoretee = decoretee;\n }\n\n async execute(params: GetFolderParams) {\n const folder = await this.decoretee.execute(params);\n const permissions = await this.folderLevelPermissions.getFolderLevelPermissions(folder.id);\n\n // Let's check if the current user has read access level.\n const canAccessFolder = await this.folderLevelPermissions.canAccessFolder({\n permissions,\n rwd: \"r\"\n });\n\n if (!canAccessFolder) {\n throw new NotAuthorizedError();\n }\n\n return {\n ...folder,\n permissions\n };\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AAKO,MAAMC,mCAAmC,CAAuB;EAInEC,WAAWA,CAACC,sBAA8C,EAAEC,SAAqB,EAAE;IAC/E,IAAI,CAACD,sBAAsB,GAAGA,sBAAsB;IACpD,IAAI,CAACC,SAAS,GAAGA,SAAS;EAC9B;EAEA,MAAMC,OAAOA,CAACC,MAAuB,EAAE;IACnC,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACH,SAAS,CAACC,OAAO,CAACC,MAAM,CAAC;IACnD,MAAME,WAAW,GAAG,MAAM,IAAI,CAACL,sBAAsB,CAACM,yBAAyB,CAACF,MAAM,CAACG,EAAE,CAAC;;IAE1F;IACA,MAAMC,eAAe,GAAG,MAAM,IAAI,CAACR,sBAAsB,CAACQ,eAAe,CAAC;MACtEH,WAAW;MACXI,GAAG,EAAE;IACT,CAAC,CAAC;IAEF,IAAI,CAACD,eAAe,EAAE;MAClB,MAAM,IAAIE,+BAAkB,CAAC,CAAC;IAClC;IAEA,OAAO;MACH,GAAGN,MAAM;MACTC;IACJ,CAAC;EACL;AACJ;AAACM,OAAA,CAAAb,mCAAA,GAAAA,mCAAA","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type { Folder, GetFolderParams } from "../../folder.types";
2
+ export interface IGetFolder {
3
+ execute: (params: GetFolderParams) => Promise<Folder>;
4
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=IGetFolder.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["IGetFolder.ts"],"sourcesContent":["import type { Folder, GetFolderParams } from \"~/folder/folder.types\";\n\nexport interface IGetFolder {\n execute: (params: GetFolderParams) => Promise<Folder>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import type { AcoFolderStorageOperations } from "../../folder.types";
2
+ import { GetFolder } from "./GetFolder";
3
+ import { GetFolderWithFolderLevelPermissions } from "./GetFolderWithFolderLevelPermissions";
4
+ import { FolderLevelPermissions } from "../../../flp";
5
+ interface GetFolderUseCasesParams {
6
+ getOperation: AcoFolderStorageOperations["getFolder"];
7
+ folderLevelPermissions: FolderLevelPermissions;
8
+ }
9
+ export declare const getGetFolderUseCase: (params: GetFolderUseCasesParams) => {
10
+ getFolderUseCase: GetFolderWithFolderLevelPermissions;
11
+ getFolderUseCaseWithoutPermissions: GetFolder;
12
+ };
13
+ export {};
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getGetFolderUseCase = void 0;
7
+ var _GetFolder = require("./GetFolder");
8
+ var _GetFolderWithFolderLevelPermissions = require("./GetFolderWithFolderLevelPermissions");
9
+ const getGetFolderUseCase = params => {
10
+ const getFolder = new _GetFolder.GetFolder(params.getOperation);
11
+ const getFolderUseCase = new _GetFolderWithFolderLevelPermissions.GetFolderWithFolderLevelPermissions(params.folderLevelPermissions, getFolder);
12
+ return {
13
+ getFolderUseCase,
14
+ getFolderUseCaseWithoutPermissions: getFolder
15
+ };
16
+ };
17
+ exports.getGetFolderUseCase = getGetFolderUseCase;
18
+
19
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_GetFolder","require","_GetFolderWithFolderLevelPermissions","getGetFolderUseCase","params","getFolder","GetFolder","getOperation","getFolderUseCase","GetFolderWithFolderLevelPermissions","folderLevelPermissions","getFolderUseCaseWithoutPermissions","exports"],"sources":["index.ts"],"sourcesContent":["import type { AcoFolderStorageOperations } from \"~/folder/folder.types\";\nimport { GetFolder } from \"./GetFolder\";\nimport { GetFolderWithFolderLevelPermissions } from \"./GetFolderWithFolderLevelPermissions\";\nimport { FolderLevelPermissions } from \"~/flp\";\n\ninterface GetFolderUseCasesParams {\n getOperation: AcoFolderStorageOperations[\"getFolder\"];\n folderLevelPermissions: FolderLevelPermissions;\n}\n\nexport const getGetFolderUseCase = (params: GetFolderUseCasesParams) => {\n const getFolder = new GetFolder(params.getOperation);\n const getFolderUseCase = new GetFolderWithFolderLevelPermissions(\n params.folderLevelPermissions,\n getFolder\n );\n\n return {\n getFolderUseCase,\n getFolderUseCaseWithoutPermissions: getFolder\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AACA,IAAAC,oCAAA,GAAAD,OAAA;AAQO,MAAME,mBAAmB,GAAIC,MAA+B,IAAK;EACpE,MAAMC,SAAS,GAAG,IAAIC,oBAAS,CAACF,MAAM,CAACG,YAAY,CAAC;EACpD,MAAMC,gBAAgB,GAAG,IAAIC,wEAAmC,CAC5DL,MAAM,CAACM,sBAAsB,EAC7BL,SACJ,CAAC;EAED,OAAO;IACHG,gBAAgB;IAChBG,kCAAkC,EAAEN;EACxC,CAAC;AACL,CAAC;AAACO,OAAA,CAAAT,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -0,0 +1,11 @@
1
+ import type { IGetFolderHierarchy } from "./IGetFolderHierarchy";
2
+ import type { AcoFolderStorageOperations, Folder, GetFolderHierarchyParams } from "../../folder.types";
3
+ export declare class GetFolderHierarchy implements IGetFolderHierarchy {
4
+ private readonly listOperation;
5
+ private readonly getOperation;
6
+ constructor(listOperation: AcoFolderStorageOperations["listFolders"], getOperation: AcoFolderStorageOperations["getFolder"]);
7
+ execute(params: GetFolderHierarchyParams): Promise<{
8
+ parents: Folder[];
9
+ siblings: Folder[];
10
+ }>;
11
+ }
@@ -0,0 +1,63 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.GetFolderHierarchy = void 0;
7
+ var _constants = require("../../../constants");
8
+ const FIXED_FOLDER_LISTING_LIMIT = 10_000;
9
+ class GetFolderHierarchy {
10
+ constructor(listOperation, getOperation) {
11
+ this.listOperation = listOperation;
12
+ this.getOperation = getOperation;
13
+ }
14
+ async execute(params) {
15
+ const parents = [];
16
+ const siblings = [];
17
+ const [rootFolders] = await this.listOperation({
18
+ where: {
19
+ type: params.type,
20
+ parentId: null
21
+ },
22
+ limit: FIXED_FOLDER_LISTING_LIMIT
23
+ });
24
+ siblings.push(...rootFolders);
25
+ if (params.id === _constants.ROOT_FOLDER) {
26
+ return {
27
+ parents,
28
+ siblings
29
+ };
30
+ }
31
+ const folder = await this.getOperation({
32
+ id: params.id
33
+ });
34
+ parents.push(folder);
35
+ const getFolderParent = async folder => {
36
+ while (folder.parentId) {
37
+ const parentFolder = await this.getOperation({
38
+ id: folder.parentId
39
+ });
40
+ parents.push(parentFolder);
41
+ folder = parentFolder;
42
+ }
43
+ };
44
+ await getFolderParent(folder);
45
+ const parentIds = parents.map(folder => folder.id);
46
+ const [childFolders] = await this.listOperation({
47
+ where: {
48
+ type: folder.type,
49
+ parentId_in: parentIds,
50
+ id_not_in: parentIds
51
+ },
52
+ limit: FIXED_FOLDER_LISTING_LIMIT
53
+ });
54
+ siblings.push(...childFolders);
55
+ return {
56
+ parents,
57
+ siblings
58
+ };
59
+ }
60
+ }
61
+ exports.GetFolderHierarchy = GetFolderHierarchy;
62
+
63
+ //# sourceMappingURL=GetFolderHierarchy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_constants","require","FIXED_FOLDER_LISTING_LIMIT","GetFolderHierarchy","constructor","listOperation","getOperation","execute","params","parents","siblings","rootFolders","where","type","parentId","limit","push","id","ROOT_FOLDER","folder","getFolderParent","parentFolder","parentIds","map","childFolders","parentId_in","id_not_in","exports"],"sources":["GetFolderHierarchy.ts"],"sourcesContent":["import type { IGetFolderHierarchy } from \"./IGetFolderHierarchy\";\nimport { ROOT_FOLDER } from \"~/constants\";\nimport type {\n AcoFolderStorageOperations,\n Folder,\n GetFolderHierarchyParams\n} from \"~/folder/folder.types\";\n\nconst FIXED_FOLDER_LISTING_LIMIT = 10_000;\n\nexport class GetFolderHierarchy implements IGetFolderHierarchy {\n private readonly listOperation: AcoFolderStorageOperations[\"listFolders\"];\n private readonly getOperation: AcoFolderStorageOperations[\"getFolder\"];\n\n constructor(\n listOperation: AcoFolderStorageOperations[\"listFolders\"],\n getOperation: AcoFolderStorageOperations[\"getFolder\"]\n ) {\n this.listOperation = listOperation;\n this.getOperation = getOperation;\n }\n\n async execute(params: GetFolderHierarchyParams) {\n const parents: Folder[] = [];\n const siblings: Folder[] = [];\n\n const [rootFolders] = await this.listOperation({\n where: { type: params.type, parentId: null },\n limit: FIXED_FOLDER_LISTING_LIMIT\n });\n\n siblings.push(...rootFolders);\n\n if (params.id === ROOT_FOLDER) {\n return {\n parents,\n siblings\n };\n }\n\n const folder = await this.getOperation({ id: params.id });\n parents.push(folder);\n\n const getFolderParent = async (folder: Folder) => {\n while (folder.parentId) {\n const parentFolder = await this.getOperation({ id: folder.parentId });\n parents.push(parentFolder);\n folder = parentFolder;\n }\n };\n\n await getFolderParent(folder);\n\n const parentIds = parents.map(folder => folder.id);\n\n const [childFolders] = await this.listOperation({\n where: { type: folder.type, parentId_in: parentIds, id_not_in: parentIds },\n limit: FIXED_FOLDER_LISTING_LIMIT\n });\n\n siblings.push(...childFolders);\n\n return {\n parents,\n siblings\n };\n }\n}\n"],"mappings":";;;;;;AACA,IAAAA,UAAA,GAAAC,OAAA;AAOA,MAAMC,0BAA0B,GAAG,MAAM;AAElC,MAAMC,kBAAkB,CAAgC;EAI3DC,WAAWA,CACPC,aAAwD,EACxDC,YAAqD,EACvD;IACE,IAAI,CAACD,aAAa,GAAGA,aAAa;IAClC,IAAI,CAACC,YAAY,GAAGA,YAAY;EACpC;EAEA,MAAMC,OAAOA,CAACC,MAAgC,EAAE;IAC5C,MAAMC,OAAiB,GAAG,EAAE;IAC5B,MAAMC,QAAkB,GAAG,EAAE;IAE7B,MAAM,CAACC,WAAW,CAAC,GAAG,MAAM,IAAI,CAACN,aAAa,CAAC;MAC3CO,KAAK,EAAE;QAAEC,IAAI,EAAEL,MAAM,CAACK,IAAI;QAAEC,QAAQ,EAAE;MAAK,CAAC;MAC5CC,KAAK,EAAEb;IACX,CAAC,CAAC;IAEFQ,QAAQ,CAACM,IAAI,CAAC,GAAGL,WAAW,CAAC;IAE7B,IAAIH,MAAM,CAACS,EAAE,KAAKC,sBAAW,EAAE;MAC3B,OAAO;QACHT,OAAO;QACPC;MACJ,CAAC;IACL;IAEA,MAAMS,MAAM,GAAG,MAAM,IAAI,CAACb,YAAY,CAAC;MAAEW,EAAE,EAAET,MAAM,CAACS;IAAG,CAAC,CAAC;IACzDR,OAAO,CAACO,IAAI,CAACG,MAAM,CAAC;IAEpB,MAAMC,eAAe,GAAG,MAAOD,MAAc,IAAK;MAC9C,OAAOA,MAAM,CAACL,QAAQ,EAAE;QACpB,MAAMO,YAAY,GAAG,MAAM,IAAI,CAACf,YAAY,CAAC;UAAEW,EAAE,EAAEE,MAAM,CAACL;QAAS,CAAC,CAAC;QACrEL,OAAO,CAACO,IAAI,CAACK,YAAY,CAAC;QAC1BF,MAAM,GAAGE,YAAY;MACzB;IACJ,CAAC;IAED,MAAMD,eAAe,CAACD,MAAM,CAAC;IAE7B,MAAMG,SAAS,GAAGb,OAAO,CAACc,GAAG,CAACJ,MAAM,IAAIA,MAAM,CAACF,EAAE,CAAC;IAElD,MAAM,CAACO,YAAY,CAAC,GAAG,MAAM,IAAI,CAACnB,aAAa,CAAC;MAC5CO,KAAK,EAAE;QAAEC,IAAI,EAAEM,MAAM,CAACN,IAAI;QAAEY,WAAW,EAAEH,SAAS;QAAEI,SAAS,EAAEJ;MAAU,CAAC;MAC1EP,KAAK,EAAEb;IACX,CAAC,CAAC;IAEFQ,QAAQ,CAACM,IAAI,CAAC,GAAGQ,YAAY,CAAC;IAE9B,OAAO;MACHf,OAAO;MACPC;IACJ,CAAC;EACL;AACJ;AAACiB,OAAA,CAAAxB,kBAAA,GAAAA,kBAAA","ignoreList":[]}
@@ -0,0 +1,17 @@
1
+ import { FolderLevelPermissions } from "../../../flp";
2
+ import type { IGetFolderHierarchy } from "./IGetFolderHierarchy";
3
+ import type { Folder, GetFolderHierarchyParams } from "../../folder.types";
4
+ export declare class GetFolderHierarchyWithFolderLevelPermissions implements IGetFolderHierarchy {
5
+ private flpCatalog;
6
+ private folderLevelPermissions;
7
+ private readonly decoretee;
8
+ constructor(folderLevelPermissions: FolderLevelPermissions, decoretee: IGetFolderHierarchy);
9
+ execute(params: GetFolderHierarchyParams): Promise<{
10
+ parents: Folder[];
11
+ siblings: Folder[];
12
+ }>;
13
+ private filterAccessibleFolders;
14
+ private hasFlp;
15
+ private getFlp;
16
+ private setFlp;
17
+ }
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.GetFolderHierarchyWithFolderLevelPermissions = void 0;
7
+ class GetFolderHierarchyWithFolderLevelPermissions {
8
+ flpCatalog = new Map();
9
+ constructor(folderLevelPermissions, decoretee) {
10
+ this.folderLevelPermissions = folderLevelPermissions;
11
+ this.decoretee = decoretee;
12
+ }
13
+ async execute(params) {
14
+ const {
15
+ siblings,
16
+ parents
17
+ } = await this.decoretee.execute(params);
18
+ const folders = [...parents, ...siblings];
19
+ await Promise.all(folders.map(async folder => {
20
+ if (!this.hasFlp(folder.id)) {
21
+ const permissions = await this.folderLevelPermissions.getFolderLevelPermissions(folder.id);
22
+ this.setFlp(folder.id, permissions);
23
+ }
24
+ }));
25
+ return {
26
+ parents: await this.filterAccessibleFolders(parents),
27
+ siblings: await this.filterAccessibleFolders(siblings)
28
+ };
29
+ }
30
+ async filterAccessibleFolders(folders) {
31
+ const results = await Promise.all(folders.map(async folder => {
32
+ const permissions = this.getFlp(folder.id);
33
+ if (!permissions) {
34
+ return folder;
35
+ }
36
+ const canAccess = await this.folderLevelPermissions.canAccessFolder({
37
+ permissions,
38
+ rwd: "r"
39
+ });
40
+ return canAccess ? {
41
+ ...folder,
42
+ permissions
43
+ } : null;
44
+ }));
45
+ return results.filter(folder => folder !== null);
46
+ }
47
+ hasFlp(id) {
48
+ return this.flpCatalog.has(id);
49
+ }
50
+ getFlp(id) {
51
+ return this.flpCatalog.get(id);
52
+ }
53
+ setFlp(id, permissions) {
54
+ this.flpCatalog.set(id, permissions);
55
+ }
56
+ }
57
+ exports.GetFolderHierarchyWithFolderLevelPermissions = GetFolderHierarchyWithFolderLevelPermissions;
58
+
59
+ //# sourceMappingURL=GetFolderHierarchyWithFolderLevelPermissions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["GetFolderHierarchyWithFolderLevelPermissions","flpCatalog","Map","constructor","folderLevelPermissions","decoretee","execute","params","siblings","parents","folders","Promise","all","map","folder","hasFlp","id","permissions","getFolderLevelPermissions","setFlp","filterAccessibleFolders","results","getFlp","canAccess","canAccessFolder","rwd","filter","has","get","set","exports"],"sources":["GetFolderHierarchyWithFolderLevelPermissions.ts"],"sourcesContent":["import type { FolderPermission } from \"~/flp/flp.types\";\nimport { FolderLevelPermissions } from \"~/flp\";\nimport type { IGetFolderHierarchy } from \"./IGetFolderHierarchy\";\nimport type { Folder, GetFolderHierarchyParams } from \"~/folder/folder.types\";\n\nexport class GetFolderHierarchyWithFolderLevelPermissions implements IGetFolderHierarchy {\n private flpCatalog: Map<string, FolderPermission[]> = new Map();\n private folderLevelPermissions: FolderLevelPermissions;\n private readonly decoretee: IGetFolderHierarchy;\n\n constructor(folderLevelPermissions: FolderLevelPermissions, decoretee: IGetFolderHierarchy) {\n this.folderLevelPermissions = folderLevelPermissions;\n this.decoretee = decoretee;\n }\n\n async execute(params: GetFolderHierarchyParams) {\n const { siblings, parents } = await this.decoretee.execute(params);\n const folders = [...parents, ...siblings];\n\n await Promise.all(\n folders.map(async folder => {\n if (!this.hasFlp(folder.id)) {\n const permissions = await this.folderLevelPermissions.getFolderLevelPermissions(\n folder.id\n );\n this.setFlp(folder.id, permissions);\n }\n })\n );\n\n return {\n parents: await this.filterAccessibleFolders(parents),\n siblings: await this.filterAccessibleFolders(siblings)\n };\n }\n\n private async filterAccessibleFolders(folders: Folder[]) {\n const results = await Promise.all(\n folders.map(async folder => {\n const permissions = this.getFlp(folder.id);\n if (!permissions) {\n return folder;\n }\n\n const canAccess = await this.folderLevelPermissions.canAccessFolder({\n permissions,\n rwd: \"r\"\n });\n\n return canAccess ? { ...folder, permissions } : null;\n })\n );\n return results.filter((folder): folder is Folder => folder !== null);\n }\n\n private hasFlp(id: string) {\n return this.flpCatalog.has(id);\n }\n\n private getFlp(id: string) {\n return this.flpCatalog.get(id);\n }\n\n private setFlp(id: string, permissions: FolderPermission[]) {\n this.flpCatalog.set(id, permissions);\n }\n}\n"],"mappings":";;;;;;AAKO,MAAMA,4CAA4C,CAAgC;EAC7EC,UAAU,GAAoC,IAAIC,GAAG,CAAC,CAAC;EAI/DC,WAAWA,CAACC,sBAA8C,EAAEC,SAA8B,EAAE;IACxF,IAAI,CAACD,sBAAsB,GAAGA,sBAAsB;IACpD,IAAI,CAACC,SAAS,GAAGA,SAAS;EAC9B;EAEA,MAAMC,OAAOA,CAACC,MAAgC,EAAE;IAC5C,MAAM;MAAEC,QAAQ;MAAEC;IAAQ,CAAC,GAAG,MAAM,IAAI,CAACJ,SAAS,CAACC,OAAO,CAACC,MAAM,CAAC;IAClE,MAAMG,OAAO,GAAG,CAAC,GAAGD,OAAO,EAAE,GAAGD,QAAQ,CAAC;IAEzC,MAAMG,OAAO,CAACC,GAAG,CACbF,OAAO,CAACG,GAAG,CAAC,MAAMC,MAAM,IAAI;MACxB,IAAI,CAAC,IAAI,CAACC,MAAM,CAACD,MAAM,CAACE,EAAE,CAAC,EAAE;QACzB,MAAMC,WAAW,GAAG,MAAM,IAAI,CAACb,sBAAsB,CAACc,yBAAyB,CAC3EJ,MAAM,CAACE,EACX,CAAC;QACD,IAAI,CAACG,MAAM,CAACL,MAAM,CAACE,EAAE,EAAEC,WAAW,CAAC;MACvC;IACJ,CAAC,CACL,CAAC;IAED,OAAO;MACHR,OAAO,EAAE,MAAM,IAAI,CAACW,uBAAuB,CAACX,OAAO,CAAC;MACpDD,QAAQ,EAAE,MAAM,IAAI,CAACY,uBAAuB,CAACZ,QAAQ;IACzD,CAAC;EACL;EAEA,MAAcY,uBAAuBA,CAACV,OAAiB,EAAE;IACrD,MAAMW,OAAO,GAAG,MAAMV,OAAO,CAACC,GAAG,CAC7BF,OAAO,CAACG,GAAG,CAAC,MAAMC,MAAM,IAAI;MACxB,MAAMG,WAAW,GAAG,IAAI,CAACK,MAAM,CAACR,MAAM,CAACE,EAAE,CAAC;MAC1C,IAAI,CAACC,WAAW,EAAE;QACd,OAAOH,MAAM;MACjB;MAEA,MAAMS,SAAS,GAAG,MAAM,IAAI,CAACnB,sBAAsB,CAACoB,eAAe,CAAC;QAChEP,WAAW;QACXQ,GAAG,EAAE;MACT,CAAC,CAAC;MAEF,OAAOF,SAAS,GAAG;QAAE,GAAGT,MAAM;QAAEG;MAAY,CAAC,GAAG,IAAI;IACxD,CAAC,CACL,CAAC;IACD,OAAOI,OAAO,CAACK,MAAM,CAAEZ,MAAM,IAAuBA,MAAM,KAAK,IAAI,CAAC;EACxE;EAEQC,MAAMA,CAACC,EAAU,EAAE;IACvB,OAAO,IAAI,CAACf,UAAU,CAAC0B,GAAG,CAACX,EAAE,CAAC;EAClC;EAEQM,MAAMA,CAACN,EAAU,EAAE;IACvB,OAAO,IAAI,CAACf,UAAU,CAAC2B,GAAG,CAACZ,EAAE,CAAC;EAClC;EAEQG,MAAMA,CAACH,EAAU,EAAEC,WAA+B,EAAE;IACxD,IAAI,CAAChB,UAAU,CAAC4B,GAAG,CAACb,EAAE,EAAEC,WAAW,CAAC;EACxC;AACJ;AAACa,OAAA,CAAA9B,4CAAA,GAAAA,4CAAA","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type { GetFolderHierarchyParams, GetFolderHierarchyResponse } from "../../folder.types";
2
+ export interface IGetFolderHierarchy {
3
+ execute: (params: GetFolderHierarchyParams) => Promise<GetFolderHierarchyResponse>;
4
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=IGetFolderHierarchy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["IGetFolderHierarchy.ts"],"sourcesContent":["import type { GetFolderHierarchyParams, GetFolderHierarchyResponse } from \"~/folder/folder.types\";\n\nexport interface IGetFolderHierarchy {\n execute: (params: GetFolderHierarchyParams) => Promise<GetFolderHierarchyResponse>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import { GetFolderHierarchyWithFolderLevelPermissions } from "./GetFolderHierarchyWithFolderLevelPermissions";
2
+ import type { AcoFolderStorageOperations } from "../../folder.types";
3
+ import { FolderLevelPermissions } from "../../../flp";
4
+ interface GetFolderHierarchyUseCasesParams {
5
+ listOperation: AcoFolderStorageOperations["listFolders"];
6
+ getOperation: AcoFolderStorageOperations["getFolder"];
7
+ folderLevelPermissions: FolderLevelPermissions;
8
+ }
9
+ export declare const getGetFolderHierarchyUseCases: (params: GetFolderHierarchyUseCasesParams) => {
10
+ getFolderHierarchyUseCase: GetFolderHierarchyWithFolderLevelPermissions;
11
+ };
12
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getGetFolderHierarchyUseCases = void 0;
7
+ var _GetFolderHierarchy = require("./GetFolderHierarchy");
8
+ var _GetFolderHierarchyWithFolderLevelPermissions = require("./GetFolderHierarchyWithFolderLevelPermissions");
9
+ const getGetFolderHierarchyUseCases = params => {
10
+ const getFolderHierarchy = new _GetFolderHierarchy.GetFolderHierarchy(params.listOperation, params.getOperation);
11
+ const getFolderHierarchyUseCase = new _GetFolderHierarchyWithFolderLevelPermissions.GetFolderHierarchyWithFolderLevelPermissions(params.folderLevelPermissions, getFolderHierarchy);
12
+ return {
13
+ getFolderHierarchyUseCase
14
+ };
15
+ };
16
+ exports.getGetFolderHierarchyUseCases = getGetFolderHierarchyUseCases;
17
+
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_GetFolderHierarchy","require","_GetFolderHierarchyWithFolderLevelPermissions","getGetFolderHierarchyUseCases","params","getFolderHierarchy","GetFolderHierarchy","listOperation","getOperation","getFolderHierarchyUseCase","GetFolderHierarchyWithFolderLevelPermissions","folderLevelPermissions","exports"],"sources":["index.ts"],"sourcesContent":["import { GetFolderHierarchy } from \"./GetFolderHierarchy\";\nimport { GetFolderHierarchyWithFolderLevelPermissions } from \"./GetFolderHierarchyWithFolderLevelPermissions\";\nimport type { AcoFolderStorageOperations } from \"~/folder/folder.types\";\nimport { FolderLevelPermissions } from \"~/flp\";\n\ninterface GetFolderHierarchyUseCasesParams {\n listOperation: AcoFolderStorageOperations[\"listFolders\"];\n getOperation: AcoFolderStorageOperations[\"getFolder\"];\n folderLevelPermissions: FolderLevelPermissions;\n}\n\nexport const getGetFolderHierarchyUseCases = (params: GetFolderHierarchyUseCasesParams) => {\n const getFolderHierarchy = new GetFolderHierarchy(params.listOperation, params.getOperation);\n const getFolderHierarchyUseCase = new GetFolderHierarchyWithFolderLevelPermissions(\n params.folderLevelPermissions,\n getFolderHierarchy\n );\n\n return {\n getFolderHierarchyUseCase\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,mBAAA,GAAAC,OAAA;AACA,IAAAC,6CAAA,GAAAD,OAAA;AAUO,MAAME,6BAA6B,GAAIC,MAAwC,IAAK;EACvF,MAAMC,kBAAkB,GAAG,IAAIC,sCAAkB,CAACF,MAAM,CAACG,aAAa,EAAEH,MAAM,CAACI,YAAY,CAAC;EAC5F,MAAMC,yBAAyB,GAAG,IAAIC,0FAA4C,CAC9EN,MAAM,CAACO,sBAAsB,EAC7BN,kBACJ,CAAC;EAED,OAAO;IACHI;EACJ,CAAC;AACL,CAAC;AAACG,OAAA,CAAAT,6BAAA,GAAAA,6BAAA","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type { AdminUser } from "@webiny/api-admin-users/types";
2
+ export interface IListAdminUsersGateway {
3
+ execute: () => Promise<AdminUser[]>;
4
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=IListAdminUsersGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["IListAdminUsersGateway.ts"],"sourcesContent":["import type { AdminUser } from \"@webiny/api-admin-users/types\";\n\nexport interface IListAdminUsersGateway {\n execute: () => Promise<AdminUser[]>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type { FolderLevelPermissionsTarget, FolderLevelPermissionsTargetListMeta } from "../../folder.types";
2
+ export interface IListFolderLevelPermissionsTargets {
3
+ execute: () => Promise<[FolderLevelPermissionsTarget[], FolderLevelPermissionsTargetListMeta]>;
4
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=IListFolderLevelPermissionsTargets.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["IListFolderLevelPermissionsTargets.ts"],"sourcesContent":["import type {\n FolderLevelPermissionsTarget,\n FolderLevelPermissionsTargetListMeta\n} from \"~/folder/folder.types\";\n\nexport interface IListFolderLevelPermissionsTargets {\n execute: () => Promise<[FolderLevelPermissionsTarget[], FolderLevelPermissionsTargetListMeta]>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type { Team } from "@webiny/api-security/types";
2
+ export interface IListTeamsGateway {
3
+ execute: () => Promise<Team[]>;
4
+ }