@comet/cms-api 9.0.0-beta.1 → 9.0.0-beta.3

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 (611) hide show
  1. package/lib/access-log/access-log.interceptor.d.ts.map +1 -1
  2. package/lib/access-log/access-log.interceptor.js +6 -6
  3. package/lib/access-log/access-log.interceptor.js.map +1 -1
  4. package/lib/auth/guards/comet.guard.d.ts.map +1 -1
  5. package/lib/auth/guards/comet.guard.js +48 -58
  6. package/lib/auth/guards/comet.guard.js.map +1 -1
  7. package/lib/auth/resolver/auth.resolver.js +16 -31
  8. package/lib/auth/resolver/auth.resolver.js.map +1 -1
  9. package/lib/auth/services/basic.auth-service.d.ts.map +1 -1
  10. package/lib/auth/services/basic.auth-service.js +11 -7
  11. package/lib/auth/services/basic.auth-service.js.map +1 -1
  12. package/lib/auth/services/jwt.auth-service.d.ts.map +1 -1
  13. package/lib/auth/services/jwt.auth-service.js +51 -73
  14. package/lib/auth/services/jwt.auth-service.js.map +1 -1
  15. package/lib/auth/services/site-preview.auth-service.d.ts.map +1 -1
  16. package/lib/auth/services/site-preview.auth-service.js +23 -33
  17. package/lib/auth/services/site-preview.auth-service.js.map +1 -1
  18. package/lib/auth/util/auth-guard.providers.d.ts +2 -2
  19. package/lib/auth/util/auth-guard.providers.d.ts.map +1 -1
  20. package/lib/auth/util/auth-service.interface.d.ts +2 -2
  21. package/lib/auth/util/auth-service.interface.d.ts.map +1 -1
  22. package/lib/blob-storage/backends/azure/blob-storage-azure.storage.d.ts +3 -2
  23. package/lib/blob-storage/backends/azure/blob-storage-azure.storage.d.ts.map +1 -1
  24. package/lib/blob-storage/backends/azure/blob-storage-azure.storage.js +73 -94
  25. package/lib/blob-storage/backends/azure/blob-storage-azure.storage.js.map +1 -1
  26. package/lib/blob-storage/backends/blob-storage-backend.interface.d.ts +2 -1
  27. package/lib/blob-storage/backends/blob-storage-backend.interface.d.ts.map +1 -1
  28. package/lib/blob-storage/backends/blob-storage-backend.service.d.ts +5 -2
  29. package/lib/blob-storage/backends/blob-storage-backend.service.d.ts.map +1 -1
  30. package/lib/blob-storage/backends/blob-storage-backend.service.js +79 -79
  31. package/lib/blob-storage/backends/blob-storage-backend.service.js.map +1 -1
  32. package/lib/blob-storage/backends/file/blob-storage-file.storage.d.ts +3 -2
  33. package/lib/blob-storage/backends/file/blob-storage-file.storage.d.ts.map +1 -1
  34. package/lib/blob-storage/backends/file/blob-storage-file.storage.js +77 -95
  35. package/lib/blob-storage/backends/file/blob-storage-file.storage.js.map +1 -1
  36. package/lib/blob-storage/backends/s3/blob-storage-s3.config.d.ts +1 -1
  37. package/lib/blob-storage/backends/s3/blob-storage-s3.config.d.ts.map +1 -1
  38. package/lib/blob-storage/backends/s3/blob-storage-s3.storage.d.ts +3 -2
  39. package/lib/blob-storage/backends/s3/blob-storage-s3.storage.d.ts.map +1 -1
  40. package/lib/blob-storage/backends/s3/blob-storage-s3.storage.js +112 -116
  41. package/lib/blob-storage/backends/s3/blob-storage-s3.storage.js.map +1 -1
  42. package/lib/blob-storage/blob-storage.config.d.ts +3 -3
  43. package/lib/blob-storage/blob-storage.config.d.ts.map +1 -1
  44. package/lib/blob-storage/cache/dto/file-cache.interface.d.ts +1 -1
  45. package/lib/blob-storage/cache/dto/file-cache.interface.d.ts.map +1 -1
  46. package/lib/blob-storage/cache/scaled-images-cache.service.js +38 -53
  47. package/lib/blob-storage/cache/scaled-images-cache.service.js.map +1 -1
  48. package/lib/blocks/SpaceBlock/migrations/MigrationTo1.d.ts +1 -1
  49. package/lib/blocks/SpaceBlock/migrations/MigrationTo1.d.ts.map +1 -1
  50. package/lib/blocks/SpaceBlock/migrations/MigrationTo1.js +4 -1
  51. package/lib/blocks/SpaceBlock/migrations/MigrationTo1.js.map +1 -1
  52. package/lib/blocks/SpaceBlock/migrations/MigrationTo2.d.ts +1 -1
  53. package/lib/blocks/SpaceBlock/migrations/MigrationTo2.d.ts.map +1 -1
  54. package/lib/blocks/SpaceBlock/migrations/MigrationTo2.js +1 -12
  55. package/lib/blocks/SpaceBlock/migrations/MigrationTo2.js.map +1 -1
  56. package/lib/blocks/YouTubeVideoBlock/migrations/1-remove-aspect-ratio.migration.d.ts +1 -1
  57. package/lib/blocks/YouTubeVideoBlock/migrations/1-remove-aspect-ratio.migration.d.ts.map +1 -1
  58. package/lib/blocks/YouTubeVideoBlock/migrations/1-remove-aspect-ratio.migration.js +2 -14
  59. package/lib/blocks/YouTubeVideoBlock/migrations/1-remove-aspect-ratio.migration.js.map +1 -1
  60. package/lib/blocks/YouTubeVideoBlock/migrations/2-add-preview-image.migration.d.ts +1 -1
  61. package/lib/blocks/YouTubeVideoBlock/migrations/2-add-preview-image.migration.d.ts.map +1 -1
  62. package/lib/blocks/YouTubeVideoBlock/migrations/2-add-preview-image.migration.js +1 -1
  63. package/lib/blocks/YouTubeVideoBlock/migrations/2-add-preview-image.migration.js.map +1 -1
  64. package/lib/blocks/block-migrate.service.d.ts.map +1 -1
  65. package/lib/blocks/block-migrate.service.js +64 -73
  66. package/lib/blocks/block-migrate.service.js.map +1 -1
  67. package/lib/blocks/block.d.ts +4 -4
  68. package/lib/blocks/block.d.ts.map +1 -1
  69. package/lib/blocks/block.js +5 -18
  70. package/lib/blocks/block.js.map +1 -1
  71. package/lib/blocks/blocks-meta.service.js +14 -25
  72. package/lib/blocks/blocks-meta.service.js.map +1 -1
  73. package/lib/blocks/blocks-transformer-middleware.factory.d.ts +1 -1
  74. package/lib/blocks/blocks-transformer-middleware.factory.d.ts.map +1 -1
  75. package/lib/blocks/blocks-transformer-middleware.factory.js +3 -12
  76. package/lib/blocks/blocks-transformer-middleware.factory.js.map +1 -1
  77. package/lib/blocks/blocks-transformer.d.ts +1 -1
  78. package/lib/blocks/blocks-transformer.d.ts.map +1 -1
  79. package/lib/blocks/blocks-transformer.js +30 -43
  80. package/lib/blocks/blocks-transformer.js.map +1 -1
  81. package/lib/blocks/blocks-transformer.service.js +3 -14
  82. package/lib/blocks/blocks-transformer.service.js.map +1 -1
  83. package/lib/blocks/create-block-index-views.command.js +2 -13
  84. package/lib/blocks/create-block-index-views.command.js.map +1 -1
  85. package/lib/blocks/decorators/child-block-input.js +2 -2
  86. package/lib/blocks/decorators/child-block-input.js.map +1 -1
  87. package/lib/blocks/decorators/child-block.js +1 -1
  88. package/lib/blocks/decorators/child-block.js.map +1 -1
  89. package/lib/blocks/decorators/field.js +1 -2
  90. package/lib/blocks/decorators/field.js.map +1 -1
  91. package/lib/blocks/decorators/root-block-entity.d.ts +1 -1
  92. package/lib/blocks/decorators/root-block-entity.d.ts.map +1 -1
  93. package/lib/blocks/decorators/root-block.d.ts +1 -1
  94. package/lib/blocks/decorators/root-block.d.ts.map +1 -1
  95. package/lib/blocks/factories/columns-block.factory.js +13 -18
  96. package/lib/blocks/factories/columns-block.factory.js.map +1 -1
  97. package/lib/blocks/factories/createBlocksBlock.js +14 -35
  98. package/lib/blocks/factories/createBlocksBlock.js.map +1 -1
  99. package/lib/blocks/factories/createListBlock.js +16 -33
  100. package/lib/blocks/factories/createListBlock.js.map +1 -1
  101. package/lib/blocks/factories/createOneOfBlock.js +20 -35
  102. package/lib/blocks/factories/createOneOfBlock.js.map +1 -1
  103. package/lib/blocks/factories/createOptionalBlock.js +5 -16
  104. package/lib/blocks/factories/createOptionalBlock.js.map +1 -1
  105. package/lib/blocks/factories/createRichTextBlock.js +33 -31
  106. package/lib/blocks/factories/createRichTextBlock.js.map +1 -1
  107. package/lib/blocks/factories/createSeoBlock.js +14 -25
  108. package/lib/blocks/factories/createSeoBlock.js.map +1 -1
  109. package/lib/blocks/factories/createTableBlock.js +5 -1
  110. package/lib/blocks/factories/createTableBlock.js.map +1 -1
  111. package/lib/blocks/factories/types.d.ts +1 -1
  112. package/lib/blocks/factories/types.d.ts.map +1 -1
  113. package/lib/blocks/flat-blocks/flat-blocks.d.ts +1 -1
  114. package/lib/blocks/flat-blocks/flat-blocks.d.ts.map +1 -1
  115. package/lib/blocks/flat-blocks/visit-blocks-breadth-first.d.ts +1 -1
  116. package/lib/blocks/flat-blocks/visit-blocks-breadth-first.d.ts.map +1 -1
  117. package/lib/blocks/flat-blocks/visit-blocks-breadth-first.js +3 -3
  118. package/lib/blocks/flat-blocks/visit-blocks-breadth-first.js.map +1 -1
  119. package/lib/blocks/flat-blocks/visit-blocks-depth-first.d.ts +2 -2
  120. package/lib/blocks/flat-blocks/visit-blocks-depth-first.d.ts.map +1 -1
  121. package/lib/blocks/flat-blocks/visit-blocks-depth-first.js +3 -3
  122. package/lib/blocks/flat-blocks/visit-blocks-depth-first.js.map +1 -1
  123. package/lib/blocks/get-preview-image-url-templates.d.ts +1 -1
  124. package/lib/blocks/get-preview-image-url-templates.d.ts.map +1 -1
  125. package/lib/blocks/get-preview-image-url-templates.js +13 -26
  126. package/lib/blocks/get-preview-image-url-templates.js.map +1 -1
  127. package/lib/blocks/helpers/composeBlocks.js +10 -17
  128. package/lib/blocks/helpers/composeBlocks.js.map +1 -1
  129. package/lib/blocks/migrate-blocks.command.d.ts +5 -1
  130. package/lib/blocks/migrate-blocks.command.d.ts.map +1 -1
  131. package/lib/blocks/migrate-blocks.command.js +17 -13
  132. package/lib/blocks/migrate-blocks.command.js.map +1 -1
  133. package/lib/blocks/migrations/BlockMigration.d.ts +1 -1
  134. package/lib/blocks/migrations/BlockMigration.d.ts.map +1 -1
  135. package/lib/blocks/migrations/BlockMigration.js +5 -13
  136. package/lib/blocks/migrations/BlockMigration.js.map +1 -1
  137. package/lib/blocks/migrations/applyMigrations.d.ts +1 -1
  138. package/lib/blocks/migrations/applyMigrations.d.ts.map +1 -1
  139. package/lib/blocks/migrations/createAppliedMigrationsBlockDataFactoryDecorator.d.ts +2 -2
  140. package/lib/blocks/migrations/createAppliedMigrationsBlockDataFactoryDecorator.d.ts.map +1 -1
  141. package/lib/blocks/migrations/decorators/BlockDataMigrationVersion.d.ts +1 -1
  142. package/lib/blocks/migrations/decorators/BlockDataMigrationVersion.d.ts.map +1 -1
  143. package/lib/blocks/migrations/decorators/BlockDataMigrationVersion.js +11 -19
  144. package/lib/blocks/migrations/decorators/BlockDataMigrationVersion.js.map +1 -1
  145. package/lib/blocks/migrations/typeSafeBlockMigrationPipe.d.ts +1 -1
  146. package/lib/blocks/migrations/typeSafeBlockMigrationPipe.d.ts.map +1 -1
  147. package/lib/blocks/refresh-block-index-views.command.js +2 -13
  148. package/lib/blocks/refresh-block-index-views.command.js.map +1 -1
  149. package/lib/blocks/rootBlocks/root-block-data.scalar.d.ts +1 -1
  150. package/lib/blocks/rootBlocks/root-block-data.scalar.d.ts.map +1 -1
  151. package/lib/blocks/rootBlocks/root-block-data.scalar.js +5 -1
  152. package/lib/blocks/rootBlocks/root-block-data.scalar.js.map +1 -1
  153. package/lib/blocks/rootBlocks/root-block-input.scalar.d.ts +1 -1
  154. package/lib/blocks/rootBlocks/root-block-input.scalar.d.ts.map +1 -1
  155. package/lib/blocks/rootBlocks/root-block-input.scalar.js +5 -1
  156. package/lib/blocks/rootBlocks/root-block-input.scalar.js.map +1 -1
  157. package/lib/blocks/search/get-search-text.d.ts +3 -1
  158. package/lib/blocks/search/get-search-text.d.ts.map +1 -1
  159. package/lib/blocks/search/get-search-text.js +26 -0
  160. package/lib/blocks/search/get-search-text.js.map +1 -1
  161. package/lib/blocks/transformToBlockSaveIndex/transformToBlockSaveIndex.d.ts +1 -1
  162. package/lib/blocks/transformToBlockSaveIndex/transformToBlockSaveIndex.d.ts.map +1 -1
  163. package/lib/blocks/transformToBlockSaveIndex/transformToBlockSaveIndex.js +1 -1
  164. package/lib/blocks/transformToBlockSaveIndex/transformToBlockSaveIndex.js.map +1 -1
  165. package/lib/builds/build-templates.resolver.js +7 -21
  166. package/lib/builds/build-templates.resolver.js.map +1 -1
  167. package/lib/builds/build-templates.service.js +6 -20
  168. package/lib/builds/build-templates.service.js.map +1 -1
  169. package/lib/builds/builds.resolver.js +16 -32
  170. package/lib/builds/builds.resolver.js.map +1 -1
  171. package/lib/builds/builds.service.js +106 -142
  172. package/lib/builds/builds.service.js.map +1 -1
  173. package/lib/builds/changes-checker.command.js +17 -28
  174. package/lib/builds/changes-checker.command.js.map +1 -1
  175. package/lib/builds/changes-checker.interceptor.js +34 -45
  176. package/lib/builds/changes-checker.interceptor.js.map +1 -1
  177. package/lib/common/decorators/crud-generator.decorator.d.ts +4 -4
  178. package/lib/common/decorators/crud-generator.decorator.d.ts.map +1 -1
  179. package/lib/common/decorators/request-context.decorator.d.ts +1 -1
  180. package/lib/common/decorators/request-context.decorator.d.ts.map +1 -1
  181. package/lib/common/decorators/utils.d.ts +1 -1
  182. package/lib/common/decorators/utils.d.ts.map +1 -1
  183. package/lib/common/errors/validation.exception-factory.d.ts +1 -1
  184. package/lib/common/errors/validation.exception-factory.d.ts.map +1 -1
  185. package/lib/common/errors/validation.exception.d.ts +1 -1
  186. package/lib/common/errors/validation.exception.d.ts.map +1 -1
  187. package/lib/common/filter/mikro-orm.d.ts +1 -1
  188. package/lib/common/filter/mikro-orm.d.ts.map +1 -1
  189. package/lib/common/filter/mikro-orm.js +5 -7
  190. package/lib/common/filter/mikro-orm.js.map +1 -1
  191. package/lib/common/graphql/extract-graphql-fields.d.ts +1 -1
  192. package/lib/common/graphql/extract-graphql-fields.d.ts.map +1 -1
  193. package/lib/common/graphql/extract-graphql-fields.js +2 -1
  194. package/lib/common/graphql/extract-graphql-fields.js.map +1 -1
  195. package/lib/common/helper/crud-generator.helper.d.ts +1 -1
  196. package/lib/common/helper/crud-generator.helper.d.ts.map +1 -1
  197. package/lib/common/helper/crud-generator.helper.js +2 -3
  198. package/lib/common/helper/crud-generator.helper.js.map +1 -1
  199. package/lib/common/helper/is-injectable-service.helper.d.ts +1 -1
  200. package/lib/common/helper/is-injectable-service.helper.d.ts.map +1 -1
  201. package/lib/common/helper/partial-type.helper.d.ts +2 -2
  202. package/lib/common/helper/partial-type.helper.d.ts.map +1 -1
  203. package/lib/common/helper/partial-type.helper.js +8 -8
  204. package/lib/common/helper/partial-type.helper.js.map +1 -1
  205. package/lib/common/test/get-error.js +3 -12
  206. package/lib/common/test/get-error.js.map +1 -1
  207. package/lib/common/validators/is-slug.js +3 -14
  208. package/lib/common/validators/is-slug.js.map +1 -1
  209. package/lib/content-generation/azure-open-ai/azure-open-ai-content-generation.service.js +94 -113
  210. package/lib/content-generation/azure-open-ai/azure-open-ai-content-generation.service.js.map +1 -1
  211. package/lib/content-generation/generate-alt-text.resolver.d.ts.map +1 -1
  212. package/lib/content-generation/generate-alt-text.resolver.js +6 -17
  213. package/lib/content-generation/generate-alt-text.resolver.js.map +1 -1
  214. package/lib/content-generation/generate-image-title.resolver.d.ts.map +1 -1
  215. package/lib/content-generation/generate-image-title.resolver.js +6 -17
  216. package/lib/content-generation/generate-image-title.resolver.js.map +1 -1
  217. package/lib/content-generation/generate-seo-tags.resolver.d.ts.map +1 -1
  218. package/lib/content-generation/generate-seo-tags.resolver.js +6 -17
  219. package/lib/content-generation/generate-seo-tags.resolver.js.map +1 -1
  220. package/lib/cron-jobs/cron-jobs.resolver.js +37 -54
  221. package/lib/cron-jobs/cron-jobs.resolver.js.map +1 -1
  222. package/lib/cron-jobs/cron-jobs.service.js +6 -7
  223. package/lib/cron-jobs/cron-jobs.service.js.map +1 -1
  224. package/lib/cron-jobs/jobs.resolver.js +22 -37
  225. package/lib/cron-jobs/jobs.resolver.js.map +1 -1
  226. package/lib/cron-jobs/jobs.service.js +5 -6
  227. package/lib/cron-jobs/jobs.service.js.map +1 -1
  228. package/lib/dam/blocks/dam-file-download-link-block-transformer.service.js +28 -33
  229. package/lib/dam/blocks/dam-file-download-link-block-transformer.service.js.map +1 -1
  230. package/lib/dam/blocks/dam-file-download-link.block.js +2 -13
  231. package/lib/dam/blocks/dam-file-download-link.block.js.map +1 -1
  232. package/lib/dam/blocks/pixel-image-block-transformer.service.js +35 -46
  233. package/lib/dam/blocks/pixel-image-block-transformer.service.js.map +1 -1
  234. package/lib/dam/blocks/pixel-image.block.js +11 -24
  235. package/lib/dam/blocks/pixel-image.block.js.map +1 -1
  236. package/lib/dam/blocks/svg-image-block-transformer.service.js +23 -34
  237. package/lib/dam/blocks/svg-image-block-transformer.service.js.map +1 -1
  238. package/lib/dam/blocks/svg-image.block.js +2 -13
  239. package/lib/dam/blocks/svg-image.block.js.map +1 -1
  240. package/lib/dam/blocks/video/dam-video-block-transformer.service.js +34 -45
  241. package/lib/dam/blocks/video/dam-video-block-transformer.service.js.map +1 -1
  242. package/lib/dam/blocks/video/dam-video.block.js +2 -13
  243. package/lib/dam/blocks/video/dam-video.block.js.map +1 -1
  244. package/lib/dam/blocks/video/migrations/1-add-preview-image.migration.d.ts +1 -1
  245. package/lib/dam/blocks/video/migrations/1-add-preview-image.migration.d.ts.map +1 -1
  246. package/lib/dam/blocks/video/migrations/1-add-preview-image.migration.js +1 -1
  247. package/lib/dam/blocks/video/migrations/1-add-preview-image.migration.js.map +1 -1
  248. package/lib/dam/common/decorators/has-valid-filename.decorator.js +23 -35
  249. package/lib/dam/common/decorators/has-valid-filename.decorator.js.map +1 -1
  250. package/lib/dam/dam.module.js +8 -18
  251. package/lib/dam/dam.module.js.map +1 -1
  252. package/lib/dam/files/dam-items.resolver.js +7 -20
  253. package/lib/dam/files/dam-items.resolver.js.map +1 -1
  254. package/lib/dam/files/dam-items.service.js +50 -76
  255. package/lib/dam/files/dam-items.service.js.map +1 -1
  256. package/lib/dam/files/dam-media-alternatives/dam-media-alternative.resolver.js +74 -102
  257. package/lib/dam/files/dam-media-alternatives/dam-media-alternative.resolver.js.map +1 -1
  258. package/lib/dam/files/dam-media-alternatives/entities/dam-media-alternative.entity.js +3 -13
  259. package/lib/dam/files/dam-media-alternatives/entities/dam-media-alternative.entity.js.map +1 -1
  260. package/lib/dam/files/dam-upload-file.interceptor.js +10 -21
  261. package/lib/dam/files/dam-upload-file.interceptor.js.map +1 -1
  262. package/lib/dam/files/file-image.resolver.js +8 -19
  263. package/lib/dam/files/file-image.resolver.js.map +1 -1
  264. package/lib/dam/files/file-warning.service.d.ts.map +1 -1
  265. package/lib/dam/files/file-warning.service.js +64 -90
  266. package/lib/dam/files/file-warning.service.js.map +1 -1
  267. package/lib/dam/files/files.controller.d.ts.map +1 -1
  268. package/lib/dam/files/files.controller.js +182 -210
  269. package/lib/dam/files/files.controller.js.map +1 -1
  270. package/lib/dam/files/files.resolver.d.ts.map +1 -1
  271. package/lib/dam/files/files.resolver.js +84 -168
  272. package/lib/dam/files/files.resolver.js.map +1 -1
  273. package/lib/dam/files/files.service.d.ts +1 -0
  274. package/lib/dam/files/files.service.d.ts.map +1 -1
  275. package/lib/dam/files/files.service.js +429 -437
  276. package/lib/dam/files/files.service.js.map +1 -1
  277. package/lib/dam/files/folders.controller.js +13 -24
  278. package/lib/dam/files/folders.controller.js.map +1 -1
  279. package/lib/dam/files/folders.resolver.js +25 -52
  280. package/lib/dam/files/folders.resolver.js.map +1 -1
  281. package/lib/dam/files/folders.service.d.ts.map +1 -1
  282. package/lib/dam/files/folders.service.js +201 -240
  283. package/lib/dam/files/folders.service.js.map +1 -1
  284. package/lib/dam/images/calculateDominantImageColor.command.js +14 -45
  285. package/lib/dam/images/calculateDominantImageColor.command.js.map +1 -1
  286. package/lib/dam/images/dto/image.interface.d.ts +2 -2
  287. package/lib/dam/images/dto/image.interface.d.ts.map +1 -1
  288. package/lib/dam/images/images.controller.js +134 -165
  289. package/lib/dam/images/images.controller.js.map +1 -1
  290. package/lib/dam/images/images.util.d.ts +2 -3
  291. package/lib/dam/images/images.util.d.ts.map +1 -1
  292. package/lib/dam/images/images.util.js +0 -4
  293. package/lib/dam/images/images.util.js.map +1 -1
  294. package/lib/dam/images/validators/is-valid-aspect-ratio.validator.js +16 -28
  295. package/lib/dam/images/validators/is-valid-aspect-ratio.validator.js.map +1 -1
  296. package/lib/dependencies/dependencies.resolver.factory.js +2 -13
  297. package/lib/dependencies/dependencies.resolver.factory.js.map +1 -1
  298. package/lib/dependencies/dependencies.service.d.ts +3 -1
  299. package/lib/dependencies/dependencies.service.d.ts.map +1 -1
  300. package/lib/dependencies/dependencies.service.js +189 -211
  301. package/lib/dependencies/dependencies.service.js.map +1 -1
  302. package/lib/dependencies/dependents.resolver.factory.js +2 -13
  303. package/lib/dependencies/dependents.resolver.factory.js.map +1 -1
  304. package/lib/dependencies/discover.service.d.ts +1 -1
  305. package/lib/dependencies/discover.service.d.ts.map +1 -1
  306. package/lib/dependencies/discover.service.js +2 -4
  307. package/lib/dependencies/discover.service.js.map +1 -1
  308. package/lib/document/dto/save-document.d.ts +1 -1
  309. package/lib/document/dto/save-document.d.ts.map +1 -1
  310. package/lib/document/validateNotModified.d.ts +1 -1
  311. package/lib/document/validateNotModified.d.ts.map +1 -1
  312. package/lib/document/validateNotModified.js +1 -1
  313. package/lib/document/validateNotModified.js.map +1 -1
  314. package/lib/entity-info/entity-info.decorator.d.ts +1 -1
  315. package/lib/entity-info/entity-info.decorator.d.ts.map +1 -1
  316. package/lib/entity-info/entity-info.service.js +48 -64
  317. package/lib/entity-info/entity-info.service.js.map +1 -1
  318. package/lib/file-uploads/file-upload-expiration.subscriber.js +5 -16
  319. package/lib/file-uploads/file-upload-expiration.subscriber.js.map +1 -1
  320. package/lib/file-uploads/file-uploads-download.controller.js +122 -150
  321. package/lib/file-uploads/file-uploads-download.controller.js.map +1 -1
  322. package/lib/file-uploads/file-uploads-file.interceptor.js +10 -21
  323. package/lib/file-uploads/file-uploads-file.interceptor.js.map +1 -1
  324. package/lib/file-uploads/file-uploads-upload.controller.js +17 -25
  325. package/lib/file-uploads/file-uploads-upload.controller.js.map +1 -1
  326. package/lib/file-uploads/file-uploads.module.js +3 -4
  327. package/lib/file-uploads/file-uploads.module.js.map +1 -1
  328. package/lib/file-uploads/file-uploads.resolver.js +1 -2
  329. package/lib/file-uploads/file-uploads.resolver.js.map +1 -1
  330. package/lib/file-uploads/file-uploads.service.js +53 -90
  331. package/lib/file-uploads/file-uploads.service.js.map +1 -1
  332. package/lib/file-utils/file-validation.service.d.ts +1 -1
  333. package/lib/file-utils/file-validation.service.d.ts.map +1 -1
  334. package/lib/file-utils/file-validation.service.js +14 -28
  335. package/lib/file-utils/file-validation.service.js.map +1 -1
  336. package/lib/file-utils/files.utils.d.ts +1 -1
  337. package/lib/file-utils/files.utils.d.ts.map +1 -1
  338. package/lib/file-utils/files.utils.js +33 -45
  339. package/lib/file-utils/files.utils.js.map +1 -1
  340. package/lib/file-utils/images.util.d.ts.map +1 -1
  341. package/lib/file-utils/images.util.js +10 -6
  342. package/lib/file-utils/images.util.js.map +1 -1
  343. package/lib/imgproxy/imgproxy.builder.d.ts.map +1 -1
  344. package/lib/imgproxy/imgproxy.builder.js +2 -1
  345. package/lib/imgproxy/imgproxy.builder.js.map +1 -1
  346. package/lib/importer/data-streams/file-data-stream.d.ts +3 -3
  347. package/lib/importer/data-streams/file-data-stream.d.ts.map +1 -1
  348. package/lib/importer/data-streams/local-file-data-stream.js +28 -76
  349. package/lib/importer/data-streams/local-file-data-stream.js.map +1 -1
  350. package/lib/importer/decorators/csv-column.decorator.d.ts +1 -1
  351. package/lib/importer/decorators/csv-column.decorator.d.ts.map +1 -1
  352. package/lib/importer/pipes/end.pipe.d.ts +1 -1
  353. package/lib/importer/pipes/end.pipe.d.ts.map +1 -1
  354. package/lib/importer/pipes/importer-pipe.type.d.ts +3 -3
  355. package/lib/importer/pipes/importer-pipe.type.d.ts.map +1 -1
  356. package/lib/importer/pipes/parsers/csv-parser-and-transform.composite-pipe.d.ts +5 -5
  357. package/lib/importer/pipes/parsers/csv-parser-and-transform.composite-pipe.d.ts.map +1 -1
  358. package/lib/importer/pipes/parsers/csv-parser.pipe.d.ts +3 -3
  359. package/lib/importer/pipes/parsers/csv-parser.pipe.d.ts.map +1 -1
  360. package/lib/importer/pipes/parsers/csv-parser.pipe.js +10 -5
  361. package/lib/importer/pipes/parsers/csv-parser.pipe.js.map +1 -1
  362. package/lib/importer/pipes/parsers/data-transformer.pipe.d.ts +3 -3
  363. package/lib/importer/pipes/parsers/data-transformer.pipe.d.ts.map +1 -1
  364. package/lib/importer/pipes/parsers/data-transformer.pipe.js +13 -24
  365. package/lib/importer/pipes/parsers/data-transformer.pipe.js.map +1 -1
  366. package/lib/importer/pipes/parsers/data-validator.pipe.d.ts +2 -2
  367. package/lib/importer/pipes/parsers/data-validator.pipe.d.ts.map +1 -1
  368. package/lib/importer/pipes/parsers/data-validator.pipe.js +26 -37
  369. package/lib/importer/pipes/parsers/data-validator.pipe.js.map +1 -1
  370. package/lib/index.d.ts +3 -6
  371. package/lib/index.d.ts.map +1 -1
  372. package/lib/index.js +9 -10
  373. package/lib/index.js.map +1 -1
  374. package/lib/kubernetes/kubernetes.service.js +70 -109
  375. package/lib/kubernetes/kubernetes.service.js.map +1 -1
  376. package/lib/mail-templates/mail-template.command.js +5 -16
  377. package/lib/mail-templates/mail-template.command.js.map +1 -1
  378. package/lib/mail-templates/mail-template.decorator.d.ts +1 -1
  379. package/lib/mail-templates/mail-template.decorator.d.ts.map +1 -1
  380. package/lib/mail-templates/mail-template.service.d.ts.map +1 -1
  381. package/lib/mail-templates/mail-template.service.js +20 -30
  382. package/lib/mail-templates/mail-template.service.js.map +1 -1
  383. package/lib/mailer/mailer.module.js +1 -13
  384. package/lib/mailer/mailer.module.js.map +1 -1
  385. package/lib/mailer/mailer.service.d.ts.map +1 -1
  386. package/lib/mailer/mailer.service.js +48 -62
  387. package/lib/mailer/mailer.service.js.map +1 -1
  388. package/lib/mailer/send-test-mail.command.js +15 -26
  389. package/lib/mailer/send-test-mail.command.js.map +1 -1
  390. package/lib/mikro-orm/migrations/Migration20220127085859.js +3 -14
  391. package/lib/mikro-orm/migrations/Migration20220127085859.js.map +1 -1
  392. package/lib/mikro-orm/migrations/Migration20220127085946.js +3 -14
  393. package/lib/mikro-orm/migrations/Migration20220127085946.js.map +1 -1
  394. package/lib/mikro-orm/migrations/Migration20220127091538.js +3 -14
  395. package/lib/mikro-orm/migrations/Migration20220127091538.js.map +1 -1
  396. package/lib/mikro-orm/migrations/Migration20220127091751.js +6 -17
  397. package/lib/mikro-orm/migrations/Migration20220127091751.js.map +1 -1
  398. package/lib/mikro-orm/migrations/Migration20220127111301.js +15 -26
  399. package/lib/mikro-orm/migrations/Migration20220127111301.js.map +1 -1
  400. package/lib/mikro-orm/migrations/Migration20220127142112.js +4 -15
  401. package/lib/mikro-orm/migrations/Migration20220127142112.js.map +1 -1
  402. package/lib/mikro-orm/migrations/Migration20220620124134.js +19 -32
  403. package/lib/mikro-orm/migrations/Migration20220620124134.js.map +1 -1
  404. package/lib/mikro-orm/migrations/Migration20220905145606.js +8 -21
  405. package/lib/mikro-orm/migrations/Migration20220905145606.js.map +1 -1
  406. package/lib/mikro-orm/migrations/Migration20230209111818.js +3 -14
  407. package/lib/mikro-orm/migrations/Migration20230209111818.js.map +1 -1
  408. package/lib/mikro-orm/migrations/Migration20230302145445.js +6 -19
  409. package/lib/mikro-orm/migrations/Migration20230302145445.js.map +1 -1
  410. package/lib/mikro-orm/migrations/Migration20230613150332.js +3 -14
  411. package/lib/mikro-orm/migrations/Migration20230613150332.js.map +1 -1
  412. package/lib/mikro-orm/migrations/Migration20230802124224.js +5 -18
  413. package/lib/mikro-orm/migrations/Migration20230802124224.js.map +1 -1
  414. package/lib/mikro-orm/migrations/Migration20230808085034.js +2 -13
  415. package/lib/mikro-orm/migrations/Migration20230808085034.js.map +1 -1
  416. package/lib/mikro-orm/migrations/Migration20230821090303.js +8 -21
  417. package/lib/mikro-orm/migrations/Migration20230821090303.js.map +1 -1
  418. package/lib/mikro-orm/migrations/Migration20231204140305.js +8 -21
  419. package/lib/mikro-orm/migrations/Migration20231204140305.js.map +1 -1
  420. package/lib/mikro-orm/migrations/Migration20231206123505.js +7 -20
  421. package/lib/mikro-orm/migrations/Migration20231206123505.js.map +1 -1
  422. package/lib/mikro-orm/migrations/Migration20231215103630.js +6 -19
  423. package/lib/mikro-orm/migrations/Migration20231215103630.js.map +1 -1
  424. package/lib/mikro-orm/migrations/Migration20231218092313.js +7 -20
  425. package/lib/mikro-orm/migrations/Migration20231218092313.js.map +1 -1
  426. package/lib/mikro-orm/migrations/Migration20231222090009.js +7 -20
  427. package/lib/mikro-orm/migrations/Migration20231222090009.js.map +1 -1
  428. package/lib/mikro-orm/migrations/Migration20240702123233.js +28 -40
  429. package/lib/mikro-orm/migrations/Migration20240702123233.js.map +1 -1
  430. package/lib/mikro-orm/migrations/Migration20240725071750.js +2 -13
  431. package/lib/mikro-orm/migrations/Migration20240725071750.js.map +1 -1
  432. package/lib/mikro-orm/migrations/Migration20240814090503.js +7 -18
  433. package/lib/mikro-orm/migrations/Migration20240814090503.js.map +1 -1
  434. package/lib/mikro-orm/migrations/Migration20240814090541.js +3 -14
  435. package/lib/mikro-orm/migrations/Migration20240814090541.js.map +1 -1
  436. package/lib/mikro-orm/migrations/Migration20240814090653.js +3 -14
  437. package/lib/mikro-orm/migrations/Migration20240814090653.js.map +1 -1
  438. package/lib/mikro-orm/migrations/Migration20250403134629.js +2 -13
  439. package/lib/mikro-orm/migrations/Migration20250403134629.js.map +1 -1
  440. package/lib/mikro-orm/migrations/Migration20250531565156.js +2 -13
  441. package/lib/mikro-orm/migrations/Migration20250531565156.js.map +1 -1
  442. package/lib/mikro-orm/migrations/Migration20250531565157.js +2 -13
  443. package/lib/mikro-orm/migrations/Migration20250531565157.js.map +1 -1
  444. package/lib/mikro-orm/migrations/Migration20250612134629.js +3 -14
  445. package/lib/mikro-orm/migrations/Migration20250612134629.js.map +1 -1
  446. package/lib/mikro-orm/migrations/Migration20250623085054.js +2 -13
  447. package/lib/mikro-orm/migrations/Migration20250623085054.js.map +1 -1
  448. package/lib/mikro-orm/migrations/Migration20250623113026.js +4 -15
  449. package/lib/mikro-orm/migrations/Migration20250623113026.js.map +1 -1
  450. package/lib/mikro-orm/migrations/Migration20251013081751.js +2 -13
  451. package/lib/mikro-orm/migrations/Migration20251013081751.js.map +1 -1
  452. package/lib/mikro-orm/migrations/Migration20251118143418.js +3 -14
  453. package/lib/mikro-orm/migrations/Migration20251118143418.js.map +1 -1
  454. package/lib/mikro-orm/migrations/Migration20251126093305.js +4 -17
  455. package/lib/mikro-orm/migrations/Migration20251126093305.js.map +1 -1
  456. package/lib/mikro-orm/migrations/Migration20260413072931.d.ts +6 -0
  457. package/lib/mikro-orm/migrations/Migration20260413072931.d.ts.map +1 -0
  458. package/lib/mikro-orm/migrations/Migration20260413072931.js +16 -0
  459. package/lib/mikro-orm/migrations/Migration20260413072931.js.map +1 -0
  460. package/lib/mikro-orm/mikro-orm.module.d.ts.map +1 -1
  461. package/lib/mikro-orm/mikro-orm.module.js +18 -19
  462. package/lib/mikro-orm/mikro-orm.module.js.map +1 -1
  463. package/lib/page-tree/attached-document-loader.service.d.ts.map +1 -1
  464. package/lib/page-tree/attached-document-loader.service.js +9 -17
  465. package/lib/page-tree/attached-document-loader.service.js.map +1 -1
  466. package/lib/page-tree/blocks/internal-link-block-transformer.service.js +18 -29
  467. package/lib/page-tree/blocks/internal-link-block-transformer.service.js.map +1 -1
  468. package/lib/page-tree/blocks/internal-link-block-warnings.service.js +14 -25
  469. package/lib/page-tree/blocks/internal-link-block-warnings.service.js.map +1 -1
  470. package/lib/page-tree/blocks/internal-link.block.js +2 -13
  471. package/lib/page-tree/blocks/internal-link.block.js.map +1 -1
  472. package/lib/page-tree/createPageTreeResolver.d.ts +2 -1
  473. package/lib/page-tree/createPageTreeResolver.d.ts.map +1 -1
  474. package/lib/page-tree/createPageTreeResolver.js +195 -247
  475. package/lib/page-tree/createPageTreeResolver.js.map +1 -1
  476. package/lib/page-tree/document-subscriber.js +19 -30
  477. package/lib/page-tree/document-subscriber.js.map +1 -1
  478. package/lib/page-tree/dto/paginated-page-tree-nodes.factory.d.ts +8 -0
  479. package/lib/page-tree/dto/paginated-page-tree-nodes.factory.d.ts.map +1 -0
  480. package/lib/page-tree/dto/paginated-page-tree-nodes.factory.js +23 -0
  481. package/lib/page-tree/dto/paginated-page-tree-nodes.factory.js.map +1 -0
  482. package/lib/page-tree/entities/page-tree-node-base.entity.d.ts +1 -0
  483. package/lib/page-tree/entities/page-tree-node-base.entity.d.ts.map +1 -1
  484. package/lib/page-tree/entities/page-tree-node-base.entity.js +15 -1
  485. package/lib/page-tree/entities/page-tree-node-base.entity.js.map +1 -1
  486. package/lib/page-tree/fullText/createFullTextResolver.d.ts +8 -0
  487. package/lib/page-tree/fullText/createFullTextResolver.d.ts.map +1 -0
  488. package/lib/page-tree/fullText/createFullTextResolver.js +74 -0
  489. package/lib/page-tree/fullText/createFullTextResolver.js.map +1 -0
  490. package/lib/page-tree/fullText/entities/page-tree-node-full-text.object.d.ts +7 -0
  491. package/lib/page-tree/fullText/entities/page-tree-node-full-text.object.d.ts.map +1 -0
  492. package/lib/page-tree/fullText/entities/page-tree-node-full-text.object.js +36 -0
  493. package/lib/page-tree/fullText/entities/page-tree-node-full-text.object.js.map +1 -0
  494. package/lib/page-tree/fullText/page-tree-full-text.service.d.ts +17 -0
  495. package/lib/page-tree/fullText/page-tree-full-text.service.d.ts.map +1 -0
  496. package/lib/page-tree/fullText/page-tree-full-text.service.js +135 -0
  497. package/lib/page-tree/fullText/page-tree-full-text.service.js.map +1 -0
  498. package/lib/page-tree/page-tree-node-document-entity-scope.service.js +7 -19
  499. package/lib/page-tree/page-tree-node-document-entity-scope.service.js.map +1 -1
  500. package/lib/page-tree/page-tree-read-api.d.ts +2 -1
  501. package/lib/page-tree/page-tree-read-api.d.ts.map +1 -1
  502. package/lib/page-tree/page-tree-read-api.js +195 -196
  503. package/lib/page-tree/page-tree-read-api.js.map +1 -1
  504. package/lib/page-tree/page-tree-read-api.service.d.ts +1 -0
  505. package/lib/page-tree/page-tree-read-api.service.d.ts.map +1 -1
  506. package/lib/page-tree/page-tree-read-api.service.js +31 -65
  507. package/lib/page-tree/page-tree-read-api.service.js.map +1 -1
  508. package/lib/page-tree/page-tree.constants.d.ts +1 -0
  509. package/lib/page-tree/page-tree.constants.d.ts.map +1 -1
  510. package/lib/page-tree/page-tree.constants.js +2 -1
  511. package/lib/page-tree/page-tree.constants.js.map +1 -1
  512. package/lib/page-tree/page-tree.module.d.ts +1 -0
  513. package/lib/page-tree/page-tree.module.d.ts.map +1 -1
  514. package/lib/page-tree/page-tree.module.js +23 -13
  515. package/lib/page-tree/page-tree.module.js.map +1 -1
  516. package/lib/page-tree/page-tree.service.d.ts.map +1 -1
  517. package/lib/page-tree/page-tree.service.js +273 -312
  518. package/lib/page-tree/page-tree.service.js.map +1 -1
  519. package/lib/page-tree/site-preview.resolver.js +25 -38
  520. package/lib/page-tree/site-preview.resolver.js.map +1 -1
  521. package/lib/page-tree/types.d.ts +2 -2
  522. package/lib/page-tree/types.d.ts.map +1 -1
  523. package/lib/page-tree/validators/page-exists.validator.js +3 -14
  524. package/lib/page-tree/validators/page-exists.validator.js.map +1 -1
  525. package/lib/redirects/dto/redirect-input.factory.d.ts +2 -2
  526. package/lib/redirects/dto/redirect-input.factory.d.ts.map +1 -1
  527. package/lib/redirects/dto/redirect-input.factory.js +2 -2
  528. package/lib/redirects/dto/redirect-input.factory.js.map +1 -1
  529. package/lib/redirects/dto/redirects.filter.d.ts.map +1 -1
  530. package/lib/redirects/dto/redirects.filter.js +1 -1
  531. package/lib/redirects/dto/redirects.filter.js.map +1 -1
  532. package/lib/redirects/entities/redirect-entity.factory.d.ts +2 -2
  533. package/lib/redirects/entities/redirect-entity.factory.d.ts.map +1 -1
  534. package/lib/redirects/entities/redirect-entity.factory.js +2 -2
  535. package/lib/redirects/entities/redirect-entity.factory.js.map +1 -1
  536. package/lib/redirects/import-redirects.command.js +109 -121
  537. package/lib/redirects/import-redirects.command.js.map +1 -1
  538. package/lib/redirects/redirect-target-url.service.js +17 -28
  539. package/lib/redirects/redirect-target-url.service.js.map +1 -1
  540. package/lib/redirects/redirects.enum.d.ts +1 -1
  541. package/lib/redirects/redirects.enum.d.ts.map +1 -1
  542. package/lib/redirects/redirects.enum.js +7 -7
  543. package/lib/redirects/redirects.enum.js.map +1 -1
  544. package/lib/redirects/redirects.module.js +2 -2
  545. package/lib/redirects/redirects.module.js.map +1 -1
  546. package/lib/redirects/redirects.resolver.js +114 -137
  547. package/lib/redirects/redirects.resolver.js.map +1 -1
  548. package/lib/redirects/redirects.service.d.ts.map +1 -1
  549. package/lib/redirects/redirects.service.js +40 -47
  550. package/lib/redirects/redirects.service.js.map +1 -1
  551. package/lib/redirects/redirects.util.d.ts +2 -2
  552. package/lib/redirects/redirects.util.d.ts.map +1 -1
  553. package/lib/redirects/redirects.util.js +2 -3
  554. package/lib/redirects/redirects.util.js.map +1 -1
  555. package/lib/redirects/validators/isValidRedirectSource.js +8 -19
  556. package/lib/redirects/validators/isValidRedirectSource.js.map +1 -1
  557. package/lib/sentry/sentry.interceptor.js +30 -42
  558. package/lib/sentry/sentry.interceptor.js.map +1 -1
  559. package/lib/sentry/sentry.module.js +15 -36
  560. package/lib/sentry/sentry.module.js.map +1 -1
  561. package/lib/translation/azure-ai-translator.resolver.js +19 -30
  562. package/lib/translation/azure-ai-translator.resolver.js.map +1 -1
  563. package/lib/tsconfig.build.tsbuildinfo +1 -1
  564. package/lib/user-permissions/access-control.service.d.ts.map +1 -1
  565. package/lib/user-permissions/access-control.service.js +6 -3
  566. package/lib/user-permissions/access-control.service.js.map +1 -1
  567. package/lib/user-permissions/auth/user-permissions.guard.d.ts.map +1 -1
  568. package/lib/user-permissions/auth/user-permissions.guard.js +56 -61
  569. package/lib/user-permissions/auth/user-permissions.guard.js.map +1 -1
  570. package/lib/user-permissions/content-scope.service.d.ts.map +1 -1
  571. package/lib/user-permissions/content-scope.service.js +86 -97
  572. package/lib/user-permissions/content-scope.service.js.map +1 -1
  573. package/lib/user-permissions/decorators/affected-entity.decorator.d.ts +1 -1
  574. package/lib/user-permissions/decorators/affected-entity.decorator.d.ts.map +1 -1
  575. package/lib/user-permissions/decorators/affected-scope.decorator.d.ts +1 -1
  576. package/lib/user-permissions/decorators/affected-scope.decorator.d.ts.map +1 -1
  577. package/lib/user-permissions/decorators/required-permission.decorator.d.ts +1 -1
  578. package/lib/user-permissions/decorators/required-permission.decorator.d.ts.map +1 -1
  579. package/lib/user-permissions/decorators/scoped-entity.decorator.d.ts +2 -2
  580. package/lib/user-permissions/decorators/scoped-entity.decorator.d.ts.map +1 -1
  581. package/lib/user-permissions/user-content-scopes.resolver.js +18 -33
  582. package/lib/user-permissions/user-content-scopes.resolver.js.map +1 -1
  583. package/lib/user-permissions/user-permission.resolver.d.ts.map +1 -1
  584. package/lib/user-permissions/user-permission.resolver.js +42 -66
  585. package/lib/user-permissions/user-permission.resolver.js.map +1 -1
  586. package/lib/user-permissions/user-permissions.module.js +6 -27
  587. package/lib/user-permissions/user-permissions.module.js.map +1 -1
  588. package/lib/user-permissions/user-permissions.public.service.js +6 -21
  589. package/lib/user-permissions/user-permissions.public.service.js.map +1 -1
  590. package/lib/user-permissions/user-permissions.service.d.ts.map +1 -1
  591. package/lib/user-permissions/user-permissions.service.js +168 -191
  592. package/lib/user-permissions/user-permissions.service.js.map +1 -1
  593. package/lib/user-permissions/user-permissions.types.d.ts +6 -6
  594. package/lib/user-permissions/user-permissions.types.d.ts.map +1 -1
  595. package/lib/user-permissions/user-permissions.types.js +3 -1
  596. package/lib/user-permissions/user-permissions.types.js.map +1 -1
  597. package/lib/user-permissions/user.resolver.js +71 -95
  598. package/lib/user-permissions/user.resolver.js.map +1 -1
  599. package/lib/warnings/decorators/create-warnings.decorator.d.ts +3 -3
  600. package/lib/warnings/decorators/create-warnings.decorator.d.ts.map +1 -1
  601. package/lib/warnings/dto/warning-data.d.ts +1 -1
  602. package/lib/warnings/dto/warning-data.d.ts.map +1 -1
  603. package/lib/warnings/warning-checker.command.js +123 -156
  604. package/lib/warnings/warning-checker.command.js.map +1 -1
  605. package/lib/warnings/warning-event-subscriber.js +92 -107
  606. package/lib/warnings/warning-event-subscriber.js.map +1 -1
  607. package/lib/warnings/warning.resolver.js +56 -72
  608. package/lib/warnings/warning.resolver.js.map +1 -1
  609. package/lib/warnings/warning.service.js +19 -32
  610. package/lib/warnings/warning.service.js.map +1 -1
  611. package/package.json +19 -17
@@ -11,26 +11,6 @@ var __metadata = (this && this.__metadata) || function (k, v) {
11
11
  var __param = (this && this.__param) || function (paramIndex, decorator) {
12
12
  return function (target, key) { decorator(target, key, paramIndex); }
13
13
  };
14
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
15
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
16
- return new (P || (P = Promise))(function (resolve, reject) {
17
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
18
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
19
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
20
- step((generator = generator.apply(thisArg, _arguments || [])).next());
21
- });
22
- };
23
- var __rest = (this && this.__rest) || function (s, e) {
24
- var t = {};
25
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)
26
- t[p] = s[p];
27
- if (s != null && typeof Object.getOwnPropertySymbols === "function")
28
- for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
29
- if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))
30
- t[p[i]] = s[p[i]];
31
- }
32
- return t;
33
- };
34
14
  Object.defineProperty(exports, "__esModule", { value: true });
35
15
  exports.PageTreeService = void 0;
36
16
  const nestjs_1 = require("@mikro-orm/nestjs");
@@ -50,313 +30,296 @@ let PageTreeService = class PageTreeService {
50
30
  this.redirectsService = redirectsService;
51
31
  this.config = config;
52
32
  }
53
- createNode(input, category, scope) {
54
- return __awaiter(this, void 0, void 0, function* () {
55
- // TODO: check for unique id
56
- const readApi = this.createReadApi({ visibility: "all" });
57
- if (input.id && input.parentId && input.id === input.parentId) {
58
- throw new validation_exception_1.CometValidationException("A page cannot be its own parent");
59
- }
60
- const path = yield this.pathForParentAndSlug(input.parentId || null, input.slug);
61
- if (this.config.reservedPaths.includes(path)) {
62
- throw new validation_exception_1.CometValidationException("Reserved path");
63
- }
64
- const nodeWithSamePath = yield this.nodeWithSamePath(path, scope);
65
- if (nodeWithSamePath) {
66
- throw new validation_exception_1.CometValidationException("Slug leads to duplicate path");
67
- }
68
- const { attachedDocument: attachedDocumentInput, parentId } = input, restInput = __rest(input, ["attachedDocument", "parentId"]);
69
- const siblingNodeWithHighestPosition = yield this.pageTreeRepository
70
- .createQueryBuilder()
71
- .where({
72
- parentId: parentId !== null && parentId !== void 0 ? parentId : null,
73
- scope,
74
- })
75
- .orderBy({ pos: "DESC" })
76
- .getSingleResult();
77
- // insert newly created nodes at the last position
78
- const pos = siblingNodeWithHighestPosition ? siblingNodeWithHighestPosition.pos + 1 : 1;
79
- const parent = parentId ? yield this.pageTreeRepository.findOneOrFail(parentId) : undefined;
80
- const newNode = this.pageTreeRepository.create(Object.assign(Object.assign({}, restInput), { parent,
81
- parentId,
82
- pos, visibility: input.slug === "home" ? types_1.PageTreeNodeVisibility.Published : types_1.PageTreeNodeVisibility.Unpublished, scope,
83
- category, documentType: attachedDocumentInput.type }));
84
- yield this.entityManager.persistAndFlush(newNode);
85
- if (attachedDocumentInput.id) {
86
- yield this.entityManager.persistAndFlush(this.attachedDocumentsRepository.create({
87
- pageTreeNodeId: newNode.id,
88
- type: attachedDocumentInput.type,
89
- documentId: attachedDocumentInput.id,
90
- }));
91
- }
92
- return readApi.getNodeOrFail(newNode.id);
33
+ async createNode(input, category, scope) {
34
+ // TODO: check for unique id
35
+ const readApi = this.createReadApi({ visibility: "all" });
36
+ if (input.id && input.parentId && input.id === input.parentId) {
37
+ throw new validation_exception_1.CometValidationException("A page cannot be its own parent");
38
+ }
39
+ const path = await this.pathForParentAndSlug(input.parentId || null, input.slug);
40
+ if (this.config.reservedPaths.includes(path)) {
41
+ throw new validation_exception_1.CometValidationException("Reserved path");
42
+ }
43
+ const nodeWithSamePath = await this.nodeWithSamePath(path, scope);
44
+ if (nodeWithSamePath) {
45
+ throw new validation_exception_1.CometValidationException("Slug leads to duplicate path");
46
+ }
47
+ const { attachedDocument: attachedDocumentInput, parentId, ...restInput } = input;
48
+ const siblingNodeWithHighestPosition = await this.pageTreeRepository
49
+ .createQueryBuilder()
50
+ .where({
51
+ parentId: parentId ?? null,
52
+ scope,
53
+ })
54
+ .orderBy({ pos: "DESC" })
55
+ .getSingleResult();
56
+ // insert newly created nodes at the last position
57
+ const pos = siblingNodeWithHighestPosition ? siblingNodeWithHighestPosition.pos + 1 : 1;
58
+ const parent = parentId ? await this.pageTreeRepository.findOneOrFail(parentId) : undefined;
59
+ const newNode = this.pageTreeRepository.create({
60
+ ...restInput,
61
+ parent,
62
+ parentId,
63
+ pos,
64
+ visibility: input.slug === "home" ? types_1.PageTreeNodeVisibility.Published : types_1.PageTreeNodeVisibility.Unpublished,
65
+ scope,
66
+ category,
67
+ documentType: attachedDocumentInput.type,
93
68
  });
69
+ await this.entityManager.persistAndFlush(newNode);
70
+ if (attachedDocumentInput.id) {
71
+ await this.entityManager.persistAndFlush(this.attachedDocumentsRepository.create({
72
+ pageTreeNodeId: newNode.id,
73
+ type: attachedDocumentInput.type,
74
+ documentId: attachedDocumentInput.id,
75
+ }));
76
+ }
77
+ return readApi.getNodeOrFail(newNode.id);
94
78
  }
95
- updateNode(id, input) {
96
- return __awaiter(this, void 0, void 0, function* () {
97
- const readApi = this.createReadApi({ visibility: "all" });
98
- const existingNode = yield readApi.getNodeOrFail(id);
99
- if (!existingNode)
100
- throw new Error("Can't find page-tree-node with id");
101
- if (existingNode.slug === "home" && input.slug !== "home") {
102
- throw new Error(`Slug of page "home" cannot be changed`);
103
- }
104
- if (input.createAutomaticRedirectsOnSlugChange && existingNode.slug != input.slug) {
105
- yield this.redirectsService.createAutomaticRedirects(existingNode);
106
- }
107
- const existingNodePath = yield readApi.nodePath(existingNode);
108
- const newPath = this.newPathForSlug(existingNodePath, input.slug);
109
- if (this.config.reservedPaths.includes(newPath)) {
110
- throw new validation_exception_1.CometValidationException("Reserved path");
111
- }
112
- const nodeWithSamePath = yield this.nodeWithSamePath(newPath, existingNode.scope);
113
- if (nodeWithSamePath && nodeWithSamePath.id !== id) {
114
- throw new validation_exception_1.CometValidationException("Slug leads to duplicate path");
115
- }
116
- const { attachedDocument: attachedDocumentInput, createAutomaticRedirectsOnSlugChange } = input, restInput = __rest(input, ["attachedDocument", "createAutomaticRedirectsOnSlugChange"]);
117
- existingNode.assign(restInput);
118
- if (attachedDocumentInput) {
119
- existingNode.assign({ documentType: attachedDocumentInput.type });
120
- // check if attached document exists
121
- if (attachedDocumentInput.id) {
122
- const document = yield this.resolveDocument(attachedDocumentInput.type, attachedDocumentInput.id);
123
- if (!document) {
124
- throw new Error(`The assigned document does not exist or is not of type ${attachedDocumentInput.type}`);
125
- }
126
- // check if document is already attached and attach if not
127
- const attachedDocument = yield this.attachedDocumentsRepository.findOne({ pageTreeNodeId: id, documentId: attachedDocumentInput.id });
128
- if (!attachedDocument) {
129
- this.entityManager.persist(this.attachedDocumentsRepository.create({
130
- pageTreeNodeId: id,
131
- type: attachedDocumentInput.type,
132
- documentId: attachedDocumentInput.id,
133
- }));
134
- }
79
+ async updateNode(id, input) {
80
+ const readApi = this.createReadApi({ visibility: "all" });
81
+ const existingNode = await readApi.getNodeOrFail(id);
82
+ if (!existingNode) {
83
+ throw new Error("Can't find page-tree-node with id");
84
+ }
85
+ if (existingNode.slug === "home" && input.slug !== "home") {
86
+ throw new Error(`Slug of page "home" cannot be changed`);
87
+ }
88
+ if (input.createAutomaticRedirectsOnSlugChange && existingNode.slug != input.slug) {
89
+ await this.redirectsService.createAutomaticRedirects(existingNode);
90
+ }
91
+ const existingNodePath = await readApi.nodePath(existingNode);
92
+ const newPath = this.newPathForSlug(existingNodePath, input.slug);
93
+ if (this.config.reservedPaths.includes(newPath)) {
94
+ throw new validation_exception_1.CometValidationException("Reserved path");
95
+ }
96
+ const nodeWithSamePath = await this.nodeWithSamePath(newPath, existingNode.scope);
97
+ if (nodeWithSamePath && nodeWithSamePath.id !== id) {
98
+ throw new validation_exception_1.CometValidationException("Slug leads to duplicate path");
99
+ }
100
+ const { attachedDocument: attachedDocumentInput, createAutomaticRedirectsOnSlugChange, ...restInput } = input;
101
+ existingNode.assign(restInput);
102
+ if (attachedDocumentInput) {
103
+ existingNode.assign({ documentType: attachedDocumentInput.type });
104
+ // check if attached document exists
105
+ if (attachedDocumentInput.id) {
106
+ const document = await this.resolveDocument(attachedDocumentInput.type, attachedDocumentInput.id);
107
+ if (!document) {
108
+ throw new Error(`The assigned document does not exist or is not of type ${attachedDocumentInput.type}`);
135
109
  }
136
- }
137
- yield this.entityManager.flush();
138
- return readApi.getNodeOrFail(id); // refresh data
139
- });
140
- }
141
- updateNodeVisibility(id, newVisibility) {
142
- return __awaiter(this, void 0, void 0, function* () {
143
- const node = yield this.createReadApi({ visibility: "all" }).getNodeOrFail(id);
144
- if (node.slug === "home" && newVisibility !== types_1.PageTreeNodeVisibility.Published) {
145
- throw new Error(`Page "home" cannot be ${newVisibility.toLowerCase()}`);
146
- }
147
- let changedSlug = undefined;
148
- if (node.visibility === types_1.PageTreeNodeVisibility.Archived && newVisibility !== types_1.PageTreeNodeVisibility.Archived) {
149
- const readApi = this.createReadApi({ visibility: "all" });
150
- const existingNodePath = yield readApi.nodePath(node);
151
- const slug = node.slug;
152
- let slugIncrement = 0;
153
- while (true) {
154
- const nextSlugToTest = slugIncrement ? `${slug}-${slugIncrement}` : slug;
155
- const newPath = this.newPathForSlug(existingNodePath, nextSlugToTest);
156
- const nodeWithSamePath = yield this.nodeWithSamePath(newPath, node.scope);
157
- if (!nodeWithSamePath) {
158
- break;
159
- }
160
- slugIncrement++;
110
+ // check if document is already attached and attach if not
111
+ const attachedDocument = await this.attachedDocumentsRepository.findOne({ pageTreeNodeId: id, documentId: attachedDocumentInput.id });
112
+ if (!attachedDocument) {
113
+ this.entityManager.persist(this.attachedDocumentsRepository.create({
114
+ pageTreeNodeId: id,
115
+ type: attachedDocumentInput.type,
116
+ documentId: attachedDocumentInput.id,
117
+ }));
161
118
  }
162
- changedSlug = slugIncrement ? `${slug}-${slugIncrement}` : slug;
163
119
  }
164
- node.assign({ visibility: newVisibility, slug: changedSlug !== null && changedSlug !== void 0 ? changedSlug : node.slug });
165
- // TODO flush shouldn't happen here, remove in a major version
166
- yield this.entityManager.flush();
167
- });
120
+ }
121
+ await this.entityManager.flush();
122
+ return readApi.getNodeOrFail(id); // refresh data
168
123
  }
169
- updateNodePosition(id, input) {
170
- return __awaiter(this, void 0, void 0, function* () {
124
+ async updateNodeVisibility(id, newVisibility) {
125
+ const node = await this.createReadApi({ visibility: "all" }).getNodeOrFail(id);
126
+ if (node.slug === "home" && newVisibility !== types_1.PageTreeNodeVisibility.Published) {
127
+ throw new Error(`Page "home" cannot be ${newVisibility.toLowerCase()}`);
128
+ }
129
+ let changedSlug = undefined;
130
+ if (node.visibility === types_1.PageTreeNodeVisibility.Archived && newVisibility !== types_1.PageTreeNodeVisibility.Archived) {
171
131
  const readApi = this.createReadApi({ visibility: "all" });
172
- const existingNode = yield readApi.getNodeOrFail(id);
173
- if (!existingNode)
174
- throw new Error("Can't find page-tree-node with id");
175
- if (input.parentId) {
176
- let currentParentId = input.parentId;
177
- while (currentParentId !== null) {
178
- if (currentParentId === id) {
179
- throw new validation_exception_1.CometValidationException("A page cannot be its own parent or be moved under one of its descendants");
180
- }
181
- const parentNode = yield readApi.getNode(currentParentId);
182
- if (!parentNode)
183
- break;
184
- currentParentId = parentNode.parentId;
132
+ const existingNodePath = await readApi.nodePath(node);
133
+ const slug = node.slug;
134
+ let slugIncrement = 0;
135
+ while (true) {
136
+ const nextSlugToTest = slugIncrement ? `${slug}-${slugIncrement}` : slug;
137
+ const newPath = this.newPathForSlug(existingNodePath, nextSlugToTest);
138
+ const nodeWithSamePath = await this.nodeWithSamePath(newPath, node.scope);
139
+ if (!nodeWithSamePath) {
140
+ break;
185
141
  }
142
+ slugIncrement++;
186
143
  }
187
- const requestedPath = yield this.pathForParentAndSlug(input.parentId, existingNode.slug);
188
- if (this.config.reservedPaths.includes(requestedPath)) {
189
- throw new validation_exception_1.CometValidationException("Reserved path");
190
- }
191
- let newSlug;
192
- const nodeWithSamePath = yield this.nodeWithSamePath(requestedPath, existingNode.scope);
193
- if (nodeWithSamePath && nodeWithSamePath.id !== existingNode.id) {
194
- newSlug = yield this.findNextAvailableSlug(existingNode.slug, input.parentId, existingNode.scope);
195
- }
196
- const parentId = input.parentId;
197
- if (input.pos !== existingNode.pos || input.parentId !== existingNode.parentId) {
198
- const parent = parentId ? yield this.pageTreeRepository.findOneOrFail(parentId) : null;
199
- yield this.entityManager.persistAndFlush(existingNode.assign({ parent, parentId, pos: input.pos, slug: newSlug !== null && newSlug !== void 0 ? newSlug : existingNode.slug }));
200
- const qb = this.pageTreeRepository
201
- .createQueryBuilder()
202
- .select(["id", "pos"])
203
- .where({
204
- pos: { $gte: input.pos },
205
- id: { $ne: id },
206
- parentId,
207
- });
208
- if (parentId) {
209
- qb.andWhere({ parentId });
144
+ changedSlug = slugIncrement ? `${slug}-${slugIncrement}` : slug;
145
+ }
146
+ node.assign({ visibility: newVisibility, slug: changedSlug ?? node.slug });
147
+ // TODO flush shouldn't happen here, remove in a major version
148
+ await this.entityManager.flush();
149
+ }
150
+ async updateNodePosition(id, input) {
151
+ const readApi = this.createReadApi({ visibility: "all" });
152
+ const existingNode = await readApi.getNodeOrFail(id);
153
+ if (!existingNode) {
154
+ throw new Error("Can't find page-tree-node with id");
155
+ }
156
+ if (input.parentId) {
157
+ let currentParentId = input.parentId;
158
+ while (currentParentId !== null) {
159
+ if (currentParentId === id) {
160
+ throw new validation_exception_1.CometValidationException("A page cannot be its own parent or be moved under one of its descendants");
210
161
  }
211
- if (existingNode.scope) {
212
- qb.andWhere({ scope: existingNode.scope });
162
+ const parentNode = await readApi.getNode(currentParentId);
163
+ if (!parentNode) {
164
+ break;
213
165
  }
214
- const nodesToIncrement = yield qb.getResultList();
215
- yield this.entityManager.persistAndFlush(nodesToIncrement.map((c) => c.assign({ pos: c.pos + 1 })));
166
+ currentParentId = parentNode.parentId;
216
167
  }
217
- return readApi.getNodeOrFail(existingNode.id);
218
- });
219
- }
220
- updateNodeSlug(id, slug) {
221
- return __awaiter(this, void 0, void 0, function* () {
222
- const pageTreeReadApi = this.createReadApi({
223
- visibility: "all",
168
+ }
169
+ const requestedPath = await this.pathForParentAndSlug(input.parentId, existingNode.slug);
170
+ if (this.config.reservedPaths.includes(requestedPath)) {
171
+ throw new validation_exception_1.CometValidationException("Reserved path");
172
+ }
173
+ let newSlug;
174
+ const nodeWithSamePath = await this.nodeWithSamePath(requestedPath, existingNode.scope);
175
+ if (nodeWithSamePath && nodeWithSamePath.id !== existingNode.id) {
176
+ newSlug = await this.findNextAvailableSlug(existingNode.slug, input.parentId, existingNode.scope);
177
+ }
178
+ const parentId = input.parentId;
179
+ if (input.pos !== existingNode.pos || input.parentId !== existingNode.parentId) {
180
+ const parent = parentId ? await this.pageTreeRepository.findOneOrFail(parentId) : null;
181
+ await this.entityManager.persistAndFlush(existingNode.assign({ parent, parentId, pos: input.pos, slug: newSlug ?? existingNode.slug }));
182
+ const qb = this.pageTreeRepository
183
+ .createQueryBuilder()
184
+ .select(["id", "pos"])
185
+ .where({
186
+ pos: { $gte: input.pos },
187
+ id: { $ne: id },
188
+ parentId,
224
189
  });
225
- const node = yield pageTreeReadApi.getNodeOrFail(id);
226
- if (node.slug === "home" && slug !== "home") {
227
- throw new Error(`Slug of page "home" cannot be changed`);
190
+ if (parentId) {
191
+ qb.andWhere({ parentId });
228
192
  }
229
- const requestedPath = yield this.pathForParentAndSlug(node.parentId, slug);
230
- const nodeWithSamePath = yield this.nodeWithSamePath(requestedPath, node.scope);
231
- if (nodeWithSamePath && nodeWithSamePath.id !== node.id) {
232
- throw new Error("Requested slug is already taken");
193
+ if (existingNode.scope) {
194
+ qb.andWhere({ scope: existingNode.scope });
233
195
  }
234
- yield this.entityManager.persistAndFlush(node.assign({ slug: slug }));
235
- return pageTreeReadApi.getNodeOrFail(id);
236
- });
196
+ const nodesToIncrement = await qb.getResultList();
197
+ await this.entityManager.persistAndFlush(nodesToIncrement.map((c) => c.assign({ pos: c.pos + 1 })));
198
+ }
199
+ return readApi.getNodeOrFail(existingNode.id);
237
200
  }
238
- updateCategory(id, category) {
239
- return __awaiter(this, void 0, void 0, function* () {
240
- const readApi = this.createReadApi({ visibility: "all" });
241
- const node = yield readApi.getNodeOrFail(id);
242
- if (!node) {
243
- throw new Error("Can't find page-tree-node with id");
244
- }
245
- const descendants = yield readApi.getDescendants(node);
246
- yield this.pageTreeRepository
247
- .createQueryBuilder()
248
- .update({ category })
249
- .where({ id: { $in: descendants.map((node) => node.id) } })
250
- .execute();
251
- const rootNodes = yield readApi.pageTreeRootNodeList({ category, scope: node.scope });
252
- // 0 is added to avoid negative infinity for empty array
253
- const lastPosition = Math.max(0, ...rootNodes.map((node) => node.pos)) + 1;
254
- yield this.entityManager.persistAndFlush(node.assign({ category, parent: null, parentId: null, pos: lastPosition }));
201
+ async updateNodeSlug(id, slug) {
202
+ const pageTreeReadApi = this.createReadApi({
203
+ visibility: "all",
255
204
  });
205
+ const node = await pageTreeReadApi.getNodeOrFail(id);
206
+ if (node.slug === "home" && slug !== "home") {
207
+ throw new Error(`Slug of page "home" cannot be changed`);
208
+ }
209
+ const requestedPath = await this.pathForParentAndSlug(node.parentId, slug);
210
+ const nodeWithSamePath = await this.nodeWithSamePath(requestedPath, node.scope);
211
+ if (nodeWithSamePath && nodeWithSamePath.id !== node.id) {
212
+ throw new Error("Requested slug is already taken");
213
+ }
214
+ await this.entityManager.persistAndFlush(node.assign({ slug: slug }));
215
+ return pageTreeReadApi.getNodeOrFail(id);
256
216
  }
257
- delete(pageTreeNode) {
258
- return __awaiter(this, void 0, void 0, function* () {
259
- if (pageTreeNode.slug === "home") {
260
- throw new Error(`Page "home" cannot be deleted`);
261
- }
262
- const readApi = this.createReadApi();
263
- const childNodes = yield readApi.getChildNodes(pageTreeNode);
264
- // recursively delete all child nodes
265
- for (const childNode of childNodes) {
266
- yield this.delete(childNode);
267
- }
268
- // 1. Delete all attached documents
269
- const attachedDocuments = yield this.attachedDocumentsRepository.find({ pageTreeNodeId: pageTreeNode.id });
270
- for (const attachedDocument of attachedDocuments) {
271
- if (attachedDocument.id) {
272
- try {
273
- const repository = this.entityManager.getRepository(attachedDocument.type);
274
- const document = yield repository.findOneOrFail(attachedDocument.documentId);
275
- yield this.entityManager.removeAndFlush(document);
276
- yield this.entityManager.removeAndFlush(attachedDocument);
277
- }
278
- catch (_a) {
279
- throw new Error(`documentType ${attachedDocument.type} and documentId ${attachedDocument.id} cannot resolve`);
280
- }
217
+ async updateCategory(id, category) {
218
+ const readApi = this.createReadApi({ visibility: "all" });
219
+ const node = await readApi.getNodeOrFail(id);
220
+ if (!node) {
221
+ throw new Error("Can't find page-tree-node with id");
222
+ }
223
+ const descendants = await readApi.getDescendants(node);
224
+ await this.pageTreeRepository
225
+ .createQueryBuilder()
226
+ .update({ category })
227
+ .where({ id: { $in: descendants.map((node) => node.id) } })
228
+ .execute();
229
+ const rootNodes = await readApi.pageTreeRootNodeList({ category, scope: node.scope });
230
+ // 0 is added to avoid negative infinity for empty array
231
+ const lastPosition = Math.max(0, ...rootNodes.map((node) => node.pos)) + 1;
232
+ await this.entityManager.persistAndFlush(node.assign({ category, parent: null, parentId: null, pos: lastPosition }));
233
+ }
234
+ async delete(pageTreeNode) {
235
+ if (pageTreeNode.slug === "home") {
236
+ throw new Error(`Page "home" cannot be deleted`);
237
+ }
238
+ const readApi = this.createReadApi();
239
+ const childNodes = await readApi.getChildNodes(pageTreeNode);
240
+ // recursively delete all child nodes
241
+ for (const childNode of childNodes) {
242
+ await this.delete(childNode);
243
+ }
244
+ // 1. Delete all attached documents
245
+ const attachedDocuments = await this.attachedDocumentsRepository.find({ pageTreeNodeId: pageTreeNode.id });
246
+ for (const attachedDocument of attachedDocuments) {
247
+ if (attachedDocument.id) {
248
+ try {
249
+ const repository = this.entityManager.getRepository(attachedDocument.type);
250
+ const document = await repository.findOneOrFail(attachedDocument.documentId);
251
+ await this.entityManager.removeAndFlush(document);
252
+ await this.entityManager.removeAndFlush(attachedDocument);
253
+ }
254
+ catch {
255
+ throw new Error(`documentType ${attachedDocument.type} and documentId ${attachedDocument.id} cannot resolve`);
281
256
  }
282
257
  }
283
- // 2. Delete page tree node itself
284
- try {
285
- yield this.entityManager.removeAndFlush(pageTreeNode);
286
- return true;
287
- }
288
- catch (_b) {
289
- return false;
290
- }
291
- });
258
+ }
259
+ // 2. Delete page tree node itself
260
+ try {
261
+ await this.entityManager.removeAndFlush(pageTreeNode);
262
+ return true;
263
+ }
264
+ catch {
265
+ return false;
266
+ }
292
267
  }
293
- resolveDocument(documentType, documentId) {
294
- return __awaiter(this, void 0, void 0, function* () {
295
- try {
296
- const repository = this.entityManager.getRepository(documentType);
297
- const document = yield repository.findOne(documentId);
298
- return document !== null && document !== void 0 ? document : null;
299
- }
300
- catch (_a) {
301
- throw new Error(`documentType ${documentType} and documentId ${documentId} cannot resolve`);
302
- }
303
- });
268
+ async resolveDocument(documentType, documentId) {
269
+ try {
270
+ const repository = this.entityManager.getRepository(documentType);
271
+ const document = await repository.findOne(documentId);
272
+ return document ?? null;
273
+ }
274
+ catch {
275
+ throw new Error(`documentType ${documentType} and documentId ${documentId} cannot resolve`);
276
+ }
304
277
  }
305
- getAttachedDocuments(pageTreeNodeId) {
306
- return __awaiter(this, void 0, void 0, function* () {
307
- return this.attachedDocumentsRepository.find({ pageTreeNodeId: pageTreeNodeId });
308
- });
278
+ async getAttachedDocuments(pageTreeNodeId) {
279
+ return this.attachedDocumentsRepository.find({ pageTreeNodeId: pageTreeNodeId });
309
280
  }
310
- getActiveAttachedDocument(pageTreeNodeId, activeType) {
311
- return __awaiter(this, void 0, void 0, function* () {
312
- const node = yield this.pageTreeRepository.findOneOrFail(pageTreeNodeId);
313
- if (node.documentType !== activeType) {
314
- return null;
315
- }
316
- const activeDocument = yield this.attachedDocumentsRepository.findOne({ pageTreeNodeId: pageTreeNodeId, type: activeType });
317
- if (!activeDocument) {
318
- return null;
319
- }
320
- return activeDocument;
321
- });
281
+ async getActiveAttachedDocument(pageTreeNodeId, activeType) {
282
+ const node = await this.pageTreeRepository.findOneOrFail(pageTreeNodeId);
283
+ if (node.documentType !== activeType) {
284
+ return null;
285
+ }
286
+ const activeDocument = await this.attachedDocumentsRepository.findOne({ pageTreeNodeId: pageTreeNodeId, type: activeType });
287
+ if (!activeDocument) {
288
+ return null;
289
+ }
290
+ return activeDocument;
322
291
  }
323
- attachDocument(attachedDocumentInput, pageTreeId) {
324
- return __awaiter(this, void 0, void 0, function* () {
325
- const node = yield this.pageTreeRepository.findOne(pageTreeId);
326
- if (!node) {
327
- throw new Error(`Can't find page-tree-node with id ${pageTreeId}`);
328
- }
329
- const resolvedDocument = yield this.resolveDocument(attachedDocumentInput.type, attachedDocumentInput.id);
330
- if (!resolvedDocument) {
331
- throw new Error(`The assigned document does not exist or is not of type ${attachedDocumentInput.type}`);
332
- }
333
- // check if document is already attached and attach if not
334
- const attachedDocument = yield this.attachedDocumentsRepository.findOne({ pageTreeNodeId: node.id, documentId: attachedDocumentInput.id });
335
- if (!attachedDocument) {
336
- this.entityManager.persist(this.attachedDocumentsRepository.create({
337
- pageTreeNodeId: node.id,
338
- type: attachedDocumentInput.type,
339
- documentId: attachedDocumentInput.id,
340
- }));
341
- }
342
- });
292
+ async attachDocument(attachedDocumentInput, pageTreeId) {
293
+ const node = await this.pageTreeRepository.findOne(pageTreeId);
294
+ if (!node) {
295
+ throw new Error(`Can't find page-tree-node with id ${pageTreeId}`);
296
+ }
297
+ const resolvedDocument = await this.resolveDocument(attachedDocumentInput.type, attachedDocumentInput.id);
298
+ if (!resolvedDocument) {
299
+ throw new Error(`The assigned document does not exist or is not of type ${attachedDocumentInput.type}`);
300
+ }
301
+ // check if document is already attached and attach if not
302
+ const attachedDocument = await this.attachedDocumentsRepository.findOne({ pageTreeNodeId: node.id, documentId: attachedDocumentInput.id });
303
+ if (!attachedDocument) {
304
+ this.entityManager.persist(this.attachedDocumentsRepository.create({
305
+ pageTreeNodeId: node.id,
306
+ type: attachedDocumentInput.type,
307
+ documentId: attachedDocumentInput.id,
308
+ }));
309
+ }
343
310
  }
344
- pathForParentAndSlug(parentId, slug) {
345
- return __awaiter(this, void 0, void 0, function* () {
346
- const readApi = this.createReadApi({ visibility: "all" });
347
- let parentPath = parentId ? yield readApi.nodePathById(parentId) : "";
348
- if (parentPath === "/") {
349
- parentPath = "/home";
350
- }
351
- return `${parentPath}/${slug}`;
352
- });
311
+ async pathForParentAndSlug(parentId, slug) {
312
+ const readApi = this.createReadApi({ visibility: "all" });
313
+ let parentPath = parentId ? await readApi.nodePathById(parentId) : "";
314
+ if (parentPath === "/") {
315
+ parentPath = "/home";
316
+ }
317
+ return `${parentPath}/${slug}`;
353
318
  }
354
- nodeWithSamePath(path, scope) {
355
- return __awaiter(this, void 0, void 0, function* () {
356
- return this.createReadApi({ visibility: [types_1.PageTreeNodeVisibility.Published, types_1.PageTreeNodeVisibility.Unpublished] }).getNodeByPath(path, {
357
- scope,
358
- }); // Slugs of archived pages can be reused
359
- });
319
+ async nodeWithSamePath(path, scope) {
320
+ return this.createReadApi({ visibility: [types_1.PageTreeNodeVisibility.Published, types_1.PageTreeNodeVisibility.Unpublished] }).getNodeByPath(path, {
321
+ scope,
322
+ }); // Slugs of archived pages can be reused
360
323
  }
361
324
  createReadApi(options = {}) {
362
325
  return (0, page_tree_read_api_1.createReadApi)({
@@ -369,17 +332,15 @@ let PageTreeService = class PageTreeService {
369
332
  const newPath = `${parentPath || ""}/${slug}`;
370
333
  return newPath;
371
334
  }
372
- findNextAvailableSlug(slug_1) {
373
- return __awaiter(this, arguments, void 0, function* (slug, parentId = null, scope) {
374
- let counter = 1;
375
- let newSlug, newPath;
376
- do {
377
- newSlug = `${slug}-${counter}`;
378
- newPath = yield this.pathForParentAndSlug(parentId, newSlug);
379
- counter++;
380
- } while (yield this.nodeWithSamePath(newPath, scope));
381
- return newSlug;
382
- });
335
+ async findNextAvailableSlug(slug, parentId = null, scope) {
336
+ let counter = 1;
337
+ let newSlug, newPath;
338
+ do {
339
+ newSlug = `${slug}-${counter}`;
340
+ newPath = await this.pathForParentAndSlug(parentId, newSlug);
341
+ counter++;
342
+ } while (await this.nodeWithSamePath(newPath, scope));
343
+ return newSlug;
383
344
  }
384
345
  };
385
346
  exports.PageTreeService = PageTreeService;