@webiny/api-aco 0.0.0-unstable.2af142b57e → 0.0.0-unstable.3bc8100a7f

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/README.md +6 -6
  2. package/apps/AcoApp.d.ts +21 -0
  3. package/apps/AcoApp.js +143 -0
  4. package/apps/AcoApp.js.map +1 -0
  5. package/apps/AcoApps.d.ts +10 -0
  6. package/apps/AcoApps.js +75 -0
  7. package/apps/AcoApps.js.map +1 -0
  8. package/apps/app.gql.d.ts +3 -0
  9. package/apps/app.gql.js +59 -0
  10. package/apps/app.gql.js.map +1 -0
  11. package/apps/index.d.ts +2 -0
  12. package/apps/index.js +29 -0
  13. package/apps/index.js.map +1 -0
  14. package/constants.d.ts +3 -0
  15. package/constants.js +26 -0
  16. package/constants.js.map +1 -0
  17. package/createAcoContext.d.ts +8 -2
  18. package/createAcoContext.js +97 -30
  19. package/createAcoContext.js.map +1 -1
  20. package/createAcoGraphQL.d.ts +3 -2
  21. package/createAcoGraphQL.js +86 -14
  22. package/createAcoGraphQL.js.map +1 -1
  23. package/createAcoHooks.d.ts +1 -1
  24. package/createAcoHooks.js +11 -3
  25. package/createAcoHooks.js.map +1 -1
  26. package/createAcoModels.d.ts +2 -2
  27. package/createAcoModels.js +13 -45
  28. package/createAcoModels.js.map +1 -1
  29. package/createAcoStorageOperations.d.ts +6 -5
  30. package/createAcoStorageOperations.js +14 -9
  31. package/createAcoStorageOperations.js.map +1 -1
  32. package/createAcoTasks.d.ts +1 -0
  33. package/createAcoTasks.js +13 -0
  34. package/createAcoTasks.js.map +1 -0
  35. package/filter/filter.crud.d.ts +3 -0
  36. package/filter/filter.crud.js +94 -0
  37. package/filter/filter.crud.js.map +1 -0
  38. package/filter/filter.gql.d.ts +3 -0
  39. package/filter/filter.gql.js +152 -0
  40. package/filter/filter.gql.js.map +1 -0
  41. package/filter/filter.model.d.ts +2 -0
  42. package/filter/filter.model.js +124 -0
  43. package/filter/filter.model.js.map +1 -0
  44. package/filter/filter.so.d.ts +3 -0
  45. package/filter/filter.so.js +98 -0
  46. package/filter/filter.so.js.map +1 -0
  47. package/filter/filter.types.d.ts +95 -0
  48. package/filter/filter.types.js +13 -0
  49. package/filter/filter.types.js.map +1 -0
  50. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.d.ts +7 -0
  51. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.js +17 -0
  52. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/GetIdentityGatewayFromContext.js.map +1 -0
  53. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.d.ts +4 -0
  54. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.js +7 -0
  55. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/IGetIdentityGateway.js.map +1 -0
  56. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.d.ts +2 -0
  57. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.js +29 -0
  58. package/flp/FolderLevelPermissions/gateways/GetIdentityGateway/index.js.map +1 -0
  59. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.d.ts +7 -0
  60. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.js +17 -0
  61. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/GetWcpGatewayFromContext.js.map +1 -0
  62. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.d.ts +4 -0
  63. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.js +7 -0
  64. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/IGetWcpGateway.js.map +1 -0
  65. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.d.ts +2 -0
  66. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.js +29 -0
  67. package/flp/FolderLevelPermissions/gateways/GetWcpGateway/index.js.map +1 -0
  68. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.d.ts +3 -0
  69. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.js +7 -0
  70. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IIsAuthorizationEnabledGateway.js.map +1 -0
  71. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.d.ts +7 -0
  72. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.js +17 -0
  73. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/IsAuthorizationEnabledGatewayFromContext.js.map +1 -0
  74. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.d.ts +2 -0
  75. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.js +29 -0
  76. package/flp/FolderLevelPermissions/gateways/IsAuthorizationEnabled/index.js.map +1 -0
  77. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.d.ts +4 -0
  78. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.js +7 -0
  79. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/IListIdentityTeamsGateway.js.map +1 -0
  80. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.d.ts +7 -0
  81. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.js +39 -0
  82. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/ListIdentityTeamsGatewayFromContext.js.map +1 -0
  83. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.d.ts +2 -0
  84. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.js +29 -0
  85. package/flp/FolderLevelPermissions/gateways/ListIdentityTeamsGateway/index.js.map +1 -0
  86. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.d.ts +4 -0
  87. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.js +7 -0
  88. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/IListPermissionsGateway.js.map +1 -0
  89. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.d.ts +7 -0
  90. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.js +17 -0
  91. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/ListPermissionsGatewayFromContext.js.map +1 -0
  92. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.d.ts +2 -0
  93. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.js +29 -0
  94. package/flp/FolderLevelPermissions/gateways/ListPermissionsGateway/index.js.map +1 -0
  95. package/flp/FolderLevelPermissions/gateways/index.d.ts +5 -0
  96. package/flp/FolderLevelPermissions/gateways/index.js +62 -0
  97. package/flp/FolderLevelPermissions/gateways/index.js.map +1 -0
  98. package/flp/FolderLevelPermissions/index.d.ts +33 -0
  99. package/flp/FolderLevelPermissions/index.js +116 -0
  100. package/flp/FolderLevelPermissions/index.js.map +1 -0
  101. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.d.ts +7 -0
  102. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js +48 -0
  103. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js.map +1 -0
  104. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.d.ts +9 -0
  105. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js +7 -0
  106. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js.map +1 -0
  107. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.d.ts +2 -0
  108. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js +29 -0
  109. package/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js.map +1 -0
  110. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.d.ts +7 -0
  111. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js +41 -0
  112. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js.map +1 -0
  113. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.d.ts +8 -0
  114. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js +7 -0
  115. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js.map +1 -0
  116. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.d.ts +2 -0
  117. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js +29 -0
  118. package/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js.map +1 -0
  119. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.d.ts +4 -0
  120. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js +14 -0
  121. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js.map +1 -0
  122. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.d.ts +3 -0
  123. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js +7 -0
  124. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js.map +1 -0
  125. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.d.ts +2 -0
  126. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js +29 -0
  127. package/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js.map +1 -0
  128. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.d.ts +9 -0
  129. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.js +34 -0
  130. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/CanUseFolderLevelPermissions.js.map +1 -0
  131. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.d.ts +3 -0
  132. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.js +7 -0
  133. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/ICanUseFolderPermissions.js.map +1 -0
  134. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.d.ts +2 -0
  135. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.js +29 -0
  136. package/flp/FolderLevelPermissions/useCases/CanUseFolderLevelPermissions/index.js.map +1 -0
  137. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.d.ts +7 -0
  138. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.js +17 -0
  139. package/flp/FolderLevelPermissions/useCases/CanUseTeams/CanUseTeams.js.map +1 -0
  140. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.d.ts +3 -0
  141. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.js +7 -0
  142. package/flp/FolderLevelPermissions/useCases/CanUseTeams/ICanUseTeams.js.map +1 -0
  143. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.d.ts +2 -0
  144. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.js +29 -0
  145. package/flp/FolderLevelPermissions/useCases/CanUseTeams/index.js.map +1 -0
  146. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.d.ts +5 -0
  147. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js +14 -0
  148. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js.map +1 -0
  149. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.d.ts +4 -0
  150. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js +7 -0
  151. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js.map +1 -0
  152. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.d.ts +2 -0
  153. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js +29 -0
  154. package/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js.map +1 -0
  155. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.d.ts +6 -0
  156. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js +77 -0
  157. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js.map +1 -0
  158. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.d.ts +9 -0
  159. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js +21 -0
  160. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js.map +1 -0
  161. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.d.ts +10 -0
  162. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js +42 -0
  163. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js.map +1 -0
  164. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.d.ts +4 -0
  165. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js +7 -0
  166. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js.map +1 -0
  167. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.d.ts +3 -0
  168. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js +40 -0
  169. package/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js.map +1 -0
  170. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.d.ts +7 -0
  171. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.js +17 -0
  172. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/GetFolderPermission.js.map +1 -0
  173. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.d.ts +4 -0
  174. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.js +7 -0
  175. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/IGetFolderPermission.js.map +1 -0
  176. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.d.ts +2 -0
  177. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.js +29 -0
  178. package/flp/FolderLevelPermissions/useCases/GetFolderPermission/index.js.map +1 -0
  179. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.d.ts +4 -0
  180. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.js +7 -0
  181. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/IListFolderPermissions.js.map +1 -0
  182. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.d.ts +7 -0
  183. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.js +17 -0
  184. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/ListFolderPermissions.js.map +1 -0
  185. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.d.ts +2 -0
  186. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.js +18 -0
  187. package/flp/FolderLevelPermissions/useCases/ListFolderPermissions/index.js.map +1 -0
  188. package/flp/FolderLevelPermissions/useCases/index.d.ts +9 -0
  189. package/flp/FolderLevelPermissions/useCases/index.js +106 -0
  190. package/flp/FolderLevelPermissions/useCases/index.js.map +1 -0
  191. package/flp/flp.crud.d.ts +9 -0
  192. package/flp/flp.crud.js +172 -0
  193. package/flp/flp.crud.js.map +1 -0
  194. package/flp/flp.so.d.ts +26 -0
  195. package/flp/flp.so.js +304 -0
  196. package/flp/flp.so.js.map +1 -0
  197. package/flp/flp.types.d.ts +147 -0
  198. package/flp/flp.types.js +18 -0
  199. package/flp/flp.types.js.map +1 -0
  200. package/flp/hooks/index.d.ts +2 -0
  201. package/flp/hooks/index.js +17 -0
  202. package/flp/hooks/index.js.map +1 -0
  203. package/flp/hooks/onFolderAfterCreateFlp.hook.d.ts +2 -0
  204. package/flp/hooks/onFolderAfterCreateFlp.hook.js +37 -0
  205. package/flp/hooks/onFolderAfterCreateFlp.hook.js.map +1 -0
  206. package/flp/hooks/onFolderAfterDeleteFlp.hook.d.ts +2 -0
  207. package/flp/hooks/onFolderAfterDeleteFlp.hook.js +37 -0
  208. package/flp/hooks/onFolderAfterDeleteFlp.hook.js.map +1 -0
  209. package/flp/hooks/onFolderAfterUpdateFlp.hook.d.ts +2 -0
  210. package/flp/hooks/onFolderAfterUpdateFlp.hook.js +39 -0
  211. package/flp/hooks/onFolderAfterUpdateFlp.hook.js.map +1 -0
  212. package/flp/index.d.ts +5 -0
  213. package/flp/index.js +62 -0
  214. package/flp/index.js.map +1 -0
  215. package/flp/tasks/createFlp.task.d.ts +2 -0
  216. package/flp/tasks/createFlp.task.js +49 -0
  217. package/flp/tasks/createFlp.task.js.map +1 -0
  218. package/flp/tasks/deleteFlp.task.d.ts +2 -0
  219. package/flp/tasks/deleteFlp.task.js +49 -0
  220. package/flp/tasks/deleteFlp.task.js.map +1 -0
  221. package/flp/tasks/index.d.ts +5 -0
  222. package/flp/tasks/index.js +20 -0
  223. package/flp/tasks/index.js.map +1 -0
  224. package/flp/tasks/syncFlp.task.d.ts +2 -0
  225. package/flp/tasks/syncFlp.task.js +126 -0
  226. package/flp/tasks/syncFlp.task.js.map +1 -0
  227. package/flp/tasks/updateFlp.task.d.ts +2 -0
  228. package/flp/tasks/updateFlp.task.js +55 -0
  229. package/flp/tasks/updateFlp.task.js.map +1 -0
  230. package/flp/useCases/CreateFlp.d.ts +7 -0
  231. package/flp/useCases/CreateFlp.js +51 -0
  232. package/flp/useCases/CreateFlp.js.map +1 -0
  233. package/flp/useCases/DeleteFlp.d.ts +6 -0
  234. package/flp/useCases/DeleteFlp.js +30 -0
  235. package/flp/useCases/DeleteFlp.js.map +1 -0
  236. package/flp/useCases/UpdateFlp.d.ts +26 -0
  237. package/flp/useCases/UpdateFlp.js +198 -0
  238. package/flp/useCases/UpdateFlp.js.map +1 -0
  239. package/flp/useCases/index.d.ts +3 -0
  240. package/flp/useCases/index.js +40 -0
  241. package/flp/useCases/index.js.map +1 -0
  242. package/folder/createFolderModelModifier.d.ts +36 -0
  243. package/folder/createFolderModelModifier.js +70 -0
  244. package/folder/createFolderModelModifier.js.map +1 -0
  245. package/folder/createFolderTypeDefs.d.ts +7 -0
  246. package/folder/createFolderTypeDefs.js +207 -0
  247. package/folder/createFolderTypeDefs.js.map +1 -0
  248. package/folder/ensureFolderIsEmpty.d.ts +8 -0
  249. package/folder/ensureFolderIsEmpty.js +63 -0
  250. package/folder/ensureFolderIsEmpty.js.map +1 -0
  251. package/folder/folder.crud.d.ts +8 -3
  252. package/folder/folder.crud.js +114 -49
  253. package/folder/folder.crud.js.map +1 -1
  254. package/folder/folder.gql.d.ts +3 -2
  255. package/folder/folder.gql.js +121 -89
  256. package/folder/folder.gql.js.map +1 -1
  257. package/folder/folder.model.d.ts +2 -4
  258. package/folder/folder.model.js +81 -34
  259. package/folder/folder.model.js.map +1 -1
  260. package/folder/folder.so.d.ts +2 -7
  261. package/folder/folder.so.js +151 -110
  262. package/folder/folder.so.js.map +1 -1
  263. package/folder/folder.types.d.ts +74 -9
  264. package/folder/folder.types.js +3 -1
  265. package/folder/folder.types.js.map +1 -1
  266. package/folder/onFolderBeforeDeleteAco.hook.d.ts +2 -0
  267. package/folder/onFolderBeforeDeleteAco.hook.js +54 -0
  268. package/folder/onFolderBeforeDeleteAco.hook.js.map +1 -0
  269. package/folder/onFolderBeforeDeleteFm.hook.d.ts +2 -0
  270. package/folder/onFolderBeforeDeleteFm.hook.js +51 -0
  271. package/folder/onFolderBeforeDeleteFm.hook.js.map +1 -0
  272. package/folder/onFolderBeforeDeleteHcms.hook.d.ts +2 -0
  273. package/folder/onFolderBeforeDeleteHcms.hook.js +58 -0
  274. package/folder/onFolderBeforeDeleteHcms.hook.js.map +1 -0
  275. package/folder/useCases/CreateFolder/CreateFolder.d.ts +7 -0
  276. package/folder/useCases/CreateFolder/CreateFolder.js +19 -0
  277. package/folder/useCases/CreateFolder/CreateFolder.js.map +1 -0
  278. package/folder/useCases/CreateFolder/CreateFolderWithEvents.d.ts +9 -0
  279. package/folder/useCases/CreateFolder/CreateFolderWithEvents.js +25 -0
  280. package/folder/useCases/CreateFolder/CreateFolderWithEvents.js.map +1 -0
  281. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.d.ts +25 -0
  282. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.js +39 -0
  283. package/folder/useCases/CreateFolder/CreateFolderWithFolderLevelPermissions.js.map +1 -0
  284. package/folder/useCases/CreateFolder/ICreateFolder.d.ts +4 -0
  285. package/folder/useCases/CreateFolder/ICreateFolder.js +7 -0
  286. package/folder/useCases/CreateFolder/ICreateFolder.js.map +1 -0
  287. package/folder/useCases/CreateFolder/index.d.ts +17 -0
  288. package/folder/useCases/CreateFolder/index.js +20 -0
  289. package/folder/useCases/CreateFolder/index.js.map +1 -0
  290. package/folder/useCases/DeleteFolder/DeleteFolder.d.ts +7 -0
  291. package/folder/useCases/DeleteFolder/DeleteFolder.js +18 -0
  292. package/folder/useCases/DeleteFolder/DeleteFolder.js.map +1 -0
  293. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.d.ts +10 -0
  294. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.js +29 -0
  295. package/folder/useCases/DeleteFolder/DeleteFolderWithEvents.js.map +1 -0
  296. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.d.ts +9 -0
  297. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.js +24 -0
  298. package/folder/useCases/DeleteFolder/DeleteFolderWithFolderLevelPermissions.js.map +1 -0
  299. package/folder/useCases/DeleteFolder/IDeleteFolder.d.ts +4 -0
  300. package/folder/useCases/DeleteFolder/IDeleteFolder.js +7 -0
  301. package/folder/useCases/DeleteFolder/IDeleteFolder.js.map +1 -0
  302. package/folder/useCases/DeleteFolder/index.d.ts +18 -0
  303. package/folder/useCases/DeleteFolder/index.js +20 -0
  304. package/folder/useCases/DeleteFolder/index.js.map +1 -0
  305. package/folder/useCases/GetAncestors/GetAncestors.d.ts +9 -0
  306. package/folder/useCases/GetAncestors/GetAncestors.js +77 -0
  307. package/folder/useCases/GetAncestors/GetAncestors.js.map +1 -0
  308. package/folder/useCases/GetAncestors/IGetAncestors.d.ts +7 -0
  309. package/folder/useCases/GetAncestors/IGetAncestors.js +7 -0
  310. package/folder/useCases/GetAncestors/IGetAncestors.js.map +1 -0
  311. package/folder/useCases/GetAncestors/index.d.ts +9 -0
  312. package/folder/useCases/GetAncestors/index.js +16 -0
  313. package/folder/useCases/GetAncestors/index.js.map +1 -0
  314. package/folder/useCases/GetFolder/GetFolder.d.ts +7 -0
  315. package/folder/useCases/GetFolder/GetFolder.js +17 -0
  316. package/folder/useCases/GetFolder/GetFolder.js.map +1 -0
  317. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.d.ts +25 -0
  318. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.js +33 -0
  319. package/folder/useCases/GetFolder/GetFolderWithFolderLevelPermissions.js.map +1 -0
  320. package/folder/useCases/GetFolder/IGetFolder.d.ts +4 -0
  321. package/folder/useCases/GetFolder/IGetFolder.js +7 -0
  322. package/folder/useCases/GetFolder/IGetFolder.js.map +1 -0
  323. package/folder/useCases/GetFolder/index.d.ts +13 -0
  324. package/folder/useCases/GetFolder/index.js +19 -0
  325. package/folder/useCases/GetFolder/index.js.map +1 -0
  326. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.d.ts +11 -0
  327. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.js +63 -0
  328. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchy.js.map +1 -0
  329. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.d.ts +17 -0
  330. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.js +59 -0
  331. package/folder/useCases/GetFolderHierarchy/GetFolderHierarchyWithFolderLevelPermissions.js.map +1 -0
  332. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.d.ts +4 -0
  333. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.js +7 -0
  334. package/folder/useCases/GetFolderHierarchy/IGetFolderHierarchy.js.map +1 -0
  335. package/folder/useCases/GetFolderHierarchy/index.d.ts +12 -0
  336. package/folder/useCases/GetFolderHierarchy/index.js +18 -0
  337. package/folder/useCases/GetFolderHierarchy/index.js.map +1 -0
  338. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.d.ts +4 -0
  339. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.js +7 -0
  340. package/folder/useCases/ListFolderLevelPermissionsTargets/IListAdminUsersGateway.js.map +1 -0
  341. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.d.ts +4 -0
  342. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.js +7 -0
  343. package/folder/useCases/ListFolderLevelPermissionsTargets/IListFolderLevelPermissionsTargets.js.map +1 -0
  344. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.d.ts +4 -0
  345. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.js +7 -0
  346. package/folder/useCases/ListFolderLevelPermissionsTargets/IListTeamsGateway.js.map +1 -0
  347. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.d.ts +7 -0
  348. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.js +23 -0
  349. package/folder/useCases/ListFolderLevelPermissionsTargets/ListAdminUsersGatewayFromContext.js.map +1 -0
  350. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.d.ts +13 -0
  351. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.js +60 -0
  352. package/folder/useCases/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargets.js.map +1 -0
  353. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.d.ts +7 -0
  354. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.js +22 -0
  355. package/folder/useCases/ListFolderLevelPermissionsTargets/ListTeamsGatewayFromContext.js.map +1 -0
  356. package/folder/useCases/ListFolderLevelPermissionsTargets/index.d.ts +9 -0
  357. package/folder/useCases/ListFolderLevelPermissionsTargets/index.js +20 -0
  358. package/folder/useCases/ListFolderLevelPermissionsTargets/index.js.map +1 -0
  359. package/folder/useCases/ListFolders/IListFolders.d.ts +5 -0
  360. package/folder/useCases/ListFolders/IListFolders.js +7 -0
  361. package/folder/useCases/ListFolders/IListFolders.js.map +1 -0
  362. package/folder/useCases/ListFolders/ListFolders.d.ts +8 -0
  363. package/folder/useCases/ListFolders/ListFolders.js +17 -0
  364. package/folder/useCases/ListFolders/ListFolders.js.map +1 -0
  365. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.d.ts +14 -0
  366. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.js +67 -0
  367. package/folder/useCases/ListFolders/ListFoldersWithFolderLevelPermissions.js.map +1 -0
  368. package/folder/useCases/ListFolders/index.d.ts +13 -0
  369. package/folder/useCases/ListFolders/index.js +19 -0
  370. package/folder/useCases/ListFolders/index.js.map +1 -0
  371. package/folder/useCases/UpdateFolder/IUpdateFolder.d.ts +4 -0
  372. package/folder/useCases/UpdateFolder/IUpdateFolder.js +7 -0
  373. package/folder/useCases/UpdateFolder/IUpdateFolder.js.map +1 -0
  374. package/folder/useCases/UpdateFolder/UpdateFolder.d.ts +7 -0
  375. package/folder/useCases/UpdateFolder/UpdateFolder.js +20 -0
  376. package/folder/useCases/UpdateFolder/UpdateFolder.js.map +1 -0
  377. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.d.ts +10 -0
  378. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.js +38 -0
  379. package/folder/useCases/UpdateFolder/UpdateFolderWithEvents.js.map +1 -0
  380. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.d.ts +26 -0
  381. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.js +78 -0
  382. package/folder/useCases/UpdateFolder/UpdateFolderWithFolderLevelPermissions.js.map +1 -0
  383. package/folder/useCases/UpdateFolder/index.d.ts +18 -0
  384. package/folder/useCases/UpdateFolder/index.js +20 -0
  385. package/folder/useCases/UpdateFolder/index.js.map +1 -0
  386. package/folder/useCases/index.d.ts +8 -0
  387. package/folder/useCases/index.js +95 -0
  388. package/folder/useCases/index.js.map +1 -0
  389. package/index.d.ts +12 -1
  390. package/index.js +70 -6
  391. package/index.js.map +1 -1
  392. package/package.json +36 -33
  393. package/plugins/AcoAppModifierPlugin.d.ts +43 -0
  394. package/plugins/AcoAppModifierPlugin.js +58 -0
  395. package/plugins/AcoAppModifierPlugin.js.map +1 -0
  396. package/plugins/AcoAppRegisterPlugin.d.ts +8 -0
  397. package/plugins/AcoAppRegisterPlugin.js +21 -0
  398. package/plugins/AcoAppRegisterPlugin.js.map +1 -0
  399. package/plugins/index.d.ts +2 -0
  400. package/plugins/index.js +29 -0
  401. package/plugins/index.js.map +1 -0
  402. package/record/graphql/createAppResolvers.d.ts +14 -0
  403. package/record/graphql/createAppResolvers.js +115 -0
  404. package/record/graphql/createAppResolvers.js.map +1 -0
  405. package/record/graphql/createAppSchema.d.ts +9 -0
  406. package/record/graphql/createAppSchema.js +146 -0
  407. package/record/graphql/createAppSchema.js.map +1 -0
  408. package/record/record.crud.d.ts +2 -2
  409. package/record/record.crud.js +49 -13
  410. package/record/record.crud.js.map +1 -1
  411. package/record/record.gql.d.ts +8 -3
  412. package/record/record.gql.js +38 -113
  413. package/record/record.gql.js.map +1 -1
  414. package/record/record.model.d.ts +8 -4
  415. package/record/record.model.js +50 -34
  416. package/record/record.model.js.map +1 -1
  417. package/record/record.so.d.ts +2 -7
  418. package/record/record.so.js +136 -65
  419. package/record/record.so.js.map +1 -1
  420. package/record/record.types.d.ts +75 -23
  421. package/record/record.types.js +3 -1
  422. package/record/record.types.js.map +1 -1
  423. package/types.d.ts +90 -11
  424. package/types.js +67 -1
  425. package/types.js.map +1 -1
  426. package/utils/FoldersCacheFactory.d.ts +10 -0
  427. package/utils/FoldersCacheFactory.js +31 -0
  428. package/utils/FoldersCacheFactory.js.map +1 -0
  429. package/utils/ListCache.d.ts +23 -0
  430. package/utils/ListCache.js +31 -0
  431. package/utils/ListCache.js.map +1 -0
  432. package/utils/ListFoldersRepository.d.ts +10 -0
  433. package/utils/ListFoldersRepository.js +35 -0
  434. package/utils/ListFoldersRepository.js.map +1 -0
  435. package/utils/Path.d.ts +3 -0
  436. package/utils/Path.js +18 -0
  437. package/utils/Path.js.map +1 -0
  438. package/utils/acoRecordId.d.ts +6 -0
  439. package/utils/acoRecordId.js +35 -0
  440. package/utils/acoRecordId.js.map +1 -0
  441. package/utils/compress.d.ts +4 -0
  442. package/utils/compress.js +19 -0
  443. package/utils/compress.js.map +1 -0
  444. package/utils/createListSort.d.ts +3 -0
  445. package/utils/createListSort.js +17 -0
  446. package/utils/createListSort.js.map +1 -0
  447. package/utils/createModelField.d.ts +1 -2
  448. package/utils/createModelField.js +5 -5
  449. package/utils/createModelField.js.map +1 -1
  450. package/utils/createOperationsWrapper.d.ts +9 -0
  451. package/utils/createOperationsWrapper.js +27 -0
  452. package/utils/createOperationsWrapper.js.map +1 -0
  453. package/utils/decorators/CmsEntriesCrudDecorators.d.ts +11 -0
  454. package/utils/decorators/CmsEntriesCrudDecorators.js +210 -0
  455. package/utils/decorators/CmsEntriesCrudDecorators.js.map +1 -0
  456. package/utils/decorators/FilterEntriesByFolderFactory.d.ts +7 -0
  457. package/utils/decorators/FilterEntriesByFolderFactory.js +30 -0
  458. package/utils/decorators/FilterEntriesByFolderFactory.js.map +1 -0
  459. package/utils/decorators/ListEntriesFactory.d.ts +16 -0
  460. package/utils/decorators/ListEntriesFactory.js +107 -0
  461. package/utils/decorators/ListEntriesFactory.js.map +1 -0
  462. package/utils/decorators/decorateIfModelAuthorizationEnabled.d.ts +23 -0
  463. package/utils/decorators/decorateIfModelAuthorizationEnabled.js +54 -0
  464. package/utils/decorators/decorateIfModelAuthorizationEnabled.js.map +1 -0
  465. package/utils/decorators/hasRootFolderId.d.ts +7 -0
  466. package/utils/decorators/hasRootFolderId.js +27 -0
  467. package/utils/decorators/hasRootFolderId.js.map +1 -0
  468. package/utils/decorators/isPageModel.d.ts +5 -0
  469. package/utils/decorators/isPageModel.js +20 -0
  470. package/utils/decorators/isPageModel.js.map +1 -0
  471. package/utils/ensureAuthentication.d.ts +2 -0
  472. package/utils/ensureAuthentication.js +16 -0
  473. package/utils/ensureAuthentication.js.map +1 -0
  474. package/utils/modelFactory.d.ts +2 -4
  475. package/utils/modelFactory.js +7 -8
  476. package/utils/modelFactory.js.map +1 -1
  477. package/utils/pickEntryFieldValues.d.ts +3 -0
  478. package/utils/pickEntryFieldValues.js +30 -0
  479. package/utils/pickEntryFieldValues.js.map +1 -0
  480. package/utils/resolve.d.ts +2 -1
  481. package/utils/resolve.js +13 -2
  482. package/utils/resolve.js.map +1 -1
  483. package/createAcoCrud.d.ts +0 -2
  484. package/createAcoCrud.js +0 -17
  485. package/createAcoCrud.js.map +0 -1
  486. package/createAcoFields.d.ts +0 -2
  487. package/createAcoFields.js +0 -40
  488. package/createAcoFields.js.map +0 -1
  489. package/folder/onFolderBeforeDelete.hook.d.ts +0 -2
  490. package/folder/onFolderBeforeDelete.hook.js +0 -53
  491. package/folder/onFolderBeforeDelete.hook.js.map +0 -1
  492. package/utils/fieldResolver.d.ts +0 -16
  493. package/utils/fieldResolver.js +0 -44
  494. package/utils/fieldResolver.js.map +0 -1
  495. package/utils/getFieldValues.d.ts +0 -2
  496. package/utils/getFieldValues.js +0 -12
  497. package/utils/getFieldValues.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
@@ -3,24 +3,12 @@
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
5
  });
6
- exports.createSearchModelDefinition = exports.SEARCH_RECORD_MODEL_ID = void 0;
6
+ exports.createSearchModel = exports.SEARCH_RECORD_MODEL_ID = exports.DEFAULT_FIELDS = void 0;
7
7
  var _createModelField = require("../utils/createModelField");
8
- const originalIdField = () => (0, _createModelField.createModelField)({
9
- label: "Original Id",
10
- type: "text",
11
- parent: "searchRecord",
12
- validation: [{
13
- name: "required",
14
- message: "Value is required."
15
- }, {
16
- name: "unique",
17
- message: "Value must be unique."
18
- }]
19
- });
8
+ var _apiHeadlessCms = require("@webiny/api-headless-cms");
20
9
  const typeField = () => (0, _createModelField.createModelField)({
21
10
  label: "Type",
22
11
  type: "text",
23
- parent: "searchRecord",
24
12
  validation: [{
25
13
  name: "required",
26
14
  message: "Value is required."
@@ -29,18 +17,23 @@ const typeField = () => (0, _createModelField.createModelField)({
29
17
  const titleField = () => (0, _createModelField.createModelField)({
30
18
  label: "Title",
31
19
  type: "text",
32
- parent: "searchRecord"
20
+ validation: [{
21
+ name: "required",
22
+ message: "Value is required."
23
+ }]
33
24
  });
34
25
  const contentField = () => (0, _createModelField.createModelField)({
35
26
  label: "Content",
36
- type: "text",
37
- parent: "searchRecord"
27
+ type: "text"
38
28
  });
39
29
  const locationField = fields => (0, _createModelField.createModelField)({
40
30
  label: "Location",
41
31
  type: "object",
42
- parent: "searchRecord",
43
32
  multipleValues: false,
33
+ validation: [{
34
+ name: "required",
35
+ message: "The location field must be populated."
36
+ }],
44
37
  settings: {
45
38
  fields
46
39
  }
@@ -48,28 +41,51 @@ const locationField = fields => (0, _createModelField.createModelField)({
48
41
  const locationFolderIdField = () => (0, _createModelField.createModelField)({
49
42
  label: "Folder Id",
50
43
  type: "text",
51
- parent: "searchRecord Location",
52
44
  validation: [{
53
45
  name: "required",
54
46
  message: "Value is required."
55
47
  }]
56
48
  });
57
- const dataField = () => (0, _createModelField.createModelField)({
58
- label: "Data",
59
- type: "wby-aco-json",
60
- parent: "searchRecord"
49
+ const dataField = fields => {
50
+ return (0, _createModelField.createModelField)({
51
+ label: "Data",
52
+ type: "object",
53
+ multipleValues: false,
54
+ validation: [{
55
+ name: "required",
56
+ message: "The data field must be populated."
57
+ }],
58
+ settings: {
59
+ fields
60
+ }
61
+ });
62
+ };
63
+ const tagsField = () => (0, _createModelField.createModelField)({
64
+ label: "Tags",
65
+ type: "text",
66
+ multipleValues: true,
67
+ validation: [{
68
+ name: "required",
69
+ message: "The tags field must be populated."
70
+ }]
61
71
  });
62
- const SEARCH_RECORD_MODEL_ID = "acoSearchRecordModelDefinition";
63
- exports.SEARCH_RECORD_MODEL_ID = SEARCH_RECORD_MODEL_ID;
64
- const createSearchModelDefinition = () => {
65
- return {
72
+ const SEARCH_RECORD_MODEL_ID = exports.SEARCH_RECORD_MODEL_ID = "acoSearchRecord";
73
+ const DEFAULT_FIELDS = exports.DEFAULT_FIELDS = ["type", "title", "content", "location", "data", "tags"];
74
+ const createSearchModel = params => {
75
+ return (0, _apiHeadlessCms.createPrivateModel)({
66
76
  name: "ACO - Search Record",
67
77
  modelId: SEARCH_RECORD_MODEL_ID,
68
- titleFieldId: "originalId",
69
- layout: [["searchRecord_originalId"], ["searchRecord_type"], ["searchRecord_title"], ["searchRecord_content"], ["searchRecord_location"], ["searchRecord_data"]],
70
- fields: [originalIdField(), typeField(), titleField(), contentField(), locationField([locationFolderIdField()]), dataField()],
71
- description: "ACO - Search record model",
72
- isPrivate: true
73
- };
78
+ titleFieldId: "title",
79
+ authorization: {
80
+ // Disables base permission checks, but leaves FLP checks enabled.
81
+ permissions: false
82
+
83
+ // We're leaving FLP enabled (no need to set `flp: true`).
84
+ // flp: true
85
+ },
86
+ fields: [typeField(), titleField(), contentField(), locationField([locationFolderIdField()]), dataField(params?.fields), tagsField()]
87
+ });
74
88
  };
75
- exports.createSearchModelDefinition = createSearchModelDefinition;
89
+ exports.createSearchModel = createSearchModel;
90
+
91
+ //# sourceMappingURL=record.model.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["originalIdField","createModelField","label","type","parent","validation","name","message","typeField","titleField","contentField","locationField","fields","multipleValues","settings","locationFolderIdField","dataField","SEARCH_RECORD_MODEL_ID","createSearchModelDefinition","modelId","titleFieldId","layout","description","isPrivate"],"sources":["record.model.ts"],"sourcesContent":["import { CmsModel, CmsModelField } from \"@webiny/api-headless-cms/types\";\n\nimport { createModelField } from \"~/utils/createModelField\";\n\nexport type SearchRecordModelDefinition = Pick<\n CmsModel,\n \"name\" | \"modelId\" | \"layout\" | \"titleFieldId\" | \"description\" | \"fields\" | \"isPrivate\"\n>;\n\nconst originalIdField = () =>\n createModelField({\n label: \"Original Id\",\n type: \"text\",\n parent: \"searchRecord\",\n validation: [\n {\n name: \"required\",\n message: \"Value is required.\"\n },\n {\n name: \"unique\",\n message: \"Value must be unique.\"\n }\n ]\n });\n\nconst typeField = () =>\n createModelField({\n label: \"Type\",\n type: \"text\",\n parent: \"searchRecord\",\n validation: [\n {\n name: \"required\",\n message: \"Value is required.\"\n }\n ]\n });\n\nconst titleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n parent: \"searchRecord\"\n });\n\nconst contentField = () =>\n createModelField({\n label: \"Content\",\n type: \"text\",\n parent: \"searchRecord\"\n });\n\nconst locationField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Location\",\n type: \"object\",\n parent: \"searchRecord\",\n multipleValues: false,\n settings: { fields }\n });\n\nconst locationFolderIdField = () =>\n createModelField({\n label: \"Folder Id\",\n type: \"text\",\n parent: \"searchRecord Location\",\n validation: [\n {\n name: \"required\",\n message: \"Value is required.\"\n }\n ]\n });\n\nconst dataField = () =>\n createModelField({\n label: \"Data\",\n type: \"wby-aco-json\",\n parent: \"searchRecord\"\n });\n\nexport const SEARCH_RECORD_MODEL_ID = \"acoSearchRecordModelDefinition\";\n\nexport const createSearchModelDefinition = (): SearchRecordModelDefinition => {\n return {\n name: \"ACO - Search Record\",\n modelId: SEARCH_RECORD_MODEL_ID,\n titleFieldId: \"originalId\",\n layout: [\n [\"searchRecord_originalId\"],\n [\"searchRecord_type\"],\n [\"searchRecord_title\"],\n [\"searchRecord_content\"],\n [\"searchRecord_location\"],\n [\"searchRecord_data\"]\n ],\n fields: [\n originalIdField(),\n typeField(),\n titleField(),\n contentField(),\n locationField([locationFolderIdField()]),\n dataField()\n ],\n description: \"ACO - Search record model\",\n isPrivate: true\n };\n};\n"],"mappings":";;;;;;AAEA;AAOA,MAAMA,eAAe,GAAG,MACpB,IAAAC,kCAAgB,EAAC;EACbC,KAAK,EAAE,aAAa;EACpBC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE,cAAc;EACtBC,UAAU,EAAE,CACR;IACIC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE;EACb,CAAC,EACD;IACID,IAAI,EAAE,QAAQ;IACdC,OAAO,EAAE;EACb,CAAC;AAET,CAAC,CAAC;AAEN,MAAMC,SAAS,GAAG,MACd,IAAAP,kCAAgB,EAAC;EACbC,KAAK,EAAE,MAAM;EACbC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE,cAAc;EACtBC,UAAU,EAAE,CACR;IACIC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE;EACb,CAAC;AAET,CAAC,CAAC;AAEN,MAAME,UAAU,GAAG,MACf,IAAAR,kCAAgB,EAAC;EACbC,KAAK,EAAE,OAAO;EACdC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE;AACZ,CAAC,CAAC;AAEN,MAAMM,YAAY,GAAG,MACjB,IAAAT,kCAAgB,EAAC;EACbC,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE;AACZ,CAAC,CAAC;AAEN,MAAMO,aAAa,GAAIC,MAAuB,IAC1C,IAAAX,kCAAgB,EAAC;EACbC,KAAK,EAAE,UAAU;EACjBC,IAAI,EAAE,QAAQ;EACdC,MAAM,EAAE,cAAc;EACtBS,cAAc,EAAE,KAAK;EACrBC,QAAQ,EAAE;IAAEF;EAAO;AACvB,CAAC,CAAC;AAEN,MAAMG,qBAAqB,GAAG,MAC1B,IAAAd,kCAAgB,EAAC;EACbC,KAAK,EAAE,WAAW;EAClBC,IAAI,EAAE,MAAM;EACZC,MAAM,EAAE,uBAAuB;EAC/BC,UAAU,EAAE,CACR;IACIC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE;EACb,CAAC;AAET,CAAC,CAAC;AAEN,MAAMS,SAAS,GAAG,MACd,IAAAf,kCAAgB,EAAC;EACbC,KAAK,EAAE,MAAM;EACbC,IAAI,EAAE,cAAc;EACpBC,MAAM,EAAE;AACZ,CAAC,CAAC;AAEC,MAAMa,sBAAsB,GAAG,gCAAgC;AAAC;AAEhE,MAAMC,2BAA2B,GAAG,MAAmC;EAC1E,OAAO;IACHZ,IAAI,EAAE,qBAAqB;IAC3Ba,OAAO,EAAEF,sBAAsB;IAC/BG,YAAY,EAAE,YAAY;IAC1BC,MAAM,EAAE,CACJ,CAAC,yBAAyB,CAAC,EAC3B,CAAC,mBAAmB,CAAC,EACrB,CAAC,oBAAoB,CAAC,EACtB,CAAC,sBAAsB,CAAC,EACxB,CAAC,uBAAuB,CAAC,EACzB,CAAC,mBAAmB,CAAC,CACxB;IACDT,MAAM,EAAE,CACJZ,eAAe,EAAE,EACjBQ,SAAS,EAAE,EACXC,UAAU,EAAE,EACZC,YAAY,EAAE,EACdC,aAAa,CAAC,CAACI,qBAAqB,EAAE,CAAC,CAAC,EACxCC,SAAS,EAAE,CACd;IACDM,WAAW,EAAE,2BAA2B;IACxCC,SAAS,EAAE;EACf,CAAC;AACL,CAAC;AAAC"}
1
+ {"version":3,"names":["_createModelField","require","_apiHeadlessCms","typeField","createModelField","label","type","validation","name","message","titleField","contentField","locationField","fields","multipleValues","settings","locationFolderIdField","dataField","tagsField","SEARCH_RECORD_MODEL_ID","exports","DEFAULT_FIELDS","createSearchModel","params","createPrivateModel","modelId","titleFieldId","authorization","permissions"],"sources":["record.model.ts"],"sourcesContent":["import type { CmsModelField } from \"@webiny/api-headless-cms/types\";\nimport { createModelField } from \"~/utils/createModelField\";\nimport { createPrivateModel } from \"@webiny/api-headless-cms\";\n\nconst typeField = () =>\n createModelField({\n label: \"Type\",\n type: \"text\",\n validation: [\n {\n name: \"required\",\n message: \"Value is required.\"\n }\n ]\n });\n\nconst titleField = () =>\n createModelField({\n label: \"Title\",\n type: \"text\",\n validation: [\n {\n name: \"required\",\n message: \"Value is required.\"\n }\n ]\n });\n\nconst contentField = () =>\n createModelField({\n label: \"Content\",\n type: \"text\"\n });\n\nconst locationField = (fields: CmsModelField[]) =>\n createModelField({\n label: \"Location\",\n type: \"object\",\n multipleValues: false,\n validation: [\n {\n name: \"required\",\n message: \"The location field must be populated.\"\n }\n ],\n settings: {\n fields\n }\n });\n\nconst locationFolderIdField = () =>\n createModelField({\n label: \"Folder Id\",\n type: \"text\",\n validation: [\n {\n name: \"required\",\n message: \"Value is required.\"\n }\n ]\n });\n\nconst dataField = (fields?: CmsModelField[]) => {\n return createModelField({\n label: \"Data\",\n type: \"object\",\n multipleValues: false,\n validation: [\n {\n name: \"required\",\n message: \"The data field must be populated.\"\n }\n ],\n settings: {\n fields\n }\n });\n};\n\nconst tagsField = () =>\n createModelField({\n label: \"Tags\",\n type: \"text\",\n multipleValues: true,\n validation: [\n {\n name: \"required\",\n message: \"The tags field must be populated.\"\n }\n ]\n });\n\nexport const SEARCH_RECORD_MODEL_ID = \"acoSearchRecord\";\n\ninterface CreateSearchModelParams {\n fields?: CmsModelField[];\n}\n\nexport const DEFAULT_FIELDS = [\"type\", \"title\", \"content\", \"location\", \"data\", \"tags\"];\n\nexport const createSearchModel = (params?: CreateSearchModelParams) => {\n return createPrivateModel({\n name: \"ACO - Search Record\",\n modelId: SEARCH_RECORD_MODEL_ID,\n titleFieldId: \"title\",\n authorization: {\n // Disables base permission checks, but leaves FLP checks enabled.\n permissions: false\n\n // We're leaving FLP enabled (no need to set `flp: true`).\n // flp: true\n },\n fields: [\n typeField(),\n titleField(),\n contentField(),\n locationField([locationFolderIdField()]),\n dataField(params?.fields),\n tagsField()\n ]\n });\n};\n"],"mappings":";;;;;;AACA,IAAAA,iBAAA,GAAAC,OAAA;AACA,IAAAC,eAAA,GAAAD,OAAA;AAEA,MAAME,SAAS,GAAGA,CAAA,KACd,IAAAC,kCAAgB,EAAC;EACbC,KAAK,EAAE,MAAM;EACbC,IAAI,EAAE,MAAM;EACZC,UAAU,EAAE,CACR;IACIC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE;EACb,CAAC;AAET,CAAC,CAAC;AAEN,MAAMC,UAAU,GAAGA,CAAA,KACf,IAAAN,kCAAgB,EAAC;EACbC,KAAK,EAAE,OAAO;EACdC,IAAI,EAAE,MAAM;EACZC,UAAU,EAAE,CACR;IACIC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE;EACb,CAAC;AAET,CAAC,CAAC;AAEN,MAAME,YAAY,GAAGA,CAAA,KACjB,IAAAP,kCAAgB,EAAC;EACbC,KAAK,EAAE,SAAS;EAChBC,IAAI,EAAE;AACV,CAAC,CAAC;AAEN,MAAMM,aAAa,GAAIC,MAAuB,IAC1C,IAAAT,kCAAgB,EAAC;EACbC,KAAK,EAAE,UAAU;EACjBC,IAAI,EAAE,QAAQ;EACdQ,cAAc,EAAE,KAAK;EACrBP,UAAU,EAAE,CACR;IACIC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE;EACb,CAAC,CACJ;EACDM,QAAQ,EAAE;IACNF;EACJ;AACJ,CAAC,CAAC;AAEN,MAAMG,qBAAqB,GAAGA,CAAA,KAC1B,IAAAZ,kCAAgB,EAAC;EACbC,KAAK,EAAE,WAAW;EAClBC,IAAI,EAAE,MAAM;EACZC,UAAU,EAAE,CACR;IACIC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE;EACb,CAAC;AAET,CAAC,CAAC;AAEN,MAAMQ,SAAS,GAAIJ,MAAwB,IAAK;EAC5C,OAAO,IAAAT,kCAAgB,EAAC;IACpBC,KAAK,EAAE,MAAM;IACbC,IAAI,EAAE,QAAQ;IACdQ,cAAc,EAAE,KAAK;IACrBP,UAAU,EAAE,CACR;MACIC,IAAI,EAAE,UAAU;MAChBC,OAAO,EAAE;IACb,CAAC,CACJ;IACDM,QAAQ,EAAE;MACNF;IACJ;EACJ,CAAC,CAAC;AACN,CAAC;AAED,MAAMK,SAAS,GAAGA,CAAA,KACd,IAAAd,kCAAgB,EAAC;EACbC,KAAK,EAAE,MAAM;EACbC,IAAI,EAAE,MAAM;EACZQ,cAAc,EAAE,IAAI;EACpBP,UAAU,EAAE,CACR;IACIC,IAAI,EAAE,UAAU;IAChBC,OAAO,EAAE;EACb,CAAC;AAET,CAAC,CAAC;AAEC,MAAMU,sBAAsB,GAAAC,OAAA,CAAAD,sBAAA,GAAG,iBAAiB;AAMhD,MAAME,cAAc,GAAAD,OAAA,CAAAC,cAAA,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,CAAC;AAE/E,MAAMC,iBAAiB,GAAIC,MAAgC,IAAK;EACnE,OAAO,IAAAC,kCAAkB,EAAC;IACtBhB,IAAI,EAAE,qBAAqB;IAC3BiB,OAAO,EAAEN,sBAAsB;IAC/BO,YAAY,EAAE,OAAO;IACrBC,aAAa,EAAE;MACX;MACAC,WAAW,EAAE;;MAEb;MACA;IACJ,CAAC;IACDf,MAAM,EAAE,CACJV,SAAS,CAAC,CAAC,EACXO,UAAU,CAAC,CAAC,EACZC,YAAY,CAAC,CAAC,EACdC,aAAa,CAAC,CAACI,qBAAqB,CAAC,CAAC,CAAC,CAAC,EACxCC,SAAS,CAACM,MAAM,EAAEV,MAAM,CAAC,EACzBK,SAAS,CAAC,CAAC;EAEnB,CAAC,CAAC;AACN,CAAC;AAACE,OAAA,CAAAE,iBAAA,GAAAA,iBAAA","ignoreList":[]}
@@ -1,8 +1,3 @@
1
- import { CmsModel } from "@webiny/api-headless-cms/types";
2
- import { CreateAcoStorageOperationsParams } from "../createAcoStorageOperations";
3
- import { AcoSearchRecordStorageOperations as BaseAcoSearchRecordStorageOperations } from "./record.types";
4
- interface AcoSearchRecordStorageOperations extends BaseAcoSearchRecordStorageOperations {
5
- getRecordModel(): Promise<CmsModel>;
6
- }
1
+ import type { CreateAcoStorageOperationsParams } from "../createAcoStorageOperations";
2
+ import type { AcoSearchRecordStorageOperations } from "./record.types";
7
3
  export declare const createSearchRecordOperations: (params: CreateAcoStorageOperationsParams) => AcoSearchRecordStorageOperations;
8
- export {};
@@ -5,96 +5,167 @@ Object.defineProperty(exports, "__esModule", {
5
5
  value: true
6
6
  });
7
7
  exports.createSearchRecordOperations = void 0;
8
- var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
8
+ var _omit = _interopRequireDefault(require("lodash/omit"));
9
9
  var _error = _interopRequireDefault(require("@webiny/error"));
10
+ var _pickEntryFieldValues = require("../utils/pickEntryFieldValues");
11
+ var _acoRecordId = require("../utils/acoRecordId");
10
12
  var _record = require("./record.model");
11
- var _createAcoStorageOperations = require("../createAcoStorageOperations");
12
- var _getFieldValues = require("../utils/getFieldValues");
13
+ var _constants = require("@webiny/api-headless-cms/constants");
13
14
  const createSearchRecordOperations = params => {
14
15
  const {
15
- cms,
16
- security
16
+ cms
17
17
  } = params;
18
- const getRecordModel = async () => {
19
- security.disableAuthorization();
20
- const model = await cms.getModel(_record.SEARCH_RECORD_MODEL_ID);
21
- security.enableAuthorization();
22
- if (!model) {
23
- throw new _error.default(`Could not find "${_record.SEARCH_RECORD_MODEL_ID}" model.`, "MODEL_NOT_FOUND_ERROR");
24
- }
25
- return model;
26
- };
27
- const getRecord = async ({
28
- id
29
- }) => {
30
- const model = await getRecordModel();
31
- security.disableAuthorization();
32
-
18
+ const getRecord = async (model, id) => {
33
19
  /**
34
- * The record "id" is generated on creation.
35
- * Still, we need to get/update/delete records by the original entry id.
20
+ * The record "id" has been passed by the original entry.
21
+ * We need to retrieve it via `cms.storageOperations.entries.getLatestByIds()` method and return the first one.
36
22
  */
37
- const entry = await cms.getEntry(model, {
38
- where: {
39
- originalId: id,
40
- latest: true
41
- }
23
+ const revisions = await cms.storageOperations.entries.getLatestByIds(model, {
24
+ ids: [(0, _acoRecordId.attachAcoRecordPrefix)(id)]
42
25
  });
43
- if (!entry) {
44
- throw new _error.default("Could not load record.", "GET_ENTRY_ERROR", {
26
+ if (revisions.length === 0) {
27
+ throw new _error.default("Record not found.", "NOT_FOUND", {
45
28
  id
46
29
  });
47
30
  }
48
- security.enableAuthorization();
49
- return (0, _getFieldValues.getFieldValues)(entry, _createAcoStorageOperations.baseFields);
31
+ return revisions[0];
50
32
  };
51
33
  return {
52
- getRecordModel,
53
- getRecord,
54
- async listRecords(params) {
55
- const model = await getRecordModel();
56
- security.disableAuthorization();
57
- const [entries, meta] = await cms.listLatestEntries(model, (0, _objectSpread2.default)((0, _objectSpread2.default)({}, params), {}, {
58
- where: (0, _objectSpread2.default)({}, params.where || {})
59
- }));
60
- security.enableAuthorization();
61
- return [entries.map(entry => (0, _getFieldValues.getFieldValues)(entry, _createAcoStorageOperations.baseFields)), meta];
34
+ async getRecord(model, {
35
+ id
36
+ }) {
37
+ const record = await getRecord(model, id);
38
+ return (0, _pickEntryFieldValues.pickEntryFieldValues)(record);
62
39
  },
63
- async createRecord({
64
- data
40
+ async listRecords(model, params) {
41
+ const {
42
+ sort,
43
+ where
44
+ } = params;
45
+ const [entries, meta] = await cms.listLatestEntries(model, {
46
+ ...params,
47
+ sort,
48
+ where: {
49
+ ...(where || {})
50
+ }
51
+ });
52
+ const items = entries.map(_pickEntryFieldValues.pickEntryFieldValues);
53
+ return [items, meta];
54
+ },
55
+ async listTags(model, params) {
56
+ const {
57
+ where
58
+ } = params;
59
+ const items = await cms.getUniqueFieldValues(model, {
60
+ where: {
61
+ ...(where || {}),
62
+ latest: true
63
+ },
64
+ fieldId: "tags"
65
+ });
66
+ const meta = {
67
+ hasMoreItems: false,
68
+ totalCount: items.length,
69
+ cursor: null
70
+ };
71
+ const tags = items.map(item => {
72
+ return {
73
+ tag: item.value,
74
+ count: item.count
75
+ };
76
+ });
77
+ return [tags, meta];
78
+ },
79
+ async createRecord(model, {
80
+ data: searchRecordData
65
81
  }) {
66
- const model = await getRecordModel();
67
- security.disableAuthorization();
68
- const entry = await cms.createEntry(model, data);
69
- security.enableAuthorization();
70
- return (0, _getFieldValues.getFieldValues)(entry, _createAcoStorageOperations.baseFields);
82
+ const {
83
+ tags = [],
84
+ data = {},
85
+ ...rest
86
+ } = searchRecordData;
87
+
88
+ // We added this so that if the main record has its meta fields set with
89
+ // custom values, we can propagate them to the search record as well.
90
+ const {
91
+ createdBy,
92
+ createdOn,
93
+ modifiedBy,
94
+ modifiedOn,
95
+ savedBy,
96
+ savedOn
97
+ } = (0, _constants.pickEntryMetaFields)(data);
98
+ const entry = await cms.createEntry(model, {
99
+ tags,
100
+ data,
101
+ ...rest,
102
+ createdBy,
103
+ createdOn,
104
+ modifiedBy,
105
+ modifiedOn,
106
+ savedBy,
107
+ savedOn,
108
+ revisionCreatedBy: createdBy,
109
+ revisionCreatedOn: createdOn,
110
+ revisionModifiedBy: modifiedBy,
111
+ revisionModifiedOn: modifiedOn,
112
+ revisionSavedBy: savedBy,
113
+ revisionSavedOn: savedOn,
114
+ id: (0, _acoRecordId.attachAcoRecordPrefix)(rest.id)
115
+ });
116
+ return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
71
117
  },
72
- async updateRecord({
118
+ async updateRecord(model, {
73
119
  id,
74
120
  data
75
121
  }) {
76
- const model = await getRecordModel();
77
- security.disableAuthorization();
78
- const original = await getRecord({
122
+ const original = await this.getRecord(model, {
79
123
  id
80
124
  });
81
- const input = (0, _objectSpread2.default)((0, _objectSpread2.default)({}, original), data);
82
- const entry = await cms.updateEntry(model, original.id, input);
83
- security.enableAuthorization();
84
- return (0, _getFieldValues.getFieldValues)(entry, _createAcoStorageOperations.baseFields);
125
+ const input = {
126
+ /**
127
+ * We are omitting the standard entry meta fields:
128
+ * we don't want to override them with the ones coming from the `original` entry.
129
+ */
130
+ ...(0, _omit.default)(original, _constants.ENTRY_META_FIELDS),
131
+ ...data
132
+ };
133
+ const entry = await cms.updateEntry(model, (0, _acoRecordId.attachAcoRecordPrefix)(original.id), input);
134
+ return (0, _pickEntryFieldValues.pickEntryFieldValues)(entry);
85
135
  },
86
- async deleteRecord({
87
- id
88
- }) {
89
- const model = await getRecordModel();
90
- security.disableAuthorization();
91
- const entry = await getRecord({
136
+ async moveRecord(model, params) {
137
+ const {
138
+ id,
139
+ folderId
140
+ } = params;
141
+ const original = await this.getRecord(model, {
92
142
  id
93
143
  });
94
- await cms.deleteEntry(model, entry.id);
95
- security.enableAuthorization();
144
+ const input = {
145
+ wbyAco_location: {
146
+ folderId
147
+ }
148
+ };
149
+ /**
150
+ * We only apply the location to the search record model as we do not want to override the users data.
151
+ */
152
+ const lookFor = `${_record.SEARCH_RECORD_MODEL_ID}-`;
153
+ if (model.modelId.substring(0, lookFor.length) === lookFor) {
154
+ input.location = {
155
+ folderId
156
+ };
157
+ }
158
+ await cms.updateEntry(model, (0, _acoRecordId.attachAcoRecordPrefix)(original.id), input);
159
+ return true;
160
+ },
161
+ async deleteRecord(model, {
162
+ id
163
+ }) {
164
+ await cms.deleteEntry(model, (0, _acoRecordId.attachAcoRecordPrefix)(id));
96
165
  return true;
97
166
  }
98
167
  };
99
168
  };
100
- exports.createSearchRecordOperations = createSearchRecordOperations;
169
+ exports.createSearchRecordOperations = createSearchRecordOperations;
170
+
171
+ //# sourceMappingURL=record.so.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createSearchRecordOperations","params","cms","security","getRecordModel","disableAuthorization","model","getModel","SEARCH_RECORD_MODEL_ID","enableAuthorization","WebinyError","getRecord","id","entry","getEntry","where","originalId","latest","getFieldValues","baseFields","listRecords","entries","meta","listLatestEntries","map","createRecord","data","createEntry","updateRecord","original","input","updateEntry","deleteRecord","deleteEntry"],"sources":["record.so.ts"],"sourcesContent":["import { CmsModel } from \"@webiny/api-headless-cms/types\";\nimport WebinyError from \"@webiny/error\";\n\nimport { SEARCH_RECORD_MODEL_ID } from \"./record.model\";\nimport { baseFields, CreateAcoStorageOperationsParams } from \"~/createAcoStorageOperations\";\nimport { getFieldValues } from \"~/utils/getFieldValues\";\n\nimport { AcoSearchRecordStorageOperations as BaseAcoSearchRecordStorageOperations } from \"./record.types\";\n\ninterface AcoSearchRecordStorageOperations extends BaseAcoSearchRecordStorageOperations {\n getRecordModel(): Promise<CmsModel>;\n}\n\nexport const createSearchRecordOperations = (\n params: CreateAcoStorageOperationsParams\n): AcoSearchRecordStorageOperations => {\n const { cms, security } = params;\n const getRecordModel = async () => {\n security.disableAuthorization();\n const model = await cms.getModel(SEARCH_RECORD_MODEL_ID);\n security.enableAuthorization();\n if (!model) {\n throw new WebinyError(\n `Could not find \"${SEARCH_RECORD_MODEL_ID}\" model.`,\n \"MODEL_NOT_FOUND_ERROR\"\n );\n }\n return model;\n };\n\n const getRecord: AcoSearchRecordStorageOperations[\"getRecord\"] = async ({ id }) => {\n const model = await getRecordModel();\n security.disableAuthorization();\n\n /**\n * The record \"id\" is generated on creation.\n * Still, we need to get/update/delete records by the original entry id.\n */\n const entry = await cms.getEntry(model, { where: { originalId: id, latest: true } });\n\n if (!entry) {\n throw new WebinyError(\"Could not load record.\", \"GET_ENTRY_ERROR\", {\n id\n });\n }\n\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n };\n\n return {\n getRecordModel,\n getRecord,\n async listRecords(params) {\n const model = await getRecordModel();\n security.disableAuthorization();\n\n const [entries, meta] = await cms.listLatestEntries(model, {\n ...params,\n where: {\n ...(params.where || {})\n }\n });\n\n security.enableAuthorization();\n return [entries.map(entry => getFieldValues(entry, baseFields)), meta];\n },\n async createRecord({ data }) {\n const model = await getRecordModel();\n security.disableAuthorization();\n\n const entry = await cms.createEntry(model, data);\n\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n },\n async updateRecord({ id, data }) {\n const model = await getRecordModel();\n security.disableAuthorization();\n\n const original = await getRecord({ id });\n\n const input = {\n ...original,\n ...data\n };\n\n const entry = await cms.updateEntry(model, original.id, input);\n security.enableAuthorization();\n return getFieldValues(entry, baseFields);\n },\n async deleteRecord({ id }) {\n const model = await getRecordModel();\n security.disableAuthorization();\n\n const entry = await getRecord({ id });\n\n await cms.deleteEntry(model, entry.id);\n\n security.enableAuthorization();\n return true;\n }\n };\n};\n"],"mappings":"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"}
1
+ {"version":3,"names":["_omit","_interopRequireDefault","require","_error","_pickEntryFieldValues","_acoRecordId","_record","_constants","createSearchRecordOperations","params","cms","getRecord","model","id","revisions","storageOperations","entries","getLatestByIds","ids","attachAcoRecordPrefix","length","WebinyError","record","pickEntryFieldValues","listRecords","sort","where","meta","listLatestEntries","items","map","listTags","getUniqueFieldValues","latest","fieldId","hasMoreItems","totalCount","cursor","tags","item","tag","value","count","createRecord","data","searchRecordData","rest","createdBy","createdOn","modifiedBy","modifiedOn","savedBy","savedOn","pickEntryMetaFields","entry","createEntry","revisionCreatedBy","revisionCreatedOn","revisionModifiedBy","revisionModifiedOn","revisionSavedBy","revisionSavedOn","updateRecord","original","input","omit","ENTRY_META_FIELDS","updateEntry","moveRecord","folderId","wbyAco_location","lookFor","SEARCH_RECORD_MODEL_ID","modelId","substring","location","deleteRecord","deleteEntry","exports"],"sources":["record.so.ts"],"sourcesContent":["import omit from \"lodash/omit\";\nimport WebinyError from \"@webiny/error\";\nimport type { CreateAcoStorageOperationsParams } from \"~/createAcoStorageOperations\";\nimport { pickEntryFieldValues } from \"~/utils/pickEntryFieldValues\";\nimport type { AcoSearchRecordStorageOperations, SearchRecord } from \"./record.types\";\nimport type { CmsModel, UpdateCmsEntryInput } from \"@webiny/api-headless-cms/types\";\nimport { attachAcoRecordPrefix } from \"~/utils/acoRecordId\";\nimport { SEARCH_RECORD_MODEL_ID } from \"~/record/record.model\";\nimport { ENTRY_META_FIELDS, pickEntryMetaFields } from \"@webiny/api-headless-cms/constants\";\n\nexport const createSearchRecordOperations = (\n params: CreateAcoStorageOperationsParams\n): AcoSearchRecordStorageOperations => {\n const { cms } = params;\n\n const getRecord = async (model: CmsModel, id: string) => {\n /**\n * The record \"id\" has been passed by the original entry.\n * We need to retrieve it via `cms.storageOperations.entries.getLatestByIds()` method and return the first one.\n */\n const revisions = await cms.storageOperations.entries.getLatestByIds(model, {\n ids: [attachAcoRecordPrefix(id)]\n });\n\n if (revisions.length === 0) {\n throw new WebinyError(\"Record not found.\", \"NOT_FOUND\", {\n id\n });\n }\n\n return revisions[0];\n };\n\n return {\n async getRecord(model, { id }) {\n const record = await getRecord(model, id);\n return pickEntryFieldValues<SearchRecord<any>>(record);\n },\n async listRecords(model, params) {\n const { sort, where } = params;\n const [entries, meta] = await cms.listLatestEntries(model, {\n ...params,\n sort,\n where: {\n ...(where || {})\n }\n });\n\n const items = entries.map(pickEntryFieldValues<SearchRecord<any>>);\n\n return [items, meta];\n },\n async listTags(model, params) {\n const { where } = params;\n const items = await cms.getUniqueFieldValues(model, {\n where: {\n ...(where || {}),\n latest: true\n },\n fieldId: \"tags\"\n });\n\n const meta = {\n hasMoreItems: false,\n totalCount: items.length,\n cursor: null\n };\n\n const tags = items.map(item => {\n return {\n tag: item.value,\n count: item.count\n };\n });\n\n return [tags, meta];\n },\n async createRecord(model, { data: searchRecordData }) {\n const { tags = [], data = {}, ...rest } = searchRecordData;\n\n // We added this so that if the main record has its meta fields set with\n // custom values, we can propagate them to the search record as well.\n const { createdBy, createdOn, modifiedBy, modifiedOn, savedBy, savedOn } =\n pickEntryMetaFields(data);\n\n const entry = await cms.createEntry(model, {\n tags,\n data,\n ...rest,\n createdBy,\n createdOn,\n modifiedBy,\n modifiedOn,\n savedBy,\n savedOn,\n revisionCreatedBy: createdBy,\n revisionCreatedOn: createdOn,\n revisionModifiedBy: modifiedBy,\n revisionModifiedOn: modifiedOn,\n revisionSavedBy: savedBy,\n revisionSavedOn: savedOn,\n id: attachAcoRecordPrefix(rest.id)\n });\n\n return pickEntryFieldValues<SearchRecord<any>>(entry);\n },\n async updateRecord(this: AcoSearchRecordStorageOperations, model, { id, data }) {\n const original = await this.getRecord(model, { id });\n const input = {\n /**\n * We are omitting the standard entry meta fields:\n * we don't want to override them with the ones coming from the `original` entry.\n */\n ...omit(original, ENTRY_META_FIELDS),\n ...data\n };\n\n const entry = await cms.updateEntry(model, attachAcoRecordPrefix(original.id), input);\n\n return pickEntryFieldValues<SearchRecord<any>>(entry);\n },\n async moveRecord(this: AcoSearchRecordStorageOperations, model, params) {\n const { id, folderId } = params;\n const original = await this.getRecord(model, { id });\n\n const input: UpdateCmsEntryInput = {\n wbyAco_location: {\n folderId\n }\n };\n /**\n * We only apply the location to the search record model as we do not want to override the users data.\n */\n const lookFor = `${SEARCH_RECORD_MODEL_ID}-`;\n if (model.modelId.substring(0, lookFor.length) === lookFor) {\n input.location = {\n folderId\n };\n }\n\n await cms.updateEntry(model, attachAcoRecordPrefix(original.id), input);\n\n return true;\n },\n async deleteRecord(model, { id }) {\n await cms.deleteEntry(model, attachAcoRecordPrefix(id));\n return true;\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1,46 +1,63 @@
1
- import { AcoBaseFields, ListMeta } from "../types";
2
- import { Topic } from "@webiny/pubsub/types";
3
- export declare type GenericSearchData = {
1
+ import type { AcoBaseFields, ListMeta } from "../types";
2
+ import type { Topic } from "@webiny/pubsub/types";
3
+ import type { CmsEntryListSort, CmsModel } from "@webiny/api-headless-cms/types";
4
+ export type GenericSearchData = {
4
5
  [key: string]: any;
5
6
  };
6
7
  export interface Location {
7
8
  folderId: string;
8
9
  }
9
10
  export interface SearchRecord<TData extends GenericSearchData = GenericSearchData> extends AcoBaseFields {
10
- originalId: string;
11
11
  type: string;
12
- title?: string;
12
+ title: string;
13
13
  content?: string;
14
- location?: Location;
15
- data?: TData;
14
+ location: Location;
15
+ data: TData;
16
+ tags: string[];
17
+ }
18
+ export interface SearchRecordTag {
19
+ tag: string;
20
+ count: number;
16
21
  }
17
- export interface ListSearchRecordsWhere {
22
+ export interface ListSearchRecordsWhere<TData extends GenericSearchData = GenericSearchData> {
18
23
  type: string;
19
24
  location?: {
20
25
  folderId: string;
21
26
  };
27
+ tags_in?: string[];
28
+ tags_startsWith?: string;
29
+ tags_not_startsWith?: string;
30
+ data?: TData;
22
31
  }
23
32
  export interface ListSearchRecordsParams {
24
33
  where?: ListSearchRecordsWhere;
25
34
  search?: string;
26
- sort?: string[];
35
+ sort?: CmsEntryListSort;
27
36
  limit?: number;
28
37
  after?: string | null;
29
38
  }
30
- export declare type CreateSearchRecordParams<TData> = Pick<SearchRecord<TData>, "originalId" | "title" | "content" | "type" | "location" | "data">;
39
+ export type CreateSearchRecordParams<TData extends GenericSearchData = GenericSearchData> = Pick<SearchRecord<TData>, "id" | "title" | "content" | "type" | "location" | "data" | "tags">;
31
40
  export interface UpdateSearchRecordParams<TData extends GenericSearchData> {
32
41
  title?: string;
33
42
  content?: string;
34
43
  location?: Location;
35
44
  data?: TData;
45
+ tags?: string[];
36
46
  }
37
47
  export interface DeleteSearchRecordParams {
38
48
  id: string;
39
49
  }
50
+ export interface ListSearchRecordTagsWhere {
51
+ type: string;
52
+ }
53
+ export interface ListSearchRecordTagsParams {
54
+ where?: ListSearchRecordTagsWhere;
55
+ }
40
56
  export interface StorageOperationsGetSearchRecordParams {
41
57
  id: string;
42
58
  }
43
- export declare type StorageOperationsListSearchRecordsParams = ListSearchRecordsParams;
59
+ export type StorageOperationsListSearchRecordsParams = ListSearchRecordsParams;
60
+ export type StorageOperationsListSearchRecordTagsParams = ListSearchRecordTagsParams;
44
61
  export interface StorageOperationsCreateSearchRecordParams<TData extends GenericSearchData = GenericSearchData> {
45
62
  data: CreateSearchRecordParams<TData>;
46
63
  }
@@ -48,45 +65,80 @@ export interface StorageOperationsUpdateSearchRecordParams<TData extends Generic
48
65
  id: string;
49
66
  data: UpdateSearchRecordParams<TData>;
50
67
  }
51
- export declare type StorageOperationsDeleteSearchRecordParams = DeleteSearchRecordParams;
68
+ export interface StorageOperationsMoveSearchRecordParams {
69
+ id: string;
70
+ folderId?: string | null;
71
+ }
72
+ export type StorageOperationsDeleteSearchRecordParams = DeleteSearchRecordParams;
52
73
  export interface OnSearchRecordBeforeCreateTopicParams<TData extends GenericSearchData = GenericSearchData> {
74
+ model: CmsModel;
53
75
  input: CreateSearchRecordParams<TData>;
54
76
  }
55
77
  export interface OnSearchRecordAfterCreateTopicParams<TData extends GenericSearchData = GenericSearchData> {
78
+ model: CmsModel;
56
79
  record: SearchRecord<TData>;
57
80
  }
58
81
  export interface OnSearchRecordBeforeUpdateTopicParams<TData extends GenericSearchData = GenericSearchData> {
82
+ model: CmsModel;
59
83
  original: SearchRecord<TData>;
60
84
  input: Record<string, any>;
61
85
  }
86
+ export interface OnSearchRecordBeforeMoveTopicParams<TData extends GenericSearchData = GenericSearchData> {
87
+ model: CmsModel;
88
+ original: SearchRecord<TData>;
89
+ folderId?: string | null;
90
+ }
91
+ export interface OnSearchRecordAfterMoveTopicParams<TData extends GenericSearchData = GenericSearchData> {
92
+ model: CmsModel;
93
+ original: SearchRecord<TData>;
94
+ folderId?: string | null;
95
+ }
62
96
  export interface OnSearchRecordAfterUpdateTopicParams<TData extends GenericSearchData = GenericSearchData> {
97
+ model: CmsModel;
63
98
  original: SearchRecord<TData>;
64
99
  record: SearchRecord<TData>;
65
100
  input: Record<string, any>;
66
101
  }
67
102
  export interface OnSearchRecordBeforeDeleteTopicParams<TData extends GenericSearchData = GenericSearchData> {
103
+ model: CmsModel;
68
104
  record: SearchRecord<TData>;
69
105
  }
70
106
  export interface OnSearchRecordAfterDeleteTopicParams<TData extends GenericSearchData = GenericSearchData> {
107
+ model: CmsModel;
71
108
  record: SearchRecord<TData>;
72
109
  }
73
- export interface AcoSearchRecordCrud {
74
- get<TData>(id: string): Promise<SearchRecord<TData>>;
75
- list<TData>(params: ListSearchRecordsParams): Promise<[SearchRecord<TData>[], ListMeta]>;
76
- create<TData>(data: CreateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
77
- update<TData>(id: string, data: UpdateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
78
- delete(id: string): Promise<Boolean>;
110
+ export interface AcoSearchRecordCrudBase {
111
+ get<TData extends GenericSearchData = GenericSearchData>(id: string): Promise<SearchRecord<TData>>;
112
+ list<TData extends GenericSearchData = GenericSearchData>(params: ListSearchRecordsParams): Promise<[SearchRecord<TData>[], ListMeta]>;
113
+ listTags(params: ListSearchRecordTagsParams): Promise<[SearchRecordTag[], ListMeta]>;
114
+ create<TData extends GenericSearchData = GenericSearchData>(data: CreateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
115
+ update<TData extends GenericSearchData = GenericSearchData>(id: string, data: UpdateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
116
+ move(id: string, folderId?: string | null): Promise<boolean>;
117
+ delete(id: string): Promise<boolean>;
118
+ }
119
+ export interface AcoSearchRecordCrud extends Omit<AcoSearchRecordCrudBase, "get" | "list" | "create" | "update" | "delete" | "listTags" | "move"> {
120
+ get<TData extends GenericSearchData = GenericSearchData>(model: CmsModel, id: string): Promise<SearchRecord<TData>>;
121
+ list<TData extends GenericSearchData = GenericSearchData>(model: CmsModel, params: ListSearchRecordsParams): Promise<[SearchRecord<TData>[], ListMeta]>;
122
+ listTags(model: CmsModel, params: ListSearchRecordTagsParams): Promise<[SearchRecordTag[], ListMeta]>;
123
+ create<TData extends GenericSearchData = GenericSearchData>(model: CmsModel, data: CreateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
124
+ update<TData extends GenericSearchData = GenericSearchData>(model: CmsModel, id: string, data: UpdateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
125
+ move(model: CmsModel, id: string, folderId?: string | null): Promise<boolean>;
126
+ delete(model: CmsModel, id: string): Promise<boolean>;
79
127
  onSearchRecordBeforeCreate: Topic<OnSearchRecordBeforeCreateTopicParams>;
80
128
  onSearchRecordAfterCreate: Topic<OnSearchRecordAfterCreateTopicParams>;
81
129
  onSearchRecordBeforeUpdate: Topic<OnSearchRecordBeforeUpdateTopicParams>;
82
130
  onSearchRecordAfterUpdate: Topic<OnSearchRecordAfterUpdateTopicParams>;
131
+ onSearchRecordBeforeMove: Topic<OnSearchRecordBeforeMoveTopicParams>;
132
+ onSearchRecordAfterMove: Topic<OnSearchRecordAfterMoveTopicParams>;
83
133
  onSearchRecordBeforeDelete: Topic<OnSearchRecordBeforeDeleteTopicParams>;
84
134
  onSearchRecordAfterDelete: Topic<OnSearchRecordAfterDeleteTopicParams>;
85
135
  }
86
136
  export interface AcoSearchRecordStorageOperations {
87
- getRecord<TData extends GenericSearchData = GenericSearchData>(params: StorageOperationsGetSearchRecordParams): Promise<SearchRecord<TData>>;
88
- listRecords<TData extends GenericSearchData = GenericSearchData>(params: StorageOperationsListSearchRecordsParams): Promise<[SearchRecord<TData>[], ListMeta]>;
89
- createRecord<TData extends GenericSearchData = GenericSearchData>(params: StorageOperationsCreateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
90
- updateRecord<TData extends GenericSearchData = GenericSearchData>(params: StorageOperationsUpdateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
91
- deleteRecord(params: StorageOperationsDeleteSearchRecordParams): Promise<boolean>;
137
+ getRecord<TData extends GenericSearchData = GenericSearchData>(model: CmsModel, params: StorageOperationsGetSearchRecordParams): Promise<SearchRecord<TData>>;
138
+ listRecords<TData extends GenericSearchData = GenericSearchData>(model: CmsModel, params: StorageOperationsListSearchRecordsParams): Promise<[SearchRecord<TData>[], ListMeta]>;
139
+ listTags(model: CmsModel, params: StorageOperationsListSearchRecordTagsParams): Promise<[SearchRecordTag[], ListMeta]>;
140
+ createRecord<TData extends GenericSearchData = GenericSearchData>(model: CmsModel, params: StorageOperationsCreateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
141
+ updateRecord<TData extends GenericSearchData = GenericSearchData>(model: CmsModel, params: StorageOperationsUpdateSearchRecordParams<TData>): Promise<SearchRecord<TData>>;
142
+ moveRecord(model: CmsModel, params: StorageOperationsMoveSearchRecordParams): Promise<boolean>;
143
+ deleteRecord(model: CmsModel, params: StorageOperationsDeleteSearchRecordParams): Promise<boolean>;
92
144
  }
@@ -2,4 +2,6 @@
2
2
 
3
3
  Object.defineProperty(exports, "__esModule", {
4
4
  value: true
5
- });
5
+ });
6
+
7
+ //# sourceMappingURL=record.types.js.map