@taon-dev/cms 21.0.13 → 21.0.16

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 (1155) hide show
  1. package/VERIFIED-BUILD-DATA.jsonc +3 -3
  2. package/browser/fesm2022/cms-browser.mjs +491 -132
  3. package/browser/fesm2022/cms-browser.mjs.map +1 -1
  4. package/browser/package.json +1 -1
  5. package/browser/types/cms-browser.d.ts +297 -251
  6. package/browser-prod/fesm2022/cms-browser-prod.mjs +491 -132
  7. package/browser-prod/fesm2022/cms-browser-prod.mjs.map +1 -1
  8. package/browser-prod/package.json +1 -1
  9. package/browser-prod/types/cms-browser-prod.d.ts +297 -251
  10. package/full-dts/build-info._auto-generated_.d.ts +1 -1
  11. package/full-dts/decorators/taon-cms-authorization.d.ts +45 -0
  12. package/full-dts/index._auto-generated_.d.ts +3 -3
  13. package/full-dts/index.d.ts +0 -1
  14. package/full-dts/migrations/{1791132517216_initial.d.ts → 1792506757808_applicaitonHooks.d.ts} +4 -2
  15. package/full-dts/migrations/migrations_index._auto-generated_.d.ts +2 -2
  16. package/full-dts/taon-cms-application-hook/taon-cms-application-hook.entity.d.ts +10 -0
  17. package/full-dts/taon-cms-application-hooks.d.ts +9 -0
  18. package/full-dts/taon-cms-category/taon-cms-category-api.service.d.ts +2 -1
  19. package/full-dts/taon-cms-comment/taon-cms-comment-api.service.d.ts +2 -1
  20. package/full-dts/{i18n/my-organization-proj.ts.en-US.i18n.data.d.ts → taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts} +2 -2
  21. package/full-dts/{i18n/my-organization-proj.ts.pl-PL.i18n.data.d.ts → taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts} +2 -3
  22. package/full-dts/taon-cms-content/i18n/taon-cms-content.translation.d.ts +5 -0
  23. package/full-dts/taon-cms-content/taon-cms-content-api.service.d.ts +12 -4
  24. package/full-dts/taon-cms-content/taon-cms-content.controller.d.ts +11 -4
  25. package/full-dts/taon-cms-content/taon-cms-content.entity.d.ts +2 -0
  26. package/full-dts/taon-cms-content/taon-cms-content.models.d.ts +4 -1
  27. package/full-dts/taon-cms-content/taon-cms-content.repository.d.ts +4 -0
  28. package/full-dts/taon-cms-content-asset/taon-cms-content-asset-api.service.d.ts +2 -1
  29. package/full-dts/taon-cms-content-permission/taon-cms-content-permission-api.service.d.ts +2 -1
  30. package/full-dts/taon-cms-content-revision/taon-cms-content-revision-api.service.d.ts +4 -2
  31. package/full-dts/taon-cms-content-tag/taon-cms-content-tag-api.service.d.ts +2 -1
  32. package/full-dts/taon-cms-tag/taon-cms-tag-api.service.d.ts +1 -5
  33. package/full-dts/taon-posts/taon-cms-post/taon-cms-post.component.d.ts +13 -0
  34. package/full-dts/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.d.ts +1 -1
  35. package/html/imports.html +3 -2
  36. package/html/lib/taon-posts/taon-cms-post/taon-cms-post.component.html +38 -0
  37. package/i18n/app.ts.en-US.i18n.data.d.ts +15 -3
  38. package/i18n/app.ts.pl-PL.i18n.data.d.ts +15 -4
  39. package/lib/build-info._auto-generated_.d.ts +1 -1
  40. package/lib/build-info._auto-generated_.js +1 -1
  41. package/lib/decorators/taon-cms-authorization.d.ts +44 -0
  42. package/lib/decorators/taon-cms-authorization.js +107 -0
  43. package/lib/decorators/taon-cms-authorization.js.map +1 -0
  44. package/lib/index._auto-generated_.d.ts +3 -3
  45. package/lib/index._auto-generated_.js +3 -3
  46. package/lib/index._auto-generated_.js.map +1 -1
  47. package/lib/index.d.ts +0 -1
  48. package/lib/index.js +0 -1
  49. package/lib/index.js.map +1 -1
  50. package/lib/migrations/1792506757808_applicaitonHooks.d.ts +9 -0
  51. package/lib/migrations/1792506757808_applicaitonHooks.js +85 -0
  52. package/lib/migrations/1792506757808_applicaitonHooks.js.map +1 -0
  53. package/lib/migrations/migrations_index._auto-generated_.d.ts +2 -2
  54. package/lib/migrations/migrations_index._auto-generated_.js +2 -2
  55. package/lib/migrations/migrations_index._auto-generated_.js.map +1 -1
  56. package/lib/package.json +1 -1
  57. package/lib/taon-cms-application-hook/taon-cms-application-hook.entity.d.ts +9 -0
  58. package/lib/taon-cms-application-hook/taon-cms-application-hook.entity.js +45 -0
  59. package/lib/taon-cms-application-hook/taon-cms-application-hook.entity.js.map +1 -0
  60. package/lib/taon-cms-application-hooks.d.ts +8 -0
  61. package/lib/taon-cms-application-hooks.js +11 -0
  62. package/lib/taon-cms-application-hooks.js.map +1 -0
  63. package/lib/taon-cms-backoffice/index.d.ts +1 -1
  64. package/lib/taon-cms-backoffice/index.js +2 -2
  65. package/{lib-prod/i18n/my-organization-proj.ts.en-US.i18n.data.d.ts → lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts} +2 -2
  66. package/lib/{i18n/my-organization-proj.ts.en-US.i18n.data.js → taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js} +4 -4
  67. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -0
  68. package/{lib-prod/i18n/my-organization-proj.ts.pl-PL.i18n.data.d.ts → lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts} +2 -3
  69. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +15 -0
  70. package/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -0
  71. package/lib/taon-cms-content/i18n/taon-cms-content.translation.d.ts +4 -0
  72. package/lib/{i18n/lib.translation.js → taon-cms-content/i18n/taon-cms-content.translation.js} +1 -1
  73. package/lib/taon-cms-content/i18n/taon-cms-content.translation.js.map +1 -0
  74. package/lib/taon-cms-content/taon-cms-content.abstract.context.js +2 -1
  75. package/lib/taon-cms-content/taon-cms-content.abstract.context.js.map +1 -1
  76. package/lib/taon-cms-content/taon-cms-content.controller.d.ts +11 -4
  77. package/lib/taon-cms-content/taon-cms-content.controller.js +107 -29
  78. package/lib/taon-cms-content/taon-cms-content.controller.js.map +1 -1
  79. package/lib/taon-cms-content/taon-cms-content.entity.d.ts +2 -0
  80. package/lib/taon-cms-content/taon-cms-content.entity.js +10 -0
  81. package/lib/taon-cms-content/taon-cms-content.entity.js.map +1 -1
  82. package/lib/taon-cms-content/taon-cms-content.models.d.ts +3 -0
  83. package/lib/taon-cms-content/taon-cms-content.repository.d.ts +4 -0
  84. package/lib/taon-cms-content/taon-cms-content.repository.js +62 -3
  85. package/lib/taon-cms-content/taon-cms-content.repository.js.map +1 -1
  86. package/lib/taon-posts/taon-cms-post/index.d.ts +1 -1
  87. package/lib/taon-posts/taon-cms-post/index.js +2 -2
  88. package/lib/taon-posts/taon-cms-post-edit-dialog/index.d.ts +1 -1
  89. package/lib/taon-posts/taon-cms-post-edit-dialog/index.js +2 -2
  90. package/lib/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
  91. package/lib/taon-posts/taon-cms-posts-backoffice/index.js +2 -2
  92. package/lib/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
  93. package/lib/taon-posts/taon-cms-revision-chooser/index.js +2 -2
  94. package/lib/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
  95. package/lib/taon-posts/taon-related-post-chooser/index.js +2 -2
  96. package/lib-esm/lib/build-info._auto-generated_.d.ts +1 -1
  97. package/lib-esm/lib/build-info._auto-generated_.js +1 -1
  98. package/lib-esm/lib/decorators/taon-cms-authorization.d.ts +44 -0
  99. package/lib-esm/lib/decorators/taon-cms-authorization.js +97 -0
  100. package/lib-esm/lib/decorators/taon-cms-authorization.js.map +1 -0
  101. package/lib-esm/lib/index._auto-generated_.d.ts +3 -3
  102. package/lib-esm/lib/index._auto-generated_.js +3 -3
  103. package/lib-esm/lib/index._auto-generated_.js.map +1 -1
  104. package/lib-esm/lib/index.d.ts +0 -1
  105. package/lib-esm/lib/index.js +0 -1
  106. package/lib-esm/lib/index.js.map +1 -1
  107. package/lib-esm/lib/migrations/{1791132517216_initial.d.ts → 1792506757808_applicaitonHooks.d.ts} +4 -2
  108. package/lib-esm/lib/migrations/1792506757808_applicaitonHooks.js +76 -0
  109. package/lib-esm/lib/migrations/1792506757808_applicaitonHooks.js.map +1 -0
  110. package/lib-esm/lib/migrations/migrations_index._auto-generated_.d.ts +2 -2
  111. package/lib-esm/lib/migrations/migrations_index._auto-generated_.js +2 -2
  112. package/lib-esm/lib/migrations/migrations_index._auto-generated_.js.map +1 -1
  113. package/lib-esm/lib/taon-cms-application-hook/taon-cms-application-hook.entity.d.ts +9 -0
  114. package/lib-esm/lib/taon-cms-application-hook/taon-cms-application-hook.entity.js +33 -0
  115. package/lib-esm/lib/taon-cms-application-hook/taon-cms-application-hook.entity.js.map +1 -0
  116. package/lib-esm/lib/taon-cms-application-hooks.d.ts +8 -0
  117. package/lib-esm/lib/taon-cms-application-hooks.js +8 -0
  118. package/lib-esm/lib/taon-cms-application-hooks.js.map +1 -0
  119. package/lib-esm/lib/taon-cms-backoffice/index.d.ts +1 -1
  120. package/lib-esm/lib/taon-cms-backoffice/index.js +1 -1
  121. package/lib-esm/lib/{i18n/my-organization-proj.ts.en-US.i18n.data.d.ts → taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts} +2 -2
  122. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js +13 -0
  123. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -0
  124. package/{lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.d.ts → lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts} +2 -3
  125. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +13 -0
  126. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -0
  127. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.translation.d.ts +4 -0
  128. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.translation.js +4 -0
  129. package/lib-esm/lib/taon-cms-content/i18n/taon-cms-content.translation.js.map +1 -0
  130. package/lib-esm/lib/taon-cms-content/taon-cms-content.abstract.context.js +2 -1
  131. package/lib-esm/lib/taon-cms-content/taon-cms-content.abstract.context.js.map +1 -1
  132. package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.d.ts +11 -4
  133. package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.js +80 -2
  134. package/lib-esm/lib/taon-cms-content/taon-cms-content.controller.js.map +1 -1
  135. package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.d.ts +2 -0
  136. package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.js +11 -1
  137. package/lib-esm/lib/taon-cms-content/taon-cms-content.entity.js.map +1 -1
  138. package/lib-esm/lib/taon-cms-content/taon-cms-content.models.d.ts +3 -0
  139. package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.d.ts +4 -0
  140. package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.js +62 -3
  141. package/lib-esm/lib/taon-cms-content/taon-cms-content.repository.js.map +1 -1
  142. package/lib-esm/lib/taon-posts/taon-cms-post/index.d.ts +1 -1
  143. package/lib-esm/lib/taon-posts/taon-cms-post/index.js +1 -1
  144. package/lib-esm/lib/taon-posts/taon-cms-post-edit-dialog/index.d.ts +1 -1
  145. package/lib-esm/lib/taon-posts/taon-cms-post-edit-dialog/index.js +1 -1
  146. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
  147. package/lib-esm/lib/taon-posts/taon-cms-posts-backoffice/index.js +1 -1
  148. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
  149. package/lib-esm/lib/taon-posts/taon-cms-revision-chooser/index.js +1 -1
  150. package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
  151. package/lib-esm/lib/taon-posts/taon-related-post-chooser/index.js +1 -1
  152. package/lib-prod/build-info._auto-generated_.d.ts +1 -1
  153. package/lib-prod/build-info._auto-generated_.js +1 -1
  154. package/lib-prod/decorators/taon-cms-authorization.d.ts +44 -0
  155. package/lib-prod/decorators/taon-cms-authorization.js +97 -0
  156. package/lib-prod/decorators/taon-cms-authorization.js.map +1 -0
  157. package/lib-prod/index._auto-generated_.d.ts +3 -3
  158. package/lib-prod/index._auto-generated_.js +3 -3
  159. package/lib-prod/index._auto-generated_.js.map +1 -1
  160. package/lib-prod/index.d.ts +0 -1
  161. package/lib-prod/index.js +0 -1
  162. package/lib-prod/index.js.map +1 -1
  163. package/lib-prod/migrations/{1791132517216_initial.d.ts → 1792506757808_applicaitonHooks.d.ts} +4 -2
  164. package/lib-prod/migrations/1792506757808_applicaitonHooks.js +76 -0
  165. package/lib-prod/migrations/1792506757808_applicaitonHooks.js.map +1 -0
  166. package/lib-prod/migrations/migrations_index._auto-generated_.d.ts +2 -2
  167. package/lib-prod/migrations/migrations_index._auto-generated_.js +2 -2
  168. package/lib-prod/migrations/migrations_index._auto-generated_.js.map +1 -1
  169. package/lib-prod/package.json +1 -1
  170. package/lib-prod/taon-cms-application-hook/taon-cms-application-hook.entity.d.ts +9 -0
  171. package/lib-prod/taon-cms-application-hook/taon-cms-application-hook.entity.js +33 -0
  172. package/lib-prod/taon-cms-application-hook/taon-cms-application-hook.entity.js.map +1 -0
  173. package/lib-prod/taon-cms-application-hooks.d.ts +8 -0
  174. package/lib-prod/taon-cms-application-hooks.js +8 -0
  175. package/lib-prod/taon-cms-application-hooks.js.map +1 -0
  176. package/lib-prod/taon-cms-backoffice/index.d.ts +1 -1
  177. package/lib-prod/taon-cms-backoffice/index.js +1 -1
  178. package/{lib/i18n/my-organization-proj.ts.en-US.i18n.data.d.ts → lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.d.ts} +2 -2
  179. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js +13 -0
  180. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.js.map +1 -0
  181. package/{lib-esm/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.d.ts → lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.d.ts} +2 -3
  182. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js +13 -0
  183. package/lib-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.js.map +1 -0
  184. package/lib-prod/taon-cms-content/i18n/taon-cms-content.translation.d.ts +4 -0
  185. package/lib-prod/taon-cms-content/i18n/taon-cms-content.translation.js +4 -0
  186. package/lib-prod/taon-cms-content/i18n/taon-cms-content.translation.js.map +1 -0
  187. package/lib-prod/taon-cms-content/taon-cms-content.abstract.context.js +2 -1
  188. package/lib-prod/taon-cms-content/taon-cms-content.abstract.context.js.map +1 -1
  189. package/lib-prod/taon-cms-content/taon-cms-content.controller.d.ts +11 -4
  190. package/lib-prod/taon-cms-content/taon-cms-content.controller.js +80 -2
  191. package/lib-prod/taon-cms-content/taon-cms-content.controller.js.map +1 -1
  192. package/lib-prod/taon-cms-content/taon-cms-content.entity.d.ts +2 -0
  193. package/lib-prod/taon-cms-content/taon-cms-content.entity.js +11 -1
  194. package/lib-prod/taon-cms-content/taon-cms-content.entity.js.map +1 -1
  195. package/lib-prod/taon-cms-content/taon-cms-content.models.d.ts +3 -0
  196. package/lib-prod/taon-cms-content/taon-cms-content.repository.d.ts +4 -0
  197. package/lib-prod/taon-cms-content/taon-cms-content.repository.js +62 -3
  198. package/lib-prod/taon-cms-content/taon-cms-content.repository.js.map +1 -1
  199. package/lib-prod/taon-posts/taon-cms-post/index.d.ts +1 -1
  200. package/lib-prod/taon-posts/taon-cms-post/index.js +1 -1
  201. package/lib-prod/taon-posts/taon-cms-post-edit-dialog/index.d.ts +1 -1
  202. package/lib-prod/taon-posts/taon-cms-post-edit-dialog/index.js +1 -1
  203. package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.d.ts +1 -1
  204. package/lib-prod/taon-posts/taon-cms-posts-backoffice/index.js +1 -1
  205. package/lib-prod/taon-posts/taon-cms-revision-chooser/index.d.ts +1 -1
  206. package/lib-prod/taon-posts/taon-cms-revision-chooser/index.js +1 -1
  207. package/lib-prod/taon-posts/taon-related-post-chooser/index.d.ts +1 -1
  208. package/lib-prod/taon-posts/taon-related-post-chooser/index.js +1 -1
  209. package/package.json +1 -1
  210. package/scss/lib/taon-posts/taon-cms-post/taon-cms-post.component.scss +11 -0
  211. package/ts-source/browser-code/build-info._auto-generated_.ts +18 -0
  212. package/ts-source/browser-code/decorators/taon-cms-authorization.ts +64 -0
  213. package/ts-source/browser-code/index._auto-generated_.ts +125 -0
  214. package/ts-source/browser-code/index.scss +11 -0
  215. package/ts-source/browser-code/index.ts +17 -0
  216. package/ts-source/browser-code/lib-info.md +8 -0
  217. package/ts-source/browser-code/migrations/1792506757808_applicaitonHooks.ts +78 -0
  218. package/ts-source/browser-code/migrations/index.ts +13 -0
  219. package/ts-source/browser-code/migrations/migrations-info.md +6 -0
  220. package/ts-source/browser-code/migrations/migrations_index._auto-generated_.ts +16 -0
  221. package/ts-source/browser-code/start-cli.ts +43 -0
  222. package/ts-source/browser-code/taon-cms-application-hook/taon-cms-application-hook.entity.ts +30 -0
  223. package/ts-source/browser-code/taon-cms-application-hooks.ts +20 -0
  224. package/ts-source/browser-code/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts +37 -0
  225. package/ts-source/browser-code/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.ts +19 -0
  226. package/ts-source/browser-code/taon-cms-backoffice/index.ts +13 -0
  227. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-backoffice.component.html +22 -0
  228. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-backoffice.component.scss +14 -0
  229. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-backoffice.component.ts +31 -0
  230. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-backoffice.models.ts +13 -0
  231. package/ts-source/browser-code/taon-cms-backoffice/taon-cms-backoffice.routes.ts +42 -0
  232. package/ts-source/browser-code/taon-cms-category/index.ts +23 -0
  233. package/ts-source/browser-code/taon-cms-category/taon-cms-category-api.service.ts +25 -0
  234. package/ts-source/browser-code/taon-cms-category/taon-cms-category.abstract.context.ts +30 -0
  235. package/ts-source/browser-code/taon-cms-category/taon-cms-category.constants.ts +18 -0
  236. package/ts-source/browser-code/taon-cms-category/taon-cms-category.controller.ts +24 -0
  237. package/ts-source/browser-code/taon-cms-category/taon-cms-category.entity.ts +26 -0
  238. package/ts-source/browser-code/taon-cms-category/taon-cms-category.middleware.ts +19 -0
  239. package/ts-source/browser-code/taon-cms-category/taon-cms-category.models.ts +16 -0
  240. package/ts-source/browser-code/taon-cms-category/taon-cms-category.provider.ts +21 -0
  241. package/ts-source/browser-code/taon-cms-category/taon-cms-category.repository.ts +26 -0
  242. package/ts-source/browser-code/taon-cms-category/taon-cms-category.subscriber.ts +24 -0
  243. package/ts-source/browser-code/taon-cms-category/taon-cms-category.utils.ts +18 -0
  244. package/ts-source/browser-code/taon-cms-comment/index.ts +23 -0
  245. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment-api.service.ts +28 -0
  246. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.abstract.context.ts +30 -0
  247. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.constants.ts +18 -0
  248. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.controller.ts +30 -0
  249. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.entity.ts +30 -0
  250. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.middleware.ts +19 -0
  251. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.models.ts +16 -0
  252. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.provider.ts +21 -0
  253. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.repository.ts +24 -0
  254. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.subscriber.ts +24 -0
  255. package/ts-source/browser-code/taon-cms-comment/taon-cms-comment.utils.ts +18 -0
  256. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +28 -0
  257. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +9 -0
  258. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -0
  259. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +9 -0
  260. package/ts-source/browser-code/taon-cms-content/i18n/taon-cms-content.translation.ts +17 -0
  261. package/ts-source/browser-code/taon-cms-content/index.ts +24 -0
  262. package/ts-source/browser-code/taon-cms-content/taon-cms-content-api.service.ts +100 -0
  263. package/ts-source/browser-code/taon-cms-content/taon-cms-content-storage.controller.ts +30 -0
  264. package/ts-source/browser-code/taon-cms-content/taon-cms-content.abstract.context.ts +42 -0
  265. package/ts-source/browser-code/taon-cms-content/taon-cms-content.config.service.ts +19 -0
  266. package/ts-source/browser-code/taon-cms-content/taon-cms-content.constants.ts +23 -0
  267. package/ts-source/browser-code/taon-cms-content/taon-cms-content.controller.ts +140 -0
  268. package/ts-source/browser-code/taon-cms-content/taon-cms-content.entity.ts +43 -0
  269. package/ts-source/browser-code/taon-cms-content/taon-cms-content.middleware.ts +19 -0
  270. package/ts-source/browser-code/taon-cms-content/taon-cms-content.models.ts +59 -0
  271. package/ts-source/browser-code/taon-cms-content/taon-cms-content.provider.ts +21 -0
  272. package/ts-source/browser-code/taon-cms-content/taon-cms-content.repository.ts +142 -0
  273. package/ts-source/browser-code/taon-cms-content/taon-cms-content.subscriber.ts +24 -0
  274. package/ts-source/browser-code/taon-cms-content/taon-cms-content.utils.ts +18 -0
  275. package/ts-source/browser-code/taon-cms-content/taon-cms-content.validation.ts +89 -0
  276. package/ts-source/browser-code/taon-cms-content-asset/index.ts +23 -0
  277. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset-api.service.ts +30 -0
  278. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.abstract.context.ts +30 -0
  279. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.constants.ts +18 -0
  280. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.controller.ts +30 -0
  281. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.entity.ts +34 -0
  282. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.middleware.ts +19 -0
  283. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.models.ts +16 -0
  284. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.provider.ts +21 -0
  285. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.repository.ts +24 -0
  286. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.subscriber.ts +24 -0
  287. package/ts-source/browser-code/taon-cms-content-asset/taon-cms-content-asset.utils.ts +18 -0
  288. package/ts-source/browser-code/taon-cms-content-permission/index.ts +23 -0
  289. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission-api.service.ts +30 -0
  290. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.abstract.context.ts +30 -0
  291. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.constants.ts +18 -0
  292. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.controller.ts +30 -0
  293. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.entity.ts +41 -0
  294. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.middleware.ts +19 -0
  295. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.models.ts +16 -0
  296. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.provider.ts +21 -0
  297. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.repository.ts +24 -0
  298. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.subscriber.ts +24 -0
  299. package/ts-source/browser-code/taon-cms-content-permission/taon-cms-content-permission.utils.ts +18 -0
  300. package/ts-source/browser-code/taon-cms-content-revision/index.ts +23 -0
  301. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision-api.service.ts +37 -0
  302. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.abstract.context.ts +30 -0
  303. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.constants.ts +18 -0
  304. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.controller.ts +24 -0
  305. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.entity.ts +31 -0
  306. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.middleware.ts +19 -0
  307. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.models.ts +16 -0
  308. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.provider.ts +21 -0
  309. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.repository.ts +34 -0
  310. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.subscriber.ts +24 -0
  311. package/ts-source/browser-code/taon-cms-content-revision/taon-cms-content-revision.utils.ts +18 -0
  312. package/ts-source/browser-code/taon-cms-content-tag/index.ts +23 -0
  313. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag-api.service.ts +25 -0
  314. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.abstract.context.ts +30 -0
  315. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.constants.ts +18 -0
  316. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.controller.ts +24 -0
  317. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.entity.ts +23 -0
  318. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.middleware.ts +19 -0
  319. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.models.ts +16 -0
  320. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.provider.ts +21 -0
  321. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.repository.ts +28 -0
  322. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.subscriber.ts +24 -0
  323. package/ts-source/browser-code/taon-cms-content-tag/taon-cms-content-tag.utils.ts +18 -0
  324. package/ts-source/browser-code/taon-cms-tag/index.ts +23 -0
  325. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag-api.service.ts +22 -0
  326. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.abstract.context.ts +30 -0
  327. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.constants.ts +18 -0
  328. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.controller.ts +30 -0
  329. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.entity.ts +24 -0
  330. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.middleware.ts +19 -0
  331. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.models.ts +16 -0
  332. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.provider.ts +21 -0
  333. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.repository.ts +29 -0
  334. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.subscriber.ts +24 -0
  335. package/ts-source/browser-code/taon-cms-tag/taon-cms-tag.utils.ts +18 -0
  336. package/ts-source/browser-code/taon-cms.abstract.context.ts +37 -0
  337. package/ts-source/browser-code/taon-posts/taon-cms-post/index.ts +13 -0
  338. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-editable.directive.ts +107 -0
  339. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.html +234 -0
  340. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.scss +154 -0
  341. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.component.ts +564 -0
  342. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.models.ts +20 -0
  343. package/ts-source/browser-code/taon-posts/taon-cms-post/taon-cms-post.routes.ts +21 -0
  344. package/ts-source/browser-code/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +33 -0
  345. package/ts-source/browser-code/taon-posts/taon-cms-post-edit-dialog/index.ts +13 -0
  346. package/ts-source/browser-code/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.html +25 -0
  347. package/ts-source/browser-code/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.scss +30 -0
  348. package/ts-source/browser-code/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.ts +43 -0
  349. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/index.ts +13 -0
  350. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html +27 -0
  351. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.scss +14 -0
  352. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts +147 -0
  353. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.ts +13 -0
  354. package/ts-source/browser-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts +43 -0
  355. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/index.ts +13 -0
  356. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html +48 -0
  357. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.scss +26 -0
  358. package/ts-source/browser-code/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts +87 -0
  359. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/index.ts +13 -0
  360. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +40 -0
  361. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.scss +36 -0
  362. package/ts-source/browser-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +89 -0
  363. package/ts-source/browser-code-prod/build-info._auto-generated_.split-namespaces.json +4 -0
  364. package/ts-source/browser-code-prod/build-info._auto-generated_.ts +18 -0
  365. package/ts-source/browser-code-prod/decorators/taon-cms-authorization.split-namespaces.json +4 -0
  366. package/ts-source/browser-code-prod/decorators/taon-cms-authorization.ts +64 -0
  367. package/ts-source/browser-code-prod/index._auto-generated_.split-namespaces.json +4 -0
  368. package/ts-source/browser-code-prod/index._auto-generated_.ts +125 -0
  369. package/ts-source/browser-code-prod/index.scss +11 -0
  370. package/ts-source/browser-code-prod/index.split-namespaces.json +4 -0
  371. package/ts-source/browser-code-prod/index.ts +17 -0
  372. package/ts-source/browser-code-prod/lib-info.md +8 -0
  373. package/ts-source/browser-code-prod/migrations/1792506757808_applicaitonHooks.split-namespaces.json +4 -0
  374. package/ts-source/browser-code-prod/migrations/1792506757808_applicaitonHooks.ts +78 -0
  375. package/ts-source/browser-code-prod/migrations/index.split-namespaces.json +4 -0
  376. package/ts-source/browser-code-prod/migrations/index.ts +13 -0
  377. package/ts-source/browser-code-prod/migrations/migrations-info.md +6 -0
  378. package/ts-source/browser-code-prod/migrations/migrations_index._auto-generated_.split-namespaces.json +4 -0
  379. package/ts-source/browser-code-prod/migrations/migrations_index._auto-generated_.ts +16 -0
  380. package/ts-source/browser-code-prod/start-cli.split-namespaces.json +4 -0
  381. package/ts-source/browser-code-prod/start-cli.ts +43 -0
  382. package/ts-source/browser-code-prod/taon-cms-application-hook/taon-cms-application-hook.entity.split-namespaces.json +4 -0
  383. package/ts-source/browser-code-prod/taon-cms-application-hook/taon-cms-application-hook.entity.ts +30 -0
  384. package/ts-source/browser-code-prod/taon-cms-application-hooks.split-namespaces.json +4 -0
  385. package/ts-source/browser-code-prod/taon-cms-application-hooks.ts +20 -0
  386. package/ts-source/browser-code-prod/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.split-namespaces.json +4 -0
  387. package/ts-source/browser-code-prod/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts +37 -0
  388. package/ts-source/browser-code-prod/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.split-namespaces.json +4 -0
  389. package/ts-source/browser-code-prod/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.ts +19 -0
  390. package/ts-source/browser-code-prod/taon-cms-backoffice/index.split-namespaces.json +4 -0
  391. package/ts-source/browser-code-prod/taon-cms-backoffice/index.ts +13 -0
  392. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.component.html +22 -0
  393. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.component.scss +14 -0
  394. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.component.split-namespaces.json +4 -0
  395. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.component.ts +31 -0
  396. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.models.split-namespaces.json +4 -0
  397. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.models.ts +12 -0
  398. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.routes.split-namespaces.json +4 -0
  399. package/ts-source/browser-code-prod/taon-cms-backoffice/taon-cms-backoffice.routes.ts +42 -0
  400. package/ts-source/browser-code-prod/taon-cms-category/index.split-namespaces.json +4 -0
  401. package/ts-source/browser-code-prod/taon-cms-category/index.ts +23 -0
  402. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category-api.service.split-namespaces.json +4 -0
  403. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category-api.service.ts +25 -0
  404. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.abstract.context.split-namespaces.json +4 -0
  405. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.abstract.context.ts +30 -0
  406. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.constants.split-namespaces.json +4 -0
  407. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.constants.ts +18 -0
  408. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.controller.split-namespaces.json +4 -0
  409. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.controller.ts +24 -0
  410. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.entity.split-namespaces.json +4 -0
  411. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.entity.ts +26 -0
  412. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.middleware.split-namespaces.json +4 -0
  413. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.middleware.ts +19 -0
  414. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.models.split-namespaces.json +4 -0
  415. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.models.ts +16 -0
  416. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.provider.split-namespaces.json +4 -0
  417. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.provider.ts +21 -0
  418. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.repository.split-namespaces.json +4 -0
  419. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.repository.ts +26 -0
  420. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.subscriber.split-namespaces.json +4 -0
  421. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.subscriber.ts +24 -0
  422. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.utils.split-namespaces.json +10 -0
  423. package/ts-source/browser-code-prod/taon-cms-category/taon-cms-category.utils.ts +16 -0
  424. package/ts-source/browser-code-prod/taon-cms-comment/index.split-namespaces.json +4 -0
  425. package/ts-source/browser-code-prod/taon-cms-comment/index.ts +23 -0
  426. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-api.service.split-namespaces.json +4 -0
  427. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment-api.service.ts +28 -0
  428. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.abstract.context.split-namespaces.json +4 -0
  429. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.abstract.context.ts +30 -0
  430. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.constants.split-namespaces.json +4 -0
  431. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.constants.ts +18 -0
  432. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.controller.split-namespaces.json +4 -0
  433. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.controller.ts +30 -0
  434. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.entity.split-namespaces.json +4 -0
  435. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.entity.ts +30 -0
  436. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.middleware.split-namespaces.json +4 -0
  437. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.middleware.ts +19 -0
  438. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.models.split-namespaces.json +4 -0
  439. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.models.ts +16 -0
  440. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.provider.split-namespaces.json +4 -0
  441. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.provider.ts +21 -0
  442. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.repository.split-namespaces.json +4 -0
  443. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.repository.ts +24 -0
  444. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.subscriber.split-namespaces.json +4 -0
  445. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.subscriber.ts +24 -0
  446. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.utils.split-namespaces.json +10 -0
  447. package/ts-source/browser-code-prod/taon-cms-comment/taon-cms-comment.utils.ts +16 -0
  448. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +28 -0
  449. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +9 -0
  450. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -0
  451. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +9 -0
  452. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.translation.split-namespaces.json +4 -0
  453. package/ts-source/browser-code-prod/taon-cms-content/i18n/taon-cms-content.translation.ts +17 -0
  454. package/ts-source/browser-code-prod/taon-cms-content/index.split-namespaces.json +4 -0
  455. package/ts-source/browser-code-prod/taon-cms-content/index.ts +24 -0
  456. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content-api.service.split-namespaces.json +4 -0
  457. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content-api.service.ts +100 -0
  458. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content-storage.controller.split-namespaces.json +4 -0
  459. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content-storage.controller.ts +30 -0
  460. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.abstract.context.split-namespaces.json +4 -0
  461. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.abstract.context.ts +42 -0
  462. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.config.service.split-namespaces.json +4 -0
  463. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.config.service.ts +19 -0
  464. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.constants.split-namespaces.json +4 -0
  465. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.constants.ts +23 -0
  466. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.controller.split-namespaces.json +4 -0
  467. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.controller.ts +140 -0
  468. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.entity.split-namespaces.json +4 -0
  469. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.entity.ts +43 -0
  470. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.middleware.split-namespaces.json +4 -0
  471. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.middleware.ts +19 -0
  472. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.models.split-namespaces.json +4 -0
  473. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.models.ts +59 -0
  474. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.provider.split-namespaces.json +4 -0
  475. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.provider.ts +21 -0
  476. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.repository.split-namespaces.json +4 -0
  477. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.repository.ts +142 -0
  478. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.subscriber.split-namespaces.json +4 -0
  479. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.subscriber.ts +24 -0
  480. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.utils.split-namespaces.json +10 -0
  481. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.utils.ts +16 -0
  482. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.validation.split-namespaces.json +4 -0
  483. package/ts-source/browser-code-prod/taon-cms-content/taon-cms-content.validation.ts +89 -0
  484. package/ts-source/browser-code-prod/taon-cms-content-asset/index.split-namespaces.json +4 -0
  485. package/ts-source/browser-code-prod/taon-cms-content-asset/index.ts +23 -0
  486. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset-api.service.split-namespaces.json +4 -0
  487. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset-api.service.ts +30 -0
  488. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.abstract.context.split-namespaces.json +4 -0
  489. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.abstract.context.ts +30 -0
  490. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.constants.split-namespaces.json +4 -0
  491. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.constants.ts +18 -0
  492. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.controller.split-namespaces.json +4 -0
  493. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.controller.ts +30 -0
  494. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.entity.split-namespaces.json +4 -0
  495. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.entity.ts +34 -0
  496. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.middleware.split-namespaces.json +4 -0
  497. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.middleware.ts +19 -0
  498. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.models.split-namespaces.json +4 -0
  499. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.models.ts +16 -0
  500. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.provider.split-namespaces.json +4 -0
  501. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.provider.ts +21 -0
  502. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.repository.split-namespaces.json +4 -0
  503. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.repository.ts +24 -0
  504. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.subscriber.split-namespaces.json +4 -0
  505. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.subscriber.ts +24 -0
  506. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.utils.split-namespaces.json +10 -0
  507. package/ts-source/browser-code-prod/taon-cms-content-asset/taon-cms-content-asset.utils.ts +16 -0
  508. package/ts-source/browser-code-prod/taon-cms-content-permission/index.split-namespaces.json +4 -0
  509. package/ts-source/browser-code-prod/taon-cms-content-permission/index.ts +23 -0
  510. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission-api.service.split-namespaces.json +4 -0
  511. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission-api.service.ts +30 -0
  512. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.abstract.context.split-namespaces.json +4 -0
  513. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.abstract.context.ts +30 -0
  514. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.constants.split-namespaces.json +4 -0
  515. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.constants.ts +18 -0
  516. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.controller.split-namespaces.json +4 -0
  517. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.controller.ts +30 -0
  518. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.entity.split-namespaces.json +4 -0
  519. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.entity.ts +41 -0
  520. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.middleware.split-namespaces.json +4 -0
  521. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.middleware.ts +19 -0
  522. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.models.split-namespaces.json +4 -0
  523. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.models.ts +16 -0
  524. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.provider.split-namespaces.json +4 -0
  525. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.provider.ts +21 -0
  526. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.repository.split-namespaces.json +4 -0
  527. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.repository.ts +24 -0
  528. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.subscriber.split-namespaces.json +4 -0
  529. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.subscriber.ts +24 -0
  530. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.utils.split-namespaces.json +10 -0
  531. package/ts-source/browser-code-prod/taon-cms-content-permission/taon-cms-content-permission.utils.ts +16 -0
  532. package/ts-source/browser-code-prod/taon-cms-content-revision/index.split-namespaces.json +4 -0
  533. package/ts-source/browser-code-prod/taon-cms-content-revision/index.ts +23 -0
  534. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision-api.service.split-namespaces.json +4 -0
  535. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision-api.service.ts +37 -0
  536. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.abstract.context.split-namespaces.json +4 -0
  537. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.abstract.context.ts +30 -0
  538. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.constants.split-namespaces.json +4 -0
  539. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.constants.ts +18 -0
  540. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.controller.split-namespaces.json +4 -0
  541. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.controller.ts +24 -0
  542. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.entity.split-namespaces.json +4 -0
  543. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.entity.ts +31 -0
  544. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.middleware.split-namespaces.json +4 -0
  545. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.middleware.ts +19 -0
  546. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.models.split-namespaces.json +4 -0
  547. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.models.ts +16 -0
  548. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.provider.split-namespaces.json +4 -0
  549. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.provider.ts +21 -0
  550. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.repository.split-namespaces.json +4 -0
  551. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.repository.ts +34 -0
  552. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.subscriber.split-namespaces.json +4 -0
  553. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.subscriber.ts +24 -0
  554. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.utils.split-namespaces.json +10 -0
  555. package/ts-source/browser-code-prod/taon-cms-content-revision/taon-cms-content-revision.utils.ts +16 -0
  556. package/ts-source/browser-code-prod/taon-cms-content-tag/index.split-namespaces.json +4 -0
  557. package/ts-source/browser-code-prod/taon-cms-content-tag/index.ts +23 -0
  558. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag-api.service.split-namespaces.json +4 -0
  559. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag-api.service.ts +25 -0
  560. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.abstract.context.split-namespaces.json +4 -0
  561. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.abstract.context.ts +30 -0
  562. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.constants.split-namespaces.json +4 -0
  563. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.constants.ts +18 -0
  564. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.controller.split-namespaces.json +4 -0
  565. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.controller.ts +24 -0
  566. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.entity.split-namespaces.json +4 -0
  567. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.entity.ts +23 -0
  568. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.middleware.split-namespaces.json +4 -0
  569. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.middleware.ts +19 -0
  570. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.models.split-namespaces.json +4 -0
  571. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.models.ts +16 -0
  572. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.provider.split-namespaces.json +4 -0
  573. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.provider.ts +21 -0
  574. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.repository.split-namespaces.json +4 -0
  575. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.repository.ts +28 -0
  576. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.subscriber.split-namespaces.json +4 -0
  577. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.subscriber.ts +24 -0
  578. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.utils.split-namespaces.json +10 -0
  579. package/ts-source/browser-code-prod/taon-cms-content-tag/taon-cms-content-tag.utils.ts +16 -0
  580. package/ts-source/browser-code-prod/taon-cms-tag/index.split-namespaces.json +4 -0
  581. package/ts-source/browser-code-prod/taon-cms-tag/index.ts +23 -0
  582. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag-api.service.split-namespaces.json +4 -0
  583. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag-api.service.ts +22 -0
  584. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.abstract.context.split-namespaces.json +4 -0
  585. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.abstract.context.ts +30 -0
  586. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.constants.split-namespaces.json +4 -0
  587. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.constants.ts +18 -0
  588. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.controller.split-namespaces.json +4 -0
  589. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.controller.ts +30 -0
  590. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.entity.split-namespaces.json +4 -0
  591. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.entity.ts +24 -0
  592. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.middleware.split-namespaces.json +4 -0
  593. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.middleware.ts +19 -0
  594. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.models.split-namespaces.json +4 -0
  595. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.models.ts +16 -0
  596. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.provider.split-namespaces.json +4 -0
  597. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.provider.ts +21 -0
  598. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.repository.split-namespaces.json +4 -0
  599. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.repository.ts +29 -0
  600. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.subscriber.split-namespaces.json +4 -0
  601. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.subscriber.ts +24 -0
  602. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.utils.split-namespaces.json +10 -0
  603. package/ts-source/browser-code-prod/taon-cms-tag/taon-cms-tag.utils.ts +16 -0
  604. package/ts-source/browser-code-prod/taon-cms.abstract.context.split-namespaces.json +4 -0
  605. package/ts-source/browser-code-prod/taon-cms.abstract.context.ts +37 -0
  606. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/index.split-namespaces.json +4 -0
  607. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/index.ts +13 -0
  608. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-editable.directive.split-namespaces.json +4 -0
  609. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-editable.directive.ts +107 -0
  610. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.html +234 -0
  611. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.scss +154 -0
  612. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.split-namespaces.json +4 -0
  613. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.ts +564 -0
  614. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.models.split-namespaces.json +4 -0
  615. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.models.ts +20 -0
  616. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.routes.split-namespaces.json +4 -0
  617. package/ts-source/browser-code-prod/taon-posts/taon-cms-post/taon-cms-post.routes.ts +21 -0
  618. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.split-namespaces.json +4 -0
  619. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +33 -0
  620. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-edit-dialog/index.split-namespaces.json +4 -0
  621. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-edit-dialog/index.ts +13 -0
  622. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.html +25 -0
  623. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.scss +30 -0
  624. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.split-namespaces.json +4 -0
  625. package/ts-source/browser-code-prod/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.ts +43 -0
  626. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/index.split-namespaces.json +4 -0
  627. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/index.ts +13 -0
  628. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html +27 -0
  629. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.scss +14 -0
  630. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.split-namespaces.json +4 -0
  631. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts +147 -0
  632. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.split-namespaces.json +4 -0
  633. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.ts +12 -0
  634. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.split-namespaces.json +4 -0
  635. package/ts-source/browser-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts +43 -0
  636. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/index.split-namespaces.json +4 -0
  637. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/index.ts +13 -0
  638. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html +48 -0
  639. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.scss +26 -0
  640. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.split-namespaces.json +4 -0
  641. package/ts-source/browser-code-prod/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts +87 -0
  642. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/index.split-namespaces.json +4 -0
  643. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/index.ts +13 -0
  644. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +40 -0
  645. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.scss +36 -0
  646. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.split-namespaces.json +4 -0
  647. package/ts-source/browser-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +89 -0
  648. package/ts-source/websql-code/build-info._auto-generated_.ts +18 -0
  649. package/ts-source/websql-code/decorators/taon-cms-authorization.ts +93 -0
  650. package/ts-source/websql-code/index._auto-generated_.ts +125 -0
  651. package/ts-source/websql-code/index.scss +11 -0
  652. package/ts-source/websql-code/index.ts +17 -0
  653. package/ts-source/websql-code/lib-info.md +8 -0
  654. package/ts-source/websql-code/migrations/1792506757808_applicaitonHooks.ts +78 -0
  655. package/ts-source/websql-code/migrations/index.ts +13 -0
  656. package/ts-source/websql-code/migrations/migrations-info.md +6 -0
  657. package/ts-source/websql-code/migrations/migrations_index._auto-generated_.ts +16 -0
  658. package/ts-source/websql-code/start-cli.ts +43 -0
  659. package/ts-source/websql-code/taon-cms-application-hook/taon-cms-application-hook.entity.ts +30 -0
  660. package/ts-source/websql-code/taon-cms-application-hooks.ts +20 -0
  661. package/ts-source/websql-code/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts +37 -0
  662. package/ts-source/websql-code/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.ts +19 -0
  663. package/ts-source/websql-code/taon-cms-backoffice/index.ts +13 -0
  664. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-backoffice.component.html +22 -0
  665. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-backoffice.component.scss +14 -0
  666. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-backoffice.component.ts +31 -0
  667. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-backoffice.models.ts +13 -0
  668. package/ts-source/websql-code/taon-cms-backoffice/taon-cms-backoffice.routes.ts +42 -0
  669. package/ts-source/websql-code/taon-cms-category/index.ts +23 -0
  670. package/ts-source/websql-code/taon-cms-category/taon-cms-category-api.service.ts +25 -0
  671. package/ts-source/websql-code/taon-cms-category/taon-cms-category.abstract.context.ts +30 -0
  672. package/ts-source/websql-code/taon-cms-category/taon-cms-category.constants.ts +18 -0
  673. package/ts-source/websql-code/taon-cms-category/taon-cms-category.controller.ts +24 -0
  674. package/ts-source/websql-code/taon-cms-category/taon-cms-category.entity.ts +31 -0
  675. package/ts-source/websql-code/taon-cms-category/taon-cms-category.middleware.ts +19 -0
  676. package/ts-source/websql-code/taon-cms-category/taon-cms-category.models.ts +16 -0
  677. package/ts-source/websql-code/taon-cms-category/taon-cms-category.provider.ts +21 -0
  678. package/ts-source/websql-code/taon-cms-category/taon-cms-category.repository.ts +31 -0
  679. package/ts-source/websql-code/taon-cms-category/taon-cms-category.subscriber.ts +24 -0
  680. package/ts-source/websql-code/taon-cms-category/taon-cms-category.utils.ts +18 -0
  681. package/ts-source/websql-code/taon-cms-comment/index.ts +23 -0
  682. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment-api.service.ts +28 -0
  683. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.abstract.context.ts +30 -0
  684. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.constants.ts +18 -0
  685. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.controller.ts +37 -0
  686. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.entity.ts +39 -0
  687. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.middleware.ts +19 -0
  688. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.models.ts +16 -0
  689. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.provider.ts +21 -0
  690. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.repository.ts +29 -0
  691. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.subscriber.ts +24 -0
  692. package/ts-source/websql-code/taon-cms-comment/taon-cms-comment.utils.ts +18 -0
  693. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +28 -0
  694. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +9 -0
  695. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -0
  696. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +9 -0
  697. package/ts-source/websql-code/taon-cms-content/i18n/taon-cms-content.translation.ts +17 -0
  698. package/ts-source/websql-code/taon-cms-content/index.ts +24 -0
  699. package/ts-source/websql-code/taon-cms-content/taon-cms-content-api.service.ts +100 -0
  700. package/ts-source/websql-code/taon-cms-content/taon-cms-content-storage.controller.ts +30 -0
  701. package/ts-source/websql-code/taon-cms-content/taon-cms-content.abstract.context.ts +42 -0
  702. package/ts-source/websql-code/taon-cms-content/taon-cms-content.config.service.ts +19 -0
  703. package/ts-source/websql-code/taon-cms-content/taon-cms-content.constants.ts +23 -0
  704. package/ts-source/websql-code/taon-cms-content/taon-cms-content.controller.ts +147 -0
  705. package/ts-source/websql-code/taon-cms-content/taon-cms-content.entity.ts +72 -0
  706. package/ts-source/websql-code/taon-cms-content/taon-cms-content.middleware.ts +19 -0
  707. package/ts-source/websql-code/taon-cms-content/taon-cms-content.models.ts +59 -0
  708. package/ts-source/websql-code/taon-cms-content/taon-cms-content.provider.ts +21 -0
  709. package/ts-source/websql-code/taon-cms-content/taon-cms-content.repository.ts +374 -0
  710. package/ts-source/websql-code/taon-cms-content/taon-cms-content.subscriber.ts +24 -0
  711. package/ts-source/websql-code/taon-cms-content/taon-cms-content.utils.ts +18 -0
  712. package/ts-source/websql-code/taon-cms-content/taon-cms-content.validation.ts +89 -0
  713. package/ts-source/websql-code/taon-cms-content-asset/index.ts +23 -0
  714. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset-api.service.ts +30 -0
  715. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.abstract.context.ts +30 -0
  716. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.constants.ts +18 -0
  717. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.controller.ts +37 -0
  718. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.entity.ts +47 -0
  719. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.middleware.ts +19 -0
  720. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.models.ts +16 -0
  721. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.provider.ts +21 -0
  722. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.repository.ts +29 -0
  723. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.subscriber.ts +24 -0
  724. package/ts-source/websql-code/taon-cms-content-asset/taon-cms-content-asset.utils.ts +18 -0
  725. package/ts-source/websql-code/taon-cms-content-permission/index.ts +23 -0
  726. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission-api.service.ts +30 -0
  727. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.abstract.context.ts +30 -0
  728. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.constants.ts +18 -0
  729. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.controller.ts +37 -0
  730. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.entity.ts +41 -0
  731. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.middleware.ts +19 -0
  732. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.models.ts +16 -0
  733. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.provider.ts +21 -0
  734. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.repository.ts +29 -0
  735. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.subscriber.ts +24 -0
  736. package/ts-source/websql-code/taon-cms-content-permission/taon-cms-content-permission.utils.ts +18 -0
  737. package/ts-source/websql-code/taon-cms-content-revision/index.ts +23 -0
  738. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision-api.service.ts +37 -0
  739. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.abstract.context.ts +30 -0
  740. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.constants.ts +18 -0
  741. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.controller.ts +24 -0
  742. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.entity.ts +40 -0
  743. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.middleware.ts +19 -0
  744. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.models.ts +16 -0
  745. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.provider.ts +21 -0
  746. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.repository.ts +55 -0
  747. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.subscriber.ts +24 -0
  748. package/ts-source/websql-code/taon-cms-content-revision/taon-cms-content-revision.utils.ts +18 -0
  749. package/ts-source/websql-code/taon-cms-content-tag/index.ts +23 -0
  750. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag-api.service.ts +25 -0
  751. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.abstract.context.ts +30 -0
  752. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.constants.ts +18 -0
  753. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.controller.ts +24 -0
  754. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.entity.ts +25 -0
  755. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.middleware.ts +19 -0
  756. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.models.ts +16 -0
  757. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.provider.ts +21 -0
  758. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.repository.ts +36 -0
  759. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.subscriber.ts +24 -0
  760. package/ts-source/websql-code/taon-cms-content-tag/taon-cms-content-tag.utils.ts +18 -0
  761. package/ts-source/websql-code/taon-cms-tag/index.ts +23 -0
  762. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag-api.service.ts +22 -0
  763. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.abstract.context.ts +30 -0
  764. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.constants.ts +18 -0
  765. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.controller.ts +37 -0
  766. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.entity.ts +27 -0
  767. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.middleware.ts +19 -0
  768. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.models.ts +16 -0
  769. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.provider.ts +21 -0
  770. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.repository.ts +41 -0
  771. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.subscriber.ts +24 -0
  772. package/ts-source/websql-code/taon-cms-tag/taon-cms-tag.utils.ts +18 -0
  773. package/ts-source/websql-code/taon-cms.abstract.context.ts +37 -0
  774. package/ts-source/websql-code/taon-posts/taon-cms-post/index.ts +13 -0
  775. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-editable.directive.ts +107 -0
  776. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.html +234 -0
  777. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.scss +154 -0
  778. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.component.ts +564 -0
  779. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.models.ts +20 -0
  780. package/ts-source/websql-code/taon-posts/taon-cms-post/taon-cms-post.routes.ts +21 -0
  781. package/ts-source/websql-code/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +33 -0
  782. package/ts-source/websql-code/taon-posts/taon-cms-post-edit-dialog/index.ts +13 -0
  783. package/ts-source/websql-code/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.html +25 -0
  784. package/ts-source/websql-code/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.scss +30 -0
  785. package/ts-source/websql-code/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.ts +43 -0
  786. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/index.ts +13 -0
  787. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html +27 -0
  788. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.scss +14 -0
  789. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts +147 -0
  790. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.ts +13 -0
  791. package/ts-source/websql-code/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts +43 -0
  792. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/index.ts +13 -0
  793. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html +48 -0
  794. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.scss +26 -0
  795. package/ts-source/websql-code/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts +87 -0
  796. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/index.ts +13 -0
  797. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +40 -0
  798. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.scss +36 -0
  799. package/ts-source/websql-code/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +89 -0
  800. package/ts-source/websql-code-prod/build-info._auto-generated_.split-namespaces.json +4 -0
  801. package/ts-source/websql-code-prod/build-info._auto-generated_.ts +18 -0
  802. package/ts-source/websql-code-prod/decorators/taon-cms-authorization.split-namespaces.json +4 -0
  803. package/ts-source/websql-code-prod/decorators/taon-cms-authorization.ts +93 -0
  804. package/ts-source/websql-code-prod/index._auto-generated_.split-namespaces.json +4 -0
  805. package/ts-source/websql-code-prod/index._auto-generated_.ts +125 -0
  806. package/ts-source/websql-code-prod/index.scss +11 -0
  807. package/ts-source/websql-code-prod/index.split-namespaces.json +4 -0
  808. package/ts-source/websql-code-prod/index.ts +17 -0
  809. package/ts-source/websql-code-prod/lib-info.md +8 -0
  810. package/ts-source/websql-code-prod/migrations/1792506757808_applicaitonHooks.split-namespaces.json +4 -0
  811. package/ts-source/websql-code-prod/migrations/1792506757808_applicaitonHooks.ts +78 -0
  812. package/ts-source/websql-code-prod/migrations/index.split-namespaces.json +4 -0
  813. package/ts-source/websql-code-prod/migrations/index.ts +13 -0
  814. package/ts-source/websql-code-prod/migrations/migrations-info.md +6 -0
  815. package/ts-source/websql-code-prod/migrations/migrations_index._auto-generated_.split-namespaces.json +4 -0
  816. package/ts-source/websql-code-prod/migrations/migrations_index._auto-generated_.ts +16 -0
  817. package/ts-source/websql-code-prod/start-cli.split-namespaces.json +4 -0
  818. package/ts-source/websql-code-prod/start-cli.ts +43 -0
  819. package/ts-source/websql-code-prod/taon-cms-application-hook/taon-cms-application-hook.entity.split-namespaces.json +4 -0
  820. package/ts-source/websql-code-prod/taon-cms-application-hook/taon-cms-application-hook.entity.ts +30 -0
  821. package/ts-source/websql-code-prod/taon-cms-application-hooks.split-namespaces.json +4 -0
  822. package/ts-source/websql-code-prod/taon-cms-application-hooks.ts +20 -0
  823. package/ts-source/websql-code-prod/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.split-namespaces.json +4 -0
  824. package/ts-source/websql-code-prod/taon-cms-assets-backoffice/taon-cms-assets-backoffice.component.ts +37 -0
  825. package/ts-source/websql-code-prod/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.split-namespaces.json +4 -0
  826. package/ts-source/websql-code-prod/taon-cms-assets-backoffice/taon-cms-assets-backoffice.routes.ts +19 -0
  827. package/ts-source/websql-code-prod/taon-cms-backoffice/index.split-namespaces.json +4 -0
  828. package/ts-source/websql-code-prod/taon-cms-backoffice/index.ts +13 -0
  829. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.component.html +22 -0
  830. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.component.scss +14 -0
  831. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.component.split-namespaces.json +4 -0
  832. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.component.ts +31 -0
  833. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.models.split-namespaces.json +4 -0
  834. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.models.ts +12 -0
  835. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.routes.split-namespaces.json +4 -0
  836. package/ts-source/websql-code-prod/taon-cms-backoffice/taon-cms-backoffice.routes.ts +42 -0
  837. package/ts-source/websql-code-prod/taon-cms-category/index.split-namespaces.json +4 -0
  838. package/ts-source/websql-code-prod/taon-cms-category/index.ts +23 -0
  839. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category-api.service.split-namespaces.json +4 -0
  840. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category-api.service.ts +25 -0
  841. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.abstract.context.split-namespaces.json +4 -0
  842. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.abstract.context.ts +30 -0
  843. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.constants.split-namespaces.json +4 -0
  844. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.constants.ts +18 -0
  845. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.controller.split-namespaces.json +4 -0
  846. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.controller.ts +24 -0
  847. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.entity.split-namespaces.json +4 -0
  848. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.entity.ts +31 -0
  849. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.middleware.split-namespaces.json +4 -0
  850. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.middleware.ts +19 -0
  851. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.models.split-namespaces.json +4 -0
  852. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.models.ts +16 -0
  853. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.provider.split-namespaces.json +4 -0
  854. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.provider.ts +21 -0
  855. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.repository.split-namespaces.json +4 -0
  856. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.repository.ts +31 -0
  857. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.subscriber.split-namespaces.json +4 -0
  858. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.subscriber.ts +24 -0
  859. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.utils.split-namespaces.json +10 -0
  860. package/ts-source/websql-code-prod/taon-cms-category/taon-cms-category.utils.ts +16 -0
  861. package/ts-source/websql-code-prod/taon-cms-comment/index.split-namespaces.json +4 -0
  862. package/ts-source/websql-code-prod/taon-cms-comment/index.ts +23 -0
  863. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-api.service.split-namespaces.json +4 -0
  864. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment-api.service.ts +28 -0
  865. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.abstract.context.split-namespaces.json +4 -0
  866. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.abstract.context.ts +30 -0
  867. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.constants.split-namespaces.json +4 -0
  868. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.constants.ts +18 -0
  869. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.controller.split-namespaces.json +4 -0
  870. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.controller.ts +37 -0
  871. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.entity.split-namespaces.json +4 -0
  872. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.entity.ts +39 -0
  873. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.middleware.split-namespaces.json +4 -0
  874. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.middleware.ts +19 -0
  875. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.models.split-namespaces.json +4 -0
  876. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.models.ts +16 -0
  877. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.provider.split-namespaces.json +4 -0
  878. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.provider.ts +21 -0
  879. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.repository.split-namespaces.json +4 -0
  880. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.repository.ts +29 -0
  881. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.subscriber.split-namespaces.json +4 -0
  882. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.subscriber.ts +24 -0
  883. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.utils.split-namespaces.json +10 -0
  884. package/ts-source/websql-code-prod/taon-cms-comment/taon-cms-comment.utils.ts +16 -0
  885. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.i18n.data.ts +28 -0
  886. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.en-US.po +9 -0
  887. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.i18n.data.ts +28 -0
  888. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.controller.ts.pl-PL.po +9 -0
  889. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.translation.split-namespaces.json +4 -0
  890. package/ts-source/websql-code-prod/taon-cms-content/i18n/taon-cms-content.translation.ts +17 -0
  891. package/ts-source/websql-code-prod/taon-cms-content/index.split-namespaces.json +4 -0
  892. package/ts-source/websql-code-prod/taon-cms-content/index.ts +24 -0
  893. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content-api.service.split-namespaces.json +4 -0
  894. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content-api.service.ts +100 -0
  895. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content-storage.controller.split-namespaces.json +4 -0
  896. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content-storage.controller.ts +30 -0
  897. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.abstract.context.split-namespaces.json +4 -0
  898. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.abstract.context.ts +42 -0
  899. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.config.service.split-namespaces.json +4 -0
  900. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.config.service.ts +19 -0
  901. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.constants.split-namespaces.json +4 -0
  902. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.constants.ts +23 -0
  903. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.controller.split-namespaces.json +4 -0
  904. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.controller.ts +147 -0
  905. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.entity.split-namespaces.json +4 -0
  906. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.entity.ts +72 -0
  907. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.middleware.split-namespaces.json +4 -0
  908. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.middleware.ts +19 -0
  909. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.models.split-namespaces.json +4 -0
  910. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.models.ts +59 -0
  911. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.provider.split-namespaces.json +4 -0
  912. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.provider.ts +21 -0
  913. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.repository.split-namespaces.json +4 -0
  914. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.repository.ts +374 -0
  915. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.subscriber.split-namespaces.json +4 -0
  916. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.subscriber.ts +24 -0
  917. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.utils.split-namespaces.json +10 -0
  918. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.utils.ts +16 -0
  919. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.validation.split-namespaces.json +4 -0
  920. package/ts-source/websql-code-prod/taon-cms-content/taon-cms-content.validation.ts +89 -0
  921. package/ts-source/websql-code-prod/taon-cms-content-asset/index.split-namespaces.json +4 -0
  922. package/ts-source/websql-code-prod/taon-cms-content-asset/index.ts +23 -0
  923. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset-api.service.split-namespaces.json +4 -0
  924. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset-api.service.ts +30 -0
  925. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.abstract.context.split-namespaces.json +4 -0
  926. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.abstract.context.ts +30 -0
  927. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.constants.split-namespaces.json +4 -0
  928. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.constants.ts +18 -0
  929. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.controller.split-namespaces.json +4 -0
  930. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.controller.ts +37 -0
  931. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.entity.split-namespaces.json +4 -0
  932. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.entity.ts +47 -0
  933. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.middleware.split-namespaces.json +4 -0
  934. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.middleware.ts +19 -0
  935. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.models.split-namespaces.json +4 -0
  936. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.models.ts +16 -0
  937. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.provider.split-namespaces.json +4 -0
  938. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.provider.ts +21 -0
  939. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.repository.split-namespaces.json +4 -0
  940. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.repository.ts +29 -0
  941. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.subscriber.split-namespaces.json +4 -0
  942. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.subscriber.ts +24 -0
  943. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.utils.split-namespaces.json +10 -0
  944. package/ts-source/websql-code-prod/taon-cms-content-asset/taon-cms-content-asset.utils.ts +16 -0
  945. package/ts-source/websql-code-prod/taon-cms-content-permission/index.split-namespaces.json +4 -0
  946. package/ts-source/websql-code-prod/taon-cms-content-permission/index.ts +23 -0
  947. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission-api.service.split-namespaces.json +4 -0
  948. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission-api.service.ts +30 -0
  949. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.abstract.context.split-namespaces.json +4 -0
  950. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.abstract.context.ts +30 -0
  951. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.constants.split-namespaces.json +4 -0
  952. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.constants.ts +18 -0
  953. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.controller.split-namespaces.json +4 -0
  954. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.controller.ts +37 -0
  955. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.entity.split-namespaces.json +4 -0
  956. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.entity.ts +41 -0
  957. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.middleware.split-namespaces.json +4 -0
  958. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.middleware.ts +19 -0
  959. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.models.split-namespaces.json +4 -0
  960. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.models.ts +16 -0
  961. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.provider.split-namespaces.json +4 -0
  962. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.provider.ts +21 -0
  963. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.repository.split-namespaces.json +4 -0
  964. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.repository.ts +29 -0
  965. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.subscriber.split-namespaces.json +4 -0
  966. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.subscriber.ts +24 -0
  967. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.utils.split-namespaces.json +10 -0
  968. package/ts-source/websql-code-prod/taon-cms-content-permission/taon-cms-content-permission.utils.ts +16 -0
  969. package/ts-source/websql-code-prod/taon-cms-content-revision/index.split-namespaces.json +4 -0
  970. package/ts-source/websql-code-prod/taon-cms-content-revision/index.ts +23 -0
  971. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision-api.service.split-namespaces.json +4 -0
  972. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision-api.service.ts +37 -0
  973. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.abstract.context.split-namespaces.json +4 -0
  974. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.abstract.context.ts +30 -0
  975. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.constants.split-namespaces.json +4 -0
  976. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.constants.ts +18 -0
  977. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.controller.split-namespaces.json +4 -0
  978. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.controller.ts +24 -0
  979. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.entity.split-namespaces.json +4 -0
  980. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.entity.ts +40 -0
  981. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.middleware.split-namespaces.json +4 -0
  982. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.middleware.ts +19 -0
  983. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.models.split-namespaces.json +4 -0
  984. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.models.ts +16 -0
  985. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.provider.split-namespaces.json +4 -0
  986. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.provider.ts +21 -0
  987. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.repository.split-namespaces.json +4 -0
  988. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.repository.ts +55 -0
  989. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.subscriber.split-namespaces.json +4 -0
  990. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.subscriber.ts +24 -0
  991. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.utils.split-namespaces.json +10 -0
  992. package/ts-source/websql-code-prod/taon-cms-content-revision/taon-cms-content-revision.utils.ts +16 -0
  993. package/ts-source/websql-code-prod/taon-cms-content-tag/index.split-namespaces.json +4 -0
  994. package/ts-source/websql-code-prod/taon-cms-content-tag/index.ts +23 -0
  995. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag-api.service.split-namespaces.json +4 -0
  996. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag-api.service.ts +25 -0
  997. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.abstract.context.split-namespaces.json +4 -0
  998. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.abstract.context.ts +30 -0
  999. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.constants.split-namespaces.json +4 -0
  1000. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.constants.ts +18 -0
  1001. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.controller.split-namespaces.json +4 -0
  1002. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.controller.ts +24 -0
  1003. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.entity.split-namespaces.json +4 -0
  1004. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.entity.ts +25 -0
  1005. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.middleware.split-namespaces.json +4 -0
  1006. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.middleware.ts +19 -0
  1007. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.models.split-namespaces.json +4 -0
  1008. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.models.ts +16 -0
  1009. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.provider.split-namespaces.json +4 -0
  1010. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.provider.ts +21 -0
  1011. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.repository.split-namespaces.json +4 -0
  1012. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.repository.ts +36 -0
  1013. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.subscriber.split-namespaces.json +4 -0
  1014. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.subscriber.ts +24 -0
  1015. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.utils.split-namespaces.json +10 -0
  1016. package/ts-source/websql-code-prod/taon-cms-content-tag/taon-cms-content-tag.utils.ts +16 -0
  1017. package/ts-source/websql-code-prod/taon-cms-tag/index.split-namespaces.json +4 -0
  1018. package/ts-source/websql-code-prod/taon-cms-tag/index.ts +23 -0
  1019. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag-api.service.split-namespaces.json +4 -0
  1020. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag-api.service.ts +22 -0
  1021. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.abstract.context.split-namespaces.json +4 -0
  1022. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.abstract.context.ts +30 -0
  1023. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.constants.split-namespaces.json +4 -0
  1024. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.constants.ts +18 -0
  1025. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.controller.split-namespaces.json +4 -0
  1026. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.controller.ts +37 -0
  1027. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.entity.split-namespaces.json +4 -0
  1028. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.entity.ts +27 -0
  1029. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.middleware.split-namespaces.json +4 -0
  1030. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.middleware.ts +19 -0
  1031. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.models.split-namespaces.json +4 -0
  1032. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.models.ts +16 -0
  1033. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.provider.split-namespaces.json +4 -0
  1034. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.provider.ts +21 -0
  1035. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.repository.split-namespaces.json +4 -0
  1036. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.repository.ts +41 -0
  1037. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.subscriber.split-namespaces.json +4 -0
  1038. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.subscriber.ts +24 -0
  1039. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.utils.split-namespaces.json +10 -0
  1040. package/ts-source/websql-code-prod/taon-cms-tag/taon-cms-tag.utils.ts +16 -0
  1041. package/ts-source/websql-code-prod/taon-cms.abstract.context.split-namespaces.json +4 -0
  1042. package/ts-source/websql-code-prod/taon-cms.abstract.context.ts +37 -0
  1043. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/index.split-namespaces.json +4 -0
  1044. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/index.ts +13 -0
  1045. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-editable.directive.split-namespaces.json +4 -0
  1046. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-editable.directive.ts +107 -0
  1047. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.html +234 -0
  1048. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.scss +154 -0
  1049. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.split-namespaces.json +4 -0
  1050. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.component.ts +564 -0
  1051. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.models.split-namespaces.json +4 -0
  1052. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.models.ts +20 -0
  1053. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.routes.split-namespaces.json +4 -0
  1054. package/ts-source/websql-code-prod/taon-posts/taon-cms-post/taon-cms-post.routes.ts +21 -0
  1055. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.split-namespaces.json +4 -0
  1056. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-details-page/taon-cms-post-details-page.component.ts +33 -0
  1057. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-edit-dialog/index.split-namespaces.json +4 -0
  1058. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-edit-dialog/index.ts +13 -0
  1059. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.html +25 -0
  1060. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.scss +30 -0
  1061. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.split-namespaces.json +4 -0
  1062. package/ts-source/websql-code-prod/taon-posts/taon-cms-post-edit-dialog/taon-cms-post-edit-dialog.component.ts +43 -0
  1063. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/index.split-namespaces.json +4 -0
  1064. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/index.ts +13 -0
  1065. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.html +27 -0
  1066. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.scss +14 -0
  1067. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.split-namespaces.json +4 -0
  1068. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.component.ts +147 -0
  1069. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.split-namespaces.json +4 -0
  1070. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.models.ts +12 -0
  1071. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.split-namespaces.json +4 -0
  1072. package/ts-source/websql-code-prod/taon-posts/taon-cms-posts-backoffice/taon-cms-posts-backoffice.routes.ts +43 -0
  1073. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/index.split-namespaces.json +4 -0
  1074. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/index.ts +13 -0
  1075. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.html +48 -0
  1076. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.scss +26 -0
  1077. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.split-namespaces.json +4 -0
  1078. package/ts-source/websql-code-prod/taon-posts/taon-cms-revision-chooser/taon-cms-revision-chooser.component.ts +87 -0
  1079. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/index.split-namespaces.json +4 -0
  1080. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/index.ts +13 -0
  1081. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.html +40 -0
  1082. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.scss +36 -0
  1083. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.split-namespaces.json +4 -0
  1084. package/ts-source/websql-code-prod/taon-posts/taon-related-post-chooser/taon-related-post-chooser.component.ts +89 -0
  1085. package/websql/fesm2022/cms-websql.mjs +598 -254
  1086. package/websql/fesm2022/cms-websql.mjs.map +1 -1
  1087. package/websql/package.json +1 -1
  1088. package/websql/types/cms-websql.d.ts +297 -251
  1089. package/websql-prod/fesm2022/cms-websql-prod.mjs +598 -254
  1090. package/websql-prod/fesm2022/cms-websql-prod.mjs.map +1 -1
  1091. package/websql-prod/package.json +1 -1
  1092. package/websql-prod/types/cms-websql-prod.d.ts +297 -251
  1093. package/browser/fesm2022/cms-browser-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs +0 -15
  1094. package/browser/fesm2022/cms-browser-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs.map +0 -1
  1095. package/browser/fesm2022/cms-browser-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs +0 -16
  1096. package/browser/fesm2022/cms-browser-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs.map +0 -1
  1097. package/browser-prod/fesm2022/cms-browser-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs +0 -15
  1098. package/browser-prod/fesm2022/cms-browser-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs.map +0 -1
  1099. package/browser-prod/fesm2022/cms-browser-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs +0 -16
  1100. package/browser-prod/fesm2022/cms-browser-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs.map +0 -1
  1101. package/full-dts/app.data.d.ts +0 -23
  1102. package/full-dts/i18n/lib.translation.d.ts +0 -5
  1103. package/full-dts/my-organization-proj.d.ts +0 -2
  1104. package/lib/app.data.d.ts +0 -22
  1105. package/lib/app.data.js +0 -23
  1106. package/lib/app.data.js.map +0 -1
  1107. package/lib/i18n/lib.translation.d.ts +0 -4
  1108. package/lib/i18n/lib.translation.js.map +0 -1
  1109. package/lib/i18n/my-organization-proj.ts.en-US.i18n.data.js.map +0 -1
  1110. package/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.js +0 -16
  1111. package/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.js.map +0 -1
  1112. package/lib/migrations/1791132517216_initial.d.ts +0 -7
  1113. package/lib/migrations/1791132517216_initial.js +0 -74
  1114. package/lib/migrations/1791132517216_initial.js.map +0 -1
  1115. package/lib/my-organization-proj.d.ts +0 -1
  1116. package/lib/my-organization-proj.js +0 -9
  1117. package/lib/my-organization-proj.js.map +0 -1
  1118. package/lib-esm/lib/app.data.d.ts +0 -22
  1119. package/lib-esm/lib/app.data.js +0 -20
  1120. package/lib-esm/lib/app.data.js.map +0 -1
  1121. package/lib-esm/lib/i18n/lib.translation.d.ts +0 -4
  1122. package/lib-esm/lib/i18n/lib.translation.js +0 -4
  1123. package/lib-esm/lib/i18n/lib.translation.js.map +0 -1
  1124. package/lib-esm/lib/i18n/my-organization-proj.ts.en-US.i18n.data.js +0 -13
  1125. package/lib-esm/lib/i18n/my-organization-proj.ts.en-US.i18n.data.js.map +0 -1
  1126. package/lib-esm/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.js +0 -14
  1127. package/lib-esm/lib/i18n/my-organization-proj.ts.pl-PL.i18n.data.js.map +0 -1
  1128. package/lib-esm/lib/migrations/1791132517216_initial.js +0 -65
  1129. package/lib-esm/lib/migrations/1791132517216_initial.js.map +0 -1
  1130. package/lib-esm/lib/my-organization-proj.d.ts +0 -1
  1131. package/lib-esm/lib/my-organization-proj.js +0 -6
  1132. package/lib-esm/lib/my-organization-proj.js.map +0 -1
  1133. package/lib-prod/app.data.d.ts +0 -22
  1134. package/lib-prod/app.data.js +0 -20
  1135. package/lib-prod/app.data.js.map +0 -1
  1136. package/lib-prod/i18n/lib.translation.d.ts +0 -4
  1137. package/lib-prod/i18n/lib.translation.js +0 -4
  1138. package/lib-prod/i18n/lib.translation.js.map +0 -1
  1139. package/lib-prod/i18n/my-organization-proj.ts.en-US.i18n.data.js +0 -13
  1140. package/lib-prod/i18n/my-organization-proj.ts.en-US.i18n.data.js.map +0 -1
  1141. package/lib-prod/i18n/my-organization-proj.ts.pl-PL.i18n.data.js +0 -14
  1142. package/lib-prod/i18n/my-organization-proj.ts.pl-PL.i18n.data.js.map +0 -1
  1143. package/lib-prod/migrations/1791132517216_initial.js +0 -65
  1144. package/lib-prod/migrations/1791132517216_initial.js.map +0 -1
  1145. package/lib-prod/my-organization-proj.d.ts +0 -1
  1146. package/lib-prod/my-organization-proj.js +0 -6
  1147. package/lib-prod/my-organization-proj.js.map +0 -1
  1148. package/websql/fesm2022/cms-websql-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs +0 -15
  1149. package/websql/fesm2022/cms-websql-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs.map +0 -1
  1150. package/websql/fesm2022/cms-websql-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs +0 -16
  1151. package/websql/fesm2022/cms-websql-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs.map +0 -1
  1152. package/websql-prod/fesm2022/cms-websql-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs +0 -15
  1153. package/websql-prod/fesm2022/cms-websql-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs.map +0 -1
  1154. package/websql-prod/fesm2022/cms-websql-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs +0 -16
  1155. package/websql-prod/fesm2022/cms-websql-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs.map +0 -1
@@ -1,127 +1,308 @@
1
1
  import { __decorate, __metadata, __param } from 'tslib';
2
- import { TaonAuthContextRepository, TaonPermissionEntity, TaonSessionAbstractContext, TaonPermissionApiService } from '@taon-dev/session/websql-prod';
3
- import { TaonBaseMigration, TaonMigration, TaonBaseAbstractEntity, Column, TaonEntity, Taon__NS__error, TaonBaseRepository, TaonRepository, TaonBaseCrudController, TaonController, TaonBaseProvider, TaonProvider, TaonBaseMiddleware, TaonMiddleware, TaonBaseSubscriberForEntity, TaonSubscriber, createContext, TaonBaseContext, TaonBaseEntity, PrimaryGeneratedColumn, ClassHelpers__NS__getName, GET, Query, ManyToMany, JoinTable, POST, Body, PUT, DELETE, TaonBaseStorageController, TaonBaseAngularService } from 'taon/websql-prod';
4
- import { Translation } from '@taon-dev/i18n/websql-prod';
2
+ import { TaonBaseEntity, PrimaryGeneratedColumn, Column, OneToOne, JoinColumn, TaonEntity, ManyToMany, JoinTable, TaonBaseMigration, ClassHelpers__NS__getName, TaonMigration, TaonBaseAbstractEntity, Taon__NS__error, TaonBaseRepository, TaonRepository, TaonBaseCrudController, TaonController, TaonBaseProvider, TaonProvider, TaonBaseMiddleware, TaonMiddleware, TaonBaseSubscriberForEntity, TaonSubscriber, createContext, TaonBaseContext, GET, Query, POST, Body, PUT, DELETE, TaonBaseStorageController, TaonBaseAngularService } from 'taon/websql-prod';
3
+ import { TaonPermissionEntity, TaonSessionCoreGroups as TaonSessionCoreGroups$1, TaonSessionCoreRoles as TaonSessionCoreRoles$1, TaonSessionCorePermissions as TaonSessionCorePermissions$1, TaonAuthContextEntity as TaonAuthContextEntity$1, TaonAuthContextHasAccess as TaonAuthContextHasAccess$1, TaonAuthContextRepository as TaonAuthContextRepository$1, MIGRATIONS_CLASSES_FOR_SessionContext, TaonSessionRepository, TaonSessionAbstractContext, TaonPermissionApiService } from '@taon-dev/session/websql-prod';
4
+ import { Table, Raw, In } from 'taon-typeorm/websql-prod';
5
5
  import { UtilsJson__NS__getValue } from 'tnp-core/websql-prod';
6
6
  import { BaseCommandLineFeature } from 'tnp-helpers/websql-prod';
7
7
  import * as i0 from '@angular/core';
8
8
  import { Injectable, ChangeDetectionStrategy, Component, inject, ElementRef, EventEmitter, SecurityContext, HostListener, Input, Output, Directive, signal, DestroyRef, computed, input, model, output, effect, untracked, viewChild, ViewChild } from '@angular/core';
9
- import { Raw, In } from 'taon-typeorm/websql-prod';
10
9
  import { MtxGrid } from '@ng-matero/extensions/grid';
11
10
  import { AsyncPipe, DatePipe } from '@angular/common';
12
11
  import { RouterOutlet, ActivatedRoute, RouterLink, Router } from '@angular/router';
13
- import { adminLazyRoute, TaonConfirmDialogComponent, TaonDatatableComponent } from '@taon-dev/ui/websql-prod';
14
- import { map } from 'rxjs/operators';
12
+ import { adminLazyRoute as adminLazyRoute$1, TaonConfirmDialogComponent, TaonDatatableComponent } from '@taon-dev/ui/websql-prod';
13
+ import { map, catchError } from 'rxjs/operators';
14
+ import { of, finalize, map as map$1, Subject, takeUntil } from 'rxjs';
15
15
  import { DomSanitizer } from '@angular/platform-browser';
16
16
  import { takeUntilDestroyed } from '@angular/core/rxjs-interop';
17
17
  import * as i1 from '@angular/material/button';
18
18
  import { MatButtonModule } from '@angular/material/button';
19
+ import * as i2$1 from '@angular/material/checkbox';
20
+ import { MatCheckboxModule } from '@angular/material/checkbox';
19
21
  import * as i2 from '@angular/material/dialog';
20
22
  import { MAT_DIALOG_DATA, MatDialogRef, MatDialogModule, MatDialog } from '@angular/material/dialog';
21
- import * as i2$1 from '@angular/material/form-field';
23
+ import * as i3$1 from '@angular/material/form-field';
22
24
  import { MatFormFieldModule } from '@angular/material/form-field';
23
- import * as i3$1 from '@angular/material/icon';
25
+ import * as i4 from '@angular/material/icon';
24
26
  import { MatIconModule } from '@angular/material/icon';
25
27
  import * as i3 from '@angular/material/radio';
26
28
  import { MatRadioModule } from '@angular/material/radio';
27
- import * as i5 from '@angular/material/select';
29
+ import * as i6 from '@angular/material/select';
28
30
  import { MatSelectModule } from '@angular/material/select';
29
- import { finalize, map as map$1, Subject, takeUntil } from 'rxjs';
31
+
32
+ let TaonCmsApplicationHookEntity = class TaonCmsApplicationHookEntity extends TaonBaseEntity {
33
+ };
34
+ __decorate([
35
+ PrimaryGeneratedColumn(),
36
+ __metadata("design:type", Number)
37
+ ], TaonCmsApplicationHookEntity.prototype, "id", void 0);
38
+ __decorate([
39
+ Column({ type: 'varchar', unique: true }),
40
+ __metadata("design:type", String)
41
+ ], TaonCmsApplicationHookEntity.prototype, "hook", void 0);
42
+ __decorate([
43
+ Column({ type: 'integer', nullable: true, unique: true }),
44
+ __metadata("design:type", Number)
45
+ ], TaonCmsApplicationHookEntity.prototype, "contentId", void 0);
46
+ __decorate([
47
+ OneToOne(() => TaonCmsContentEntity, content => content.applicationHook, { nullable: true, onDelete: 'SET NULL' }),
48
+ JoinColumn({ name: 'contentId', referencedColumnName: 'id' }),
49
+ __metadata("design:type", TaonCmsContentEntity)
50
+ ], TaonCmsApplicationHookEntity.prototype, "content", void 0);
51
+ TaonCmsApplicationHookEntity = __decorate([
52
+ TaonEntity({
53
+ className: 'TaonCmsApplicationHookEntity',
54
+ createTable: true,
55
+ })
56
+ ], TaonCmsApplicationHookEntity);
57
+
58
+ var TaonCmsContentType;
59
+ (function (TaonCmsContentType) {
60
+ TaonCmsContentType["Normal"] = "normal";
61
+ TaonCmsContentType["Video"] = "video";
62
+ TaonCmsContentType["Audio"] = "audio";
63
+ TaonCmsContentType["Attachment"] = "attachment";
64
+ })(TaonCmsContentType || (TaonCmsContentType = {}));
65
+ var TaonCmsContentState;
66
+ (function (TaonCmsContentState) {
67
+ TaonCmsContentState["Active"] = "active";
68
+ TaonCmsContentState["Inactive"] = "inactive";
69
+ })(TaonCmsContentState || (TaonCmsContentState = {}));
70
+
71
+ //#endregion
72
+ let TaonCmsContentEntity = class TaonCmsContentEntity extends TaonBaseEntity {
73
+ constructor() {
74
+ super(...arguments);
75
+ //#region @websql
76
+ this.type = TaonCmsContentType.Normal;
77
+ //#region @websql
78
+ this.videoKey = null;
79
+ //#region @websql
80
+ this.audioKey = null;
81
+ //#region @websql
82
+ this.attachmentKey = null;
83
+ }
84
+ };
85
+ __decorate([
86
+ PrimaryGeneratedColumn()
87
+ //#endregion
88
+ ,
89
+ __metadata("design:type", Number)
90
+ ], TaonCmsContentEntity.prototype, "id", void 0);
91
+ __decorate([
92
+ Column({ type: 'integer', default: 0 })
93
+ //#endregion
94
+ ,
95
+ __metadata("design:type", Number)
96
+ ], TaonCmsContentEntity.prototype, "version", void 0);
97
+ __decorate([
98
+ Column({ type: 'varchar', default: TaonCmsContentType.Normal })
99
+ //#endregion
100
+ ,
101
+ __metadata("design:type", String)
102
+ ], TaonCmsContentEntity.prototype, "type", void 0);
103
+ __decorate([
104
+ Column({ type: 'varchar' })
105
+ //#endregion
106
+ ,
107
+ __metadata("design:type", String)
108
+ ], TaonCmsContentEntity.prototype, "title", void 0);
109
+ __decorate([
110
+ Column({ type: 'varchar', unique: true })
111
+ //#endregion
112
+ ,
113
+ __metadata("design:type", String)
114
+ ], TaonCmsContentEntity.prototype, "slug", void 0);
115
+ __decorate([
116
+ ManyToMany(() => TaonCmsContentEntity),
117
+ JoinTable({
118
+ name: 'taon_cms_related_posts',
119
+ joinColumn: { name: 'contentId', referencedColumnName: 'id' },
120
+ inverseJoinColumn: { name: 'relatedPostId', referencedColumnName: 'id' },
121
+ })
122
+ //#endregion
123
+ ,
124
+ __metadata("design:type", Array)
125
+ ], TaonCmsContentEntity.prototype, "relatedPosts", void 0);
126
+ __decorate([
127
+ OneToOne(() => TaonCmsApplicationHookEntity, applicationHook => applicationHook.content)
128
+ //#endregion
129
+ ,
130
+ __metadata("design:type", TaonCmsApplicationHookEntity)
131
+ ], TaonCmsContentEntity.prototype, "applicationHook", void 0);
132
+ __decorate([
133
+ ManyToMany(() => TaonPermissionEntity),
134
+ JoinTable({
135
+ name: 'taon_cms_content_permissions',
136
+ joinColumn: { name: 'contentId', referencedColumnName: 'id' },
137
+ inverseJoinColumn: { name: 'permissionId', referencedColumnName: 'id' },
138
+ })
139
+ //#endregion
140
+ ,
141
+ __metadata("design:type", Array)
142
+ ], TaonCmsContentEntity.prototype, "permissions", void 0);
143
+ __decorate([
144
+ Column({ type: 'text', nullable: true })
145
+ //#endregion
146
+ ,
147
+ __metadata("design:type", String)
148
+ ], TaonCmsContentEntity.prototype, "excerpt", void 0);
149
+ __decorate([
150
+ Column({ type: 'text', nullable: true })
151
+ //#endregion
152
+ ,
153
+ __metadata("design:type", String)
154
+ ], TaonCmsContentEntity.prototype, "body", void 0);
155
+ __decorate([
156
+ Column({ type: 'varchar', nullable: true })
157
+ //#endregion
158
+ ,
159
+ __metadata("design:type", String)
160
+ ], TaonCmsContentEntity.prototype, "videoKey", void 0);
161
+ __decorate([
162
+ Column({ type: 'varchar', nullable: true })
163
+ //#endregion
164
+ ,
165
+ __metadata("design:type", String)
166
+ ], TaonCmsContentEntity.prototype, "audioKey", void 0);
167
+ __decorate([
168
+ Column({ type: 'varchar', nullable: true })
169
+ //#endregion
170
+ ,
171
+ __metadata("design:type", String)
172
+ ], TaonCmsContentEntity.prototype, "attachmentKey", void 0);
173
+ __decorate([
174
+ Column({ type: 'integer', nullable: true })
175
+ //#endregion
176
+ ,
177
+ __metadata("design:type", Number)
178
+ ], TaonCmsContentEntity.prototype, "categoryId", void 0);
179
+ __decorate([
180
+ Column({ type: 'integer', nullable: true })
181
+ //#endregion
182
+ ,
183
+ __metadata("design:type", Number)
184
+ ], TaonCmsContentEntity.prototype, "authorUserId", void 0);
185
+ __decorate([
186
+ Column({ type: 'varchar', default: 'draft' })
187
+ //#endregion
188
+ ,
189
+ __metadata("design:type", String)
190
+ ], TaonCmsContentEntity.prototype, "status", void 0);
191
+ __decorate([
192
+ Column({ type: 'datetime', nullable: true })
193
+ //#endregion
194
+ ,
195
+ __metadata("design:type", Date)
196
+ ], TaonCmsContentEntity.prototype, "publishedAt", void 0);
197
+ __decorate([
198
+ Column({ type: 'datetime' })
199
+ //#endregion
200
+ ,
201
+ __metadata("design:type", Date)
202
+ ], TaonCmsContentEntity.prototype, "createdAt", void 0);
203
+ __decorate([
204
+ Column({ type: 'datetime' })
205
+ //#endregion
206
+ ,
207
+ __metadata("design:type", Date)
208
+ ], TaonCmsContentEntity.prototype, "updatedAt", void 0);
209
+ TaonCmsContentEntity = __decorate([
210
+ TaonEntity({
211
+ className: 'TaonCmsContentEntity',
212
+ createTable: true,
213
+ })
214
+ ], TaonCmsContentEntity);
215
+
216
+ const TaonCmsApplicationHook = {
217
+ HOME_HERO: 'home-hero',
218
+ HOME_FEATURED_POST: 'home-featured-post',
219
+ SHOP_PROMOTION: 'shop-promotion',
220
+ LOGIN_INFO: 'login-info',
221
+ FOOTER_ABOUT: 'footer-about',
222
+ };
30
223
 
31
224
  //#region Migration class for context "CmsContext"
32
- let CmsContext_1791132517216_initial = class CmsContext_1791132517216_initial extends TaonBaseMigration {
225
+ let CmsContext_1792506757808_applicaitonHooks = class CmsContext_1792506757808_applicaitonHooks extends TaonBaseMigration {
33
226
  constructor() {
34
227
  super(...arguments);
35
- this.taonAuthContextRepository = this.injectCustomRepo((TaonAuthContextRepository));
36
- //#endregion
228
+ this.APPLICATION_HOOK_TABLE = ClassHelpers__NS__getName(TaonCmsApplicationHookEntity);
229
+ this.CONTENT_TABLE = ClassHelpers__NS__getName(TaonCmsContentEntity);
37
230
  }
38
231
  //#region up
39
232
  async up(queryRunner) {
40
233
  await queryRunner.startTransaction();
41
234
  try {
42
- await this.taonAuthContextRepository.persistTree({
43
- enums: {
44
- groups: MyAppGroup,
45
- roles: MyAppRole,
46
- permissions: MyAppPermission,
47
- },
48
- tree: {
49
- groupAndRoles: {
50
- [MyAppGroup.Administrator]: '*',
51
- [MyAppGroup.Customers]: [MyAppRole.BlogReader],
52
- },
53
- rolesAndPermissions: {
54
- [MyAppRole.Customer]: [
55
- MyAppPermission.AccessCourseP2,
56
- MyAppPermission.AccessCourseP2,
57
- ],
58
- [MyAppRole.CustomerPremium]: '*',
59
- },
60
- },
61
- });
235
+ if (!(await queryRunner.hasTable(this.APPLICATION_HOOK_TABLE))) {
236
+ await queryRunner.createTable(new Table({
237
+ name: this.APPLICATION_HOOK_TABLE,
238
+ columns: [
239
+ {
240
+ name: 'id',
241
+ type: 'integer',
242
+ isPrimary: true,
243
+ isGenerated: true,
244
+ generationStrategy: 'increment',
245
+ },
246
+ { name: 'hook', type: 'varchar', isUnique: true },
247
+ {
248
+ name: 'contentId',
249
+ type: 'integer',
250
+ isNullable: true,
251
+ isUnique: true,
252
+ },
253
+ ],
254
+ foreignKeys: [
255
+ {
256
+ columnNames: ['contentId'],
257
+ referencedTableName: this.CONTENT_TABLE,
258
+ referencedColumnNames: ['id'],
259
+ onDelete: 'SET NULL',
260
+ },
261
+ ],
262
+ }), true);
263
+ }
264
+ await this.persistApplicationHooks(queryRunner);
62
265
  await queryRunner.commitTransaction();
63
266
  }
64
267
  catch (error) {
65
268
  console.error('Error in migration:', error);
66
269
  await queryRunner.rollbackTransaction();
67
- }
68
- finally {
69
- await queryRunner.release();
270
+ throw error;
70
271
  }
71
272
  }
72
273
  //#endregion
73
274
  //#region down
74
275
  async down(queryRunner) {
75
- await queryRunner.startTransaction();
76
- try {
77
- await this.taonAuthContextRepository.clearRolesGroupPermissions();
78
- await queryRunner.commitTransaction();
276
+ if (await queryRunner.hasTable(this.APPLICATION_HOOK_TABLE)) {
277
+ await queryRunner.dropTable(this.APPLICATION_HOOK_TABLE, true);
79
278
  }
80
- catch (error) {
81
- console.error('Error in migration:', error);
82
- await queryRunner.rollbackTransaction();
83
- }
84
- finally {
85
- await queryRunner.release();
279
+ }
280
+ //#endregion
281
+ async persistApplicationHooks(queryRunner) {
282
+ const repository = queryRunner.manager.getRepository(TaonCmsApplicationHookEntity);
283
+ for (const hook of Object.values(TaonCmsApplicationHook)) {
284
+ if (!(await repository.findOneBy({ hook }))) {
285
+ await repository.save(repository.create({ hook, contentId: null }));
286
+ }
86
287
  }
87
288
  }
88
289
  };
89
- CmsContext_1791132517216_initial = __decorate([
290
+ CmsContext_1792506757808_applicaitonHooks = __decorate([
90
291
  TaonMigration({
91
- className: 'CmsContext_1791132517216_initial',
292
+ className: 'CmsContext_1792506757808_applicaitonHooks',
92
293
  })
93
- ], CmsContext_1791132517216_initial);
294
+ ], CmsContext_1792506757808_applicaitonHooks);
94
295
  //#endregion
95
296
 
96
297
  // THIS FILE IS GENERATED - DO NOT MODIFY
97
298
  // THIS FILE IS GENERATED - DO NOT MODIFY
98
299
  const MIGRATIONS_CLASSES_FOR_CmsContext = {
99
- /* 04-10-2026 18:48:37 */ CmsContext_1791132517216_initial,
300
+ /* 20-10-2026 16:32:37 */ CmsContext_1792506757808_applicaitonHooks,
100
301
  };
101
302
  // THIS FILE IS GENERATED - DO NOT MODIFY
102
303
 
103
304
  //@ts-nocheck
104
305
 
105
- var MyAppGroup;
106
- (function (MyAppGroup) {
107
- MyAppGroup["Administrator"] = "administrator";
108
- MyAppGroup["Customers"] = "customers";
109
- })(MyAppGroup || (MyAppGroup = {}));
110
- var MyAppRole;
111
- (function (MyAppRole) {
112
- MyAppRole["MangePosts"] = "manage-posts";
113
- MyAppRole["Customer"] = "Customer";
114
- MyAppRole["CustomerPremium"] = "CustomerPremium";
115
- MyAppRole["BlogReader"] = "BlogReader";
116
- })(MyAppRole || (MyAppRole = {}));
117
- var MyAppPermission;
118
- (function (MyAppPermission) {
119
- MyAppPermission["AccessToAllEmails"] = "AccessToAllEmails";
120
- MyAppPermission["AccessCourseP1"] = "AccessCourseP1";
121
- MyAppPermission["AccessCourseP2"] = "AccessCourseP2";
122
- MyAppPermission["AccessCoursePremium"] = "AccessCoursePremium";
123
- })(MyAppPermission || (MyAppPermission = {}));
124
-
125
306
  // THIS FILE IS GENERATED - DO NOT MODIFY
126
307
  /**
127
308
  * Autogenerated by current cli tool
@@ -146,14 +327,9 @@ const CURRENT_PACKAGE_TAON_VERSION = 'v21';
146
327
  /**
147
328
  * Autogenerated by current cli tool. Use *tnp release* to bump version.
148
329
  */
149
- const CURRENT_PACKAGE_VERSION = '21.0.13';
330
+ const CURRENT_PACKAGE_VERSION = '21.0.16';
150
331
  // THIS FILE IS GENERATED - DO NOT MODIFY
151
332
 
152
- const t = Translation.for('src/lib/my-organization-proj.ts', { "src/lib/my-organization-proj.ts": { "en-US": async () => (await import('./cms-websql-prod-my-organization-proj.ts.en-US.i18n.data-CoSik70Y.mjs')).default, "pl-PL": async () => (await import('./cms-websql-prod-my-organization-proj.ts.pl-PL.i18n.data-BZPsT3Zk.mjs')).default } });
153
- function myOrgProj() {
154
- t.gettext('My Translated Company Name!');
155
- }
156
-
157
333
  //#region tnp-helpers cli template
158
334
  /* */
159
335
  //#endregion
@@ -283,19 +459,6 @@ TaonCmsCategoryEntity = __decorate([
283
459
  })
284
460
  ], TaonCmsCategoryEntity);
285
461
 
286
- var TaonCmsContentType;
287
- (function (TaonCmsContentType) {
288
- TaonCmsContentType["Normal"] = "normal";
289
- TaonCmsContentType["Video"] = "video";
290
- TaonCmsContentType["Audio"] = "audio";
291
- TaonCmsContentType["Attachment"] = "attachment";
292
- })(TaonCmsContentType || (TaonCmsContentType = {}));
293
- var TaonCmsContentState;
294
- (function (TaonCmsContentState) {
295
- TaonCmsContentState["Active"] = "active";
296
- TaonCmsContentState["Inactive"] = "inactive";
297
- })(TaonCmsContentState || (TaonCmsContentState = {}));
298
-
299
462
  function contentError(message, status = 400) {
300
463
  Taon__NS__error({ message, status });
301
464
  throw new Error(message);
@@ -1112,144 +1275,100 @@ const TaonCmsTagAbstractContext = createContext(() => ({
1112
1275
  subscribers: { TaonCmsTagSubscriber },
1113
1276
  }));
1114
1277
 
1115
- //#endregion
1116
- let TaonCmsContentEntity = class TaonCmsContentEntity extends TaonBaseEntity {
1278
+ //#region taon auth decorator
1279
+ const TaonSessionCoreGroups = {
1280
+ ...TaonSessionCoreGroups$1,
1281
+ Manager: 'manager',
1282
+ };
1283
+ const TaonSessionCoreRoles = {
1284
+ ...TaonSessionCoreRoles$1,
1285
+ /**
1286
+ * Can manage roles and permissions assigned directly to users.
1287
+ * Does NOT allow changing user groups.
1288
+ */
1289
+ PostsManager: 'posts-manager',
1290
+ };
1291
+ const TaonSessionCorePermissions = {
1292
+ ...TaonSessionCorePermissions$1,
1293
+ };
1294
+ let TaonAuthContextEntity = class TaonAuthContextEntity extends TaonAuthContextEntity$1 {
1295
+ // @ts-ignore
1296
+ get hasAccess() {
1297
+ return this.injectClass(TaonAuthContextHasAccess, this);
1298
+ }
1299
+ };
1300
+ TaonAuthContextEntity = __decorate([
1301
+ TaonEntity({
1302
+ className: 'TaonAuthContextEntity',
1303
+ createTable: false,
1304
+ })
1305
+ ], TaonAuthContextEntity);
1306
+ class TaonAuthContextHasAccess extends TaonAuthContextHasAccess$1 {
1307
+ get toManagePosts() {
1308
+ //#region @browserFunc
1309
+ return this.context.snapshoot.toManagePosts;
1310
+ //#endregion
1311
+ //#region @websqlFunc
1312
+ return (this.context.isSuperUser ||
1313
+ this.context.hasRole(TaonSessionCoreRoles.PostsManager));
1314
+ //#endregion
1315
+ }
1316
+ }
1317
+ let TaonAuthContextRepository = class TaonAuthContextRepository extends TaonAuthContextRepository$1 {
1117
1318
  constructor() {
1118
1319
  super(...arguments);
1119
- //#region @websql
1120
- this.type = TaonCmsContentType.Normal;
1121
- //#region @websql
1122
- this.videoKey = null;
1123
- //#region @websql
1124
- this.audioKey = null;
1125
- //#region @websql
1126
- this.attachmentKey = null;
1320
+ // @ts-ignore
1321
+ this.entityClassResolveFn = () => TaonAuthContextEntity;
1127
1322
  }
1128
1323
  };
1129
- __decorate([
1130
- PrimaryGeneratedColumn()
1131
- //#endregion
1132
- ,
1133
- __metadata("design:type", Number)
1134
- ], TaonCmsContentEntity.prototype, "id", void 0);
1135
- __decorate([
1136
- Column({ type: 'integer', default: 0 })
1137
- //#endregion
1138
- ,
1139
- __metadata("design:type", Number)
1140
- ], TaonCmsContentEntity.prototype, "version", void 0);
1141
- __decorate([
1142
- Column({ type: 'varchar', default: TaonCmsContentType.Normal })
1143
- //#endregion
1144
- ,
1145
- __metadata("design:type", String)
1146
- ], TaonCmsContentEntity.prototype, "type", void 0);
1147
- __decorate([
1148
- Column({ type: 'varchar' })
1149
- //#endregion
1150
- ,
1151
- __metadata("design:type", String)
1152
- ], TaonCmsContentEntity.prototype, "title", void 0);
1153
- __decorate([
1154
- Column({ type: 'varchar', unique: true })
1155
- //#endregion
1156
- ,
1157
- __metadata("design:type", String)
1158
- ], TaonCmsContentEntity.prototype, "slug", void 0);
1159
- __decorate([
1160
- ManyToMany(() => TaonCmsContentEntity),
1161
- JoinTable({
1162
- name: 'taon_cms_related_posts',
1163
- joinColumn: { name: 'contentId', referencedColumnName: 'id' },
1164
- inverseJoinColumn: { name: 'relatedPostId', referencedColumnName: 'id' },
1165
- })
1166
- //#endregion
1167
- ,
1168
- __metadata("design:type", Array)
1169
- ], TaonCmsContentEntity.prototype, "relatedPosts", void 0);
1170
- __decorate([
1171
- ManyToMany(() => TaonPermissionEntity),
1172
- JoinTable({
1173
- name: 'taon_cms_content_permissions',
1174
- joinColumn: { name: 'contentId', referencedColumnName: 'id' },
1175
- inverseJoinColumn: { name: 'permissionId', referencedColumnName: 'id' },
1324
+ TaonAuthContextRepository = __decorate([
1325
+ TaonRepository({
1326
+ className: 'TaonAuthContextRepository',
1176
1327
  })
1177
- //#endregion
1178
- ,
1179
- __metadata("design:type", Array)
1180
- ], TaonCmsContentEntity.prototype, "permissions", void 0);
1181
- __decorate([
1182
- Column({ type: 'text', nullable: true })
1183
- //#endregion
1184
- ,
1185
- __metadata("design:type", String)
1186
- ], TaonCmsContentEntity.prototype, "excerpt", void 0);
1187
- __decorate([
1188
- Column({ type: 'text', nullable: true })
1189
- //#endregion
1190
- ,
1191
- __metadata("design:type", String)
1192
- ], TaonCmsContentEntity.prototype, "body", void 0);
1193
- __decorate([
1194
- Column({ type: 'varchar', nullable: true })
1195
- //#endregion
1196
- ,
1197
- __metadata("design:type", String)
1198
- ], TaonCmsContentEntity.prototype, "videoKey", void 0);
1199
- __decorate([
1200
- Column({ type: 'varchar', nullable: true })
1201
- //#endregion
1202
- ,
1203
- __metadata("design:type", String)
1204
- ], TaonCmsContentEntity.prototype, "audioKey", void 0);
1205
- __decorate([
1206
- Column({ type: 'varchar', nullable: true })
1207
- //#endregion
1208
- ,
1209
- __metadata("design:type", String)
1210
- ], TaonCmsContentEntity.prototype, "attachmentKey", void 0);
1211
- __decorate([
1212
- Column({ type: 'integer', nullable: true })
1213
- //#endregion
1214
- ,
1215
- __metadata("design:type", Number)
1216
- ], TaonCmsContentEntity.prototype, "categoryId", void 0);
1217
- __decorate([
1218
- Column({ type: 'integer', nullable: true })
1219
- //#endregion
1220
- ,
1221
- __metadata("design:type", Number)
1222
- ], TaonCmsContentEntity.prototype, "authorUserId", void 0);
1223
- __decorate([
1224
- Column({ type: 'varchar', default: 'draft' })
1225
- //#endregion
1226
- ,
1227
- __metadata("design:type", String)
1228
- ], TaonCmsContentEntity.prototype, "status", void 0);
1229
- __decorate([
1230
- Column({ type: 'datetime', nullable: true })
1231
- //#endregion
1232
- ,
1233
- __metadata("design:type", Date)
1234
- ], TaonCmsContentEntity.prototype, "publishedAt", void 0);
1235
- __decorate([
1236
- Column({ type: 'datetime' })
1237
- //#endregion
1238
- ,
1239
- __metadata("design:type", Date)
1240
- ], TaonCmsContentEntity.prototype, "createdAt", void 0);
1241
- __decorate([
1242
- Column({ type: 'datetime' })
1243
- //#endregion
1244
- ,
1245
- __metadata("design:type", Date)
1246
- ], TaonCmsContentEntity.prototype, "updatedAt", void 0);
1247
- TaonCmsContentEntity = __decorate([
1248
- TaonEntity({
1249
- className: 'TaonCmsContentEntity',
1250
- createTable: true,
1328
+ ], TaonAuthContextRepository);
1329
+ let CmsContext_1791132517217_initial = class CmsContext_1791132517217_initial extends MIGRATIONS_CLASSES_FOR_SessionContext.SessionContext_1791132517216_initial {
1330
+ async persistTree() {
1331
+ //#region @websqlFunc
1332
+ await this.taonAuthContextRepository.persistTree({
1333
+ authorization: {
1334
+ groups: TaonSessionCoreGroups,
1335
+ roles: TaonSessionCoreRoles,
1336
+ permissions: TaonSessionCorePermissions,
1337
+ },
1338
+ tree: {
1339
+ groupAndRoles: {
1340
+ // Administrators receive all core administrative roles.
1341
+ [TaonSessionCoreGroups.Administrator]: '*',
1342
+ // Normal customers receive no administrative roles by default.
1343
+ [TaonSessionCoreGroups.Customers]: [],
1344
+ [TaonSessionCoreGroups.Manager]: [TaonSessionCoreRoles.PostsManager],
1345
+ },
1346
+ rolesAndPermissions: {
1347
+ [TaonSessionCoreRoles.AuthorizationManager]: [
1348
+ TaonSessionCorePermissions.ViewUsers,
1349
+ TaonSessionCorePermissions.ViewUserAuthorization,
1350
+ TaonSessionCorePermissions.ManageUserRoles,
1351
+ TaonSessionCorePermissions.ManageUserPermissions,
1352
+ ],
1353
+ [TaonSessionCoreRoles.PostsManager]: [],
1354
+ [TaonSessionCoreRoles.UserManager]: [
1355
+ TaonSessionCorePermissions.ViewUsers,
1356
+ TaonSessionCorePermissions.ManageUsers,
1357
+ TaonSessionCorePermissions.ViewSessions,
1358
+ TaonSessionCorePermissions.RevokeSessions,
1359
+ ],
1360
+ },
1361
+ },
1362
+ });
1363
+ //#endregion
1364
+ }
1365
+ };
1366
+ CmsContext_1791132517217_initial = __decorate([
1367
+ TaonMigration({
1368
+ className: 'CmsContext_1791132517217_initial',
1251
1369
  })
1252
- ], TaonCmsContentEntity);
1370
+ ], CmsContext_1791132517217_initial);
1371
+ //#endregion
1253
1372
 
1254
1373
  //#endregion
1255
1374
  let TaonCmsContentRepository = class TaonCmsContentRepository extends TaonBaseRepository {
@@ -1282,6 +1401,7 @@ let TaonCmsContentRepository = class TaonCmsContentRepository extends TaonBaseRe
1282
1401
  await this.taonCmsContentTagRepository.replaceTags(content.id, tagIds, manager);
1283
1402
  await this.replaceRelatedPosts(content.id, relatedPostIds, [], manager);
1284
1403
  await this.replacePermissions(content.id, permissionIds, [], manager);
1404
+ await this.replaceApplicationHook(content.id, input.applicationHook ?? null, manager);
1285
1405
  await this.taonCmsContentRevisionRepository.recordContent(content, { ...fields, tagIds, relatedPostIds, permissionIds }, manager);
1286
1406
  return this.requireContent(content.id, manager);
1287
1407
  });
@@ -1305,7 +1425,7 @@ let TaonCmsContentRepository = class TaonCmsContentRepository extends TaonBaseRe
1305
1425
  const permissionIds = input.permissionIds === undefined
1306
1426
  ? snapshot.permissionIds
1307
1427
  : [...new Set(input.permissionIds)];
1308
- return this.commitUpdate(current, input.expectedVersion, { ...fields, tagIds, relatedPostIds, permissionIds }, manager);
1428
+ return this.commitUpdate(current, input.expectedVersion, { ...fields, tagIds, relatedPostIds, permissionIds }, manager, input.applicationHook);
1309
1429
  });
1310
1430
  //#endregion
1311
1431
  }
@@ -1377,6 +1497,27 @@ let TaonCmsContentRepository = class TaonCmsContentRepository extends TaonBaseRe
1377
1497
  return this.connection.transaction(async (manager) => (await this.requireContent(id, manager)).permissions);
1378
1498
  //#endregion
1379
1499
  }
1500
+ async listApplicationHooks() {
1501
+ //#region @websqlFunc
1502
+ return this.connection
1503
+ .getRepository(TaonCmsApplicationHookEntity)
1504
+ .find({ order: { hook: 'ASC' } });
1505
+ //#endregion
1506
+ }
1507
+ async getContentByHook(hook) {
1508
+ //#region @websqlFunc
1509
+ if (!hook) {
1510
+ contentError('Application hook is required.');
1511
+ }
1512
+ const applicationHook = await this.connection
1513
+ .getRepository(TaonCmsApplicationHookEntity)
1514
+ .findOne({
1515
+ where: { hook: hook },
1516
+ relations: { content: true },
1517
+ });
1518
+ return applicationHook?.content?.body ?? '';
1519
+ //#endregion
1520
+ }
1380
1521
  async addRelatedPost(id, relatedPostId, expectedVersion) {
1381
1522
  //#region @websqlFunc
1382
1523
  return this.changeRelatedPost(id, relatedPostId, expectedVersion, true);
@@ -1413,7 +1554,11 @@ let TaonCmsContentRepository = class TaonCmsContentRepository extends TaonBaseRe
1413
1554
  .getRepository(this.target)
1414
1555
  .findOne({
1415
1556
  where: { id },
1416
- relations: { relatedPosts: true, permissions: true },
1557
+ relations: {
1558
+ relatedPosts: true,
1559
+ permissions: true,
1560
+ applicationHook: true,
1561
+ },
1417
1562
  });
1418
1563
  if (!content) {
1419
1564
  contentError(`Content ${id} does not exist.`, 404);
@@ -1545,7 +1690,36 @@ let TaonCmsContentRepository = class TaonCmsContentRepository extends TaonBaseRe
1545
1690
  }
1546
1691
  //#endregion
1547
1692
  }
1548
- async commitUpdate(current, expectedVersion, snapshot, manager) {
1693
+ async replaceApplicationHook(contentId, hook, manager) {
1694
+ //#region @websqlFunc
1695
+ const repository = manager.getRepository(TaonCmsApplicationHookEntity);
1696
+ const current = await repository.findOneBy({ contentId });
1697
+ if (hook === null) {
1698
+ if (current) {
1699
+ current.contentId = null;
1700
+ await repository.save(current);
1701
+ }
1702
+ return;
1703
+ }
1704
+ const target = await repository.findOneBy({ hook });
1705
+ if (!target) {
1706
+ contentError(`Application hook "${hook}" is not configured.`, 404);
1707
+ }
1708
+ if (target.contentId !== null && target.contentId !== contentId) {
1709
+ contentError(`Application hook "${hook}" is already in use.`, 409);
1710
+ }
1711
+ if (current?.id === target.id) {
1712
+ return;
1713
+ }
1714
+ if (current) {
1715
+ current.contentId = null;
1716
+ await repository.save(current);
1717
+ }
1718
+ target.contentId = contentId;
1719
+ await repository.save(target);
1720
+ //#endregion
1721
+ }
1722
+ async commitUpdate(current, expectedVersion, snapshot, manager, applicationHook) {
1549
1723
  //#region @websqlFunc
1550
1724
  if (current.version !== expectedVersion) {
1551
1725
  contentError('Content has changed. Reload it before editing.', 409);
@@ -1566,6 +1740,9 @@ let TaonCmsContentRepository = class TaonCmsContentRepository extends TaonBaseRe
1566
1740
  await this.taonCmsContentTagRepository.replaceTags(current.id, snapshot.tagIds, manager);
1567
1741
  await this.replaceRelatedPosts(current.id, [...new Set(snapshot.relatedPostIds ?? [])], current.relatedPosts.map(post => post.id), manager);
1568
1742
  await this.replacePermissions(current.id, [...new Set(snapshot.permissionIds ?? [])], current.permissions.map(permission => permission.id), manager);
1743
+ if (applicationHook !== undefined) {
1744
+ await this.replaceApplicationHook(current.id, applicationHook, manager);
1745
+ }
1569
1746
  const updated = await this.requireContent(current.id, manager);
1570
1747
  await this.taonCmsContentRevisionRepository.recordContent(updated, {
1571
1748
  ...fields,
@@ -1602,7 +1779,41 @@ let TaonCmsContentController = class TaonCmsContentController extends TaonBaseCr
1602
1779
  super(...arguments);
1603
1780
  this.entityClassResolveFn = () => TaonCmsContentEntity;
1604
1781
  this.taonCmsContentRepository = this.injectCustomRepo(TaonCmsContentRepository);
1782
+ this.taonSessionRepository = this.injectCustomRepo(TaonSessionRepository);
1783
+ this.taonAuthContextRepository = this.injectCustomRepo(TaonAuthContextRepository);
1605
1784
  }
1785
+ async beforeEachRequest({ req, res, methodConfig, t, }) {
1786
+ /* */
1787
+ /* */
1788
+ /* */
1789
+ /* */
1790
+ /* */
1791
+ /* */
1792
+ /* */
1793
+ /* */
1794
+ /* */
1795
+ /* */
1796
+ /* */
1797
+ /* */
1798
+ /* */
1799
+ /* */
1800
+ /* */
1801
+ return (void 0);
1802
+ }
1803
+ //#region get by id
1804
+ getBySlug(slug) {
1805
+ //#region @websqlFunc
1806
+ return async () => {
1807
+ const model = await this.db.findOne({
1808
+ where: {
1809
+ slug,
1810
+ },
1811
+ });
1812
+ return model;
1813
+ };
1814
+ //#endregion
1815
+ }
1816
+ //#endregion
1606
1817
  createContent(input) {
1607
1818
  //#region @websqlFunc
1608
1819
  return async () => this.taonCmsContentRepository.createContent(input);
@@ -1633,6 +1844,21 @@ let TaonCmsContentController = class TaonCmsContentController extends TaonBaseCr
1633
1844
  return async () => this.taonCmsContentRepository.listPermissions(id);
1634
1845
  //#endregion
1635
1846
  }
1847
+ listApplicationHooks() {
1848
+ //#region @websqlFunc
1849
+ return async () => this.taonCmsContentRepository.listApplicationHooks();
1850
+ //#endregion
1851
+ }
1852
+ getContentByHook(hook) {
1853
+ //#region @websqlFunc
1854
+ return async () => this.taonCmsContentRepository.getContentByHook(hook);
1855
+ //#endregion
1856
+ }
1857
+ getPublicContentByHook(hook) {
1858
+ //#region @websqlFunc
1859
+ return async () => this.taonCmsContentRepository.getContentByHook(hook);
1860
+ //#endregion
1861
+ }
1636
1862
  addRelatedPost(id, relatedPostId, expectedVersion) {
1637
1863
  //#region @websqlFunc
1638
1864
  return async () => this.taonCmsContentRepository.addRelatedPost(id, relatedPostId, expectedVersion);
@@ -1649,6 +1875,13 @@ let TaonCmsContentController = class TaonCmsContentController extends TaonBaseCr
1649
1875
  //#endregion
1650
1876
  }
1651
1877
  };
1878
+ __decorate([
1879
+ GET(),
1880
+ __param(0, Query(`slug`)),
1881
+ __metadata("design:type", Function),
1882
+ __metadata("design:paramtypes", [String]),
1883
+ __metadata("design:returntype", Object)
1884
+ ], TaonCmsContentController.prototype, "getBySlug", null);
1652
1885
  __decorate([
1653
1886
  POST(),
1654
1887
  __param(0, Body()),
@@ -1694,6 +1927,26 @@ __decorate([
1694
1927
  __metadata("design:paramtypes", [Number]),
1695
1928
  __metadata("design:returntype", Object)
1696
1929
  ], TaonCmsContentController.prototype, "listPermissions", null);
1930
+ __decorate([
1931
+ GET(),
1932
+ __metadata("design:type", Function),
1933
+ __metadata("design:paramtypes", []),
1934
+ __metadata("design:returntype", Object)
1935
+ ], TaonCmsContentController.prototype, "listApplicationHooks", null);
1936
+ __decorate([
1937
+ GET(),
1938
+ __param(0, Query('hook')),
1939
+ __metadata("design:type", Function),
1940
+ __metadata("design:paramtypes", [String]),
1941
+ __metadata("design:returntype", Object)
1942
+ ], TaonCmsContentController.prototype, "getContentByHook", null);
1943
+ __decorate([
1944
+ GET(),
1945
+ __param(0, Query('hook')),
1946
+ __metadata("design:type", Function),
1947
+ __metadata("design:paramtypes", [String]),
1948
+ __metadata("design:returntype", Object)
1949
+ ], TaonCmsContentController.prototype, "getPublicContentByHook", null);
1697
1950
  __decorate([
1698
1951
  POST(),
1699
1952
  __param(0, Query('id')),
@@ -1732,9 +1985,12 @@ TaonCmsContentController = __decorate([
1732
1985
  'listRevisions',
1733
1986
  'listRelatedPosts',
1734
1987
  'listPermissions',
1988
+ 'listApplicationHooks',
1989
+ 'getContentByHook',
1990
+ 'getPublicContentByHook',
1735
1991
  'addRelatedPost',
1736
1992
  'deleteRelatedPost',
1737
- 'paginationQuery'
1993
+ 'paginationQuery',
1738
1994
  ],
1739
1995
  })
1740
1996
  ], TaonCmsContentController);
@@ -1820,7 +2076,7 @@ const TaonCmsContentAbstractContext = createContext(() => ({
1820
2076
  TaonCmsContentTagAbstractContext,
1821
2077
  TaonCmsContentRevisionAbstractContext,
1822
2078
  },
1823
- entities: { TaonCmsContentEntity },
2079
+ entities: { TaonCmsApplicationHookEntity, TaonCmsContentEntity },
1824
2080
  controllers: { TaonCmsContentController, TaonCmsContentStorageController },
1825
2081
  repositories: { TaonCmsContentRepository },
1826
2082
  providers: { TaonCmsContentProvider },
@@ -2226,9 +2482,6 @@ const TaonCmsAbstractContext = createContext(() => ({
2226
2482
  }));
2227
2483
  // THIS FILE IS GENERATED - DO NOT MODIFY
2228
2484
 
2229
- ;
2230
- // THIS FILE IS GENERATED - DO NOT MODIFY
2231
-
2232
2485
  class TaonCmsAssetsBackofficeComponent {
2233
2486
  constructor() {
2234
2487
  this.assets = [
@@ -2305,12 +2558,17 @@ var taonCmsBackoffice_component = /*#__PURE__*/Object.freeze({
2305
2558
  //end of namespace TaonCmsBackofficeModels
2306
2559
 
2307
2560
  //#endregion
2561
+ const adminLazyRoute = (adminLazyRoute$1);
2308
2562
  const TaonCmsBackofficeRoutes = [
2309
2563
  {
2310
2564
  path: '',
2311
2565
  loadComponent: () => Promise.resolve().then(function () { return taonCmsBackoffice_component; }).then(m => m.TaonCmsBackofficeComponent),
2312
2566
  children: [
2313
2567
  adminLazyRoute({
2568
+ isDisabled: ({ context }) => {
2569
+ // console.log('context', { context });
2570
+ return !context?.hasAccess.toManagePosts;
2571
+ },
2314
2572
  path: 'posts',
2315
2573
  menuItem: 'Posts',
2316
2574
  expandable: true,
@@ -2318,6 +2576,7 @@ const TaonCmsBackofficeRoutes = [
2318
2576
  loader: () => Promise.resolve().then(function () { return index$1; }).then(m => m.TaonCmsPostsBackofficeRoutes),
2319
2577
  }),
2320
2578
  adminLazyRoute({
2579
+ isDisabled: ({ context }) => !context?.hasAccess.toManagePosts,
2321
2580
  path: 'assets',
2322
2581
  menuItem: 'Assets',
2323
2582
  expandable: false,
@@ -2419,6 +2678,28 @@ class TaonCmsContentApiService extends TaonBaseAngularService {
2419
2678
  this.taonCmsContentController = this.injectController(TaonCmsContentController);
2420
2679
  this.taonCmsContentStorageController = this.injectController(TaonCmsContentStorageController);
2421
2680
  }
2681
+ get crudController() {
2682
+ return this.taonCmsContentController;
2683
+ }
2684
+ async getById(id) {
2685
+ return (await this.taonCmsContentController.getBy(id).request()).body.json;
2686
+ }
2687
+ async getBySlug(slug) {
2688
+ return (await this.taonCmsContentController.getBySlug(slug).request()).body
2689
+ .json;
2690
+ }
2691
+ getContentByHook(hook) {
2692
+ return this.taonCmsContentController.getContentByHook(hook)
2693
+ .request().observable.pipe(map(res => res.body.text));
2694
+ }
2695
+ getPublicContentByHook(hook) {
2696
+ return this.taonCmsContentController.getPublicContentByHook(hook)
2697
+ .request().observable.pipe(map(res => res.body.text), catchError(() => of('---')));
2698
+ }
2699
+ listApplicationHooks() {
2700
+ return this.taonCmsContentController.listApplicationHooks()
2701
+ .request().observable.pipe(map(res => res.body.json));
2702
+ }
2422
2703
  async uploadMedia(file) {
2423
2704
  const formData = new FormData();
2424
2705
  formData.append('file', file);
@@ -2509,10 +2790,12 @@ class TaonCmsContentAssetApiService extends TaonBaseAngularService {
2509
2790
  this.taonCmsContentAssetController = this.injectController(TaonCmsContentAssetController);
2510
2791
  }
2511
2792
  get allMyEntities$() {
2512
- return this.taonCmsContentAssetController.getAll().request().observable.pipe(map(res => res.body?.json));
2793
+ return this.taonCmsContentAssetController.getAll()
2794
+ .request().observable.pipe(map(res => res.body?.json));
2513
2795
  }
2514
2796
  helloWorld(user) {
2515
- return this.taonCmsContentAssetController.helloWord(user).request().observable.pipe(map(res => res.responseText));
2797
+ return this.taonCmsContentAssetController.helloWord(user)
2798
+ .request().observable.pipe(map(res => res.responseText));
2516
2799
  }
2517
2800
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsContentAssetApiService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2518
2801
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsContentAssetApiService }); }
@@ -2545,10 +2828,12 @@ class TaonCmsContentPermissionApiService extends TaonBaseAngularService {
2545
2828
  this.taonCmsContentPermissionController = this.injectController(TaonCmsContentPermissionController);
2546
2829
  }
2547
2830
  get allMyEntities$() {
2548
- return this.taonCmsContentPermissionController.getAll().request().observable.pipe(map(res => res.body?.json));
2831
+ return this.taonCmsContentPermissionController.getAll()
2832
+ .request().observable.pipe(map(res => res.body?.json));
2549
2833
  }
2550
2834
  helloWorld(user) {
2551
- return this.taonCmsContentPermissionController.helloWord(user).request().observable.pipe(map(res => res.responseText));
2835
+ return this.taonCmsContentPermissionController.helloWord(user)
2836
+ .request().observable.pipe(map(res => res.responseText));
2552
2837
  }
2553
2838
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsContentPermissionApiService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2554
2839
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsContentPermissionApiService }); }
@@ -2582,8 +2867,7 @@ class TaonCmsContentRevisionApiService extends TaonBaseAngularService {
2582
2867
  this.taonCmsContentRevisionController = this.injectController(TaonCmsContentRevisionController);
2583
2868
  }
2584
2869
  listRevisions(id) {
2585
- return this.contentController.listRevisions(id)
2586
- .request().observable.pipe(map(res => res.body.json));
2870
+ return this.contentController.listRevisions(id).request().observable.pipe(map(res => res.body.json));
2587
2871
  }
2588
2872
  restoreContent(id, input) {
2589
2873
  return this.contentController.restoreContent(id, input)
@@ -2656,12 +2940,6 @@ class TaonCmsTagApiService extends TaonBaseAngularService {
2656
2940
  super(...arguments);
2657
2941
  this.taonCmsTagController = this.injectController(TaonCmsTagController);
2658
2942
  }
2659
- get allMyEntities$() {
2660
- return this.taonCmsTagController.getAll().request().observable.pipe(map(res => res.body?.json));
2661
- }
2662
- helloWorld(user) {
2663
- return this.taonCmsTagController.helloWord(user).request().observable.pipe(map(res => res.responseText));
2664
- }
2665
2943
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsTagApiService, deps: null, target: i0.ɵɵFactoryTarget.Injectable }); }
2666
2944
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsTagApiService }); }
2667
2945
  }
@@ -2993,6 +3271,11 @@ class TaonCmsPostComponent {
2993
3271
  this.relatedPosts = signal([], ...(ngDevMode ? [{ debugName: "relatedPosts" }] : []));
2994
3272
  this.relatedPostsLoading = signal(false, ...(ngDevMode ? [{ debugName: "relatedPostsLoading" }] : []));
2995
3273
  this.relatedPostsError = signal('', ...(ngDevMode ? [{ debugName: "relatedPostsError" }] : []));
3274
+ this.applicationHooks = signal([], ...(ngDevMode ? [{ debugName: "applicationHooks" }] : []));
3275
+ this.applicationHooksLoading = signal(false, ...(ngDevMode ? [{ debugName: "applicationHooksLoading" }] : []));
3276
+ this.applicationHooksError = signal('', ...(ngDevMode ? [{ debugName: "applicationHooksError" }] : []));
3277
+ this.useAsApplicationHook = signal(false, ...(ngDevMode ? [{ debugName: "useAsApplicationHook" }] : []));
3278
+ this.selectedApplicationHook = signal(null, ...(ngDevMode ? [{ debugName: "selectedApplicationHook" }] : []));
2996
3279
  this.permissions = signal([], ...(ngDevMode ? [{ debugName: "permissions" }] : []));
2997
3280
  this.permissionsLoading = signal(false, ...(ngDevMode ? [{ debugName: "permissionsLoading" }] : []));
2998
3281
  this.permissionsError = signal('', ...(ngDevMode ? [{ debugName: "permissionsError" }] : []));
@@ -3009,6 +3292,9 @@ class TaonCmsPostComponent {
3009
3292
  !!this.draft().slug.trim() &&
3010
3293
  !this.relatedPostsLoading() &&
3011
3294
  !this.relatedPostsError() &&
3295
+ !this.applicationHooksLoading() &&
3296
+ !this.applicationHooksError() &&
3297
+ (!this.useAsApplicationHook() || !!this.selectedApplicationHook()) &&
3012
3298
  !this.permissionsLoading() &&
3013
3299
  !this.permissionsError(), ...(ngDevMode ? [{ debugName: "canSave" }] : []));
3014
3300
  this.canPublish = computed(() => {
@@ -3025,7 +3311,10 @@ class TaonCmsPostComponent {
3025
3311
  });
3026
3312
  effect(() => {
3027
3313
  if (this.editing()) {
3028
- untracked(() => this.loadPermissionOptions());
3314
+ untracked(() => {
3315
+ this.loadApplicationHooks();
3316
+ this.loadPermissionOptions();
3317
+ });
3029
3318
  }
3030
3319
  });
3031
3320
  }
@@ -3097,6 +3386,38 @@ class TaonCmsPostComponent {
3097
3386
  this.relatedPosts.update(posts => posts.filter(post => post.id !== id));
3098
3387
  }
3099
3388
  //#endregion
3389
+ //#region methods / application hooks
3390
+ loadApplicationHooks() {
3391
+ if (this.applicationHooksLoading()) {
3392
+ return;
3393
+ }
3394
+ this.applicationHooksLoading.set(true);
3395
+ this.applicationHooksError.set('');
3396
+ this.applicationHooksLoad = this.api
3397
+ .listApplicationHooks()
3398
+ .pipe(takeUntilDestroyed(this.destroyRef), finalize(() => this.applicationHooksLoading.set(false)))
3399
+ .subscribe({
3400
+ next: hooks => {
3401
+ this.applicationHooks.set(hooks);
3402
+ this.setApplicationHookSelection(this.currentPost(), hooks);
3403
+ },
3404
+ error: (error) => {
3405
+ console.error('[taon-cms-post] Unable to load application hooks', error);
3406
+ this.applicationHooksError.set('Application hooks could not be loaded. Please try again.');
3407
+ },
3408
+ });
3409
+ }
3410
+ setUseAsApplicationHook(enabled) {
3411
+ this.useAsApplicationHook.set(enabled);
3412
+ }
3413
+ applicationHookInUseByAnotherPost(applicationHook) {
3414
+ return (applicationHook.contentId !== null &&
3415
+ applicationHook.contentId !== this.currentPost()?.id);
3416
+ }
3417
+ applicationHookLabel(hook) {
3418
+ return hook.split('-').join('_').toUpperCase();
3419
+ }
3420
+ //#endregion
3100
3421
  //#region methods / load permissions
3101
3422
  loadPermissions() {
3102
3423
  if (this.busy() || this.permissionsLoading()) {
@@ -3257,6 +3578,9 @@ class TaonCmsPostComponent {
3257
3578
  ...this.draft(),
3258
3579
  relatedPostIds: this.relatedPosts().map(post => post.id),
3259
3580
  permissionIds: this.permissions().map(permission => permission.id),
3581
+ applicationHook: this.useAsApplicationHook()
3582
+ ? this.selectedApplicationHook()
3583
+ : null,
3260
3584
  }));
3261
3585
  }
3262
3586
  else {
@@ -3353,6 +3677,9 @@ class TaonCmsPostComponent {
3353
3677
  ...this.draft(),
3354
3678
  relatedPostIds: this.relatedPosts().map(related => related.id),
3355
3679
  permissionIds: this.permissions().map(permission => permission.id),
3680
+ applicationHook: this.useAsApplicationHook()
3681
+ ? this.selectedApplicationHook()
3682
+ : null,
3356
3683
  expectedVersion: post.version,
3357
3684
  };
3358
3685
  }
@@ -3369,15 +3696,19 @@ class TaonCmsPostComponent {
3369
3696
  //#region methods / set post
3370
3697
  setPost(post) {
3371
3698
  this.relatedPostsLoad?.unsubscribe();
3699
+ this.applicationHooksLoad?.unsubscribe();
3372
3700
  this.permissionsLoad?.unsubscribe();
3373
3701
  this.relatedPostsLoading.set(false);
3374
3702
  this.relatedPostsError.set('');
3703
+ this.applicationHooksLoading.set(false);
3704
+ this.applicationHooksError.set('');
3375
3705
  this.permissionsLoading.set(false);
3376
3706
  this.permissionsError.set('');
3377
3707
  this.currentPost.set(post);
3378
3708
  this.relatedPosts.set(post?.relatedPosts ?? []);
3379
3709
  this.permissions.set(post?.permissions ?? []);
3380
3710
  this.selectedPermissionId.set(null);
3711
+ this.setApplicationHookSelection(post, this.applicationHooks());
3381
3712
  this.draft.set({
3382
3713
  type: post?.type ?? TaonCmsContentType.Normal,
3383
3714
  title: post?.title ?? '',
@@ -3400,6 +3731,14 @@ class TaonCmsPostComponent {
3400
3731
  }
3401
3732
  }
3402
3733
  //#endregion
3734
+ setApplicationHookSelection(post, hooks) {
3735
+ const assignedHook = post?.applicationHook !== undefined
3736
+ ? post.applicationHook?.hook
3737
+ : hooks.find(applicationHook => applicationHook.contentId === post?.id)
3738
+ ?.hook;
3739
+ this.useAsApplicationHook.set(!!assignedHook);
3740
+ this.selectedApplicationHook.set(assignedHook ?? null);
3741
+ }
3403
3742
  //#region methods / accept post
3404
3743
  acceptPost(post) {
3405
3744
  this.setPost(post);
@@ -3432,18 +3771,19 @@ class TaonCmsPostComponent {
3432
3771
  });
3433
3772
  }
3434
3773
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsPostComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3435
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TaonCmsPostComponent, isStandalone: true, selector: "taon-cms-post", inputs: { post: { classPropertyName: "post", publicName: "post", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { mode: "modeChange", changed: "changed", deleted: "deleted", cancelled: "cancelled" }, providers: [TaonCmsContentApiService, TaonPermissionApiService], ngImport: i0, template: "@if (mode() !== 'view-clean') {\n <header class=\"post-actions\">\n <span class=\"post-status\">{{ mode() === 'add' ? 'New draft' : currentPost()?.status }}</span>\n <div class=\"buttons\">\n @if (editing()) {\n <button mat-flat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || !canSave()\" (click)=\"save()\">\n {{ mode() === 'add' ? 'Add' : 'Save' }}\n </button>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"cancel()\">Cancel</button>\n } @else if (currentPost()) {\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"edit()\">\n <mat-icon>edit</mat-icon> Edit\n </button>\n }\n @if (mode() !== 'add' && currentPost()) {\n @if (canPublish()) {\n <button mat-flat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || (editing() && !canSave())\" (click)=\"publish()\">Publish</button>\n }\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"revert()\">\n <mat-icon>history</mat-icon> Revert\n </button>\n @if (currentPost()?.status !== 'archived') {\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"delete()\">\n <mat-icon>delete</mat-icon> Delete\n </button>\n }\n }\n </div>\n @if (busy()) {\n <span role=\"status\">{{ uploading() ? 'Uploading...' : 'Saving...' }}</span>\n }\n </header>\n @if (error()) {\n <p class=\"error\" role=\"alert\">{{ error() }}</p>\n }\n}\n\n<article class=\"post-article\" [attr.aria-busy]=\"busy()\">\n @if (editing()) {\n <mat-radio-group\n class=\"post-type-selector\"\n aria-label=\"Post type\"\n [value]=\"draft().type\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"updateDraft('type', $event.value)\">\n @for (type of postTypes; track type.value) {\n <mat-radio-button [value]=\"type.value\">{{ type.label }}</mat-radio-button>\n }\n </mat-radio-group>\n <div\n class=\"post-title editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post title\"\n aria-required=\"true\"\n data-placeholder=\"Title\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditableSingleLine]=\"true\"\n [taonCmsEditable]=\"draft().title\"\n (taonCmsEditableChange)=\"updateDraft('title', $event)\"></div>\n <div\n class=\"post-excerpt editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post excerpt\"\n aria-multiline=\"true\"\n data-placeholder=\"A short introduction...\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditable]=\"draft().excerpt\"\n (taonCmsEditableChange)=\"updateDraft('excerpt', $event)\"></div>\n <div\n class=\"post-body editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post body\"\n aria-multiline=\"true\"\n data-placeholder=\"Tell your story...\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n taonCmsEditableFormat=\"html\"\n [taonCmsEditable]=\"draft().body\"\n (taonCmsEditableChange)=\"updateDraft('body', $event)\"></div>\n <label class=\"slug-field\">\n <span>URL slug</span>\n <input aria-label=\"URL slug\" [value]=\"draft().slug\" [disabled]=\"busy() || dialogOpen()\" (input)=\"updateSlug($event)\" placeholder=\"my-post\" />\n </label>\n @if (mediaAttachment(); as media) {\n <section class=\"media-attachment\" aria-labelledby=\"media-attachment-heading\">\n <h2 id=\"media-attachment-heading\">{{ media.heading }}</h2>\n @if (draft()[media.key]; as key) {\n <p>Attached file: {{ key }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removeMedia()\">Remove</button>\n } @else {\n <input\n #mediaInput\n hidden\n type=\"file\"\n [accept]=\"media.accept\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"fileSelected($event)\" />\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"mediaInput.click()\">{{ media.uploadLabel }}</button>\n }\n </section>\n }\n <section class=\"related-posts\" aria-labelledby=\"related-posts-heading\">\n <h2 id=\"related-posts-heading\">Related posts</h2>\n @if (relatedPostsLoading()) {\n <p role=\"status\">Loading related posts...</p>\n } @else if (relatedPostsError()) {\n <p class=\"error\" role=\"alert\">{{ relatedPostsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadRelatedPosts()\">Try again</button>\n } @else {\n <ul>\n @for (post of relatedPosts(); track post.id) {\n <li>\n <span>#{{ post.id }} - {{ post.title }}</span>\n <button mat-icon-button type=\"button\" [attr.aria-label]=\"'Remove related post ' + post.title\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removeRelatedPost(post.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>No related posts yet.</li>\n }\n </ul>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"addRelatedPost()\">\n <mat-icon>add</mat-icon> Add related post\n </button>\n }\n </section>\n <section class=\"post-permissions\" aria-labelledby=\"post-permissions-heading\">\n <h2 id=\"post-permissions-heading\">Allow Read only with Permissions</h2>\n @if (permissionsLoading()) {\n <p role=\"status\">Loading assigned permissions...</p>\n } @else if (permissionsError()) {\n <p class=\"error\" role=\"alert\">{{ permissionsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadPermissions()\">Try again</button>\n } @else {\n <ul>\n @for (permission of permissions(); track permission.id) {\n <li>\n <span>{{ permission.name }} ({{ permission.code }})</span>\n <button mat-icon-button type=\"button\" [attr.aria-label]=\"'Remove permission ' + permission.name\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removePermission(permission.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>No permissions assigned.</li>\n }\n </ul>\n @if (permissionOptionsError()) {\n <p class=\"error\" role=\"alert\">{{ permissionOptionsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\" (click)=\"loadPermissionOptions()\">Try again</button>\n } @else {\n <div class=\"permission-assignment\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <mat-label>Permission</mat-label>\n <mat-select\n [value]=\"selectedPermissionId()\"\n [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\"\n (selectionChange)=\"selectedPermissionId.set($event.value)\">\n @for (permission of availablePermissions(); track permission.id) {\n <mat-option [value]=\"permission.id\">{{ permission.name }} ({{ permission.code }})</mat-option>\n } @empty {\n <mat-option [disabled]=\"true\">No permissions available</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || !selectedPermissionId()\" (click)=\"addPermission()\">\n <mat-icon>add</mat-icon> Assign permission\n </button>\n </div>\n }\n }\n </section>\n } @else if (currentPost(); as post) {\n <h1 class=\"post-title\">{{ post.title }}</h1>\n @if (post.excerpt) {\n <p class=\"post-excerpt\">{{ post.excerpt }}</p>\n }\n <div class=\"post-body\" [innerHTML]=\"post.body\"></div>\n } @else {\n <p role=\"status\">No post is loaded.</p>\n }\n</article>", styles: [":host{display:block}.post-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;padding:1rem;border-bottom:1px solid rgba(136,136,136,.2)}.post-status{margin-right:auto;text-transform:capitalize;opacity:.7}.buttons{display:flex;flex-wrap:wrap;gap:.5rem}.post-article{max-width:760px;margin:0 auto;padding:clamp(1.5rem,5vw,4rem) 1.5rem;overflow-wrap:anywhere}.post-title{margin:0 0 1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1.15;letter-spacing:-.03em}.post-excerpt{margin:0 0 2rem;font-size:1.35rem;line-height:1.6;opacity:.7;white-space:pre-wrap}.post-body{font-family:Georgia,Times New Roman,serif;font-size:1.2rem;line-height:1.8;white-space:pre-wrap}.editable{min-height:1.2em;outline:none}.editable:focus{box-shadow:-3px 0 #8885}.editable:empty:before{content:attr(data-placeholder);opacity:.4;pointer-events:none}.post-body.editable{min-height:12rem}.slug-field{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(136,136,136,.2);font-size:.875rem}.slug-field input{flex:1;min-width:160px;padding:.5rem;color:inherit;background:transparent;border:1px solid rgba(136,136,136,.3333333333);border-radius:4px}.error{padding:1rem;color:#b3261e}.post-type-selector{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.media-attachment,.related-posts,.post-permissions{margin-top:1.5rem;font-size:.875rem}.media-attachment h2,.related-posts h2,.post-permissions h2{font-size:1rem}.related-posts ul,.post-permissions ul{padding:0;list-style:none}.related-posts li,.post-permissions li{display:flex;align-items:center;justify-content:space-between;gap:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i2$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i2$1.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i3.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i3.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i5.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i5.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: TaonCmsEditableDirective, selector: "[taonCmsEditable]", inputs: ["taonCmsEditableFormat", "taonCmsEditableSingleLine", "taonCmsEditable"], outputs: ["taonCmsEditableChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3774
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.0.9", type: TaonCmsPostComponent, isStandalone: true, selector: "taon-cms-post", inputs: { post: { classPropertyName: "post", publicName: "post", isSignal: true, isRequired: false, transformFunction: null }, mode: { classPropertyName: "mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { mode: "modeChange", changed: "changed", deleted: "deleted", cancelled: "cancelled" }, providers: [TaonCmsContentApiService, TaonPermissionApiService], ngImport: i0, template: "@if (mode() !== 'view-clean') {\n <header class=\"post-actions\">\n <span class=\"post-status\">{{ mode() === 'add' ? 'New draft' : currentPost()?.status }}</span>\n <div class=\"buttons\">\n @if (editing()) {\n <button mat-flat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || !canSave()\" (click)=\"save()\">\n {{ mode() === 'add' ? 'Add' : 'Save' }}\n </button>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"cancel()\">Cancel</button>\n } @else if (currentPost()) {\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"edit()\">\n <mat-icon>edit</mat-icon> Edit\n </button>\n }\n @if (mode() !== 'add' && currentPost()) {\n @if (canPublish()) {\n <button mat-flat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || (editing() && !canSave())\" (click)=\"publish()\">Publish</button>\n }\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"revert()\">\n <mat-icon>history</mat-icon> Revert\n </button>\n @if (currentPost()?.status !== 'archived') {\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"delete()\">\n <mat-icon>delete</mat-icon> Delete\n </button>\n }\n }\n </div>\n @if (busy()) {\n <span role=\"status\">{{ uploading() ? 'Uploading...' : 'Saving...' }}</span>\n }\n </header>\n @if (error()) {\n <p class=\"error\" role=\"alert\">{{ error() }}</p>\n }\n}\n\n<article class=\"post-article\" [attr.aria-busy]=\"busy()\">\n @if (editing()) {\n <mat-radio-group\n class=\"post-type-selector\"\n aria-label=\"Post type\"\n [value]=\"draft().type\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"updateDraft('type', $event.value)\">\n @for (type of postTypes; track type.value) {\n <mat-radio-button [value]=\"type.value\">{{ type.label }}</mat-radio-button>\n }\n </mat-radio-group>\n <div\n class=\"post-title editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post title\"\n aria-required=\"true\"\n data-placeholder=\"Title\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditableSingleLine]=\"true\"\n [taonCmsEditable]=\"draft().title\"\n (taonCmsEditableChange)=\"updateDraft('title', $event)\"></div>\n <div\n class=\"post-excerpt editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post excerpt\"\n aria-multiline=\"true\"\n data-placeholder=\"A short introduction...\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditable]=\"draft().excerpt\"\n (taonCmsEditableChange)=\"updateDraft('excerpt', $event)\"></div>\n <div\n class=\"post-body editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post body\"\n aria-multiline=\"true\"\n data-placeholder=\"Tell your story...\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n taonCmsEditableFormat=\"html\"\n [taonCmsEditable]=\"draft().body\"\n (taonCmsEditableChange)=\"updateDraft('body', $event)\"></div>\n <label class=\"slug-field\">\n <span>URL slug</span>\n <input aria-label=\"URL slug\" [value]=\"draft().slug\" [disabled]=\"busy() || dialogOpen()\" (input)=\"updateSlug($event)\" placeholder=\"my-post\" />\n </label>\n @if (mediaAttachment(); as media) {\n <section class=\"media-attachment\" aria-labelledby=\"media-attachment-heading\">\n <h2 id=\"media-attachment-heading\">{{ media.heading }}</h2>\n @if (draft()[media.key]; as key) {\n <p>Attached file: {{ key }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removeMedia()\">Remove</button>\n } @else {\n <input\n #mediaInput\n hidden\n type=\"file\"\n [accept]=\"media.accept\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"fileSelected($event)\" />\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"mediaInput.click()\">{{ media.uploadLabel }}</button>\n }\n </section>\n }\n <section class=\"related-posts\" aria-labelledby=\"related-posts-heading\">\n <h2 id=\"related-posts-heading\">Related posts</h2>\n @if (relatedPostsLoading()) {\n <p role=\"status\">Loading related posts...</p>\n } @else if (relatedPostsError()) {\n <p class=\"error\" role=\"alert\">{{ relatedPostsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadRelatedPosts()\">Try again</button>\n } @else {\n <ul>\n @for (post of relatedPosts(); track post.id) {\n <li>\n <span>#{{ post.id }} - {{ post.title }}</span>\n <button mat-icon-button type=\"button\" [attr.aria-label]=\"'Remove related post ' + post.title\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removeRelatedPost(post.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>No related posts yet.</li>\n }\n </ul>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"addRelatedPost()\">\n <mat-icon>add</mat-icon> Add related post\n </button>\n }\n </section>\n <section class=\"application-hook\" aria-labelledby=\"application-hook-heading\">\n <h2 id=\"application-hook-heading\">Application Hook</h2>\n @if (applicationHooksLoading()) {\n <p role=\"status\">Loading application hooks...</p>\n } @else if (applicationHooksError()) {\n <p class=\"error\" role=\"alert\">{{ applicationHooksError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadApplicationHooks()\">Try again</button>\n } @else {\n <mat-checkbox\n [checked]=\"useAsApplicationHook()\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"setUseAsApplicationHook($event.checked)\">\n Use as application hook\n </mat-checkbox>\n @if (useAsApplicationHook()) {\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <mat-label>Application Hook</mat-label>\n <mat-select\n [value]=\"selectedApplicationHook()\"\n [disabled]=\"busy() || dialogOpen()\"\n (selectionChange)=\"selectedApplicationHook.set($event.value)\">\n @for (applicationHook of applicationHooks(); track applicationHook.id) {\n <mat-option\n [value]=\"applicationHook.hook\"\n [disabled]=\"applicationHookInUseByAnotherPost(applicationHook)\">\n {{ applicationHookLabel(applicationHook.hook) }}\n @if (applicationHookInUseByAnotherPost(applicationHook)) {\n (in use by post #{{ applicationHook.contentId }})\n }\n </mat-option>\n } @empty {\n <mat-option [disabled]=\"true\">No application hooks configured</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n }\n </section>\n <section class=\"post-permissions\" aria-labelledby=\"post-permissions-heading\">\n <h2 id=\"post-permissions-heading\">Allow Read only with Permissions</h2>\n @if (permissionsLoading()) {\n <p role=\"status\">Loading assigned permissions...</p>\n } @else if (permissionsError()) {\n <p class=\"error\" role=\"alert\">{{ permissionsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadPermissions()\">Try again</button>\n } @else {\n <ul>\n @for (permission of permissions(); track permission.id) {\n <li>\n <span>{{ permission.name }} ({{ permission.code }})</span>\n <button mat-icon-button type=\"button\" [attr.aria-label]=\"'Remove permission ' + permission.name\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removePermission(permission.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>No permissions assigned.</li>\n }\n </ul>\n @if (permissionOptionsError()) {\n <p class=\"error\" role=\"alert\">{{ permissionOptionsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\" (click)=\"loadPermissionOptions()\">Try again</button>\n } @else {\n <div class=\"permission-assignment\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <mat-label>Permission</mat-label>\n <mat-select\n [value]=\"selectedPermissionId()\"\n [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\"\n (selectionChange)=\"selectedPermissionId.set($event.value)\">\n @for (permission of availablePermissions(); track permission.id) {\n <mat-option [value]=\"permission.id\">{{ permission.name }} ({{ permission.code }})</mat-option>\n } @empty {\n <mat-option [disabled]=\"true\">No permissions available</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || !selectedPermissionId()\" (click)=\"addPermission()\">\n <mat-icon>add</mat-icon> Assign permission\n </button>\n </div>\n }\n }\n </section>\n } @else if (currentPost(); as post) {\n <h1 class=\"post-title\">{{ post.title }}</h1>\n @if (post.excerpt) {\n <p class=\"post-excerpt\">{{ post.excerpt }}</p>\n }\n <div class=\"post-body\" [innerHTML]=\"post.body\"></div>\n } @else {\n <p role=\"status\">No post is loaded.</p>\n }\n</article>", styles: [":host{display:block}.post-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;padding:1rem;border-bottom:1px solid rgba(136,136,136,.2)}.post-status{margin-right:auto;text-transform:capitalize;opacity:.7}.buttons{display:flex;flex-wrap:wrap;gap:.5rem}.post-article{max-width:760px;margin:0 auto;padding:clamp(1.5rem,5vw,4rem) 1.5rem;overflow-wrap:anywhere}.post-title{margin:0 0 1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1.15;letter-spacing:-.03em}.post-excerpt{margin:0 0 2rem;font-size:1.35rem;line-height:1.6;opacity:.7;white-space:pre-wrap}.post-body{font-family:Georgia,Times New Roman,serif;font-size:1.2rem;line-height:1.8;white-space:pre-wrap}.editable{min-height:1.2em;outline:none}.editable:focus{box-shadow:-3px 0 #8885}.editable:empty:before{content:attr(data-placeholder);opacity:.4;pointer-events:none}.post-body.editable{min-height:12rem}.slug-field{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(136,136,136,.2);font-size:.875rem}.slug-field input{flex:1;min-width:160px;padding:.5rem;color:inherit;background:transparent;border:1px solid rgba(136,136,136,.3333333333);border-radius:4px}.error{padding:1rem;color:#b3261e}.post-type-selector{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.media-attachment,.related-posts,.application-hook,.post-permissions{margin-top:1.5rem;font-size:.875rem}.media-attachment h2,.related-posts h2,.application-hook h2,.post-permissions h2{font-size:1rem}.related-posts ul,.post-permissions ul{padding:0;list-style:none}.related-posts .application-hook,.post-permissions .application-hook{display:grid;align-items:start;gap:.75rem}.related-posts .application-hook mat-form-field,.post-permissions .application-hook mat-form-field{width:min(100%,28rem)}.related-posts li,.post-permissions li{display:flex;align-items:center;justify-content:space-between;gap:.5rem}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatButton, selector: " button[matButton], a[matButton], button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button], a[mat-button], a[mat-raised-button], a[mat-flat-button], a[mat-stroked-button] ", inputs: ["matButton"], exportAs: ["matButton", "matAnchor"] }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatCheckboxModule }, { kind: "component", type: i2$1.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "aria-expanded", "aria-controls", "aria-owns", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "disabledInteractive", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "ngmodule", type: MatFormFieldModule }, { kind: "component", type: i3$1.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i3$1.MatLabel, selector: "mat-label" }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "ngmodule", type: MatRadioModule }, { kind: "directive", type: i3.MatRadioGroup, selector: "mat-radio-group", inputs: ["color", "name", "labelPosition", "value", "selected", "disabled", "required", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioGroup"] }, { kind: "component", type: i3.MatRadioButton, selector: "mat-radio-button", inputs: ["id", "name", "aria-label", "aria-labelledby", "aria-describedby", "disableRipple", "tabIndex", "checked", "value", "labelPosition", "disabled", "required", "color", "disabledInteractive"], outputs: ["change"], exportAs: ["matRadioButton"] }, { kind: "ngmodule", type: MatSelectModule }, { kind: "component", type: i6.MatSelect, selector: "mat-select", inputs: ["aria-describedby", "panelClass", "disabled", "disableRipple", "tabIndex", "hideSingleSelectionIndicator", "placeholder", "required", "multiple", "disableOptionCentering", "compareWith", "value", "aria-label", "aria-labelledby", "errorStateMatcher", "typeaheadDebounceInterval", "sortComparator", "id", "panelWidth", "canSelectNullableOptions"], outputs: ["openedChange", "opened", "closed", "selectionChange", "valueChange"], exportAs: ["matSelect"] }, { kind: "component", type: i6.MatOption, selector: "mat-option", inputs: ["value", "id", "disabled"], outputs: ["onSelectionChange"], exportAs: ["matOption"] }, { kind: "directive", type: TaonCmsEditableDirective, selector: "[taonCmsEditable]", inputs: ["taonCmsEditableFormat", "taonCmsEditableSingleLine", "taonCmsEditable"], outputs: ["taonCmsEditableChange"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3436
3775
  }
3437
3776
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsPostComponent, decorators: [{
3438
3777
  type: Component,
3439
3778
  args: [{ selector: 'taon-cms-post', changeDetection: ChangeDetectionStrategy.OnPush, imports: [
3440
3779
  MatButtonModule,
3780
+ MatCheckboxModule,
3441
3781
  MatFormFieldModule,
3442
3782
  MatIconModule,
3443
3783
  MatRadioModule,
3444
3784
  MatSelectModule,
3445
3785
  TaonCmsEditableDirective,
3446
- ], providers: [TaonCmsContentApiService, TaonPermissionApiService], template: "@if (mode() !== 'view-clean') {\n <header class=\"post-actions\">\n <span class=\"post-status\">{{ mode() === 'add' ? 'New draft' : currentPost()?.status }}</span>\n <div class=\"buttons\">\n @if (editing()) {\n <button mat-flat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || !canSave()\" (click)=\"save()\">\n {{ mode() === 'add' ? 'Add' : 'Save' }}\n </button>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"cancel()\">Cancel</button>\n } @else if (currentPost()) {\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"edit()\">\n <mat-icon>edit</mat-icon> Edit\n </button>\n }\n @if (mode() !== 'add' && currentPost()) {\n @if (canPublish()) {\n <button mat-flat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || (editing() && !canSave())\" (click)=\"publish()\">Publish</button>\n }\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"revert()\">\n <mat-icon>history</mat-icon> Revert\n </button>\n @if (currentPost()?.status !== 'archived') {\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"delete()\">\n <mat-icon>delete</mat-icon> Delete\n </button>\n }\n }\n </div>\n @if (busy()) {\n <span role=\"status\">{{ uploading() ? 'Uploading...' : 'Saving...' }}</span>\n }\n </header>\n @if (error()) {\n <p class=\"error\" role=\"alert\">{{ error() }}</p>\n }\n}\n\n<article class=\"post-article\" [attr.aria-busy]=\"busy()\">\n @if (editing()) {\n <mat-radio-group\n class=\"post-type-selector\"\n aria-label=\"Post type\"\n [value]=\"draft().type\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"updateDraft('type', $event.value)\">\n @for (type of postTypes; track type.value) {\n <mat-radio-button [value]=\"type.value\">{{ type.label }}</mat-radio-button>\n }\n </mat-radio-group>\n <div\n class=\"post-title editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post title\"\n aria-required=\"true\"\n data-placeholder=\"Title\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditableSingleLine]=\"true\"\n [taonCmsEditable]=\"draft().title\"\n (taonCmsEditableChange)=\"updateDraft('title', $event)\"></div>\n <div\n class=\"post-excerpt editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post excerpt\"\n aria-multiline=\"true\"\n data-placeholder=\"A short introduction...\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditable]=\"draft().excerpt\"\n (taonCmsEditableChange)=\"updateDraft('excerpt', $event)\"></div>\n <div\n class=\"post-body editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post body\"\n aria-multiline=\"true\"\n data-placeholder=\"Tell your story...\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n taonCmsEditableFormat=\"html\"\n [taonCmsEditable]=\"draft().body\"\n (taonCmsEditableChange)=\"updateDraft('body', $event)\"></div>\n <label class=\"slug-field\">\n <span>URL slug</span>\n <input aria-label=\"URL slug\" [value]=\"draft().slug\" [disabled]=\"busy() || dialogOpen()\" (input)=\"updateSlug($event)\" placeholder=\"my-post\" />\n </label>\n @if (mediaAttachment(); as media) {\n <section class=\"media-attachment\" aria-labelledby=\"media-attachment-heading\">\n <h2 id=\"media-attachment-heading\">{{ media.heading }}</h2>\n @if (draft()[media.key]; as key) {\n <p>Attached file: {{ key }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removeMedia()\">Remove</button>\n } @else {\n <input\n #mediaInput\n hidden\n type=\"file\"\n [accept]=\"media.accept\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"fileSelected($event)\" />\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"mediaInput.click()\">{{ media.uploadLabel }}</button>\n }\n </section>\n }\n <section class=\"related-posts\" aria-labelledby=\"related-posts-heading\">\n <h2 id=\"related-posts-heading\">Related posts</h2>\n @if (relatedPostsLoading()) {\n <p role=\"status\">Loading related posts...</p>\n } @else if (relatedPostsError()) {\n <p class=\"error\" role=\"alert\">{{ relatedPostsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadRelatedPosts()\">Try again</button>\n } @else {\n <ul>\n @for (post of relatedPosts(); track post.id) {\n <li>\n <span>#{{ post.id }} - {{ post.title }}</span>\n <button mat-icon-button type=\"button\" [attr.aria-label]=\"'Remove related post ' + post.title\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removeRelatedPost(post.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>No related posts yet.</li>\n }\n </ul>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"addRelatedPost()\">\n <mat-icon>add</mat-icon> Add related post\n </button>\n }\n </section>\n <section class=\"post-permissions\" aria-labelledby=\"post-permissions-heading\">\n <h2 id=\"post-permissions-heading\">Allow Read only with Permissions</h2>\n @if (permissionsLoading()) {\n <p role=\"status\">Loading assigned permissions...</p>\n } @else if (permissionsError()) {\n <p class=\"error\" role=\"alert\">{{ permissionsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadPermissions()\">Try again</button>\n } @else {\n <ul>\n @for (permission of permissions(); track permission.id) {\n <li>\n <span>{{ permission.name }} ({{ permission.code }})</span>\n <button mat-icon-button type=\"button\" [attr.aria-label]=\"'Remove permission ' + permission.name\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removePermission(permission.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>No permissions assigned.</li>\n }\n </ul>\n @if (permissionOptionsError()) {\n <p class=\"error\" role=\"alert\">{{ permissionOptionsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\" (click)=\"loadPermissionOptions()\">Try again</button>\n } @else {\n <div class=\"permission-assignment\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <mat-label>Permission</mat-label>\n <mat-select\n [value]=\"selectedPermissionId()\"\n [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\"\n (selectionChange)=\"selectedPermissionId.set($event.value)\">\n @for (permission of availablePermissions(); track permission.id) {\n <mat-option [value]=\"permission.id\">{{ permission.name }} ({{ permission.code }})</mat-option>\n } @empty {\n <mat-option [disabled]=\"true\">No permissions available</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || !selectedPermissionId()\" (click)=\"addPermission()\">\n <mat-icon>add</mat-icon> Assign permission\n </button>\n </div>\n }\n }\n </section>\n } @else if (currentPost(); as post) {\n <h1 class=\"post-title\">{{ post.title }}</h1>\n @if (post.excerpt) {\n <p class=\"post-excerpt\">{{ post.excerpt }}</p>\n }\n <div class=\"post-body\" [innerHTML]=\"post.body\"></div>\n } @else {\n <p role=\"status\">No post is loaded.</p>\n }\n</article>", styles: [":host{display:block}.post-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;padding:1rem;border-bottom:1px solid rgba(136,136,136,.2)}.post-status{margin-right:auto;text-transform:capitalize;opacity:.7}.buttons{display:flex;flex-wrap:wrap;gap:.5rem}.post-article{max-width:760px;margin:0 auto;padding:clamp(1.5rem,5vw,4rem) 1.5rem;overflow-wrap:anywhere}.post-title{margin:0 0 1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1.15;letter-spacing:-.03em}.post-excerpt{margin:0 0 2rem;font-size:1.35rem;line-height:1.6;opacity:.7;white-space:pre-wrap}.post-body{font-family:Georgia,Times New Roman,serif;font-size:1.2rem;line-height:1.8;white-space:pre-wrap}.editable{min-height:1.2em;outline:none}.editable:focus{box-shadow:-3px 0 #8885}.editable:empty:before{content:attr(data-placeholder);opacity:.4;pointer-events:none}.post-body.editable{min-height:12rem}.slug-field{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(136,136,136,.2);font-size:.875rem}.slug-field input{flex:1;min-width:160px;padding:.5rem;color:inherit;background:transparent;border:1px solid rgba(136,136,136,.3333333333);border-radius:4px}.error{padding:1rem;color:#b3261e}.post-type-selector{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.media-attachment,.related-posts,.post-permissions{margin-top:1.5rem;font-size:.875rem}.media-attachment h2,.related-posts h2,.post-permissions h2{font-size:1rem}.related-posts ul,.post-permissions ul{padding:0;list-style:none}.related-posts li,.post-permissions li{display:flex;align-items:center;justify-content:space-between;gap:.5rem}\n"] }]
3786
+ ], providers: [TaonCmsContentApiService, TaonPermissionApiService], template: "@if (mode() !== 'view-clean') {\n <header class=\"post-actions\">\n <span class=\"post-status\">{{ mode() === 'add' ? 'New draft' : currentPost()?.status }}</span>\n <div class=\"buttons\">\n @if (editing()) {\n <button mat-flat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || !canSave()\" (click)=\"save()\">\n {{ mode() === 'add' ? 'Add' : 'Save' }}\n </button>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"cancel()\">Cancel</button>\n } @else if (currentPost()) {\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"edit()\">\n <mat-icon>edit</mat-icon> Edit\n </button>\n }\n @if (mode() !== 'add' && currentPost()) {\n @if (canPublish()) {\n <button mat-flat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || (editing() && !canSave())\" (click)=\"publish()\">Publish</button>\n }\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"revert()\">\n <mat-icon>history</mat-icon> Revert\n </button>\n @if (currentPost()?.status !== 'archived') {\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"delete()\">\n <mat-icon>delete</mat-icon> Delete\n </button>\n }\n }\n </div>\n @if (busy()) {\n <span role=\"status\">{{ uploading() ? 'Uploading...' : 'Saving...' }}</span>\n }\n </header>\n @if (error()) {\n <p class=\"error\" role=\"alert\">{{ error() }}</p>\n }\n}\n\n<article class=\"post-article\" [attr.aria-busy]=\"busy()\">\n @if (editing()) {\n <mat-radio-group\n class=\"post-type-selector\"\n aria-label=\"Post type\"\n [value]=\"draft().type\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"updateDraft('type', $event.value)\">\n @for (type of postTypes; track type.value) {\n <mat-radio-button [value]=\"type.value\">{{ type.label }}</mat-radio-button>\n }\n </mat-radio-group>\n <div\n class=\"post-title editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post title\"\n aria-required=\"true\"\n data-placeholder=\"Title\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditableSingleLine]=\"true\"\n [taonCmsEditable]=\"draft().title\"\n (taonCmsEditableChange)=\"updateDraft('title', $event)\"></div>\n <div\n class=\"post-excerpt editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post excerpt\"\n aria-multiline=\"true\"\n data-placeholder=\"A short introduction...\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n [taonCmsEditable]=\"draft().excerpt\"\n (taonCmsEditableChange)=\"updateDraft('excerpt', $event)\"></div>\n <div\n class=\"post-body editable\"\n contenteditable=\"true\"\n role=\"textbox\"\n aria-label=\"Post body\"\n aria-multiline=\"true\"\n data-placeholder=\"Tell your story...\"\n [attr.contenteditable]=\"!busy() && !dialogOpen()\"\n taonCmsEditableFormat=\"html\"\n [taonCmsEditable]=\"draft().body\"\n (taonCmsEditableChange)=\"updateDraft('body', $event)\"></div>\n <label class=\"slug-field\">\n <span>URL slug</span>\n <input aria-label=\"URL slug\" [value]=\"draft().slug\" [disabled]=\"busy() || dialogOpen()\" (input)=\"updateSlug($event)\" placeholder=\"my-post\" />\n </label>\n @if (mediaAttachment(); as media) {\n <section class=\"media-attachment\" aria-labelledby=\"media-attachment-heading\">\n <h2 id=\"media-attachment-heading\">{{ media.heading }}</h2>\n @if (draft()[media.key]; as key) {\n <p>Attached file: {{ key }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removeMedia()\">Remove</button>\n } @else {\n <input\n #mediaInput\n hidden\n type=\"file\"\n [accept]=\"media.accept\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"fileSelected($event)\" />\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"mediaInput.click()\">{{ media.uploadLabel }}</button>\n }\n </section>\n }\n <section class=\"related-posts\" aria-labelledby=\"related-posts-heading\">\n <h2 id=\"related-posts-heading\">Related posts</h2>\n @if (relatedPostsLoading()) {\n <p role=\"status\">Loading related posts...</p>\n } @else if (relatedPostsError()) {\n <p class=\"error\" role=\"alert\">{{ relatedPostsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadRelatedPosts()\">Try again</button>\n } @else {\n <ul>\n @for (post of relatedPosts(); track post.id) {\n <li>\n <span>#{{ post.id }} - {{ post.title }}</span>\n <button mat-icon-button type=\"button\" [attr.aria-label]=\"'Remove related post ' + post.title\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removeRelatedPost(post.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>No related posts yet.</li>\n }\n </ul>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"addRelatedPost()\">\n <mat-icon>add</mat-icon> Add related post\n </button>\n }\n </section>\n <section class=\"application-hook\" aria-labelledby=\"application-hook-heading\">\n <h2 id=\"application-hook-heading\">Application Hook</h2>\n @if (applicationHooksLoading()) {\n <p role=\"status\">Loading application hooks...</p>\n } @else if (applicationHooksError()) {\n <p class=\"error\" role=\"alert\">{{ applicationHooksError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadApplicationHooks()\">Try again</button>\n } @else {\n <mat-checkbox\n [checked]=\"useAsApplicationHook()\"\n [disabled]=\"busy() || dialogOpen()\"\n (change)=\"setUseAsApplicationHook($event.checked)\">\n Use as application hook\n </mat-checkbox>\n @if (useAsApplicationHook()) {\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <mat-label>Application Hook</mat-label>\n <mat-select\n [value]=\"selectedApplicationHook()\"\n [disabled]=\"busy() || dialogOpen()\"\n (selectionChange)=\"selectedApplicationHook.set($event.value)\">\n @for (applicationHook of applicationHooks(); track applicationHook.id) {\n <mat-option\n [value]=\"applicationHook.hook\"\n [disabled]=\"applicationHookInUseByAnotherPost(applicationHook)\">\n {{ applicationHookLabel(applicationHook.hook) }}\n @if (applicationHookInUseByAnotherPost(applicationHook)) {\n (in use by post #{{ applicationHook.contentId }})\n }\n </mat-option>\n } @empty {\n <mat-option [disabled]=\"true\">No application hooks configured</mat-option>\n }\n </mat-select>\n </mat-form-field>\n }\n }\n </section>\n <section class=\"post-permissions\" aria-labelledby=\"post-permissions-heading\">\n <h2 id=\"post-permissions-heading\">Allow Read only with Permissions</h2>\n @if (permissionsLoading()) {\n <p role=\"status\">Loading assigned permissions...</p>\n } @else if (permissionsError()) {\n <p class=\"error\" role=\"alert\">{{ permissionsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen()\" (click)=\"loadPermissions()\">Try again</button>\n } @else {\n <ul>\n @for (permission of permissions(); track permission.id) {\n <li>\n <span>{{ permission.name }} ({{ permission.code }})</span>\n <button mat-icon-button type=\"button\" [attr.aria-label]=\"'Remove permission ' + permission.name\" [disabled]=\"busy() || dialogOpen()\" (click)=\"removePermission(permission.id)\">\n <mat-icon>close</mat-icon>\n </button>\n </li>\n } @empty {\n <li>No permissions assigned.</li>\n }\n </ul>\n @if (permissionOptionsError()) {\n <p class=\"error\" role=\"alert\">{{ permissionOptionsError() }}</p>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\" (click)=\"loadPermissionOptions()\">Try again</button>\n } @else {\n <div class=\"permission-assignment\">\n <mat-form-field appearance=\"outline\" subscriptSizing=\"dynamic\">\n <mat-label>Permission</mat-label>\n <mat-select\n [value]=\"selectedPermissionId()\"\n [disabled]=\"busy() || dialogOpen() || permissionOptionsLoading()\"\n (selectionChange)=\"selectedPermissionId.set($event.value)\">\n @for (permission of availablePermissions(); track permission.id) {\n <mat-option [value]=\"permission.id\">{{ permission.name }} ({{ permission.code }})</mat-option>\n } @empty {\n <mat-option [disabled]=\"true\">No permissions available</mat-option>\n }\n </mat-select>\n </mat-form-field>\n <button mat-button type=\"button\" [disabled]=\"busy() || dialogOpen() || !selectedPermissionId()\" (click)=\"addPermission()\">\n <mat-icon>add</mat-icon> Assign permission\n </button>\n </div>\n }\n }\n </section>\n } @else if (currentPost(); as post) {\n <h1 class=\"post-title\">{{ post.title }}</h1>\n @if (post.excerpt) {\n <p class=\"post-excerpt\">{{ post.excerpt }}</p>\n }\n <div class=\"post-body\" [innerHTML]=\"post.body\"></div>\n } @else {\n <p role=\"status\">No post is loaded.</p>\n }\n</article>", styles: [":host{display:block}.post-actions{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;padding:1rem;border-bottom:1px solid rgba(136,136,136,.2)}.post-status{margin-right:auto;text-transform:capitalize;opacity:.7}.buttons{display:flex;flex-wrap:wrap;gap:.5rem}.post-article{max-width:760px;margin:0 auto;padding:clamp(1.5rem,5vw,4rem) 1.5rem;overflow-wrap:anywhere}.post-title{margin:0 0 1.5rem;font-size:clamp(2rem,5vw,3.5rem);font-weight:700;line-height:1.15;letter-spacing:-.03em}.post-excerpt{margin:0 0 2rem;font-size:1.35rem;line-height:1.6;opacity:.7;white-space:pre-wrap}.post-body{font-family:Georgia,Times New Roman,serif;font-size:1.2rem;line-height:1.8;white-space:pre-wrap}.editable{min-height:1.2em;outline:none}.editable:focus{box-shadow:-3px 0 #8885}.editable:empty:before{content:attr(data-placeholder);opacity:.4;pointer-events:none}.post-body.editable{min-height:12rem}.slug-field{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-top:3rem;padding-top:1rem;border-top:1px solid rgba(136,136,136,.2);font-size:.875rem}.slug-field input{flex:1;min-width:160px;padding:.5rem;color:inherit;background:transparent;border:1px solid rgba(136,136,136,.3333333333);border-radius:4px}.error{padding:1rem;color:#b3261e}.post-type-selector{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.media-attachment,.related-posts,.application-hook,.post-permissions{margin-top:1.5rem;font-size:.875rem}.media-attachment h2,.related-posts h2,.application-hook h2,.post-permissions h2{font-size:1rem}.related-posts ul,.post-permissions ul{padding:0;list-style:none}.related-posts .application-hook,.post-permissions .application-hook{display:grid;align-items:start;gap:.75rem}.related-posts .application-hook mat-form-field,.post-permissions .application-hook mat-form-field{width:min(100%,28rem)}.related-posts li,.post-permissions li{display:flex;align-items:center;justify-content:space-between;gap:.5rem}\n"] }]
3447
3787
  }], ctorParameters: () => [], propDecorators: { post: [{ type: i0.Input, args: [{ isSignal: true, alias: "post", required: false }] }], mode: [{ type: i0.Input, args: [{ isSignal: true, alias: "mode", required: false }] }, { type: i0.Output, args: ["modeChange"] }], changed: [{ type: i0.Output, args: ["changed"] }], deleted: [{ type: i0.Output, args: ["deleted"] }], cancelled: [{ type: i0.Output, args: ["cancelled"] }] } });
3448
3788
 
3449
3789
  var taonCmsPost_component = /*#__PURE__*/Object.freeze({
@@ -3523,7 +3863,7 @@ class TaonCmsPostEditDialogComponent {
3523
3863
  this.ref.close(post);
3524
3864
  }
3525
3865
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsPostEditDialogComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
3526
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.9", type: TaonCmsPostEditDialogComponent, isStandalone: true, selector: "taon-cms-post-edit-dialog", viewQueries: [{ propertyName: "editor", first: true, predicate: TaonCmsPostComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<header class=\"dialog-header\">\n <h2>{{ data.mode === 'add' ? 'Add post' : 'Manage post' }}</h2>\n <button mat-icon-button type=\"button\" aria-label=\"Close post editor\" [disabled]=\"editor()?.busy() || editor()?.dialogOpen()\" (click)=\"close()\">\n <mat-icon>close</mat-icon>\n </button>\n</header>\n<taon-cms-post\n [post]=\"data.post ?? null\"\n [mode]=\"data.mode\"\n (changed)=\"changed.emit($event)\"\n (deleted)=\"deleted($event)\"\n (cancelled)=\"close()\" />\n", styles: [":host{display:block;height:100%;overflow-y:auto}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;border-bottom:1px solid rgba(136,136,136,.2)}.dialog-header h2{margin:0;font-size:1rem;font-weight:500}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i3$1.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: TaonCmsPostComponent, selector: "taon-cms-post", inputs: ["post", "mode"], outputs: ["modeChange", "changed", "deleted", "cancelled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3866
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.2.0", version: "21.0.9", type: TaonCmsPostEditDialogComponent, isStandalone: true, selector: "taon-cms-post-edit-dialog", viewQueries: [{ propertyName: "editor", first: true, predicate: TaonCmsPostComponent, descendants: true, isSignal: true }], ngImport: i0, template: "<header class=\"dialog-header\">\n <h2>{{ data.mode === 'add' ? 'Add post' : 'Manage post' }}</h2>\n <button mat-icon-button type=\"button\" aria-label=\"Close post editor\" [disabled]=\"editor()?.busy() || editor()?.dialogOpen()\" (click)=\"close()\">\n <mat-icon>close</mat-icon>\n </button>\n</header>\n<taon-cms-post\n [post]=\"data.post ?? null\"\n [mode]=\"data.mode\"\n (changed)=\"changed.emit($event)\"\n (deleted)=\"deleted($event)\"\n (cancelled)=\"close()\" />\n", styles: [":host{display:block;height:100%;overflow-y:auto}.dialog-header{display:flex;align-items:center;justify-content:space-between;padding:.5rem 1rem;border-bottom:1px solid rgba(136,136,136,.2)}.dialog-header h2{margin:0;font-size:1rem;font-weight:500}\n"], dependencies: [{ kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i1.MatIconButton, selector: "button[mat-icon-button], a[mat-icon-button], button[matIconButton], a[matIconButton]", exportAs: ["matButton", "matAnchor"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatIconModule }, { kind: "component", type: i4.MatIcon, selector: "mat-icon", inputs: ["color", "inline", "svgIcon", "fontSet", "fontIcon"], exportAs: ["matIcon"] }, { kind: "component", type: TaonCmsPostComponent, selector: "taon-cms-post", inputs: ["post", "mode"], outputs: ["modeChange", "changed", "deleted", "cancelled"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush }); }
3527
3867
  }
3528
3868
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.0.9", ngImport: i0, type: TaonCmsPostEditDialogComponent, decorators: [{
3529
3869
  type: Component,
@@ -3577,7 +3917,7 @@ class TaonCmsPostsBackofficeComponent {
3577
3917
  ];
3578
3918
  }
3579
3919
  get crud() {
3580
- return this.taonCmsContentApiService.taonCmsContentController;
3920
+ return this.taonCmsContentApiService.crudController;
3581
3921
  }
3582
3922
  reload() {
3583
3923
  this.datatable.reload();
@@ -3672,9 +4012,8 @@ const resolvePost = async (route) => {
3672
4012
  if (!Number.isSafeInteger(id) || id <= 0) {
3673
4013
  throw new Error('Invalid Post ID');
3674
4014
  }
3675
- const apiService = inject(TaonCmsContentApiService);
3676
- const post = (await apiService.taonCmsContentController.getBy(id).request())
3677
- .body.json;
4015
+ const taonCmsContentApiService = inject(TaonCmsContentApiService);
4016
+ const post = await taonCmsContentApiService.getById(id);
3678
4017
  if (!post) {
3679
4018
  throw new Error('Post not found');
3680
4019
  }
@@ -3717,12 +4056,15 @@ var index$1 = /*#__PURE__*/Object.freeze({
3717
4056
  BUILD_FRAMEWORK_CLI_NAME: BUILD_FRAMEWORK_CLI_NAME,
3718
4057
  CURRENT_PACKAGE_TAON_VERSION: CURRENT_PACKAGE_TAON_VERSION,
3719
4058
  CURRENT_PACKAGE_VERSION: CURRENT_PACKAGE_VERSION,
4059
+ get CmsContext_1791132517217_initial () { return CmsContext_1791132517217_initial; },
3720
4060
  MIGRATIONS_CLASSES_FOR_CmsContext: MIGRATIONS_CLASSES_FOR_CmsContext,
3721
- get MyAppGroup () { return MyAppGroup; },
3722
- get MyAppPermission () { return MyAppPermission; },
3723
- get MyAppRole () { return MyAppRole; },
3724
4061
  PROJECT_NPM_NAME: PROJECT_NPM_NAME,
4062
+ get TaonAuthContextEntity () { return TaonAuthContextEntity; },
4063
+ TaonAuthContextHasAccess: TaonAuthContextHasAccess,
4064
+ get TaonAuthContextRepository () { return TaonAuthContextRepository; },
3725
4065
  TaonCmsAbstractContext: TaonCmsAbstractContext,
4066
+ TaonCmsApplicationHook: TaonCmsApplicationHook,
4067
+ get TaonCmsApplicationHookEntity () { return TaonCmsApplicationHookEntity; },
3726
4068
  TaonCmsAssetsBackofficeComponent: TaonCmsAssetsBackofficeComponent,
3727
4069
  TaonCmsAssetsBackofficeRoutes: TaonCmsAssetsBackofficeRoutes,
3728
4070
  TaonCmsBackofficeComponent: TaonCmsBackofficeComponent,
@@ -3827,9 +4169,11 @@ var index$1 = /*#__PURE__*/Object.freeze({
3827
4169
  get TaonCmsTagSubscriber () { return TaonCmsTagSubscriber; },
3828
4170
  TaonCmsTagUtils__NS__isActive: TaonCmsTagUtils__NS__isActive,
3829
4171
  TaonRelatedPostChooserComponent: TaonRelatedPostChooserComponent,
4172
+ TaonSessionCoreGroups: TaonSessionCoreGroups,
4173
+ TaonSessionCorePermissions: TaonSessionCorePermissions,
4174
+ TaonSessionCoreRoles: TaonSessionCoreRoles,
3830
4175
  contentError: contentError,
3831
4176
  default: index,
3832
- myOrgProj: myOrgProj,
3833
4177
  requireContentId: requireContentId,
3834
4178
  requireContentVersion: requireContentVersion,
3835
4179
  startCli: startCli,
@@ -3840,5 +4184,5 @@ var index$1 = /*#__PURE__*/Object.freeze({
3840
4184
  * Generated bundle index. Do not edit.
3841
4185
  */
3842
4186
 
3843
- export { APP_ID, BUILD_BASE_HREF, BUILD_FRAMEWORK_CLI_NAME, CURRENT_PACKAGE_TAON_VERSION, CURRENT_PACKAGE_VERSION, MIGRATIONS_CLASSES_FOR_CmsContext, MyAppGroup, MyAppPermission, MyAppRole, PROJECT_NPM_NAME, TaonCmsAbstractContext, TaonCmsAssetsBackofficeComponent, TaonCmsAssetsBackofficeRoutes, TaonCmsBackofficeComponent, TaonCmsBackofficeRoutes, TaonCmsCategoryAbstractContext, TaonCmsCategoryApiService, TaonCmsCategoryController, TaonCmsCategoryDefaultsValues, TaonCmsCategoryEntity, TaonCmsCategoryMiddleware, TaonCmsCategoryProvider, TaonCmsCategoryRepository, TaonCmsCategoryState, TaonCmsCategorySubscriber, TaonCmsCategoryUtils__NS__isActive, TaonCmsCommentAbstractContext, TaonCmsCommentApiService, TaonCmsCommentController, TaonCmsCommentDefaultsValues, TaonCmsCommentEntity, TaonCmsCommentMiddleware, TaonCmsCommentProvider, TaonCmsCommentRepository, TaonCmsCommentState, TaonCmsCommentSubscriber, TaonCmsCommentUtils__NS__isActive, TaonCmsContentAbstractContext, TaonCmsContentApiService, TaonCmsContentAssetAbstractContext, TaonCmsContentAssetApiService, TaonCmsContentAssetController, TaonCmsContentAssetDefaultsValues, TaonCmsContentAssetEntity, TaonCmsContentAssetMiddleware, TaonCmsContentAssetProvider, TaonCmsContentAssetRepository, TaonCmsContentAssetState, TaonCmsContentAssetSubscriber, TaonCmsContentAssetUtils__NS__isActive, TaonCmsContentConfigService, TaonCmsContentController, TaonCmsContentDefaultsValues, TaonCmsContentEntity, TaonCmsContentMiddleware, TaonCmsContentPermissionAbstractContext, TaonCmsContentPermissionApiService, TaonCmsContentPermissionController, TaonCmsContentPermissionDefaultsValues, TaonCmsContentPermissionEntity, TaonCmsContentPermissionMiddleware, TaonCmsContentPermissionProvider, TaonCmsContentPermissionRepository, TaonCmsContentPermissionState, TaonCmsContentPermissionSubscriber, TaonCmsContentPermissionUtils__NS__isActive, TaonCmsContentProvider, TaonCmsContentRepository, TaonCmsContentRevisionAbstractContext, TaonCmsContentRevisionApiService, TaonCmsContentRevisionController, TaonCmsContentRevisionDefaultsValues, TaonCmsContentRevisionEntity, TaonCmsContentRevisionMiddleware, TaonCmsContentRevisionProvider, TaonCmsContentRevisionRepository, TaonCmsContentRevisionState, TaonCmsContentRevisionSubscriber, TaonCmsContentRevisionUtils__NS__isActive, TaonCmsContentState, TaonCmsContentStorageController, TaonCmsContentSubscriber, TaonCmsContentTagAbstractContext, TaonCmsContentTagApiService, TaonCmsContentTagController, TaonCmsContentTagDefaultsValues, TaonCmsContentTagEntity, TaonCmsContentTagMiddleware, TaonCmsContentTagProvider, TaonCmsContentTagRepository, TaonCmsContentTagState, TaonCmsContentTagSubscriber, TaonCmsContentTagUtils__NS__isActive, TaonCmsContentType, TaonCmsContentUtils__NS__isActive, TaonCmsEditableDirective, TaonCmsPostComponent, TaonCmsPostDetailsPageComponent, TaonCmsPostEditDialogComponent, TaonCmsPostRoutes, TaonCmsPostsBackofficeComponent, TaonCmsPostsBackofficeRoutes, TaonCmsRevisionChooserComponent, TaonCmsTagAbstractContext, TaonCmsTagApiService, TaonCmsTagController, TaonCmsTagDefaultsValues, TaonCmsTagEntity, TaonCmsTagMiddleware, TaonCmsTagProvider, TaonCmsTagRepository, TaonCmsTagState, TaonCmsTagSubscriber, TaonCmsTagUtils__NS__isActive, TaonRelatedPostChooserComponent, contentError, myOrgProj, requireContentId, requireContentVersion, startCli, validateContentInput };
4187
+ export { APP_ID, BUILD_BASE_HREF, BUILD_FRAMEWORK_CLI_NAME, CURRENT_PACKAGE_TAON_VERSION, CURRENT_PACKAGE_VERSION, CmsContext_1791132517217_initial, MIGRATIONS_CLASSES_FOR_CmsContext, PROJECT_NPM_NAME, TaonAuthContextEntity, TaonAuthContextHasAccess, TaonAuthContextRepository, TaonCmsAbstractContext, TaonCmsApplicationHook, TaonCmsApplicationHookEntity, TaonCmsAssetsBackofficeComponent, TaonCmsAssetsBackofficeRoutes, TaonCmsBackofficeComponent, TaonCmsBackofficeRoutes, TaonCmsCategoryAbstractContext, TaonCmsCategoryApiService, TaonCmsCategoryController, TaonCmsCategoryDefaultsValues, TaonCmsCategoryEntity, TaonCmsCategoryMiddleware, TaonCmsCategoryProvider, TaonCmsCategoryRepository, TaonCmsCategoryState, TaonCmsCategorySubscriber, TaonCmsCategoryUtils__NS__isActive, TaonCmsCommentAbstractContext, TaonCmsCommentApiService, TaonCmsCommentController, TaonCmsCommentDefaultsValues, TaonCmsCommentEntity, TaonCmsCommentMiddleware, TaonCmsCommentProvider, TaonCmsCommentRepository, TaonCmsCommentState, TaonCmsCommentSubscriber, TaonCmsCommentUtils__NS__isActive, TaonCmsContentAbstractContext, TaonCmsContentApiService, TaonCmsContentAssetAbstractContext, TaonCmsContentAssetApiService, TaonCmsContentAssetController, TaonCmsContentAssetDefaultsValues, TaonCmsContentAssetEntity, TaonCmsContentAssetMiddleware, TaonCmsContentAssetProvider, TaonCmsContentAssetRepository, TaonCmsContentAssetState, TaonCmsContentAssetSubscriber, TaonCmsContentAssetUtils__NS__isActive, TaonCmsContentConfigService, TaonCmsContentController, TaonCmsContentDefaultsValues, TaonCmsContentEntity, TaonCmsContentMiddleware, TaonCmsContentPermissionAbstractContext, TaonCmsContentPermissionApiService, TaonCmsContentPermissionController, TaonCmsContentPermissionDefaultsValues, TaonCmsContentPermissionEntity, TaonCmsContentPermissionMiddleware, TaonCmsContentPermissionProvider, TaonCmsContentPermissionRepository, TaonCmsContentPermissionState, TaonCmsContentPermissionSubscriber, TaonCmsContentPermissionUtils__NS__isActive, TaonCmsContentProvider, TaonCmsContentRepository, TaonCmsContentRevisionAbstractContext, TaonCmsContentRevisionApiService, TaonCmsContentRevisionController, TaonCmsContentRevisionDefaultsValues, TaonCmsContentRevisionEntity, TaonCmsContentRevisionMiddleware, TaonCmsContentRevisionProvider, TaonCmsContentRevisionRepository, TaonCmsContentRevisionState, TaonCmsContentRevisionSubscriber, TaonCmsContentRevisionUtils__NS__isActive, TaonCmsContentState, TaonCmsContentStorageController, TaonCmsContentSubscriber, TaonCmsContentTagAbstractContext, TaonCmsContentTagApiService, TaonCmsContentTagController, TaonCmsContentTagDefaultsValues, TaonCmsContentTagEntity, TaonCmsContentTagMiddleware, TaonCmsContentTagProvider, TaonCmsContentTagRepository, TaonCmsContentTagState, TaonCmsContentTagSubscriber, TaonCmsContentTagUtils__NS__isActive, TaonCmsContentType, TaonCmsContentUtils__NS__isActive, TaonCmsEditableDirective, TaonCmsPostComponent, TaonCmsPostDetailsPageComponent, TaonCmsPostEditDialogComponent, TaonCmsPostRoutes, TaonCmsPostsBackofficeComponent, TaonCmsPostsBackofficeRoutes, TaonCmsRevisionChooserComponent, TaonCmsTagAbstractContext, TaonCmsTagApiService, TaonCmsTagController, TaonCmsTagDefaultsValues, TaonCmsTagEntity, TaonCmsTagMiddleware, TaonCmsTagProvider, TaonCmsTagRepository, TaonCmsTagState, TaonCmsTagSubscriber, TaonCmsTagUtils__NS__isActive, TaonRelatedPostChooserComponent, TaonSessionCoreGroups, TaonSessionCorePermissions, TaonSessionCoreRoles, contentError, requireContentId, requireContentVersion, startCli, validateContentInput };
3844
4188
  //# sourceMappingURL=cms-websql-prod.mjs.map