@paroicms/server 1.78.1 → 1.80.0

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 (449) hide show
  1. package/README.md +4 -4
  2. package/dist/{modules/core → bo-backend}/account/account.formatters.js +1 -1
  3. package/dist/bo-backend/account/account.formatters.js.map +1 -0
  4. package/dist/{modules/core → bo-backend}/account/account.queries.d.ts +1 -1
  5. package/dist/{modules/core → bo-backend}/account/account.queries.js +58 -95
  6. package/dist/bo-backend/account/account.queries.js.map +1 -0
  7. package/dist/bo-backend/account/account.resolver.d.ts +3 -0
  8. package/dist/{modules/core → bo-backend}/account/account.resolver.js +18 -18
  9. package/dist/bo-backend/account/account.resolver.js.map +1 -0
  10. package/dist/{modules/core → bo-backend}/auth/auth.helper.d.ts +2 -1
  11. package/dist/{modules/core → bo-backend}/auth/auth.helper.js +4 -3
  12. package/dist/bo-backend/auth/auth.helper.js.map +1 -0
  13. package/dist/{modules/core → bo-backend}/auth/auth.service.d.ts +1 -1
  14. package/dist/{modules/core → bo-backend}/auth/auth.service.js +5 -5
  15. package/dist/bo-backend/auth/auth.service.js.map +1 -0
  16. package/dist/bo-backend/auth/auth.types.js.map +1 -0
  17. package/dist/bo-backend/backup/backup.controller.d.ts +3 -0
  18. package/dist/{modules/core → bo-backend}/backup/backup.controller.js +6 -6
  19. package/dist/bo-backend/backup/backup.controller.js.map +1 -0
  20. package/dist/{modules/core → bo-backend}/backup/backup.helper.js +2 -2
  21. package/dist/bo-backend/backup/backup.helper.js.map +1 -0
  22. package/dist/{modules/core → bo-backend}/backup/backup.resolver.d.ts +2 -2
  23. package/dist/{modules/core → bo-backend}/backup/backup.resolver.js +3 -3
  24. package/dist/bo-backend/backup/backup.resolver.js.map +1 -0
  25. package/dist/bo-backend/document/document.helper.js.map +1 -0
  26. package/dist/bo-backend/document/document.resolver.d.ts +3 -0
  27. package/dist/bo-backend/document/document.resolver.extend.d.ts +3 -0
  28. package/dist/{modules/core → bo-backend}/document/document.resolver.extend.js +5 -5
  29. package/dist/bo-backend/document/document.resolver.extend.js.map +1 -0
  30. package/dist/{modules/core → bo-backend}/document/document.resolver.js +16 -16
  31. package/dist/bo-backend/document/document.resolver.js.map +1 -0
  32. package/dist/{modules/core → bo-backend}/document/load-documents.queries.d.ts +1 -1
  33. package/dist/bo-backend/document/load-documents.queries.js +90 -0
  34. package/dist/bo-backend/document/load-documents.queries.js.map +1 -0
  35. package/dist/{modules/core → bo-backend}/document/save-documents.queries.d.ts +1 -1
  36. package/dist/bo-backend/document/save-documents.queries.js +206 -0
  37. package/dist/bo-backend/document/save-documents.queries.js.map +1 -0
  38. package/dist/bo-backend/fields/_fields.helpers.js.map +1 -0
  39. package/dist/{modules/core → bo-backend}/fields/fields.resolver.d.ts +2 -2
  40. package/dist/{modules/core → bo-backend}/fields/fields.resolver.js +11 -11
  41. package/dist/bo-backend/fields/fields.resolver.js.map +1 -0
  42. package/dist/{modules/core → bo-backend}/fields/load-fields-of.queries.d.ts +1 -1
  43. package/dist/{modules/core → bo-backend}/fields/load-fields-of.queries.js +10 -12
  44. package/dist/bo-backend/fields/load-fields-of.queries.js.map +1 -0
  45. package/dist/{modules/core → bo-backend}/fields/load-fields.queries.d.ts +1 -1
  46. package/dist/{modules/core → bo-backend}/fields/load-fields.queries.js +14 -26
  47. package/dist/bo-backend/fields/load-fields.queries.js.map +1 -0
  48. package/dist/{modules/core → bo-backend}/fields/preprocess-fields.d.ts +2 -2
  49. package/dist/{modules/core → bo-backend}/fields/preprocess-fields.js +1 -1
  50. package/dist/bo-backend/fields/preprocess-fields.js.map +1 -0
  51. package/dist/{modules/core → bo-backend}/fields/save-fields.queries.d.ts +1 -1
  52. package/dist/{modules/core → bo-backend}/fields/save-fields.queries.js +27 -39
  53. package/dist/bo-backend/fields/save-fields.queries.js.map +1 -0
  54. package/dist/{modules/core → bo-backend}/labeling/labeling.queries.d.ts +1 -1
  55. package/dist/bo-backend/labeling/labeling.queries.js +47 -0
  56. package/dist/bo-backend/labeling/labeling.queries.js.map +1 -0
  57. package/dist/bo-backend/labeling/labeling.resolver.d.ts +3 -0
  58. package/dist/{modules/core → bo-backend}/labeling/labeling.resolver.js +2 -2
  59. package/dist/bo-backend/labeling/labeling.resolver.js.map +1 -0
  60. package/dist/bo-backend/login/login.controller.d.ts +3 -0
  61. package/dist/bo-backend/login/login.controller.js +31 -0
  62. package/dist/bo-backend/login/login.controller.js.map +1 -0
  63. package/dist/{modules/core → bo-backend}/media/add-media-to-node.d.ts +1 -1
  64. package/dist/{modules/core → bo-backend}/media/add-media-to-node.js +4 -4
  65. package/dist/bo-backend/media/add-media-to-node.js.map +1 -0
  66. package/dist/bo-backend/media/media-upload.controller.d.ts +3 -0
  67. package/dist/{modules/core → bo-backend}/media/media-upload.controller.js +4 -5
  68. package/dist/bo-backend/media/media-upload.controller.js.map +1 -0
  69. package/dist/{modules/core → bo-backend}/media/media.d.ts +1 -1
  70. package/dist/{modules/core → bo-backend}/media/media.js +2 -2
  71. package/dist/bo-backend/media/media.js.map +1 -0
  72. package/dist/bo-backend/media/media.resolver.d.ts +3 -0
  73. package/dist/bo-backend/media/media.resolver.extend.d.ts +3 -0
  74. package/dist/{modules/core → bo-backend}/media/media.resolver.extend.js +2 -2
  75. package/dist/bo-backend/media/media.resolver.extend.js.map +1 -0
  76. package/dist/{modules/core → bo-backend}/media/media.resolver.js +20 -20
  77. package/dist/bo-backend/media/media.resolver.js.map +1 -0
  78. package/dist/{modules/core → bo-backend}/node/node.queries.d.ts +2 -2
  79. package/dist/{modules/core → bo-backend}/node/node.queries.js +40 -69
  80. package/dist/bo-backend/node/node.queries.js.map +1 -0
  81. package/dist/bo-backend/node/node.resolver.d.ts +3 -0
  82. package/dist/bo-backend/node/node.resolver.extend.d.ts +3 -0
  83. package/dist/{modules/core → bo-backend}/node/node.resolver.extend.js +2 -2
  84. package/dist/bo-backend/node/node.resolver.extend.js.map +1 -0
  85. package/dist/{modules/core → bo-backend}/node/node.resolver.js +8 -8
  86. package/dist/bo-backend/node/node.resolver.js.map +1 -0
  87. package/dist/{modules/core → bo-backend}/node/ordered-node.queries.d.ts +1 -1
  88. package/dist/{modules/core → bo-backend}/node/ordered-node.queries.js +13 -25
  89. package/dist/bo-backend/node/ordered-node.queries.js.map +1 -0
  90. package/dist/{modules/core → bo-backend}/nodel/nodel-wrap.formatters.d.ts +1 -1
  91. package/dist/{modules/core → bo-backend}/nodel/nodel-wrap.formatters.js +1 -1
  92. package/dist/bo-backend/nodel/nodel-wrap.formatters.js.map +1 -0
  93. package/dist/bo-backend/nodel/nodel-wrap.resolver.d.ts +3 -0
  94. package/dist/{modules/core → bo-backend}/nodel/nodel-wrap.resolver.js +20 -25
  95. package/dist/bo-backend/nodel/nodel-wrap.resolver.js.map +1 -0
  96. package/dist/{modules/core → bo-backend}/nodel/nodel.queries.d.ts +3 -3
  97. package/dist/{modules/core → bo-backend}/nodel/nodel.queries.js +57 -69
  98. package/dist/bo-backend/nodel/nodel.queries.js.map +1 -0
  99. package/dist/bo-backend/part/part-node.queries.d.ts +9 -0
  100. package/dist/bo-backend/part/part-node.queries.js +38 -0
  101. package/dist/bo-backend/part/part-node.queries.js.map +1 -0
  102. package/dist/{modules/core → bo-backend}/part/part.queries.d.ts +1 -1
  103. package/dist/{modules/core → bo-backend}/part/part.queries.js +89 -108
  104. package/dist/bo-backend/part/part.queries.js.map +1 -0
  105. package/dist/bo-backend/part/part.resolver.d.ts +3 -0
  106. package/dist/bo-backend/part/part.resolver.extend.d.ts +3 -0
  107. package/dist/{modules/core → bo-backend}/part/part.resolver.extend.js +4 -4
  108. package/dist/bo-backend/part/part.resolver.extend.js.map +1 -0
  109. package/dist/{modules/core → bo-backend}/part/part.resolver.js +10 -10
  110. package/dist/bo-backend/part/part.resolver.js.map +1 -0
  111. package/dist/bo-backend/site-constants/site-constants.resolver.d.ts +3 -0
  112. package/dist/{modules/core → bo-backend}/site-constants/site-constants.resolver.js +9 -9
  113. package/dist/bo-backend/site-constants/site-constants.resolver.js.map +1 -0
  114. package/dist/{modules/core → bo-backend}/unprotected/unprotected.resolver.d.ts +2 -2
  115. package/dist/{modules/core → bo-backend}/unprotected/unprotected.resolver.js +2 -2
  116. package/dist/bo-backend/unprotected/unprotected.resolver.js.map +1 -0
  117. package/dist/common/child-ordering-query.d.ts +2 -3
  118. package/dist/common/child-ordering-query.js +14 -18
  119. package/dist/common/child-ordering-query.js.map +1 -1
  120. package/dist/common/data-format.d.ts +3 -3
  121. package/dist/common/data-format.js.map +1 -1
  122. package/dist/common/serve-text-or.d.ts +3 -5
  123. package/dist/common/serve-text-or.js +7 -16
  124. package/dist/common/serve-text-or.js.map +1 -1
  125. package/dist/common/text-cache.js +1 -1
  126. package/dist/common/text-cache.js.map +1 -1
  127. package/dist/express/http-helpers.d.ts +17 -18
  128. package/dist/express/http-helpers.js +26 -25
  129. package/dist/express/http-helpers.js.map +1 -1
  130. package/dist/express/http-redirection-middleware.d.ts +2 -0
  131. package/dist/express/http-redirection-middleware.js +11 -0
  132. package/dist/express/http-redirection-middleware.js.map +1 -0
  133. package/dist/express/{create-redirect-url.js → http-redirection-url.js} +1 -1
  134. package/dist/express/http-redirection-url.js.map +1 -0
  135. package/dist/express/pa-http-context.d.ts +3 -0
  136. package/dist/express/pa-http-context.js +39 -0
  137. package/dist/express/pa-http-context.js.map +1 -0
  138. package/dist/express/public-api-middlewares.d.ts +3 -2
  139. package/dist/express/public-api-middlewares.js +9 -16
  140. package/dist/express/public-api-middlewares.js.map +1 -1
  141. package/dist/express/route-handler-wrapper.d.ts +9 -2
  142. package/dist/express/route-handler-wrapper.js +81 -28
  143. package/dist/express/route-handler-wrapper.js.map +1 -1
  144. package/dist/express/serve-file.d.ts +8 -0
  145. package/dist/express/serve-file.js +58 -0
  146. package/dist/express/serve-file.js.map +1 -0
  147. package/dist/express/site-middleware.d.ts +3 -0
  148. package/dist/express/site-middleware.js +83 -0
  149. package/dist/express/site-middleware.js.map +1 -0
  150. package/dist/express/static-files-middlewares.d.ts +5 -4
  151. package/dist/express/static-files-middlewares.js +48 -89
  152. package/dist/express/static-files-middlewares.js.map +1 -1
  153. package/dist/graphql/apollo-server-init.d.ts +1 -1
  154. package/dist/graphql/apollo-server-init.js +15 -15
  155. package/dist/graphql/apollo-server-init.js.map +1 -1
  156. package/dist/graphql/complexity-plugin.d.ts +1 -1
  157. package/dist/graphql/error-converter-plugin.d.ts +1 -1
  158. package/dist/graphql/error-converter-plugin.js.map +1 -1
  159. package/dist/{modules → graphql}/graphql.types.d.ts +2 -3
  160. package/dist/graphql/graphql.types.js.map +1 -0
  161. package/dist/helpers/cors-middleware.d.ts +6 -2
  162. package/dist/helpers/cors-middleware.js.map +1 -1
  163. package/dist/helpers/make-backend-plugin-service.js +8 -8
  164. package/dist/helpers/make-backend-plugin-service.js.map +1 -1
  165. package/dist/helpers/running-instance-connector.js +7 -12
  166. package/dist/helpers/running-instance-connector.js.map +1 -1
  167. package/dist/index.js +11 -82
  168. package/dist/index.js.map +1 -1
  169. package/dist/{modules/core/account-auth → oauth}/account-auth.service.d.ts +1 -1
  170. package/dist/{modules/core/account-auth → oauth}/account-auth.service.js +1 -1
  171. package/dist/oauth/account-auth.service.js.map +1 -0
  172. package/dist/{modules/core/account-auth → oauth}/account-auth.strategy.js +1 -1
  173. package/dist/oauth/account-auth.strategy.js.map +1 -0
  174. package/dist/oauth/oauth-middleware.d.ts +2 -2
  175. package/dist/oauth/oauth-middleware.js +19 -14
  176. package/dist/oauth/oauth-middleware.js.map +1 -1
  177. package/dist/oauth/oauth2-client.controller.d.ts +1 -1
  178. package/dist/oauth/oauth2-client.controller.js +4 -4
  179. package/dist/oauth/oauth2-client.controller.js.map +1 -1
  180. package/dist/{modules/public-api → public-api}/mail/validate-recaptcha-response.d.ts +1 -1
  181. package/dist/{modules/public-api → public-api}/mail/validate-recaptcha-response.js +1 -1
  182. package/dist/public-api/mail/validate-recaptcha-response.js.map +1 -0
  183. package/dist/public-api/password-reset/password-reset.controller.d.ts +6 -0
  184. package/dist/public-api/password-reset/password-reset.controller.js +46 -0
  185. package/dist/public-api/password-reset/password-reset.controller.js.map +1 -0
  186. package/dist/{modules/public-api → public-api}/password-reset/password-reset.service.d.ts +1 -1
  187. package/dist/{modules/public-api → public-api}/password-reset/password-reset.service.js +21 -19
  188. package/dist/public-api/password-reset/password-reset.service.js.map +1 -0
  189. package/dist/public-api/public-api-controller.d.ts +7 -0
  190. package/dist/public-api/public-api-controller.js +6 -0
  191. package/dist/public-api/public-api-controller.js.map +1 -0
  192. package/dist/{modules/public-api → public-api}/public-api-rendering.d.ts +4 -9
  193. package/dist/{modules/public-api → public-api}/public-api-rendering.js +24 -22
  194. package/dist/public-api/public-api-rendering.js.map +1 -0
  195. package/dist/{modules/public-api → public-api}/search-text/search-text.queries.d.ts +3 -3
  196. package/dist/public-api/search-text/search-text.queries.js +82 -0
  197. package/dist/public-api/search-text/search-text.queries.js.map +1 -0
  198. package/dist/public-payload/breadcrumb.queries.js +2 -2
  199. package/dist/public-payload/breadcrumb.queries.js.map +1 -1
  200. package/dist/public-payload/create-doc-drop.js +3 -3
  201. package/dist/public-payload/create-doc-drop.js.map +1 -1
  202. package/dist/public-payload/doc-values.queries.d.ts +2 -2
  203. package/dist/public-payload/doc-values.queries.js +33 -34
  204. package/dist/public-payload/doc-values.queries.js.map +1 -1
  205. package/dist/public-payload/excerpt.queries.js +9 -8
  206. package/dist/public-payload/excerpt.queries.js.map +1 -1
  207. package/dist/public-payload/field-values.js +3 -3
  208. package/dist/public-payload/field-values.js.map +1 -1
  209. package/dist/public-payload/get-siblings.queries.js +38 -47
  210. package/dist/public-payload/get-siblings.queries.js.map +1 -1
  211. package/dist/public-payload/load-default-image.js +1 -1
  212. package/dist/public-payload/load-default-image.js.map +1 -1
  213. package/dist/public-payload/parts.queries.js +34 -38
  214. package/dist/public-payload/parts.queries.js.map +1 -1
  215. package/dist/public-payload/site-payload.js +1 -1
  216. package/dist/public-payload/site-payload.js.map +1 -1
  217. package/dist/public-payload/taxonomies.queries.js +17 -15
  218. package/dist/public-payload/taxonomies.queries.js.map +1 -1
  219. package/dist/public-payload/translations.queries.js +6 -8
  220. package/dist/public-payload/translations.queries.js.map +1 -1
  221. package/dist/public-site/common-routes.controller.d.ts +4 -0
  222. package/dist/{modules/app.controller.js → public-site/common-routes.controller.js} +8 -7
  223. package/dist/public-site/common-routes.controller.js.map +1 -0
  224. package/dist/{modules/public-site → public-site}/feed/feed-generator.d.ts +2 -2
  225. package/dist/{modules/public-site → public-site}/feed/feed-generator.js +34 -28
  226. package/dist/public-site/feed/feed-generator.js.map +1 -0
  227. package/dist/public-site/feed/feed-helpers.js.map +1 -0
  228. package/dist/public-site/feed/feed.middleware.d.ts +3 -0
  229. package/dist/{modules/public-site → public-site}/feed/feed.middleware.js +16 -23
  230. package/dist/public-site/feed/feed.middleware.js.map +1 -0
  231. package/dist/public-site/helpers/format-date.helper.js.map +1 -0
  232. package/dist/{modules/public-site → public-site}/helpers/medias.helpers.d.ts +1 -1
  233. package/dist/{modules/public-site → public-site}/helpers/medias.helpers.js +1 -1
  234. package/dist/public-site/helpers/medias.helpers.js.map +1 -0
  235. package/dist/{modules/public-site → public-site}/liquidjs-filters/format-date.d.ts +1 -1
  236. package/dist/{modules/public-site → public-site}/liquidjs-filters/format-date.js +1 -1
  237. package/dist/public-site/liquidjs-filters/format-date.js.map +1 -0
  238. package/dist/{modules/public-site → public-site}/liquidjs-filters/format-number.d.ts +1 -1
  239. package/dist/{modules/public-site → public-site}/liquidjs-filters/format-number.js +1 -1
  240. package/dist/public-site/liquidjs-filters/format-number.js.map +1 -0
  241. package/dist/{modules/public-site → public-site}/liquidjs-filters/head-tags-filter.d.ts +2 -2
  242. package/dist/{modules/public-site → public-site}/liquidjs-filters/head-tags-filter.js +5 -5
  243. package/dist/public-site/liquidjs-filters/head-tags-filter.js.map +1 -0
  244. package/dist/{modules/public-site → public-site}/liquidjs-filters/image-zoom-url.d.ts +1 -1
  245. package/dist/{modules/public-site → public-site}/liquidjs-filters/image-zoom-url.js +3 -3
  246. package/dist/public-site/liquidjs-filters/image-zoom-url.js.map +1 -0
  247. package/dist/{modules/public-site → public-site}/liquidjs-filters/info-filter.js +1 -1
  248. package/dist/public-site/liquidjs-filters/info-filter.js.map +1 -0
  249. package/dist/{modules/public-site → public-site}/liquidjs-filters/inject-menu-items-data.d.ts +1 -1
  250. package/dist/{modules/public-site → public-site}/liquidjs-filters/inject-menu-items-data.js +2 -2
  251. package/dist/public-site/liquidjs-filters/inject-menu-items-data.js.map +1 -0
  252. package/dist/{modules/public-site → public-site}/liquidjs-filters/make-excerpt.js +1 -1
  253. package/dist/public-site/liquidjs-filters/make-excerpt.js.map +1 -0
  254. package/dist/{modules/public-site → public-site}/liquidjs-filters/obfuscate.d.ts +1 -1
  255. package/dist/public-site/liquidjs-filters/obfuscate.js.map +1 -0
  256. package/dist/{modules/public-site → public-site}/liquidjs-filters/open-graph-filter.d.ts +4 -4
  257. package/dist/{modules/public-site → public-site}/liquidjs-filters/open-graph-filter.js +2 -2
  258. package/dist/public-site/liquidjs-filters/open-graph-filter.js.map +1 -0
  259. package/dist/{modules/public-site → public-site}/liquidjs-filters/plugin-asset-url-filter.d.ts +1 -1
  260. package/dist/{modules/public-site → public-site}/liquidjs-filters/plugin-asset-url-filter.js +2 -2
  261. package/dist/public-site/liquidjs-filters/plugin-asset-url-filter.js.map +1 -0
  262. package/dist/{modules/public-site → public-site}/liquidjs-filters/translate-filter.d.ts +1 -1
  263. package/dist/{modules/public-site → public-site}/liquidjs-filters/translate-filter.js +1 -1
  264. package/dist/public-site/liquidjs-filters/translate-filter.js.map +1 -0
  265. package/dist/{modules/public-site → public-site}/liquidjs-tags/get-doc-tag.d.ts +1 -1
  266. package/dist/{modules/public-site → public-site}/liquidjs-tags/get-doc-tag.js +5 -5
  267. package/dist/public-site/liquidjs-tags/get-doc-tag.js.map +1 -0
  268. package/dist/{modules/public-site → public-site}/liquidjs-tags/get-docs-tag.d.ts +1 -1
  269. package/dist/{modules/public-site → public-site}/liquidjs-tags/get-docs-tag.js +6 -6
  270. package/dist/public-site/liquidjs-tags/get-docs-tag.js.map +1 -0
  271. package/dist/{modules/public-site → public-site}/liquidjs-tags/get-paginated-docs-tag.d.ts +5 -5
  272. package/dist/{modules/public-site → public-site}/liquidjs-tags/get-paginated-docs-tag.js +6 -6
  273. package/dist/public-site/liquidjs-tags/get-paginated-docs-tag.js.map +1 -0
  274. package/dist/{modules/public-site → public-site}/liquidjs-tags/use-image-tag.d.ts +1 -1
  275. package/dist/{modules/public-site → public-site}/liquidjs-tags/use-image-tag.js +3 -3
  276. package/dist/public-site/liquidjs-tags/use-image-tag.js.map +1 -0
  277. package/dist/public-site/media-serve/_media-serve-helpers.js.map +1 -0
  278. package/dist/public-site/media-serve/media-serve.controller.d.ts +5 -0
  279. package/dist/{modules/public-site → public-site}/media-serve/media-serve.controller.js +22 -22
  280. package/dist/public-site/media-serve/media-serve.controller.js.map +1 -0
  281. package/dist/{modules/public-site → public-site}/public-route/make-url.d.ts +1 -1
  282. package/dist/{modules/public-site → public-site}/public-route/make-url.js +46 -32
  283. package/dist/public-site/public-route/make-url.js.map +1 -0
  284. package/dist/{modules/public-site → public-site}/public-route/public-route-parser.d.ts +2 -2
  285. package/dist/{modules/public-site → public-site}/public-route/public-route-parser.js +7 -7
  286. package/dist/public-site/public-route/public-route-parser.js.map +1 -0
  287. package/dist/{modules/public-site → public-site}/public-route/raw-document-payload.d.ts +2 -2
  288. package/dist/public-site/public-route/raw-document-payload.js +77 -0
  289. package/dist/public-site/public-route/raw-document-payload.js.map +1 -0
  290. package/dist/public-site/public-site.middleware.d.ts +3 -0
  291. package/dist/public-site/public-site.middleware.js +55 -0
  292. package/dist/public-site/public-site.middleware.js.map +1 -0
  293. package/dist/{modules/public-site → public-site}/serve-document/serve-document.d.ts +3 -4
  294. package/dist/{modules/public-site → public-site}/serve-document/serve-document.js +7 -7
  295. package/dist/public-site/serve-document/serve-document.js.map +1 -0
  296. package/dist/public-site/serve-index-page.d.ts +5 -0
  297. package/dist/public-site/serve-index-page.js +26 -0
  298. package/dist/public-site/serve-index-page.js.map +1 -0
  299. package/dist/site-context/create-site-context.js +16 -16
  300. package/dist/site-context/create-site-context.js.map +1 -1
  301. package/dist/site-context/site-context.types.d.ts +2 -2
  302. package/dist/tsconfig.tsbuildinfo +1 -1
  303. package/package.json +13 -13
  304. package/dist/express/create-redirect-url.js.map +0 -1
  305. package/dist/express/small-middlewares.d.ts +0 -4
  306. package/dist/express/small-middlewares.js +0 -29
  307. package/dist/express/small-middlewares.js.map +0 -1
  308. package/dist/modules/app.controller.d.ts +0 -3
  309. package/dist/modules/app.controller.js.map +0 -1
  310. package/dist/modules/core/account/account.formatters.js.map +0 -1
  311. package/dist/modules/core/account/account.queries.js.map +0 -1
  312. package/dist/modules/core/account/account.resolver.d.ts +0 -3
  313. package/dist/modules/core/account/account.resolver.js.map +0 -1
  314. package/dist/modules/core/account-auth/account-auth.service.js.map +0 -1
  315. package/dist/modules/core/account-auth/account-auth.strategy.js.map +0 -1
  316. package/dist/modules/core/auth/auth.helper.js.map +0 -1
  317. package/dist/modules/core/auth/auth.service.js.map +0 -1
  318. package/dist/modules/core/auth/auth.types.js.map +0 -1
  319. package/dist/modules/core/backup/backup.controller.d.ts +0 -2
  320. package/dist/modules/core/backup/backup.controller.js.map +0 -1
  321. package/dist/modules/core/backup/backup.helper.js.map +0 -1
  322. package/dist/modules/core/backup/backup.resolver.js.map +0 -1
  323. package/dist/modules/core/document/document.helper.js.map +0 -1
  324. package/dist/modules/core/document/document.resolver.d.ts +0 -3
  325. package/dist/modules/core/document/document.resolver.extend.d.ts +0 -3
  326. package/dist/modules/core/document/document.resolver.extend.js.map +0 -1
  327. package/dist/modules/core/document/document.resolver.js.map +0 -1
  328. package/dist/modules/core/document/load-documents.queries.js +0 -104
  329. package/dist/modules/core/document/load-documents.queries.js.map +0 -1
  330. package/dist/modules/core/document/save-documents.queries.js +0 -296
  331. package/dist/modules/core/document/save-documents.queries.js.map +0 -1
  332. package/dist/modules/core/fields/_fields.helpers.js.map +0 -1
  333. package/dist/modules/core/fields/fields.resolver.js.map +0 -1
  334. package/dist/modules/core/fields/load-fields-of.queries.js.map +0 -1
  335. package/dist/modules/core/fields/load-fields.queries.js.map +0 -1
  336. package/dist/modules/core/fields/preprocess-fields.js.map +0 -1
  337. package/dist/modules/core/fields/save-fields.queries.js.map +0 -1
  338. package/dist/modules/core/labeling/labeling.queries.js +0 -53
  339. package/dist/modules/core/labeling/labeling.queries.js.map +0 -1
  340. package/dist/modules/core/labeling/labeling.resolver.d.ts +0 -3
  341. package/dist/modules/core/labeling/labeling.resolver.js.map +0 -1
  342. package/dist/modules/core/login/login.controller.d.ts +0 -2
  343. package/dist/modules/core/login/login.controller.js +0 -17
  344. package/dist/modules/core/login/login.controller.js.map +0 -1
  345. package/dist/modules/core/media/add-media-to-node.js.map +0 -1
  346. package/dist/modules/core/media/media-upload.controller.d.ts +0 -2
  347. package/dist/modules/core/media/media-upload.controller.js.map +0 -1
  348. package/dist/modules/core/media/media.js.map +0 -1
  349. package/dist/modules/core/media/media.resolver.d.ts +0 -3
  350. package/dist/modules/core/media/media.resolver.extend.d.ts +0 -3
  351. package/dist/modules/core/media/media.resolver.extend.js.map +0 -1
  352. package/dist/modules/core/media/media.resolver.js.map +0 -1
  353. package/dist/modules/core/node/node.queries.js.map +0 -1
  354. package/dist/modules/core/node/node.resolver.d.ts +0 -3
  355. package/dist/modules/core/node/node.resolver.extend.d.ts +0 -3
  356. package/dist/modules/core/node/node.resolver.extend.js.map +0 -1
  357. package/dist/modules/core/node/node.resolver.js.map +0 -1
  358. package/dist/modules/core/node/ordered-node.queries.js.map +0 -1
  359. package/dist/modules/core/nodel/nodel-wrap.formatters.js.map +0 -1
  360. package/dist/modules/core/nodel/nodel-wrap.resolver.d.ts +0 -3
  361. package/dist/modules/core/nodel/nodel-wrap.resolver.js.map +0 -1
  362. package/dist/modules/core/nodel/nodel.queries.js.map +0 -1
  363. package/dist/modules/core/part/part-node.queries.d.ts +0 -9
  364. package/dist/modules/core/part/part-node.queries.js +0 -59
  365. package/dist/modules/core/part/part-node.queries.js.map +0 -1
  366. package/dist/modules/core/part/part.queries.js.map +0 -1
  367. package/dist/modules/core/part/part.resolver.d.ts +0 -3
  368. package/dist/modules/core/part/part.resolver.extend.d.ts +0 -3
  369. package/dist/modules/core/part/part.resolver.extend.js.map +0 -1
  370. package/dist/modules/core/part/part.resolver.js.map +0 -1
  371. package/dist/modules/core/site-constants/site-constants.resolver.d.ts +0 -3
  372. package/dist/modules/core/site-constants/site-constants.resolver.js.map +0 -1
  373. package/dist/modules/core/unprotected/unprotected.resolver.js.map +0 -1
  374. package/dist/modules/graphql.types.js.map +0 -1
  375. package/dist/modules/public-api/mail/validate-recaptcha-response.js.map +0 -1
  376. package/dist/modules/public-api/partials/partials-params.dto.d.ts +0 -6
  377. package/dist/modules/public-api/partials/partials-params.dto.js +0 -41
  378. package/dist/modules/public-api/partials/partials-params.dto.js.map +0 -1
  379. package/dist/modules/public-api/password-reset/password-reset.controller.d.ts +0 -5
  380. package/dist/modules/public-api/password-reset/password-reset.controller.js +0 -22
  381. package/dist/modules/public-api/password-reset/password-reset.controller.js.map +0 -1
  382. package/dist/modules/public-api/password-reset/password-reset.dto.d.ts +0 -3
  383. package/dist/modules/public-api/password-reset/password-reset.dto.js +0 -29
  384. package/dist/modules/public-api/password-reset/password-reset.dto.js.map +0 -1
  385. package/dist/modules/public-api/password-reset/password-reset.service.js.map +0 -1
  386. package/dist/modules/public-api/public-api-controller.d.ts +0 -8
  387. package/dist/modules/public-api/public-api-controller.js +0 -6
  388. package/dist/modules/public-api/public-api-controller.js.map +0 -1
  389. package/dist/modules/public-api/public-api-rendering.js.map +0 -1
  390. package/dist/modules/public-api/search-text/search-text.dto.d.ts +0 -7
  391. package/dist/modules/public-api/search-text/search-text.dto.js +0 -46
  392. package/dist/modules/public-api/search-text/search-text.dto.js.map +0 -1
  393. package/dist/modules/public-api/search-text/search-text.queries.js +0 -60
  394. package/dist/modules/public-api/search-text/search-text.queries.js.map +0 -1
  395. package/dist/modules/public-site/feed/feed-generator.js.map +0 -1
  396. package/dist/modules/public-site/feed/feed-helpers.js.map +0 -1
  397. package/dist/modules/public-site/feed/feed.middleware.d.ts +0 -2
  398. package/dist/modules/public-site/feed/feed.middleware.js.map +0 -1
  399. package/dist/modules/public-site/helpers/format-date.helper.js.map +0 -1
  400. package/dist/modules/public-site/helpers/medias.helpers.js.map +0 -1
  401. package/dist/modules/public-site/liquidjs-filters/format-date.js.map +0 -1
  402. package/dist/modules/public-site/liquidjs-filters/format-number.js.map +0 -1
  403. package/dist/modules/public-site/liquidjs-filters/head-tags-filter.js.map +0 -1
  404. package/dist/modules/public-site/liquidjs-filters/image-zoom-url.js.map +0 -1
  405. package/dist/modules/public-site/liquidjs-filters/info-filter.js.map +0 -1
  406. package/dist/modules/public-site/liquidjs-filters/inject-menu-items-data.js.map +0 -1
  407. package/dist/modules/public-site/liquidjs-filters/make-excerpt.js.map +0 -1
  408. package/dist/modules/public-site/liquidjs-filters/obfuscate.js.map +0 -1
  409. package/dist/modules/public-site/liquidjs-filters/open-graph-filter.js.map +0 -1
  410. package/dist/modules/public-site/liquidjs-filters/plugin-asset-url-filter.js.map +0 -1
  411. package/dist/modules/public-site/liquidjs-filters/translate-filter.js.map +0 -1
  412. package/dist/modules/public-site/liquidjs-tags/get-doc-tag.js.map +0 -1
  413. package/dist/modules/public-site/liquidjs-tags/get-docs-tag.js.map +0 -1
  414. package/dist/modules/public-site/liquidjs-tags/get-paginated-docs-tag.js.map +0 -1
  415. package/dist/modules/public-site/liquidjs-tags/use-image-tag.js.map +0 -1
  416. package/dist/modules/public-site/media-serve/_media-serve-helpers.js.map +0 -1
  417. package/dist/modules/public-site/media-serve/media-serve.controller.d.ts +0 -4
  418. package/dist/modules/public-site/media-serve/media-serve.controller.js.map +0 -1
  419. package/dist/modules/public-site/public-route/make-url.js.map +0 -1
  420. package/dist/modules/public-site/public-route/public-route-parser.js.map +0 -1
  421. package/dist/modules/public-site/public-route/raw-document-payload.js +0 -67
  422. package/dist/modules/public-site/public-route/raw-document-payload.js.map +0 -1
  423. package/dist/modules/public-site/public-site.controller.d.ts +0 -2
  424. package/dist/modules/public-site/public-site.controller.js +0 -27
  425. package/dist/modules/public-site/public-site.controller.js.map +0 -1
  426. package/dist/modules/public-site/public-site.middleware.d.ts +0 -2
  427. package/dist/modules/public-site/public-site.middleware.js +0 -47
  428. package/dist/modules/public-site/public-site.middleware.js.map +0 -1
  429. package/dist/modules/public-site/serve-document/serve-document.js.map +0 -1
  430. /package/dist/{modules/core → bo-backend}/account/account.formatters.d.ts +0 -0
  431. /package/dist/{modules/core → bo-backend}/auth/auth.types.d.ts +0 -0
  432. /package/dist/{modules/core → bo-backend}/auth/auth.types.js +0 -0
  433. /package/dist/{modules/core → bo-backend}/backup/backup.helper.d.ts +0 -0
  434. /package/dist/{modules/core → bo-backend}/document/document.helper.d.ts +0 -0
  435. /package/dist/{modules/core → bo-backend}/document/document.helper.js +0 -0
  436. /package/dist/{modules/core → bo-backend}/fields/_fields.helpers.d.ts +0 -0
  437. /package/dist/{modules/core → bo-backend}/fields/_fields.helpers.js +0 -0
  438. /package/dist/express/{create-redirect-url.d.ts → http-redirection-url.d.ts} +0 -0
  439. /package/dist/{modules → graphql}/graphql.types.js +0 -0
  440. /package/dist/{modules/core/account-auth → oauth}/account-auth.strategy.d.ts +0 -0
  441. /package/dist/{modules/public-site → public-site}/feed/feed-helpers.d.ts +0 -0
  442. /package/dist/{modules/public-site → public-site}/feed/feed-helpers.js +0 -0
  443. /package/dist/{modules/public-site → public-site}/helpers/format-date.helper.d.ts +0 -0
  444. /package/dist/{modules/public-site → public-site}/helpers/format-date.helper.js +0 -0
  445. /package/dist/{modules/public-site → public-site}/liquidjs-filters/info-filter.d.ts +0 -0
  446. /package/dist/{modules/public-site → public-site}/liquidjs-filters/make-excerpt.d.ts +0 -0
  447. /package/dist/{modules/public-site → public-site}/liquidjs-filters/obfuscate.js +0 -0
  448. /package/dist/{modules/public-site → public-site}/media-serve/_media-serve-helpers.d.ts +0 -0
  449. /package/dist/{modules/public-site → public-site}/media-serve/_media-serve-helpers.js +0 -0
@@ -2,22 +2,17 @@ import { boolVal, nbVal, strVal, strValOrUndef } from "@paroi/data-formatters-li
2
2
  import { mainDbSchemaName } from "@paroicms/connector";
3
3
  import { documentTypeHasData, getDocumentTypeByName, getNodeTypeByName, } from "@paroicms/internal-anywhere-lib";
4
4
  import { encodeNodelId } from "@paroicms/public-anywhere-lib";
5
- import { ApiError } from "../../../common/api-error-handler.js";
6
- import { applyRegularChildrenSortingOnQuery } from "../../../common/child-ordering-query.js";
7
- import { invalidateDocumentInCache, invalidateDocumentRelationCache, } from "../../../common/text-cache.js";
5
+ import { ApiError } from "../../common/api-error-handler.js";
6
+ import { applyRegularChildrenSortingOnQuery } from "../../common/child-ordering-query.js";
7
+ import { invalidateDocumentInCache, invalidateDocumentRelationCache, } from "../../common/text-cache.js";
8
8
  import { searchText } from "../../public-api/search-text/search-text.queries.js";
9
9
  import { getParentNodelIdOf } from "../document/load-documents.queries.js";
10
10
  import { getNodeDepth, getTypeNameOf } from "../node/node.queries.js";
11
11
  import { getDocumentNodeIdOfPart } from "../part/part.queries.js";
12
12
  export async function nodeNodels({ cn }, nodeId) {
13
- const nodels = await cn
14
- .createQueryBuilder()
15
- .addSelect("s.language", "language")
16
- .addSelect("s.nodeId", "nodeId")
17
- .addSelect("s.ready", "ready")
18
- .from("PaNodel", "s")
19
- .where("s.nodeId = :nodeId", { nodeId })
20
- .getRawMany();
13
+ const nodels = await cn("PaNodel as s")
14
+ .select(["s.language as language", "s.nodeId as nodeId", "s.ready as ready"])
15
+ .where("s.nodeId", nodeId);
21
16
  return nodels.map((nodel) => {
22
17
  return {
23
18
  nodeId,
@@ -27,15 +22,11 @@ export async function nodeNodels({ cn }, nodeId) {
27
22
  });
28
23
  }
29
24
  export async function findOneNodel({ cn }, nodelId) {
30
- const found = await cn
31
- .createQueryBuilder()
32
- .addSelect("s.language", "language")
33
- .addSelect("s.nodeId", "nodeId")
34
- .addSelect("s.ready", "ready")
35
- .from("PaNodel", "s")
36
- .where("s.nodeId = :nodeId", { nodeId: nodelId.nodeId })
37
- .andWhere("s.language = :language", { language: nodelId.language })
38
- .getRawOne();
25
+ const found = await cn("PaNodel as s")
26
+ .select(["s.language as language", "s.nodeId as nodeId", "s.ready as ready"])
27
+ .where("s.nodeId", nodelId.nodeId)
28
+ .andWhere("s.language", nodelId.language)
29
+ .first();
39
30
  if (!found) {
40
31
  throw new ApiError(`can't find nodel ${nodelId.language}:${nodelId.nodeId}`, {
41
32
  status: 404,
@@ -102,10 +93,7 @@ async function getChildNodelsForAllLanguages(siteContext, options) {
102
93
  const query = createBaseChildNodelsForAllLanguagesQueryBuilder(siteContext, {
103
94
  parentNodeId: options.parentNodeId,
104
95
  typeNames: parentDocumentType.regularChildren ?? [],
105
- })
106
- .select("s.nodeId", "nodeId")
107
- .addSelect("s.language", "language")
108
- .addSelect("s.ready", "ready");
96
+ }).select(["s.nodeId as nodeId", "s.language as language", "s.ready as ready"]);
109
97
  applyRegularChildrenSortingOnQuery(siteContext, {
110
98
  query,
111
99
  parentDocumentType,
@@ -115,16 +103,25 @@ async function getChildNodelsForAllLanguages(siteContext, options) {
115
103
  if (options.pagination) {
116
104
  query.limit(options.pagination.limit).offset(options.pagination.start);
117
105
  }
118
- const rows = await query.getRawMany();
106
+ const rows = await query;
119
107
  const formattedRows = rows.map((row) => ({
120
108
  nodeId: strVal(row.nodeId),
121
109
  language: strVal(row.language),
122
110
  ready: boolVal(row.ready),
123
111
  }));
124
112
  if (options.pagination) {
125
- const total = rows.length < options.pagination.limit
126
- ? options.pagination.start + rows.length
127
- : await query.getCount();
113
+ let total;
114
+ if (rows.length < options.pagination.limit) {
115
+ total = options.pagination.start + rows.length;
116
+ }
117
+ else {
118
+ const countQuery = createBaseChildNodelsForAllLanguagesQueryBuilder(siteContext, {
119
+ parentNodeId: options.parentNodeId,
120
+ typeNames: parentDocumentType.regularChildren ?? [],
121
+ });
122
+ const countResult = await countQuery.count("* as total").first();
123
+ total = nbVal(countResult?.total);
124
+ }
128
125
  return {
129
126
  list: formattedRows,
130
127
  total,
@@ -133,14 +130,11 @@ async function getChildNodelsForAllLanguages(siteContext, options) {
133
130
  return formattedRows;
134
131
  }
135
132
  function createBaseChildNodelsForAllLanguagesQueryBuilder(siteContext, { parentNodeId, typeNames, }) {
136
- return siteContext.cn
137
- .createQueryBuilder()
138
- .from("PaNodel", "s")
139
- .innerJoin("PaNode", "l", "l.id = s.nodeId")
140
- .andWhere("l.parentId = :parentId", {
141
- parentId: parentNodeId,
142
- })
143
- .andWhere("l.typeName in (:...typeNames)", { typeNames });
133
+ return siteContext
134
+ .cn("PaNodel as s")
135
+ .innerJoin("PaNode as l", "l.id", "s.nodeId")
136
+ .where("l.parentId", parentNodeId)
137
+ .whereIn("l.typeName", typeNames);
144
138
  }
145
139
  export async function setNodelReady(siteContext, { nodelId, ready }) {
146
140
  const typeName = await getTypeNameOf(siteContext, nodelId.nodeId);
@@ -148,15 +142,10 @@ export async function setNodelReady(siteContext, { nodelId, ready }) {
148
142
  if (nodeType.kind !== "document" && nodeType.kind !== "part") {
149
143
  throw new Error(`invalid nodel type '${typeName}'`);
150
144
  }
151
- await siteContext.cn
152
- .createQueryBuilder()
153
- .update("PaNodel")
154
- .set({ ready })
155
- .where("nodeId = :nodeId and language = :language", {
145
+ await siteContext.cn("PaNodel").update({ ready }).where({
156
146
  nodeId: nodelId.nodeId,
157
147
  language: nodelId.language,
158
- })
159
- .execute();
148
+ });
160
149
  if (nodeType.kind === "document") {
161
150
  const parentId = await getParentNodelIdOf(siteContext, nodelId);
162
151
  if (ready) {
@@ -184,32 +173,35 @@ export async function setNodelReady(siteContext, { nodelId, ready }) {
184
173
  }
185
174
  }
186
175
  export async function getBreadcrumb(siteContext, tracker, documentId, options = {}) {
176
+ const { cn } = siteContext;
187
177
  const depth = await getNodeDepth(siteContext, tracker, documentId.nodeId);
188
178
  if (depth === 0)
189
179
  return [];
190
180
  const language = documentId.language;
191
- const query = siteContext.cn
192
- .createQueryBuilder()
193
- .from("PaNode", `l${depth}`)
194
- .andWhere(`l${depth}.id = :nodeId`, { nodeId: documentId.nodeId });
195
- if (options.ensurePublished)
196
- queryEnsurePublished(query, depth, language);
181
+ const selectColumns = [];
197
182
  const minDepth = options.skipHome ? 1 : 0;
183
+ for (let cur = minDepth; cur < depth; ++cur) {
184
+ selectColumns.push(`l${cur}.id as nodeId${cur}`);
185
+ selectColumns.push(`l${cur}.typeName as typeName${cur}`);
186
+ selectColumns.push(`d${cur}.title as title${cur}`);
187
+ }
188
+ const query = cn(`PaNode as l${depth}`)
189
+ .select(selectColumns)
190
+ .where(`l${depth}.id`, documentId.nodeId);
191
+ if (options.ensurePublished)
192
+ queryEnsurePublished(cn, query, depth, language);
198
193
  let prev = depth;
199
194
  for (let cur = depth - 1; cur >= minDepth; --cur) {
200
- query
201
- .addSelect(`l${cur}.id`, `nodeId${cur}`)
202
- .addSelect(`l${cur}.typeName`, `typeName${cur}`)
203
- .addSelect(`d${cur}.title`, `title${cur}`)
204
- .innerJoin("PaNode", `l${cur}`, `l${cur}.id = l${prev}.parentId`)
205
- .leftJoin("PaDocument", `d${cur}`, `d${cur}.nodeId = l${cur}.id and d${cur}.language = :language`, {
206
- language,
195
+ query.innerJoin(`PaNode as l${cur}`, `l${cur}.id`, `l${prev}.parentId`);
196
+ query.leftJoin(`PaDocument as d${cur}`, {
197
+ [`d${cur}.nodeId`]: `l${cur}.id`,
198
+ [`d${cur}.language`]: cn.raw("?", [language]),
207
199
  });
208
200
  if (options.ensurePublished)
209
- queryEnsurePublished(query, cur, language);
201
+ queryEnsurePublished(cn, query, cur, language);
210
202
  prev = cur;
211
203
  }
212
- const row = await query.getRawOne();
204
+ const row = await query.first();
213
205
  tracker.trackAccess(mainDbSchemaName, "PaNode", "read");
214
206
  if (!row)
215
207
  throw new Error(`cannot get breadcrumb of '${documentId.language}:${documentId.nodeId}'`);
@@ -231,21 +223,17 @@ export async function getBreadcrumb(siteContext, tracker, documentId, options =
231
223
  }
232
224
  return result;
233
225
  }
234
- function queryEnsurePublished(query, d, language) {
226
+ function queryEnsurePublished(cn, query, d, language) {
235
227
  query
236
- .innerJoin("PaNodel", `s${d}`, `s${d}.nodeId = l${d}.id and s${d}.language = :language`, {
237
- language,
228
+ .innerJoin(`PaNodel as s${d}`, {
229
+ [`s${d}.nodeId`]: `l${d}.id`,
230
+ [`s${d}.language`]: cn.raw("?", [language]),
238
231
  })
239
- .andWhere(`s${d}.ready = 1`)
240
- .andWhere(`l${d}.publishDate <= current_timestamp`);
232
+ .where(`s${d}.ready`, 1)
233
+ .whereRaw(`l${d}.publishDate <= current_timestamp`);
241
234
  }
242
235
  export async function isOrphanNode(cn, nodeId) {
243
- const row = await cn
244
- .createQueryBuilder()
245
- .select("count(s.nodeId)", "cnt")
246
- .from("PaNodel", "s")
247
- .where("s.nodeId = :nodeId", { nodeId })
248
- .getRawOne();
236
+ const row = await cn("PaNodel as s").count("s.nodeId as cnt").where("s.nodeId", nodeId).first();
249
237
  return nbVal(row?.cnt) === 0;
250
238
  }
251
239
  export async function searchDocuments(siteContext, options) {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"nodel.queries.js","sourceRoot":"","sources":["../../../src/bo-backend/nodel/nodel.queries.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { Knex } from "knex";
2
+ export declare function createPartNode(cn: Knex | Knex.Transaction, { nodeId, listName, documentNodeId, isOrdered, lastOrderNum, }: {
3
+ nodeId: string;
4
+ listName: string;
5
+ documentNodeId: string;
6
+ isOrdered: boolean;
7
+ lastOrderNum: number | undefined;
8
+ }): Promise<void>;
9
+ export declare function shiftPartNodeOrdersAfterDeletion(cn: Knex | Knex.Transaction, nodeId: string): Promise<void>;
@@ -0,0 +1,38 @@
1
+ import { nbVal, strVal } from "@paroi/data-formatters-lib";
2
+ import { ApiError } from "../../common/api-error-handler.js";
3
+ export async function createPartNode(cn, { nodeId, listName, documentNodeId, isOrdered, lastOrderNum, }) {
4
+ await cn("PaPartNode").insert({ nodeId, listName, documentNodeId });
5
+ if (isOrdered) {
6
+ await cn("PaOrderedNode").insert({
7
+ nodeId,
8
+ orderNum: (lastOrderNum ?? 0) + 1,
9
+ });
10
+ }
11
+ }
12
+ export async function shiftPartNodeOrdersAfterDeletion(cn, nodeId) {
13
+ const row = await cn("PaNode as l")
14
+ .select("l.parentId", "p.listName", "o.orderNum")
15
+ .innerJoin("PaPartNode as p", "p.nodeId", "l.id")
16
+ .innerJoin("PaOrderedNode as o", "o.nodeId", "l.id")
17
+ .where("l.id", nodeId)
18
+ .first();
19
+ if (!row)
20
+ throw new ApiError(`part-node '${nodeId}' not found`, { status: 404 });
21
+ const parentId = strVal(row.parentId);
22
+ const listName = strVal(row.listName);
23
+ const orderNum = nbVal(row.orderNum);
24
+ await cn("PaOrderedNode")
25
+ .whereRaw("orderNum > ?", [orderNum])
26
+ .whereExists(function () {
27
+ this.select(1)
28
+ .from("PaNode as l")
29
+ .innerJoin("PaPartNode as p", "p.nodeId", "l.id")
30
+ .whereRaw("PaOrderedNode.nodeId = l.id")
31
+ .andWhere("l.parentId", parentId)
32
+ .andWhere("p.listName", listName);
33
+ })
34
+ .update({
35
+ orderNum: cn.raw("orderNum - 1"),
36
+ });
37
+ }
38
+ //# sourceMappingURL=part-node.queries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"part-node.queries.js","sourceRoot":"","sources":["../../../src/bo-backend/part/part-node.queries.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAE3D,OAAO,EAAE,QAAQ,EAAE,MAAM,mCAAmC,CAAC;AAE7D,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,EAA2B,EAC3B,EACE,MAAM,EACN,QAAQ,EACR,cAAc,EACd,SAAS,EACT,YAAY,GAOb;IAED,MAAM,EAAE,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,CAAC,CAAC;IAEpE,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,EAAE,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC;YAC/B,MAAM;YACN,QAAQ,EAAE,CAAC,YAAY,IAAI,CAAC,CAAC,GAAG,CAAC;SAClC,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,EAA2B,EAC3B,MAAc;IAEd,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,aAAa,CAAC;SAChC,MAAM,CAAC,YAAY,EAAE,YAAY,EAAE,YAAY,CAAC;SAChD,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,MAAM,CAAC;SAChD,SAAS,CAAC,oBAAoB,EAAE,UAAU,EAAE,MAAM,CAAC;SACnD,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC;SACrB,KAAK,EAAE,CAAC;IAEX,IAAI,CAAC,GAAG;QAAE,MAAM,IAAI,QAAQ,CAAC,cAAc,MAAM,aAAa,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAEjF,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAErC,MAAM,EAAE,CAAC,eAAe,CAAC;SACtB,QAAQ,CAAC,cAAc,EAAE,CAAC,QAAQ,CAAC,CAAC;SACpC,WAAW,CAAC;QACX,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;aACX,IAAI,CAAC,aAAa,CAAC;aACnB,SAAS,CAAC,iBAAiB,EAAE,UAAU,EAAE,MAAM,CAAC;aAChD,QAAQ,CAAC,6BAA6B,CAAC;aACvC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC;aAChC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;IACtC,CAAC,CAAC;SACD,MAAM,CAAC;QACN,QAAQ,EAAE,EAAE,CAAC,GAAG,CAAC,cAAc,CAAC;KACjC,CAAC,CAAC;AACP,CAAC"}
@@ -1,5 +1,5 @@
1
1
  import { type ParsedNodelId } from "@paroicms/public-anywhere-lib";
2
- import type { SiteContext } from "../../../site-context/site-context.types.js";
2
+ import type { SiteContext } from "../../site-context/site-context.types.js";
3
3
  export interface PartSeed {
4
4
  partId: string;
5
5
  typeName: string;
@@ -2,35 +2,28 @@ import { boolVal, dateValOrUndef, nbVal, nbValOrUndef, strVal, strValOrUndef, }
2
2
  import { createNode } from "@paroicms/connector";
3
3
  import { getDocumentTypeByName, getPartTypeByName } from "@paroicms/internal-anywhere-lib";
4
4
  import { encodeNodelId } from "@paroicms/public-anywhere-lib";
5
- import { ApiError } from "../../../common/api-error-handler.js";
6
- import { getHandleOfFeaturedImage } from "../../../common/media-handles.helpers.js";
7
- import { invalidateDocumentInCache } from "../../../common/text-cache.js";
5
+ import { ApiError } from "../../common/api-error-handler.js";
6
+ import { getHandleOfFeaturedImage } from "../../common/media-handles.helpers.js";
7
+ import { invalidateDocumentInCache } from "../../common/text-cache.js";
8
8
  import { isOrphanNode } from "../nodel/nodel.queries.js";
9
9
  import { createPartNode, shiftPartNodeOrdersAfterDeletion } from "./part-node.queries.js";
10
10
  export async function createPartOnNode(siteContext, newId) {
11
- await siteContext.cn
12
- .createQueryBuilder()
13
- .insert()
14
- .into("PaNodel")
15
- .values({
11
+ await siteContext.cn("PaNodel").insert({
16
12
  language: newId.language,
17
13
  nodeId: newId.nodeId,
18
14
  ready: true,
19
- })
20
- .execute();
15
+ });
21
16
  await invalidateDocumentInCache(siteContext, { parentOf: newId });
22
17
  return newId;
23
18
  }
24
19
  export async function createNodeWithPart(siteContext, { parentNodelId, listName, typeName, }) {
25
20
  const { language, nodeId: parentNodeId } = parentNodelId;
26
- const row = await siteContext.cn
27
- .createQueryBuilder()
28
- .select("l.typeName", "typeName")
29
- .addSelect("p.documentNodeId", "documentNodeId")
30
- .from("PaNode", "l")
31
- .leftJoin("PaPartNode", "p", "p.nodeId = l.id")
32
- .andWhere("l.id = :nodeId", { nodeId: parentNodeId })
33
- .getRawOne();
21
+ const { cn, siteSchema } = siteContext;
22
+ const row = await cn("PaNode as l")
23
+ .select(["l.typeName as typeName", "p.documentNodeId as documentNodeId"])
24
+ .leftJoin("PaPartNode as p", "p.nodeId", "l.id")
25
+ .where("l.id", parentNodeId)
26
+ .first();
34
27
  if (!row)
35
28
  throw new ApiError(`cannot find part-node '${parentNodeId}'`, { status: 404 });
36
29
  const parentTypeName = strVal(row.typeName);
@@ -62,46 +55,60 @@ export async function createNodeWithPart(siteContext, { parentNodelId, listName,
62
55
  status: 400,
63
56
  });
64
57
  }
65
- const newId = await siteContext.cn.transaction(async (tx) => {
66
- const node = await createNode(siteContext.siteSchema, tx, { parentId: parentNodeId, typeName });
58
+ let lastOrderNum;
59
+ if (listType.sorting) {
60
+ const row = await cn("PaNode as l")
61
+ .select(cn.raw("max(o.orderNum) as orderNum"))
62
+ .innerJoin("PaPartNode as p", "p.nodeId", "l.id")
63
+ .innerJoin("PaOrderedNode as o", "o.nodeId", "l.id")
64
+ .where("l.parentId", parentNodeId)
65
+ .andWhere("p.listName", listName)
66
+ .first();
67
+ lastOrderNum = nbValOrUndef(row?.orderNum);
68
+ }
69
+ const newId = await cn.transaction(async (tx) => {
70
+ const node = await createNode(siteSchema, tx, { parentId: parentNodeId, typeName });
67
71
  const { id: nodeId } = node;
68
72
  await createPartNode(tx, {
69
73
  nodeId,
70
74
  listName,
71
- parentId: parentNodeId,
72
75
  documentNodeId,
73
76
  isOrdered: !!listType.sorting,
77
+ lastOrderNum,
78
+ });
79
+ await tx("PaNodel").insert({
80
+ language,
81
+ nodeId,
82
+ ready: true,
74
83
  });
75
- await tx
76
- .createQueryBuilder()
77
- .insert()
78
- .into("PaNodel")
79
- .values({ language, nodeId, ready: true })
80
- .execute();
81
84
  return { language, nodeId };
82
85
  });
83
86
  await invalidateDocumentInCache(siteContext, { documentId: parentNodelId });
84
87
  return newId;
85
88
  }
86
89
  export async function loadPartSeed(siteContext, nodelId) {
87
- const row = await siteContext.cn
88
- .createQueryBuilder()
89
- .addSelect("l.typeName", "typeName")
90
- .addSelect("l.publishDate", "publishDate")
91
- .addSelect("l.parentId", "parentId")
92
- .addSelect("p.listName", "listName")
93
- .addSelect("p.documentNodeId", "documentNodeId")
94
- .addSelect("o.orderNum", "orderNum")
95
- .addSelect("s.ready", "ready")
96
- .from("PaNode", "l")
97
- .innerJoin("PaPartNode", "p", "p.nodeId = l.id")
98
- .innerJoin("PaNodel", "s", "s.nodeId = l.id and s.language = :language", {
99
- language: nodelId.language,
90
+ const { cn } = siteContext;
91
+ const row = await cn("PaNode as l")
92
+ .select([
93
+ "l.typeName as typeName",
94
+ "l.publishDate as publishDate",
95
+ "l.parentId as parentId",
96
+ "p.listName as listName",
97
+ "p.documentNodeId as documentNodeId",
98
+ "o.orderNum as orderNum",
99
+ "s.ready as ready",
100
+ ])
101
+ .innerJoin("PaPartNode as p", "p.nodeId", "l.id")
102
+ .innerJoin("PaNodel as s", {
103
+ "s.nodeId": "l.id",
104
+ "s.language": cn.raw("?", [nodelId.language]),
100
105
  })
101
- .leftJoin("PaOrderedNode", "o", "o.nodeId = l.id")
102
- .andWhere("l.id = :nodeId", { nodeId: nodelId.nodeId })
103
- .andWhere("not exists (select 1 from PaDocument d where d.nodeId = l.id)")
104
- .getRawOne();
106
+ .leftJoin("PaOrderedNode as o", "o.nodeId", "l.id")
107
+ .where("l.id", nodelId.nodeId)
108
+ .whereNotExists(function () {
109
+ this.select(1).from("PaDocument as d").where("d.nodeId", "l.id");
110
+ })
111
+ .first();
105
112
  if (!row) {
106
113
  throw new ApiError(`cannot find part '${nodelId.language}:${nodelId.nodeId}'`, {
107
114
  status: 404,
@@ -127,42 +134,17 @@ export async function deletePart(siteContext, nodelId) {
127
134
  const nodeId = nodelId.nodeId;
128
135
  const documentNodeId = await getDocumentNodeIdOfPart(siteContext, nodeId);
129
136
  const { shouldDeleteNode } = await siteContext.cn.transaction(async (tx) => {
130
- await tx
131
- .createQueryBuilder()
132
- .delete()
133
- .from("PaFieldVarchar")
134
- .andWhere("nodeId = :nodeId", { nodeId })
135
- .andWhere("language = :language", { language: nodelId.language })
136
- .execute();
137
- await tx
138
- .createQueryBuilder()
139
- .delete()
140
- .from("PaFieldText")
141
- .andWhere("nodeId = :nodeId", { nodeId })
142
- .andWhere("language = :language", { language: nodelId.language })
143
- .execute();
144
- await tx
145
- .createQueryBuilder()
146
- .delete()
147
- .from("PaNodel")
148
- .andWhere("nodeId = :nodeId", { nodeId })
149
- .andWhere("language = :language", { language: nodelId.language })
150
- .execute();
137
+ await tx("PaFieldVarchar")
138
+ .where("nodeId", nodeId)
139
+ .where("language", nodelId.language)
140
+ .delete();
141
+ await tx("PaFieldText").where("nodeId", nodeId).where("language", nodelId.language).delete();
142
+ await tx("PaNodel").where("nodeId", nodeId).where("language", nodelId.language).delete();
151
143
  const shouldDeleteNode = await isOrphanNode(tx, nodeId);
152
144
  if (shouldDeleteNode) {
153
145
  await shiftPartNodeOrdersAfterDeletion(tx, nodeId);
154
- await tx
155
- .createQueryBuilder()
156
- .delete()
157
- .from("PaPartNode")
158
- .where("nodeId = :nodeId", { nodeId })
159
- .execute();
160
- await tx
161
- .createQueryBuilder()
162
- .delete()
163
- .from("PaNode")
164
- .where("id = :nodeId", { nodeId })
165
- .execute();
146
+ await tx("PaPartNode").where("nodeId", nodeId).delete();
147
+ await tx("PaNode").where("id", nodeId).delete();
166
148
  }
167
149
  return { shouldDeleteNode };
168
150
  });
@@ -180,23 +162,25 @@ export async function deletePart(siteContext, nodelId) {
180
162
  }
181
163
  }
182
164
  export async function readPartSeedsOf({ cn }, { documentNodeId, language, }) {
183
- const parts = await cn
184
- .createQueryBuilder()
185
- .addSelect("l.id", "nodeId")
186
- .addSelect("l.publishDate", "publishDate")
187
- .addSelect("l.typeName", "typeName")
188
- .addSelect("l.parentId", "parentId")
189
- .addSelect("p.listName", "listName")
190
- .addSelect("o.orderNum", "orderNum")
191
- .addSelect("s.language", "language")
192
- .addSelect("s.nodeId", "nodelNodeId")
193
- .addSelect("s.ready", "ready")
194
- .from("PaNode", "l")
195
- .innerJoin("PaPartNode", "p", "p.nodeId = l.id")
196
- .leftJoin("PaNodel", "s", "s.nodeId = l.id and s.language = :language", { language })
197
- .leftJoin("PaOrderedNode", "o", "o.nodeId = l.id")
198
- .andWhere("p.documentNodeId = :documentNodeId", { documentNodeId })
199
- .getRawMany();
165
+ const parts = await cn("PaNode as l")
166
+ .select([
167
+ "l.id as nodeId",
168
+ "l.publishDate as publishDate",
169
+ "l.typeName as typeName",
170
+ "l.parentId as parentId",
171
+ "p.listName as listName",
172
+ "o.orderNum as orderNum",
173
+ "s.language as language",
174
+ "s.nodeId as nodelNodeId",
175
+ "s.ready as ready",
176
+ ])
177
+ .innerJoin("PaPartNode as p", "p.nodeId", "l.id")
178
+ .leftJoin("PaNodel as s", {
179
+ "s.nodeId": "l.id",
180
+ "s.language": cn.raw("?", [language]),
181
+ })
182
+ .leftJoin("PaOrderedNode as o", "o.nodeId", "l.id")
183
+ .where("p.documentNodeId", documentNodeId);
200
184
  return parts.map((item) => {
201
185
  const nodeId = strVal(item.nodeId);
202
186
  const publishDate = dateValOrUndef(item.publishDate);
@@ -230,23 +214,20 @@ export async function readPartSeedsOf({ cn }, { documentNodeId, language, }) {
230
214
  });
231
215
  }
232
216
  async function countPartsOfList({ cn }, { listName, parentNodeId, }) {
233
- const row = await cn
234
- .createQueryBuilder()
235
- .addSelect("count(1)", "cnt")
236
- .from("PaNode", "l")
237
- .innerJoin("PaPartNode", "p", "p.nodeId = l.id")
238
- .andWhere("l.parentId = :parentId", { parentId: parentNodeId })
239
- .andWhere("p.listName = :listName", { listName })
240
- .getRawOne();
217
+ const row = await cn("PaNode as l")
218
+ .count("* as cnt")
219
+ .innerJoin("PaPartNode as p", "p.nodeId", "l.id")
220
+ .where("l.parentId", parentNodeId)
221
+ .andWhere("p.listName", listName)
222
+ .first();
241
223
  return nbVal(row?.cnt);
242
224
  }
243
225
  export async function getDocumentNodeIdOfPart(siteContext, nodeId) {
244
- const row = await siteContext.cn
245
- .createQueryBuilder()
246
- .select("p.documentNodeId", "documentNodeId")
247
- .from("PaPartNode", "p")
248
- .andWhere("p.nodeId = :nodeId", { nodeId })
249
- .getRawOne();
226
+ const row = await siteContext
227
+ .cn("PaPartNode as p")
228
+ .select("p.documentNodeId as documentNodeId")
229
+ .where("p.nodeId", nodeId)
230
+ .first();
250
231
  if (!row)
251
232
  throw new ApiError(`cannot find part-node '${nodeId}'`, { status: 404 });
252
233
  return strVal(row.documentNodeId);
@@ -0,0 +1 @@
1
+ {"version":3,"file":"part.queries.js","sourceRoot":"","sources":["../../../src/bo-backend/part/part.queries.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { GqlResolvers } from "../../graphql/generated-graphql-types.js";
2
+ import type { GraphqlContext } from "../../graphql/graphql.types.js";
3
+ export declare const partResolvers: GqlResolvers<GraphqlContext>;
@@ -0,0 +1,3 @@
1
+ import type { GqlResolvers } from "../../graphql/generated-graphql-types.js";
2
+ import type { GraphqlContext } from "../../graphql/graphql.types.js";
3
+ export declare const extendNodelWrapWithPartResolvers: GqlResolvers<GraphqlContext>;
@@ -4,8 +4,8 @@ import { getTypeNameOf } from "../node/node.queries.js";
4
4
  import { readPartSeedsOf } from "./part.queries.js";
5
5
  export const extendNodelWrapWithPartResolvers = {
6
6
  NodelWrap: {
7
- parts: async ({ nodeId, language }, _args, { req, siteContext }) => {
8
- authGuard(req);
7
+ parts: async ({ nodeId, language }, _args, { siteContext, httpContext }) => {
8
+ authGuard(httpContext);
9
9
  const typeName = await getTypeNameOf(siteContext, nodeId);
10
10
  const documentType = getDocumentTypeByName(siteContext.siteSchema, typeName);
11
11
  const listNames = documentType.lists?.map((l) => l.listName) ?? [];
@@ -18,8 +18,8 @@ export const extendNodelWrapWithPartResolvers = {
18
18
  },
19
19
  },
20
20
  Part: {
21
- parts: async ({ nodeId, language }, _args, { req, siteContext }) => {
22
- authGuard(req);
21
+ parts: async ({ nodeId, language }, _args, { siteContext, httpContext }) => {
22
+ authGuard(httpContext);
23
23
  const typeName = await getTypeNameOf(siteContext, nodeId);
24
24
  const partType = getPartTypeByName(siteContext.siteSchema, typeName);
25
25
  if (!partType.list)
@@ -0,0 +1 @@
1
+ {"version":3,"file":"part.resolver.extend.js","sourceRoot":"","sources":["../../../src/bo-backend/part/part.resolver.extend.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAG3F,OAAO,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACnD,OAAO,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAExD,OAAO,EAAiB,eAAe,EAAE,MAAM,mBAAmB,CAAC;AAEnE,MAAM,CAAC,MAAM,gCAAgC,GAAiC;IAC5E,SAAS,EAAE;QACT,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAiB,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;YACxF,SAAS,CAAC,WAAW,CAAC,CAAC;YACvB,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAC1D,MAAM,YAAY,GAAG,qBAAqB,CAAC,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YAE7E,MAAM,SAAS,GAAG,YAAY,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACnE,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAC;YAExC,OAAO,MAAM,eAAe,CAAC,WAAW,EAAE;gBACxC,cAAc,EAAE,MAAM;gBACtB,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;KACF;IAED,IAAI,EAAE;QACJ,KAAK,EAAE,KAAK,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAY,EAAE,KAAK,EAAE,EAAE,WAAW,EAAE,WAAW,EAAE,EAAE,EAAE;YACnF,SAAS,CAAC,WAAW,CAAC,CAAC;YACvB,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YAC1D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,WAAW,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;YACrE,IAAI,CAAC,QAAQ,CAAC,IAAI;gBAAE,OAAO,IAAI,CAAC;YAEhC,OAAO,MAAM,eAAe,CAAC,WAAW,EAAE;gBACxC,cAAc,EAAE,MAAM;gBACtB,QAAQ;aACT,CAAC,CAAC;QACL,CAAC;KACF;IAED,iBAAiB,EAAE;QACjB,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,QAAQ,IAAI,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,iBAAiB,CAAC;KAC3E;CACF,CAAC"}